2012年10月19日

iOS Developer Program 2回目の更新

今年もiOS Developer Programを更新しました。この1年は何も作らなかったので、年8,400円とはいえ、さすがにちょっと高く感じますね。開発環境が無料ということで許せるのは何年までかな?(^^;)

ちなみに私は実機テストのためだけに加入したので、今後もう開発しないとなればやめることもできますが、1本でもアプリを公開したりしたら、もうずっとやめられないんでしょうね。特に、無料アプリを公開して人気が出たりしたら大変だ(笑)

コメント (0)

2012年9月27日

Source™ Code Pro

AdobeからSource™ Code Proという等幅のフォントがリリースされたので試してみました。

Source Code Proその名のとおりコンピュータプログラムのソースコードを記述するのに都合の良いデザインになっているそうです。

とりあえずMac OS Xに入れてみましたが、なかなか個性的なデザインですね。でも確かに見やすいかも。英語フォントですが、日本語部分(こういうときはヒラギノ角ゴシックになるのかな?)とのバランスも悪くないし、しばらく使ってみようと思います。

ところで、TMマークがついてるけど、Sourceって言葉はAdobeの商標なんですか?(^^;)

コメント (0)

2012年6月28日

STL標準講座

STL標準講座 標準テンプレートライブラリを利用したC++プログラミング」という本を買いました。


