2010年9月29日水曜日

勉強になるObjective-Cの解説サイト

勉強になるObjective-Cの解説サイトを見つけた。

http://wisdom.sakura.ne.jp/programming/objc/

C言語もちょぼちょぼしか知らないが、最近色々読んできたので,理解が整理されてありがたい。
で、なんどか参照するためにも、URLをここにメモ。

やはりObjective-Cはクラス宣言と実装の記述法が特殊なのか、と再認識。
自分のような初心者にだけ難しい(とっつきにくい)のではないのですね。

最初のこの壁を越えていくまでが,第一ハードルと見た。

実際、ほんの簡単なhello world表示でさえ、
@interface
@implementation
と書いていかなくてはいけないのはハードルですね。

まあ、Xcodeがほぼやってくれますが。

smalltalkからの言語形式を引き継いでいるから
[label alloc]といった形式でメソッドを記述するのだとも、再確認。
(物の本で何度か読んでるんですが、忘れる。。この記述法、なかなか理解しきれず、まだなじみません。)

まあ、一歩一歩ですね。

MITライセンスのオープンソースアプリ(BOX OFFICE),面白い。

知り合いの方から,MITライセンスのオープンソースアプリがある、と教えて頂いた。

「BOX OFFICE」というそう。

http://entatonic.net/boxoffices/developer/

自分で改造して、App storeで売っても良い、というのだから面白い。

ソースコードを見るだけで勉強になりそうですね。

2010年9月28日火曜日

UIKit本、ありがたい。。

「iPhoneプログラミング UIKit 詳解リファレンス」を先日入手して、参考にしている。
様々なUI関連の情報が載っていて参照するだけでも勉強になる。

まずはInterfaceBuilderを使わないHello,worldをやってみた。

この本のSDKより今のものが若干新しいので、コードが記載されているものと実際と違ったが問題なかった。
書いてある通りのコードを入力したらOKに。

これから、この本ももとに開発・学習を進めていきたい。

ただ、この本はそれなりに初歩がわかっている人向けなので、サンプルコードを実装するにはそれなりの知識がいる様子。
まあ、ぼちぼちいきましょう。。



まだ初心者である自分が無謀にもIB無しの開発に取り組みたいのは、
EpicWinというTodoアプリを使用していて、
IBを使わないUIのレンダリングが非常に早いことに魅せられたのがきっかけ。
(このアプリ、めちゃ気に入っています(笑))
http://www.epicwinapp.com/

IBは自分のような初心者にはとてもいいものだろうし、
初心者じゃない方々にも素晴らしい環境を提供しているが、
やはり余分な処理や、手を入れ難い処理もある。

で、早めに回避する方法も身につけたいな、と。

IBあり、なし、両方学習していくのが吉ですね。

で、以下が初めてのIBなし実験アプリの勇姿(?)。小さな一歩がうれしい。

ラベル(文字列)のセンタリングコードメモ

ラベルのセンタリングコードメモ。

UILabel *label = [[[UILabel alloc] init] autorelease];

//UILabelにテキスト表示
label.text=@"Hello,World";

//textAlignment=UITextAlignmentCenterでセンタリング
label.textAlignment=UITextAlignmentCenter;

2010年9月25日土曜日

naviベースアプリのeditボタン表示

navigationベースのアプリを作るとき、editボタンを表示させるには、

RootViewController.mの最初の方でコメントアウトされている以下の部分の/* */を外し、self.navigationItem.rightBarButtonItem=...の部分の行の// を外せばOK。

便利なコードがいろいろコメントアウトされていて、外せばいろいろできますな。
初心者でも。
ありがたや。。

- (void)viewDidLoad {
    [super viewDidLoad];

    // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
    self.navigationItem.rightBarButtonItem = self.editButtonItem;//この行のコメントアウトを削除
}


cellにハローワールド (メモ)

[cell.textLabel setText:@"Hello world"];

cellにtextLabelを貼って、setTextで「Hello World」を書き込む、という感じ。

cellにテキストを表示させる書式のメモでした。

kindleでわかりやすいiPhoneアプリ制作解説本、ゲット。

