Objective-CとPyObjCに関する備忘録 其の一

現在このブログは中途半端に移行されていますので、画像が表示されなかったり、レイアウトが崩れたりする可能性があります。
この記事を旧ブログで閲覧するには、以下のURLからご覧ください。
http://blog2.monospace.jp/2007/11/12/objc_memo_01/

Objective-Cの世界では、こんな感じでメソッドを使うわけですが、 [code]dict = [NSDictionary dictionaryWithObject:@"PyObjC" forKey:@"Python"];[/code] これをPyObjCで書くと、 [python]dict = NSDictionary.dictionaryWithObject_forKey_(u'PyObjC', u'Python')[/python] こんな感じにやたらと長いメソッドになります。 Objective-Cが引数にラベル名をつけるとか、特殊な実装してます。SmallTalkがこういう感じなんですかね。知らないですが。 PyObjCでは、メソッド名をアンダースコアで区切ってラベルをくっつけます。さらに最後がアンダースコアで終わります。 @IBActionでデコレートしたメソッド(アクションメッセージを送信する)での話ですが、 気軽にアンダースコアで区切ったメソッド名を使うと痛い目にあいます。(あいました。) PEP8とかDjangoの標準コーディング規約で、メソッド名をアンダースコアでって言われてるのでなんか違和感あります。 PyObjCのコーディングするときは、mixedCaseに統一すべきなのでしょうか。 PEP8だと、広く使われている文脈なら仕方ないから使ってもいいって書いてあるなあ。 PEP8 - Style Guide for Python Code(和訳) Django プロジェクトに協力するために - コーディングスタイル
Posted at: 
2007/11/12 04:59:15
0 Comments
0 TrackBacks
Tags: 
Trackback: 
http://blog.monospace.jp/2007/11/12/objc_memo_01/trackback/

TrackBacks

まだ登録されていません。

Comments

まだ登録されていません。

Add Comment

Add Comment