STL標準講座―標準テンプレートライブラリを利用したC++プログラミング (Programmer's SELECTION)
かなり古い本で、以前から欲しいとは思っていたのですが、高いので躊躇していました。今回も完全に衝動買いです。ネットにも情報はあるし、こういう技術書はもう勢いがないと買えなくなっていますね(^^;)

とはいえ、これまで私はCの標準ライブラリは使っても、STLなどのC++独自のライブラリにはほとんど手を出さずにきました。OSのAPIやフレームワークに用意された機能でなんとかなっていたのも事実ですが、覚えるのが面倒だったというのが正直なところです。しかし最近は専らWindowsの(C++での)開発がメインとなっているので、少しでも楽できるのなら、今後はいろいろと積極的に使ってみようかなと思い始めています。

コメント (0)

2012年5月28日

Javaからはじめよう Androidプログラミング

「かんたん7ステップ Javaからはじめよう Androidプログラミング」という本を買いました。


かんたん7ステップ  JavaからはじめようAndroidプログラミング
Androidのプログラミング本はやたらと多くて選ぶのが大変でしたが、JavaとAndroidの両方の入門書ということで、これにしました。

さっそく少しだけ読んでみましたが、なかなか良さそうです。プログラミング自体の経験がない人がこの本だけで習得するのは難しいかもしれませんが、経験者なら問題ありません。文章も読みやすいです。

Eclipseもインストールしてみましたが、これも好印象です。XcodeやVisual Studioのようにごちゃごちゃしてないし、デザインもポップで好みです。残念なのは起動が遅いことと、Mac版はクローズボックスの位置が標準と逆なことくらいですね。

仕事じゃないのでどれだけ時間が取れるか分かりませんが、のんびりやっていきたいと思います。

コメント (0)

2012年4月24日

Windowsアプリのインストール後のエラー

Windows Vista以降、インストーラーを使ってアプリケーションをインストールすると「このプログラムは正しくインストールされなかった可能性があります」といったメッセージを目にすることがあります。どういった条件で出るのだろうと以前から気になっていたのですが、腰を据えて調べてみました。

条件は意外と複雑で理解に苦労しましたが、以下のサイトが凄く参考になりました。(感謝!)

DSAS開発者の部屋:「このプログラムは正しくインストールされなかった可能性があります」を回避する方法 (Windows 7, Vista)

しっかし、ファイル名に含まれる文字列で動作が決まるとか、Windowsって・・・(笑)

早速このサイトのとおり、mt.exeでマニフェストファイルを書き換えることで対処しようと試みたのですが、1つ問題がありました。自己解凍形式のアーカイバを利用したインストーラーです。私はフリーの簡単インストーラをよく使うのですが、これも1ファイルのexe形式でインストーラーを作ると、この問題に該当します。

これらの自己解凍アーカイブは、exeファイルの末尾に圧縮データを無理矢理付加したような構造になっているのですが、mt.exeでマニフェストを書き込むと、この部分が切られてしまうのです。

だが、まだ諦められません(^^;) 更に調べてみると、この圧縮データ部分はファイルの決まった位置(キリの良い位置)にあるようです。それならmt.exeの実行前にバックアップを取っておき、実行後にその部分だけ戻せば良いはずです。試しにバイナリエディタで切り貼りしてみたところ、うまく動作しました。

とはいえ、こんな面倒な作業を毎回やるわけにはいきません。そこで、この切り貼り処理を自動で行うプログラムを作ろうと思っています。バッチファイルと連携して使うコマンドラインツールだったら簡単に作れそうだし、インストーラーをビルドしたあとダブルクリックするだけで修正できるなら、使い勝手も問題ありません。

あとは、こういうことをすると将来、互換性の面で問題が出ないかどうか不安ですね。いったん作ってしまったインストーラーは問題ないだろうけど、作成ソフトのバージョンアップは慎重にならざるを得ませんね。

コメント (0)

2012年2月28日

PDFのライブラリ

ちょっと前に、仕事でlibHaru (Haru free PDF library)というオープンソースのPDF出力ライブラリを使う機会がありました。開発中のWindowsアプリから、ある帳票を出力するために使ったのですが、これ、なかなか良くできていますね。PDF出力に関しては、とりあえずこれでほとんどのことはできそうです。

ただ、HTML等と違ってレイアウトは自分で全部(座標を指定して)やらなければなりません。PDFがそういうものなのだから仕方ないのですが、これはこれでかなり大変な作業です。一応、ラッパークラスみたいなものを作って楽できるようにはしたのですが、それでも限界があります。例えば、ワープロのようなGUIで自由に帳票をデザインして、それをこのライブラリを使ったCのソースに落とし込むようなツールが欲しいですね。時間があったら作ってみたいところですが、全機能に対応するのは大変かな?(^^;)

また、このライブラリは出力専用なので、あとは既存のPDFの表示や解析(中のオブジェクトの取得とか)ができるライブラリがあると嬉しいですね。そちらは実用的なものを作るのはなかなか難しいのでしょう、これだというものは見つけられませんでした。Adobe純正のAdobe PDF Libraryはありますが、価格を調べたらとても気軽に利用できるものではありませんでした。フリーで何か良いものはないですかね?

コメント (0)

2011年12月 8日

開発用モニタの買い替えを検討

デザイナーの方などと比べると、ソフトウェア開発者はそれほど大きなモニタ画面を必要としません。それでも最近、今のモニタ(1280x1024)では効率が悪いと感じることが多くなってきました。開発するアプリの最低動作環境が800x600や1024x768の頃ならともかく、最近はノートPCですら横幅1280クラスのものが普通になり、おのずとターゲットも変わってきていますからね。

当然それらの高解像度画面に対応するアプリを作るには、それ以上のモニタが欲しくなります。いちいちスクロールしながらチマチマと作業するのは、非常に効率が悪いのです。

実は仕事ではフルHD解像度(1920x1080)が前提のアプリも作っていて、動作チェックすら難しくなっています。HDMIでテレビ出力して確認するという裏技はあるんですけどね(^^;)

そんなわけで、近いうちにフルHDかそれ以上のモニタに買い替えることを検討しています。今のモニタは買ってからそろそろ5年くらいたつし、間違いなく仕事の効率アップに繋がるはずです。とはいえ、安物を買って今のより画質が落ちるのは嫌なので、5万円程度は覚悟しないといけないでしょうか。すぐにというわけではありませんが、ボチボチ考えていきたいと思っています。

コメント (0)

2011年9月 4日

Windows版QuickTimeのトラブル

Windows版QuickTimeのちょっと前のバージョンから、JPEG画像の取り扱いがおかしくなっているようです。例えば付属のPictureViewerでも「適切なグラフィックインポータが見つかりませんでした」などというエラーが出て、正常に表示ができません。現象が出る環境とそうでない環境があり正確には分かりませんが、最新のバージョンである7.7より少し前、7.6.6くらいから発生しているようです。

実際には直接PictureViewerを使うことはないのですが、仕事で利用している古いミドルウェアがQuickTimeに依存しており、それを使ったアプリが正常動作しなくなってしまいました。とりあえず7.6なら正常に戻ることは確認できたので、お客さんにはしばらくその環境で使ってもらうことにしました。

エラーメッセージで検索してみると、この現象はかなり昔からあるようですね。ただ、今回はごく一部の環境というレベルではなく、かなり広範囲に発生しているような気がしています。

コメント (0)

2011年8月21日

Mac OS X LionとVISE X

Mac OS X Lionでは、VISE Xで作られたインストーラーがエラーを出すことがあるようです。どうも /Library/Application Support/ のアクセス権が変わったようで、ここに何かをインストールしようとすると管理者ユーザーでもエラーになります。認証ダイアログを出すよう設定していても、Lionでは正常に表示されません。いろいろ試したのですが、どうやってもうまくいきませんでした。

Finderで上記ディレクトリのadminユーザーのアクセス権を「読み書き」に変更してやればインストールできるようになりますが、暫定的な対応ならともかく、正式な手順として、お客さんにそれをやらせるわけにはいかないですよね・・・。

まあ、VISE Xの現在のバージョン(4.1)はまだLionには暫定対応で、9月には正式対応バージョン(5.0)が出るようですから、それで改善されることを期待します。もしくは、その前にアプリ側の仕様を変えて対応することも考えています。

ちなみにVISE Xって、Universal(Power PC/Intel両対応)形式のインストーラーを作成することができるのに、それを作るVISE X自身はいまだにPower PC専用アプリなんですよね。次のバージョンでやっとUniversal化されます。遅いですねぇ(^^;)

確かに今はアップル純正のPackageMakerがあるし、もう古くからのユーザー以外、これを使うメリットはほとんどありませんから、あまり売れないんでしょうね。とはいえ、既存のものをPackageMakerに乗り換えるのはそれなりに大変なので、もう少し続けて欲しいです。

コメント (0)

2011年6月28日

CocoaでMacアプリ

週末、久々にMacのプログラミングをしました。自分で使うための小さなツールですが(例のアレです(^^;) )今回は1からCocoaで作りました。これまで仕事でiOSアプリを作ったり、Carbonアプリの機能追加でCocoaフレームワークを使ったりしたことはありますが、まともなGUIを持ったアプリを全てCocoaで作ったのは意外にも初めてです。

iOSでかなり慣れていたので思ったよりすんなりと完成しました。iOSにはないMac OS X独自のGUIなども簡単ですね。むしろiOSより楽に感じました。やりたいことが悩まず作れるようになってくると、この手のフレームワークは楽しいですよね。ただ、まだ完全にモノにしたと言うほどの自信はありません(^^;) あともう少しですね。

コメント (0)

2011年2月12日

CakePHP

ちょっと前から作りたいと思っているWebアプリがあるのですが、少し規模が大きめになりそうなので、その前にPHPフレームワークのCakePHPを試してみました。だいぶ前に友人に勧められてからずっと気になっていたのですが、今まで試す機会がありませんでした(^^;)

まずは勉強がてら、以前作ったデータベースをCakePHPを使って書き換えてみました。なるほど、よくできたフレームワークですね。コンセプトがしっかりしているし、かなり高機能。習得もそれほど難しくはなさそうです。私も自分なりにフレームワークを作って使っていたけど、このレベルのものを自分一人で作るのはよほど時間がない限り難しいですね。

一覧や入力画面など、フレームワーク側で用意されたデフォルトのデザインもなかなかです。自分で使うためだけのアプリなら、これで十分ですね。PC用のカード型データベースみたいな感覚でアプリが作れると言ったら大げさかもしれませんが、似たような印象を持ちました。

1つ気になったのは、パラメーターの受け渡しに配列(連想配列)を多用すること。入れ子になっていたりすると長くなって非常に書きにくいです。PHPだからしょうがないのかもしれないけど、他にもっと良い方法はなかったんですかね。

また、マニュアルは日本語化もされているのですが、入門編みたいなところはしっかり書かれているけど、リファレンスがちょっと不親切に感じます。オプションの内容など、必要な情報がなくて困ることが結構ありました。

とはいえ、ネットには情報が多いし、全体的にはかなり気に入ったので、とりあえずこのフレームワークを使ってみたいと思います。

コメント (0)

2011年1月25日

SONAR 3 ビヘイビア保護機能

昨年購入したMacBook Airには64bit版のWindows 7を入れたこともあり、最近はこのマシンでよくWindowsアプリケーションの開発テストを行うようになりました。しかし、メインマシンで開発したアプリケーションをAirにコピーして起動すると、インストールされているNorton Internet Securityによって必ずアプリケーションが削除されてしまい、困っています。

復元は可能で、除外アプリとして設定しておけば2度目以降の起動はOKなのですが、手順が非常に面倒です。また、除外アプリは名前で覚えているわけではないようで、再度メインマシンから新しいバージョンをコピーしてくると、また同じように処理されてしまいます。

これはNortonの「SONAR 3 ビヘイビア保護機能」というものにより行われているようで、ネットで調べてみると、やはり同じ悩みを書かれている方がいました。雛形のような単純なプログラムでもなるらしく、削除理由は利用者が少ないからということらしいです。いや、まあ開発中なので当然なんですが・・・。

この機能だけオフにしたり、特定のフォルダだけ監視対象から外す設定もできるのですが、それだとセキュリティ的には不安が残ります。勝手に削除せず、実行前に尋ねてワンタッチで除外設定できるようにして欲しいですね。

コメント (0)

2010年12月17日

JavaScript本格入門

JavaScript本格入門 ~モダンスタイルによる基礎からAjax・jQueryまで」という本を買いました。


JavaScript本格入門 ~モダンスタイルによる基礎からAjax・jQueryまで
先日もちょっと書きましたが、やはり一度JavaScriptをしっかり学んでおこうとやる気になりました。

さすがにJavaScriptの本は選択肢がたくさんあるのですが、発売が新しめで自分のレベルに合っていそうなこの本を選びました。まだ開いてもいないけど、少しずつ読み進めていきたいと思っています。

とはいえ、買ったはいいけど読んでいない本がたくさん積んである(もう本棚には入りきらない)んですよね。今も、1年以上前に買ったObjective-Cの本を毎日1〜2ページずつ読んでいたりします(^^;) でも、ペースは遅くてもゼロじゃなければいつかは終わるはずだ・・・。

コメント (0)

2010年12月13日

iOS版Safariとonbeforeunload

相変わらず、自分で使うためだけに作ったアプリを暇を見つけてはWebアプリ化しているのですが、最近、iOS(iPhone/iPad)版のSafariではonbeforeunloadイベント(ハンドラ?)が効いていないことに気づきました。

ブラウザで、画面が推移する前に発生するイベントですが、なぜかiOSだとダメです。Mac版では問題ないので、わざと効かなくしているのだと思いますが、使われると何か問題があるんですかね。

データベース系のソフトなどは、ユーザーが(私だけだけど)明示的に保存の操作をしなくてもいいように、ここでデータを保存していたのですが、そういうやり方はよくないということでしょうか。便利だったのに、ちょっと残念ですね。

それとも、何か書き方が間違っている可能性もあるかな。PHPとDBはちゃんと勉強したけど、JavaScriptは本も読まずに見よう見まねで(ネットで調べるだけで)やっているので、そろそろ限界を感じてきました。今さら初心者向けの入門書を買う気にはなれないけど、他の言語の経験者向けの、ちょっと詳しい本があったら1冊くらいは読んでおきたいですね。

コメント (0)

2010年12月 8日

iPad対応作業開始

仕事でiPad向けの開発をスタートしました。以前、作ったiPhoneアプリをiPadに対応するだけの作業ですが、久々なのでだいぶ忘れています(^^;) 最近ずっとWindowsの開発をしていたので、頭の中はすっかりC++です。でも1から作るよりは、ちょうどいいリハビリですね。

とりあえずiPadの画面サイズに合わせるところから始めましたが、画面が広いのでGUIも難しいですね。単純に大きくしただけでは格好が悪いので悩みます。本当はiPhoneはiPhone、iPadはiPadで最適なデザインにすべきなのでしょうが、それだと時間がかかってしまうので、ある程度の割り切りが必要ですね。

また今回、SDKも久々に新しいバージョン(4.2)にアップデートしたのですが、だいぶ大きくなりましたね。ダウンロードサイズが4GB近いというのは、もうそろそろ限界ではないでしょうか。アップルはXcode本体と、Mac OS X SDK、iOS SDKを別々に配布すべきだと思います。相手は素人じゃないんだし、そのほうが楽だと思うんですけどね。

コメント (0)

2010年10月28日

自分用アプリのWebアプリ化

私は結構、自分で使うためだけのアプリを作って使っています。Mac用だったりWindows用だったりするのですが、最近それらのうちデータベース系のものを中心に、積極的にWebアプリ化を進めています。例えば、以前のビデオ管理DBみたいなものです(^^;) PCの台数も増えたし、最近はiPhoneやiPadなどもあるので、やはりWebアプリにして、データがサーバ側にあるのが何かと便利ですね。

おかげで、PHPやJavaScriptもだいぶ理解が深まってきました。やはり、ある程度ちゃんとしたものを作ってみないと見えてこないものがありますね。相変わらず仕事でやる機会はほとんどないので、学習のため、ある程度しっかりした仕様のものを作ることを心がけています。自分用だとたいてい手抜きをしますからね。それでも締め切りがあるわけではないので、楽しんでやれています。

Webアプリの開発で改めて大変だなと思うのは、HTML、CSS、SQL、PHP、JavaScriptなど、文法の違う言語をたくさん駆使しなければならないことですね。例えばネイティブアプリであれば、WindowsならC++(またはC#)MacやiPhoneならObjective-Cと、その時は1つの言語にどっぷり浸かっていられますが、同時期に違ったもの(しかも微妙に似ていたりする)を並行して取り組んでいると本当に混乱します。まだまだ修行が足りないということでしょうか?

また、デバッグが大変ですね。何か良いツールがあるのかもしれませんが、今は主にMAMPとテキストエディタだけで作っているので、つまらないバグと長時間格闘したりしています。「ああ、ここでステップ実行できたら」等と思うこと、しばしばです(^^;) Visual StudioやXcodeのようなネイティブアプリ開発の統合環境は本当に便利ですね。

コメント (0)

2010年10月 6日

iPadのSplit View

iPadを購入してまだ数日ですが、1つだけ、もの凄く違和感を感じていることがあります。メールアプリなどで採用されているSplit ViewのGUIです。

Split ViewこのSplit View、iPadを横向きにして使うときは左に一覧、右にコンテンツ表示となり、なかなかクールなのですが、縦向きの場合は一覧部分が吹き出しのようにポップアップするという、一風変わったGUIになります。私は主に縦向きでiPadを使っているのですが、これがどうしても馴染めません。

もちろん、プログラマがコツコツ作り込めば縦でも横と同じように作れるようですが(設定アプリがそうなっている)そもそもメールのようにある程度、横幅が欲しいアプリの場合には向きませんよね。そう考えるとこれが良い解決策なのでしょうが、どうしても苦肉の策という印象が拭えません。なんていうか、アップルらしくないですよね。

コメント (0)

2010年10月 3日

iOS Developer Program 更新

1年ほど前に加入したiOS Developer Program(当時はiPhone Developer Program)の更新時期まで1ヶ月を切ったので、ちょっと早めですが更新しました。もう1年ですか・・・。早いものですね。

仕事で作ったものは完成させたけど、案の定、個人的にアプリを作ることはありませんでした。でもCocoaにも慣れたし、アイデアさえあれば何か作ってみたいとは思ってるんですよね。まあ、今のところアイデアは何もないんですが(^^;)

コメント (0)

2010年8月 7日

大規模サービス技術入門

[Web開発者のための] 大規模サービス技術入門」という本を買いました。特に大規模なサービスを作る予定があるわけではないのですが、Amazonで見つけて何となく衝動買いしてしまいました(^^;)

まだ全然読んでいませんが、この手のノウハウは経験しないとなかなか得られないでしょうし、きっと役に立つこともあるでしょう。

ちなみに、この本は技術書としては珍しいA5判です。ページ数にもよるけど、個人的にはこのくらい小さいほうが好みですね。

コメント (0)

2010年4月28日

Mac開発もCarbonからCocoaに

iPhone開発をやってCocoa&Objective-Cを経験したので、Macのほうの開発(仕事)もCarbonからそちらに移行していく決心をしました。ずっと逃げていましたが、遅かれ早かれCarbonは切り捨てられることになると思うので、いつかはやらなければなりません。

とはいえ、長年開発を続けている大規模なプロダクトをいきなり全て作り直すのは時間的にも予算的にも無理なので、現在のものをベースに、新規に開発する機能から徐々にCocoaを使っていくことにしました。いちばん古いアプリは10年くらいバージョンアップを繰り返していて、もともとCで作ってあったものに、後から追加したC++のルーチンが混在しています。今度はそれにObjective-Cが加わるわけで、ちょっと複雑ですね(^^;)

試しに今回、iPhoneアプリで作ったある機能をMacアプリに移植してみたのですが、思ったより楽にできました。Webサーバと通信する機能だったのですが、動作もノートラブルで目から鱗でした。これをCarbonで1から作ってたら大変だった・・・。

実際は、画像処理ではQuickDrawも捨て切れていないので、そういう部分はいつか一気に書き直さなければならないとは思いますが、今回Cocoa化へのスタートが切れただけでもだいぶ気が楽になりました。

コメント (0)

ページ: << < 1  2  3  4  5  6  7 >>