ゆうなんとかさんの雑記帳的な。

Twitterで踊ったり音ゲーしたりしてるあの名前がよくわからない人が書いてるらしいよ。

Objecctive-Cを初めて書いてみて

近々Macのデスクトップアプリを開発することになりそうなので、夕方から池袋でObjective-Cの本とかあれこれ探していました。ついでにiOSアプリとかも作れるようになるといいなーとか思いつつ、本屋さんの大きさに圧倒されたのでした…

Objective-Cを触ってみた

上の事情が判明して早速というわけでもなかったのですが、お決まりのHello Worldをやってみました。Cocoaを使ってGUIを組み立てて、ボタンを押すとテキストボックスになんか表示されるというごくごく簡単なアプリです。ごくごく簡単なアプリですが…

なんかうまくいかない

  • チュートリアル通りにやっているはずなのに、Xcodeのバージョンが違うせいか私が悪いせいかわからないけれど生成されるコードが違う
  • チュートリアル通りにやっているはずなのに、Xcodeの(ryコードが生成されない
  • チュートリアル通りにやっているはずなのに、X(ryイベントが発火しない

という事態になり、結局件のアプリを作るのにだいぶ時間がかかってしまいました。前途多難ですね。こんなにも苦労するとは思っていなかったので、やっておいてよかったです。

なんかコレジャナイ感がすごい

Objective-CというからにはC言語の親戚だろうと思うのですが、そのつもりで見ているととても異質なものに見えますねこれ。特にメソッドの実行が今まで見てきた言語とは全く違います。でもコレジャナイ感をもっとも演出しているのはそこではなくてメソッドの定義部分なんですけど…全く違うところに目がいきがちですが、微妙に違うほうがコレジャナイって感じがすることってよくありますよね。まさにそれです。それにしてもC言語のマクロってこれほどまでに言語仕様を改造(拡張?)できるくらい強力なんでしょうか…

ヘッダーファイルで俯瞰できるのはいいかも

これで終わるとただdisってるだけでいただけませんね。いいなと思ったところもあります。定義を書くヘッダーファイルと実装を書くファイルが別々になっているので、入出力の仕様だけ確認したいときなんかは、どんなメソッドやプロパティがあるか、ちゃんとコメントを整備すればヘッダーだけ見ればいいのでそこはいいかなと思いました。

メソッドチェーンするような言語じゃなさそう

1ステップ1ステップちゃんと書くか、しっかりメソッド化してやる必要がありそうです。メソッドをチェーンさせやすいRubyとは逆をいく感じですね。これも言語仕様でしきたりを強要してくる系の子なのでしょう。早いところ慣れたいですね。

ちゃんとプロパティを定義する構文があってよかった

Javaのようにいちいちアクセスメソッドをかかなくてもいいだけでもとていもいいと思います。最初コードを見たとき、getSomeMemberみたいなメソッドが目についたのでもしや…と思っていたのですが、どうやら心配はなさそうです。