一定期間更新がないため広告を表示しています
1. 初めに この文書の目的は、 Python で自前の class を作るとき、メソッドの第一引数がそのクラスのインスタンスそれ自身 (一般に self と書かれる) であることの理由を説明することです。 他の言語ではメソッドを定義するときに第一引数をインスタンスにするという方法は取り入れておらず、 this などの予約語を使ってインスタンスを表すのが一般的です。 Python だけが、独自の流儀をとっています。 しかし、このことを説明したサイトは見当たりませんでした。 どのサイトもそれは決まりごとだで済ませてしまっています。 しかし、それではどうも Python のクラスシステムを理解した気になれないので、Python でクラスシステムが どのように実装しているか推測しながら、例の self について説明したいと思います。 2. オブジェクト指向プログラミングの復習 オブジェクトとは、
これは『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)をPythonに翻訳してみようというシリーズです。 Rubyによるデザインパターン 作者: Russ Olsen,ラス・オルセン,小林健一,菅野裕,吉野雅人,山岸夢人,小島努出版社/メーカー: ピアソン桐原発売日: 2009/04/01メディア: 単行本購入: 13人 クリック: 220回この商品を含むブログ (66件) を見る デザインパターンの原則から 変わるものを変わらないものから分離する インターフェイスに対してプログラムし、実装に対して行わない 継承より集約 委譲、委譲、委譲 必要になるまで作るな(これは「Rubyによる〜」の筆者による) 記事 Template Methodパターン Strategyパターン Observerパターン Compositeパターン Iteratorパターン C
■ ウイルス罪法案、どうしてこうなった 前回で書ききれなかった「どうしてこんなことになったのか」の件。 結論だけ先にざっくり言えば、ワーム(自己増殖能力を持つもの)を想定していた人と、トロイの木馬(伝染の手段として人による起動を要するもの)*1を想定していた人が混在していて、その認識の違いを確認することなく議論してきた(法制審や国会において)結果であろうと思う。 それはどういうことなのか。 私はこの問題を最初に理解した2006年10月22日の日記「不正指令電磁的記録作成罪 私はこう考える」で、「法制審議会の議論はプログラムには多態性があるという視点を欠いている」と書いた。 つまり、この不正指令電磁的記録の罪が、文書偽造罪や通貨偽造罪とパラレルに設計されているといっても、偽造文書や偽造通貨は、作成された時点で偽造文書かそうでないかは確定するのであって、誰にどう渡すかによって偽造文書になったり
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く