- オブジェクト指向なんて今すぐやめてください
813 :デフォルトの名無しさん[sage]:2014/08/30(土) 00:21:42.32 ID:fktBCnc4 - >>811
>>810 では「C言語のmanではintもfloatも"object"だ。」とあるけど、 この "object" のクラスとメソッドは何か説明できる? またCコンパイラの吐く "object"、いわゆる拡張子が *.o なバイナリファイル、 この "object" のクラスとメソッドは何か説明できる? これらが >>810 で書いた「一般的な文脈」を指す こうした文脈における "object" の意味と オブジェクト指向に関する文脈における "object" の意味は異なるだろ?って話だ
|
- クラス名・変数名に迷ったら書き込むスレ。Part24
723 :720[sage]:2014/08/30(土) 00:45:18.22 ID:fktBCnc4 - >>722
見たいというのなら、見せてあげようw http://play.island.ac/codepaste/code?id=1592 命名について、それが必要とあれば名前の長さは気にしない主義なので、 こういったクソ長い名前を平気で書いている (ただし、数学的なアルゴリズムを表現するコードであれば、 x y z i j k といった1文字の名前も平気で使う) なお、これでも80桁のターミナル幅を越えていない (正確には vim で行番号表示しているから76桁以内になる) 仕事では UNIX C がメインだけど、C でも同じスタイルだね 過去に他人から長過ぎるという指摘(苦情?)を受けるといった記憶は無い
|
- オブジェクト指向なんて今すぐやめてください
815 :813[sage]:2014/08/30(土) 01:01:32.44 ID:fktBCnc4 - 細かいけど、冒頭にあるアンカのミスを訂正
X:>>810 では「C言語のmanではintもfloatも"object"だ。」とあるけど、 O:>>808 では「C言語のmanではintもfloatも"object"だ。」とあるけど、
|
- 【Python】スクリプト バトルロワイヤル46【pl,rb,php,js】
91 :デフォルトの名無しさん[sage]:2014/08/30(土) 12:42:50.26 ID:fktBCnc4 - >>87
自己紹介乙w、ついでに添削しとくね > 私のIT技術への興味の薄れは半端ない > つまり、私にとってIT技術さほど重要なものではなくなってきた 板違いだから、続けたいならマ板へ逝きなされ あと IT は "Information Technology" の略語だよ 「馬から落馬した」みたいな言葉を平気で使う 森元総理みたいなIT音痴はプログラマには向かないと思うね
|
- 【Python】スクリプト バトルロワイヤル46【pl,rb,php,js】
102 :デフォルトの名無しさん[sage]:2014/08/30(土) 20:40:39.56 ID:fktBCnc4 - >>97
class Command attr_accessor :do, :undo def initialize @do = proc do end; @undo = proc do end end end class Journal attr_accessor :redo, :undo, :do_it def initialize @redo = proc do end; @undo = proc do end @do_it = proc do |command| command.do[]; undo = self.undo; redo_ = self.redo @undo = proc do command.undo[]; @undo = undo @redo = proc do command.do[]; @redo = redo_ end end end end end active_journal = Journal.new hello_command = Command.new hello_command.do = proc do puts "Hello" end hello_command.undo = proc do puts "Bye" end active_journal.do_it[hello_command] active_journal.undo[] active_journal.redo[]
|
- クラス名・変数名に迷ったら書き込むスレ。Part24
735 :723[sage]:2014/08/30(土) 21:32:21.08 ID:fktBCnc4 - >>730
双方向グラフを表現する総称的なクラスライブラリとして設計すれば改善されるけど、 ある目的で「正しく動く」ことを優先して設計したから 力任せで冗長なコードになってしまった、というのが率直な言い訳 >>731 もうかれこれ20年以上前、Smalltalk-80 や NeXTSTEP はもちろんのこと、 OSF/Motif や X-Window System も名前を省略しないなかったからねぇ 自分も省略しなければ周囲も省略しないから、そんなもんだと思っていたよ とはいえ、当時の社内の別の職場では xmt_msg_blk() とか mak_cfg_tbl() みたいな三文字省略語を使っていたから、「方針の一貫性」が大切なんだと思う あなたはどちらをお好みですか?という選択だから、好きな方を選べばいい (ちなみにxmt_msg_blk() と mak_cfg_tbl() を省略せずに書くと、 transmit_message_block() および make_configuration_table() になる) あと、>>723のコードも見れば分かるように、前置修飾子(プレフィックス)には 省略した同義語(シノニム)を積極的に使っている たとえばモジュール名の MOLA は Model::Object::Logial::Abstraction の省略形で、 変数名の mo_xxxx は Model::Object 下のインスタンスを表している(>>63,81 も参照) >>734 自分は短く省略してコメントを書くくらいなら、迷わず長い名前で書くね たしかこれは「プログラム書法」という書籍の教えだったと記憶している
|