Delphi の「Objective-C」風のプログラミング
最近、iPhoneの開発言語である「Objective-C」や、Lotus Notesで「サーバーサイドのJava Script」を使い始め、
オブジェクトだけを操作するプログラミングの「心地よさ」「読みやすさ」というのが感じられるようになった気がする。
改めて自分の書いた「Delphi」のソースを眺めると、「読みにくい」、「1行が短い」、「なんでオブジェクトを使わないのか >自分」などの残念な印象が残る。
「Delphi」で「Objective-C」風のプログラミングが出来ないか、ちょっと考えてみた。
◆「Delphi」と 「Objective-C」、「Java Script」の違いは?
「Delphi」と 「Objective-C」、「Java Script」の違いは何だろうと、それぞれの特徴を上げてみた。
もちろん、サポートするプラットホームは異なるが、これはおいときます。
「Objective-C」の特徴
・クラス、メソッド名等の名称が極端に長い 最初は戸惑ったが、慣れてくると読みやすさが実感できる。 ・C言語にオブジェクト指向の機能を付加した言語 C言語がそのまま利用可能だが、C言語の提供する変数、関数はほとんど使わない。 文字列、数値もオブジェクトに変換(ラッピング)して処理する。 ゆえに、使用する変数はオブジェクトを入れるポインタ型変数になる。
「サーバーサイドのJavaScript」の特徴
・ブラウザで使うJavaScriptと異なり、サーバー側での処理に特化した言語 UI系のクラスはサポートされない。 Lotus Notesから提供されるクラスをひたすら使うことになる。
「Delphi」の特徴
・高機能な言語 > なんでもできそう ・ポインター型の変数と、非ポインタ型の変数を混在して使うケースが多く、ソースが読みにくい 特に^(キャレット)@(アットマーク)は読みにくい
◆「Delphi」で「Objective-C」風のプログラミングするには?
思いついたのは、下記2点。
・^(キャレット)@(アットマーク)を使わないようにする クラス意外を入れるポインタ型変数は使わない record型は使わない ・クラス名、変数名を後で意味がわかるように、省略しないで長めに書いてみる
かなりアバウトだが、試行錯誤して自分流のルールを探してみたいと思う。
つづく...