6月2009

[本]iPhoneアプリケーションプログラミング

最近本屋に行く暇がなく、残念な日々が継続していますが、たまたま空き時間ができて本屋に行った時に見つけました。

iPhoneアプリケーションプログラミング iPhoneアプリケーションプログラミング
新居 雅行

技術評論社 2009-06-19
売り上げランキング : 2291

Amazonで詳しく見る by G-Tools

C言語でプログラミングの経験があれば、十分に読めるものとなっています。iPhoneアプリケーションの基礎が詰った本なので、iPhoneアプリケーション開発に興味のあるデベロッパの皆さんに、とてもお勧めできる一冊です。

併せて、こちらもどうぞ。

詳解 Objective-C 2.0 詳解 Objective-C 2.0
荻原 剛志

ソフトバンククリエイティブ 2008-05-28
売り上げランキング : 4891

Amazonで詳しく見る by G-Tools

プログラミングの魅力とは?

私はプログラミングが好きです。しかし、プログラミングの魅力を他の人に伝えようと思った時、非常に困りました。どうやって面白さを伝えられるのか、見当がつきません。どうやらプログラミングを楽しいと思う人間は少数派のようであり、私は関数の仕組みやオブジェクト指向を理解した時には、仕組みの素晴らしさに驚きと感動を受けましたが、どうやら、そのように感じる人は少ないようです。

前にも一度書いたことがあった気がしますが、私がプログラミングをしていて楽しい段階のひとつには、クラスのメソッドを書き始める時があります。これからある問題が抽象化されて、より単純化されていくであろうという期待や、まだコードが綺麗に保たれている状態を見ると、とても良い気分になります。これが思惑通りにきれいなコードを保ったままクラスを作成できたときほど、大きい満足が得られることはありません。

さて、このような面白さは、どうやったら伝えることができるか。なかなか難しい問題です。

Snow Leopard 注目の技術

今週明けに、WWDCの基調講義がありましたが、私の場合は、 iPhone より Snow Leopard に注目してました。ほとんど新しいことは発表されなかったと思いますが、せっかくなので、Snow Leopard で搭載予定の最近のテクノロジーについて軽く触れておきましょう。

Snow Leopard では、ここ最近よく目にする最適化技術を3つ取り入れています。

1. 64bit化
最適化というのは微妙かもしれませんが、ようやく64ビット化が完了します。メモリの値段が非常に安いので、早く4GB以上のメモリを扱いたいですよね。

2. Grand Central Dispach
マルチコアCPUに対して、適切にタスクを割り振る技術です。マルチコアが普通の時代なので、それを活かすためには、こういう技術が重要となってきます。どんな API が用意されるのか楽しみですね。ただ、それを利用するような特殊なソフトウェアを、自分が作るとは思えませんが。それとも、マルチスレッドにするときは、どんどん GCD を使うのでしょうかね。

3. OpenCL
普段暇を持て余しているGPUに対して、普通の演算処理もさせる技術です。こちらもどのような用途に対して有効なのかよくわかってませんが、私が作るようなレベルのアプリケーションでは、利用することはないかもしれません。

個人的にもっとも注目しているのは、 QuickTIme X です。前々から動画関係のアプリケーションを作りたいとは思っているのですが、現状の QuickTIme API は、Cocoa比べるとだいぶレガシーな感じなので、ドキュメント見る気すら失せていました。 QuickTime X は、全く新しい API を提供してくれるはずなので、 Snow Leopard の情報が公開されたら、まずは QuickTimeからドキュメントを読もうかと思っています。

もっとも深刻な問題といえば、私が iBook G4しか所有していないこと。Snow Leopard では Power PC をサポートしないので、Intel Mac を購入する必要があるわけです。とりあえず、20万円くらいの iMac を買おうかなと思って、現在お金を貯金中です。。。

http://www.apple.com/jp/macosx/

検索結果が戻りつつあります

