やまのさん、上手です。
> > keep th tests completely in sync. ですので、
> > *テスト同士の同期を保つ(同士がぶつからない)* では?
>
> 同期をとることができるのは、テストとコードじゃないでしょうか?
> つまり、一度書いたテストは頻繁に実行され、かつエラーがあれば修正される
> ので、コードとテストは常に同期がとれているということだと思ったのですが。
内容的にはそうですね。
>
>
> -- やまの @ XP Installed を読むためには Smalltalk を勉強しないといけないのか…
妙なところに反応してます。
私は、XPとSqueakのために勉強を始めました。
きっかけはオブジェクトの広場「オブジェクト指向再入門」での梅澤さんの
Squeak の紹介です。
http://www.ogis-ri.co.jp/otc/hiroba/technical/Squeak/index.html
http://www.mars.dti.ne.jp/~umejava/smalltalk/squeak/index.html
衝撃を受けました。同僚に「金鉱脈にぶちあたった」と言って変な顔をされまし
た。
調べる程に、その認識は増して行きまして、今年の春に無償使用が可能になった
Smalltalk の標準開発環境・実行環境・ライブラリである VisualWorks をダウン
ロードして動かしだしてから、確信に変わりました。
Squeak関係の人は、「SqueakはLinuxを数倍上回る大ブーム」になると言ってます
が、私はこれは最低限だと思います。
Smalltalk関係の人は「JavaはSmalltalkのいいとこどり」といいますが、確かに
仮想マシンにしても、ライブラリにしても(まだまだSmalltalkには遠くおよばな
い)、借用であることは開発者も表明していますね。統合開発環境は提供できて
いないし。
What is Java?
Java is a lightly-statically-typed, simple version of Smalltalk with the
syntax of the 'C' family.
javaは、軽量、静的、型を持った、Smalltalkのシンプル版で、C言語ファミリー
のシンタックスを持っている
http://www.chimu.com/publications/JavaSmalltalkSyntax.html
の一番下の行。
なんて言う人もいます。
今回のVisualWorksの無料ダウンロード(個人開発分)は、Javaの大成功を見た本
家の反撃開始のサインと思います。Webで動くクライアント環境も出来ています。
私はSML(青木淳さんの管理しているML)のログで見たプログラマの方の
「Javaで大規模開発をしようと思ったが10年待った方がよさそうだ」
という発言を鮮明に記憶しています。Javaがどうだ・・では無くて、Smalltalkの
環境が比較に成らないほど完成度が高いんだと受け取りました。
ライブラリの内容は驚異的です。Smalltalk界で25年以上かけて蓄積されたものに
加えて、世界中のプログラマが Squeak 用にがんがん開発しています。ライブラ
リのソースは全部オープン、仮想マシンも言語自身もソースオープン、全OSで
動き、 PDAでも動く(Zaurusで稼働してます。かなり大きな動きがあるようです)。
これで爆発的にヒットしない筈がない、というのが私の考えです。
後、やっていて楽しいですね。個人でプログラミングしたり、子供に教えるのは
全部 Smalltalkにするつもりです。それから、参加型の Webサーバもつくれます。
これはまだ調べていませんが、社内で立ち上げようと思ってます。
XPも、Smalltalkから来ているから、楽しいんだと思います。
ObjectDay2000 の 梅澤さんのスライド
「デザインパターンも、リファクタリングもXPも、ぜーんぶSmaltalkコミュニテ
ィから」、ですね。
それから、mac の次のOS MacOS X でObjective C(Smalltalk系)が正式にサポー
トされるそうです。Windows よりずっといいという話を聞きますので、これも支援材
料かも。
(XP ML)
Actually there are several "standard" programming environments.
1. Cocoa using Objective C
2. Cocoa using Java
3. Java 2 Standard Edition with Hotspot and other buzzwords
4. Carbon using C/C++/RealBasic/MacPython/MacPerl/etc...
5. QuickTime using C/C++
6. QuickTime using Java
7. BSD Unix command-line apps using C/C++/Unixerl/Unix-Python/etc...
Squeak のホームページを7月位につくる予定で、ぼちぼち材料を入れてます。
オープン前ですが、リンクは貼ってありますので、ご参考まで。
http://www.kk.iij4u.or.jp/~y-kamite/
(では)