Engineer as a Lifestyle @tenkoma

What We Find Changes Who We Become -- Peter Morville著『アンビエント・ファインダビリティ 』

http://zephyrfalcon.org/labs/beginners_mistakes.html[http://www.voluntas.net/natural/2006/03/post_105.html経由]

ひととおり読んでみましたが,Python初心者というより多言語経験者がやらかす間違いといった感じでしょうか.一番最後のSome adviceが,興味深い.気付きにくいこと,Pythonの強みなど.

Dynamic languages allow for a different type of software design. People usually don't realize this immediately.
(超訳動的言語ってのはそれぞれが異なる種類のソフトウェアデザインを許容するものだ.通常,すぐにはこれに気付かない)

  • highly dynamic objects (add attributes, methods on the fly)(超・動的オブジェクト(属性やメソッドをすぐ追加できる))
  • "signature-based" polymorphism, sometimes called "duck typing" ("if it walks like a duck and quacks like a duck, it might as well be a duck" :-)(特徴を基礎としたポリモーフィズム,ときどきダックタイピングって言われてるヤツ.("もし,アヒルのように歩いてアヒルのように泣くならそれはアヒルかもね"))
  • powerful built-in objects; try lists and dicts first before reinventing the wheel(強力なビルトインオブジェクト;車輪を再発明する前にまずリストや辞書を試してみてよ)