しばらくサイトにアクセスできない状態が続くと、そのページは検索結果から取り除かれることがあります。つい先日まで、このブログもそのような状態にあったわけですが、ようやくgoogleの検索結果が元に戻りはじめました。

このブログは、今の記事よりも、昔の記事の方がアクセスが多いので、検索エンジンに載らないとなると大問題です。昔のような順位に戻るか心配でしたが、googleはちゃんとこのサイトを覚えていてくれたようです。

プログラムのネタを書きたいのですが、時間がなくて、このようなネタしか書けません。とりあえず、そろそろNSUndoManagerをネタにしたいんですけどね…

初心者にstdioはつまらないですよね

C言語を勉強するときは、ほとんどの場合stdioを使って勉強し始めると思います。stdioで十分楽しめる人もいるとは思うのですが、しかし、大抵の人は単にテキストのインプット/アウトプットでは、つまらないと思うのです。

そこで、簡単にグラフィカルな操作のできるライブラリがあれば、もう少し楽しく勉強できるのではないかと、思ったりするわけです。そういうわけで、ActiveBasicのN88互換でできるちょっとしたことが、C言語でもできればいいなーと、最近思っています。

Yahoo!デベロッパーネットワーク

Yahoo!デベロッパーネットワークというものがありまして、Yahoo!が様々な WEB API を提供しています。

個人的に前から注目しているAPIは、テキストの分野です。特に、日本語形態素解析では面白いことができそうなので、どう応用するか考えているだけでも暇が潰せそうです。いくつかのアプリケーションも考えているのですが、暇がなくて開発している暇がありません。

それと、ついこの前デベロッパーネットワークのサイトを開いたときに思い出したのですが、そういえばYahoo!もかな漢字変換のAPIを提供しているんですよね。Social IM をちょっと変更すれば、Yahoo!のかな漢字変換IMも簡単に実装できそうです。

最近プログラミングに割ける時間が少なくて残念ですが、今年は来年以降の投資期間の予定になっているので、そんな欲張りなことを言ってはいけない気がします。

Safari4のカバーフローが意外と便利

Safari4 Beta が公開されたときに、早速いれたのですが、そのときはHatenaのトップページでなぜか落ちてしまう現象が発生していたので、すぐにアンインストールしてしまいました。おそらく、うごくメモ帳の大量のgif画像が原因だったと思われます。

しばらくして最近、ニコニコ動画のランキングページがやけに重くなり、ニコニ広告にFlashを多用しているのではないかとソースを見たところ、単にJavascriptでした。これが重さの原因ではないのかと思い、Javascriptが高速になったといわれるSafari4を再度インストールしました。

すると、思った通り、ランキングページもすいすいスクロールできるようになったので、とりあえず安心しました。スペックが低すぎて、ランキングページすら満足に見れなくなったら、どうしようかと思っていたところです。

ところで、Safari4にはいろいろな新機能がありますが、そのひとつに、ブックマークや履歴をカバーフローで表示できる機能があります。これが意外と便利な機能で、とくにpixivのブックマークを見るときにすごく役に立ちます。

Safari4 - ブックマーク - カバーフロー

ちょうどユーザーの画像が並んで見えるので、目的のページを見つけやすいです。

サーバーが復帰したようですね

もうブログを書き始めてから数年が経ちましたが、ブログが書けないと意外に寂しいものですね。3日で終わるだろうと思ってはじめたブログが、まさか生活の一部になるとは思っていませんでした。

というわけで、サーバーが復帰したようなので、これからもよろしくお願いします。そして、山本さんお疲れ様です。もう少しだけActiveBasicのお世話になろうと思います。自宅サーバーを立てたので、そのうちそちらに移転するかもしれません。

ちなみに、実はサーバーが落ちている間にもブログを何件か更新したのですが、間違ってデータベースを上書きしてしまって、なくなってしまいました。が、昨日書いたSafariの記事はその後に書いたものなので、次のエントリで投稿しておきます。