2008-04-28 :-)
_ [オブジェクト指向入門]オブジェクト指向入門
オブジェクト指向とはなにか?
クラス、表明、総称性、継承、多相性、そして動的束縛から構成されるもの。( p. 850 )
オブジェクト指向であるらしいという基準( pp.28-43 )。以下の 1 つ以上の特徴があるということ?
カテゴリ
- 方法論と言語
- 実装と環境
- ライブラリ
その内訳。
- 方法論と言語
- 継ぎ目のない連続性( seamlessness )
- クラス( class )
- 表明( assetion )
- モジュールとしてのクラス
- 型としてのクラス
- 特性に基づく計算
- 情報隠蔽( information hiding )
- 例外処理( exception handling )
- 静的型付け( static typing )
- 総称性( genericity )
- 単一継承( single inheritance )
- 多重継承( multiple inheritance )
- 反復継承( repeated inheritance )
- 制約つき総称性( constrained genericity )
- 再定義( redefinition )
- 多相性( polymorphism )
- 動的束縛( dynamic binding )
- 実行時の型検査( type interrogation )
- 暫定( deferred )特性と暫定クラス
- メモリ管理とガベージコレクション
- 実装と環境
- 自動的な更新
- 迅速な更新
- 永続性( persistence )
- ドキュメント
- ブラウジング( browsing ) =拾い読み
- ライブラリ
- 基本ライブラリ
- グラフィックとユーザインタフェース
- ライブラリの進化の管理
- ライブラリにインデックスメカニズム
4798111112
_ [オブジェクト指向入門]オブジェクト指向入門 - モジュール性
5 つの基準
「モジュール性がある」と呼ぶ価値のある設計手法は、これから説明する 5 つの基本的な必要条件を満たしていなければならない。( p.50 )
- 分解しやすさ( Decomposability )
- 組み合わせやすさ( Composability )
- 分かりやすさ( Understandability )
- 連続性( Continuity )
- 保護性( Protection )
5 つの規則
前節の基準から、モジュール性を保証するために守らなければならない 5 つの規則が導かれる。( p. 58 )
- 直接的な写像( Direct Mapping )
- 少ないインタフェース( Few Interfaces )
- 小さいインタフェース( 弱い結びつき )( Small Interfaces ( weak coupling ))
- 明示的なインタフェース( Explicit Interfaces )
- 情報隠蔽( Information Hiding )
5 つの原則
前の規則と、間接的にはさらにその前の基準から、ソフトウェア構築の 5 つの原則が導かれる。( p.67 )
- 言語としてのモジュール単位( Linguistic Modular Units )の原則
- 自己文書化( Self-Documentation )の原則
- 統一形式アクセス( Uniform Access )の原則
- 開放 / 閉鎖( Open-Closed )の原則
- 単一責任選択( Single Choise )の原則
4798111112
_ [Let' CF-R4][NetBSD]Let' CF-R4 NetBSD で音楽を聴く( 準備 )
これらが必要らしい。
/dev/audio /dev/sound /dev/mixer
あるようだ。
% ls -l /dev/{audio,sound,mixer} lrwx------ 1 root wheel 6 Mar 21 21:00:48 2008 /dev/audio@ -> audio0 lrwx------ 1 root wheel 6 Mar 21 21:00:48 2008 /dev/mixer@ -> mixer0 lrwx------ 1 root wheel 6 Mar 21 21:00:48 2008 /dev/sound@ -> sound0
_ [gstreamer][Let' CF-R4][NetBSD]Let' CF-R4 NetBSD で音楽を聴く( 準備 )
何かプレイヤーっぽいものを探す。
gstreamer が多い。
マルチメディア関連のフレームワークみたいな?
とりあえず入れる。
% cd /usr/pkgsrc/multimedia/gstreamer0.10 % sudo make install clean-depends
_ [Let's CF-R4][NetBSD]Let's CF-R4 NetBSD で音楽を聽く( 失敗 )
audio/rhythmbox を入れる。
% cd /usr/pkgsrc/audio/rhythmbox % sudo make install clean-depends
おもむろに起動する。
% rhythmbox (rhythmbox:26408): Rhythmbox-WARNING **: eel_strdup_strftime does not support non-standard escape code %l zsh: invalid system call rhythmbox
死んだ。
_ [NetBSD][emacs-w3m][w3m][Emacs]NetBSD に emacs-w3m を入れる
editors/emacs もインストールされます。
% cd /usr/pkgsrc/www/emacs-w3m % sudo make istall clean-depends
load-path を追加する
(setq load-path (append '("~/usr/local/share/emacs/site-lisp") '("/usr/pkg/share/emacs/site-lisp/w3m") ← ここ '("/usr/pkg/share/emacs/site-lisp/apel") '("/usr/pkg/share/emacs/21.4/site-lisp/emu") '("/usr/pkg/share/emacs/site-lisp/ruby-mode") '("/usr/pkg/share/emacs/site-lisp/riece/") load-path))
emacs-w3m の設定。(require 'w3m-load) は必須。他はたぶん mew-dist ML から拾ってきたと思う。
;;;; ;; emacs-w3m ;;;; (require 'w3m-load) (autoload 'w3m-browse-url "w3m" "Ask a WWW browser to show a URL." t) (autoload 'w3m-search "w3m-search" "*Search QUERY using SEARCH-ENGINE." t) (autoload 'w3m-weather "w3m-weather" "*Display weather report." t) (autoload 'w3m-antenna "w3m-antenna" "*Report change of WEB sites." t)
emacs を起動する。
M-x w3m する。
Debugger entered--Lisp error: (error "Emacs-w3m of this version does not suppor$ signal(error ("Emacs-w3m of this version does not support Emacs 23; try the d$ error("Emacs-w3m of this version does not support Emacs %d; try the developme$ byte-code("\303\304!\210\303\305!\210^H\306Y\203W^@\307\310!\204\202^@\311\31$ execute-extended-command(nil) call-interactively(execute-extended-command nil nil)
/(^o^)\
この emacs のバージョンは何か? emacs のバージョンは emacs-version を評価すると分かる( コマンドラインで emacs --version しても分かる )。*scratch* バッファ等で評価してみる。評価するときは C-x C-e または C-j する。C-x C-e は結果が mini buffer に表示される。C-j は現在のバッファに挿入される。ここでは C-j してみた。
(emacs-version) ← 閉じカッコ「)」にカーソルを置いて C-j する "GNU Emacs 23.0.60.2 (i386-unknown-netbsdelf4.99.58, GTK+ Version 2.12.9) of 2008-04-02 on megumi.area51.gr.jp"
GNU Emacs 23.0.60.2 は pkgsrc の emacs じゃなくて current の emacs です。
www/emacs-w3m をインストールしたときに editors/emacs ( emacs-22.1 )もインストールされてるので( というか先日 riece をインストールしたときにインストールされてる ) emacs-22.1 を起動する。
M-x w3m して w3m を起動させる。
g して適当な URI を入力などする。
とりあえず emacs-w3m は機能してるわけですが。emacs current で pkgsrc のパッケージを使えるようにしよう。可能なのか分からないけど。
_ [おひる][きのこのクリームソーススパゲティ]おひる
きのこのクリームソーススパゲティ。
_ [飯][新じゃがとえびのにんにくパン粉炒め]飯
新じゃがとえびのにんにくパン粉炒め( ref. きょうの料理 2007-05 p.20 )
新じゃがとエビの〜はガーリックスライスを使う?<br>強い火力でがーっと作りたいかもー
よしみつくん:<br>乾燥してるガーリックスライスでした。これを *そのまま* 炒めて使ったのだけど、どうも硬すぎると思ったら入れ物に「水に浸して戻してからご使用してください」と書いてありました。いままで戻さずに使っていました。やったね
ちょwww
いや、「これ焦げてるよなあ」という味だったのでおかしいとは思ってたんですけどね (´□`)