2005-07-21

ルーク、ソースを使え (Use the Soruce, Luke)  [by miyachi]

と古いSWネタですみません。BouncyCastleを使おうとするとどうしてもソースを見る必要があると言う意味でした。オープンソースの最大の利点はソースを見る事が出来ると言えるでしょう。これは使う時に非常に参考になります。

BouncyCastleのソースを追っていると何だかデジャブに陥ります。昔々遠い銀河の彼方では…じゃ無くて、昔々アップルのMacintosh向けの開発を始めたばかりの頃と重なって見えるのです。当時は開発環境はMPWでクラスライブラリとしてMacAppと言う物が提供されていました。Photoshopをはじめ古いマックのアプリのAbout画面には大抵MacAppを使っていると表記があったものです。

MPWはともかく、このMacAppは優れものでした。膨大な量のソースが提供され、最後の最後に低レベルのMacOSのAPIが呼ばれていたんです。MacAppのソースや説明を見る為の専用ブラウザ"MacApp Browser"も準備(SmallTalk風でした)されており、ノウハウの宝庫でした。何かやりたい処理があればソースを検索すると似たような処理をしているメソッドが見つかって、それを参考にして自分のコードをプログラミングしていました。

MacAppのクラス構成としては、MSのMFCに近かった…と言うか最初はどう見てもMFCはMacAppのタイニー版としか見えませんでした。しかもMFCはソースを追ってもすぐにWindowsAPIに入ってしまい、当時はMacAppとは比べ物になりませんでした。が、他に選択肢が無かったので仕方が無くMFCを使っていたのですが、現在のMFCは拡張に拡張を重ねて当時と比較すると化け物みたいですね。ちなみにMacAppはダウンロードは出来ますが既に終わっている開発環境です。

何はともあれ昔も今もマックの開発環境は情報が少なく、あっても英語だけだったりと最後はMacAppのソースを見るのが基本でした。BouncyCastleやCrypto++を使っていてもやはり最後はソースを見て何をどうやって行っているのかを見るのが重要だと思います。暗号関係も情報が少ないです…あっても英語と言うのも同じです。まぁBouncyCastleCrypto++もメーリングリストがあって検索が出来るだけマシとも思えますね。

他の人の優れたソースを見る事は自分のプログラマとしてのレベルアップには欠かせないようにも思います。ですから「ソースの力を信じろ。ルーク、ソースを使え!」と言っておきましょう。そうやって使っていると不満な点や足りない点が見えてくるかもしれません。そうしたら貢献のチャンスですね。早くそのレベル(ジェダイ・マスター?)になりたいと日々精進するのでした。

2005-07-21 12:31:21 - miyachi - [公開活動] -

コメント一覧

コメント無し

コメントを書く

このアイテムは閲覧専用です。コメントの投稿、投票はできません。