「iPhone and iPad apps for absolute begginer」という本が、アメリカのアマゾンで初心者に好評だったので購入してみた。

kindleで初めての電子書籍購入だったが、とても良い買い物だった。(iPhoneがあれば手軽にいつでも読めるのはいいですね。)

他にもかなりiPhoneアプリ制作本を買ったが、今のところ、この本がベスト。
今後はこの本を順に追って学習を進めていきたい。

(著者のDr Roly Lewis氏のサイト。http://www.rorylewis.com/index.html

■追記1:この本、かなりわかりやすく書いてあるので、翻訳されたら売れる気がする。。かなり英語がシンプルなので、英語のままでも読みやすいが。
著者はコロラド大学の教授で、学生に親切に教えることで有名な様子。文章が平易でポップな感じだが無駄に脱線するでもなく、一歩一歩ステップを追って解説していて好印象。前に、日本人が書いたポップな文体のcocoa解説本を買って、いたく後悔したことがあったが、この本は,無駄が無くいい感じだった。このぐらい段取りよく平易に解説してもらえるとありがたいものだ。)

■追記2:iPhone版kindleで見ると、画像が見にくいのだけ難点。コード表示が文章でなく画像になっているので、見難いがやや厳しい。mac版kindleで見直すと、画像がやはり微妙。。コードもなんだかいまいち読みにくい。。まあ、しょうがないですね。

2010年9月12日日曜日

独自キーボードアプリの開発ソースが公開されていたのでメモ。

http://code.google.com/p/networkpx/

Jail Break用キーボードアプリを開発しとられる方の開発物置き場が公開されていたのでメモ。

勉強になりそうだ。

::::::::::::::::::::::::::::::::::::::::::

http://code.google.com/p/networkpx/wiki/Using_Cangjie

漢字入力アプリもつくっておられた。
変換エンジンも読み込んでいるわけですね。いい感じですね。

::::::::::::::::::::::::::::::::::::::::::

http://code.google.com/p/networkpx/wiki/Using_Colemak

このColemakという配列は、頻出アルファベットを中断に配置して、
親指の上下移動を少なくし、入力向上を図ったものの様子。

悪くないですね。

::::::::::::::::::::::::::::::::::::::::::

http://code.google.com/p/networkpx/wiki/Using_MathTyper

これは数式タイプアプリ。
タッチすると各種記号などの候補が出る様子。

上にぴろっと出る部分の実装、習得したい。

これはJBでないDvorakアプリにも実装されていたので、可能の様子。

2010年9月11日土曜日

dvorak配列アプリがあった。

Dvorak配列アプリがあったのでメモ。
http://dvorak.dkdigital.com/Dvorak/Home.html

独自キー配列アプリを作りたいので、ちょっと興味を持った。

しかしやはり、このアプリ内でしかDvorak配列は使えない様子。
jail breakなしでオリジナルなキーボードをどのアプリでも使えるようにするのは無理なんだろうな。。

::::::::::::::::::::::::::::::::::::::::::

追記:115円で買ってみた。もちろん日本語変換はできない(笑)。

Dvorak配列は、使いこなせるといいんだろうな、と思うが、まともに使ったことはない。
しかし、やはり母音がまとまっているのは好印象。
特に日本語のローマ字入力には、母音が固まっている方がいい気がする。

追記2:ちなみに、自分が手元に持っているiOS4では、Dvorak配列が普通に使えるようですね。設定の一般のキーボードの項目内にありました。

text inputに関するビデオからのメモ(スタンフォード第11回)

keyboardに関して調べているのでメモです。

2010年2月9日のスタンフォード大のiPhoneアプリ講義が、text inputについてのテーマでした。(第11回講義)

20分頃から、質疑。キーボードに関してのプログラミングをしているAppleの中の人が講演者なのかな。

質問:「キーボードを作っていると聞いたのですが」
講師:「それについてどこまで言っていいのかな」と受け答えている様子。

が、自分の英語力では、完全理解に至らない。。orz

IBの「text input traits 」の項目でキーボードに関わる制御の幾分かを変更できることを学習。

キーボードを非表示にするにはsender、first responderが関わる、と言っていたような。