トップページ > プログラム > 2015年12月09日 > ZwktDk40

書き込み順位&時間帯一覧

1 位/184 ID中時間01234567891011121314151617181920212223Total
書き込み数711021100000001201200001029



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
Perlについての質問箱 64箱目 [転載禁止]©2ch.net
【JavaScript】スクリプト バトルロワイヤル52【php,py,pl,rb】 [転載禁止]©2ch.net
今までみた絶望的なソースコード [転載禁止]©2ch.net

書き込みレス一覧

オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
557 :デフォルトの名無しさん[sage]:2015/12/09(水) 00:02:39.55 ID:ZwktDk40
>>556
だってメソッドがなければ例外が出るじゃん?
それじゃ意味ないよね?

動的型だって、メソッドがなければ正しく動かないわけで
いけないわけで。

メソッドが1個しかないインターフェースを
継承してるのと何が違うの?
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
559 :デフォルトの名無しさん[sage]:2015/12/09(水) 00:18:03.56 ID:ZwktDk40
あるオブジェクトの配列をソート関数に渡せるか?という問題で考えて見た。

○○型を継承とコードに書く必要があるか?
・静的型・・・書く必要がある
・動的型・・・書かなくてもいい。
※動的型はちょっとだけタイピング数が減る

正しく動作させるには、指定されたメソッド(compareメソッド)を実装する必要があるか?
・静的型・・・実装する必要がある
・動的型・・・実装する必要がある
※どちらも同じ

ソート関数は渡された配列のオブジェクトにcompareメソッドがあると意識しているか?
・静的型・・・意識している
・動的型・・・意識している
※どちらも同じ

compareメソッドがなければどうなるか?
・静的型・・・コンパイル時点でエラーがわかる
・動的型・・・実行しないとエラーがわからない
※動的型はエラーに気づくタイミングが遅い

正しく動作するためには、メソッドAとBとCが必要です。と全部列挙するのが面倒くさい
・静的型・・・○インターフェースを実装してくださいと言い換えられる
・動的型・・・メソッドAとBとCが必要ですと書かなければいけない
※動的型はコメントを詳しく書く必要がある。


やっぱりこの点では動的型のほうがデメリットが多いなぁ。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
562 :デフォルトの名無しさん[sage]:2015/12/09(水) 00:22:21.20 ID:ZwktDk40
>>558
Javaだと、class.getDeclaredMethodsだね。

静的型だと実行時に型情報はなくても良いものだったから
パフォーマンスのために保存していない情報で、
従来は取得できないものだった。

今はあったら便利ってことで実行時型情報を
リフレクションと呼ばれるカテゴリの関数で
取得できるようになってる。

少し物々しくなるけど、今ではほとんどの言語で
メソッド一覧は取得可能だよ。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
564 :デフォルトの名無しさん[sage]:2015/12/09(水) 00:26:38.33 ID:ZwktDk40
コネクションチェックってなんだよ?
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
565 :デフォルトの名無しさん[sage]:2015/12/09(水) 00:29:30.37 ID:ZwktDk40
>>560
動的型だと、メソッド一覧の取得はあまりないが、
メソッドが存在するか?のチェックは時々ある。

それは変数に型がないので、型の違いによるディスパッチ。
要するに、引数の型が違う同じ名前のメソッドを定義する
多重定義(オーバーロード)が使えないから、

プログラマが自分で、メソッドがあればこっち、
なければこっちって書く必要があるから。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
568 :デフォルトの名無しさん[sage]:2015/12/09(水) 00:49:21.60 ID:ZwktDk40
> コンパイラエラー盲信かテストか

コンパイラエラーを盲信している奴なんて居ないと思うけど?

コンパイラエラーをバグだと思うのは初心者ぐらいで
普通は誤字脱字程度の扱いでしょ?
レビューやテストに出す前の簡単なチェック

その誤字脱字程度の簡単なチェックが、テストとか大きな話になるのが動的型なだけで。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
571 :デフォルトの名無しさん[sage]:2015/12/09(水) 00:57:22.11 ID:ZwktDk40
>>570
え? 何か間違いでもある?
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
573 :デフォルトの名無しさん[sage]:2015/12/09(水) 01:14:48.96 ID:ZwktDk40
なんだ。それだけのことか。

誤字脱字 "程度の扱い" って書いたんだよ。
誤字脱字そのものじゃない。


あ、間違えてましたwww
ごめんねー。程度の軽いノリの問題だって話。
コンパイルが通ってからが、バグとテストとの本当の戦いでしょ?
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
576 :デフォルトの名無しさん[sage]:2015/12/09(水) 02:38:19.01 ID:ZwktDk40
>>574
> コンパイル通ってからの、本当の戦いを少しでも軽減したいってことだよw

そうそう。

動的言語だとコンパイルってものがないから、
本当の戦いにどうでもいいようなものまで連れて来てしまう。

そりゃテストを書けば見つけられるだろうけど、
テストが漏れていたりすればテストではわからない。
それだと見つけるまで時間がかかってしまう。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
578 :デフォルトの名無しさん[sage]:2015/12/09(水) 04:32:58.97 ID:ZwktDk40
インタプリタは1行毎に意味を解釈して実行する。
Perlについての質問箱 64箱目 [転載禁止]©2ch.net
732 :デフォルトの名無しさん[sage]:2015/12/09(水) 04:34:41.35 ID:ZwktDk40
>>731
文字コードの問題って?
言い方がアバウトすぎる。その言い方だと文字コードに
関する全ての問題が解決したかのようだ。

あたり前だが、どんな文字コードも扱えるってだけで
文字コードの変換は必要。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
580 :デフォルトの名無しさん[sage]:2015/12/09(水) 05:27:33.68 ID:ZwktDk40
うん、大体あってる。1行ごとじゃない時点でインタプリタではないけれど。
あとインタプリタは同じ行を毎回解釈するって点も違う。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
583 :デフォルトの名無しさん[sage]:2015/12/09(水) 06:15:38.80 ID:ZwktDk40
インタプリタは簡単だよね。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
591 :デフォルトの名無しさん[sage]:2015/12/09(水) 14:45:51.19 ID:ZwktDk40
>>588
> むしろ型が複雑すぎるがゆえのキャストミスのほうが多い

動的言語は大変だね。キャスト出来ないことを
コンパイル時にわからないから、そういうことになる。
【JavaScript】スクリプト バトルロワイヤル52【php,py,pl,rb】 [転載禁止]©2ch.net
642 :デフォルトの名無しさん[sage]:2015/12/09(水) 15:28:58.05 ID:ZwktDk40
日本でRubyが成功し、海外ではPythonなのは
やっぱり開発者が日本人だからでは?
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
593 :デフォルトの名無しさん[sage]:2015/12/09(水) 15:37:51.16 ID:ZwktDk40
>>592
その言語とでてくるメッセージを教えて下さい、
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
596 :デフォルトの名無しさん[sage]:2015/12/09(水) 17:06:33.64 ID:ZwktDk40
> エラーにはならない
> 例外を投げるだけだから問題にならない

例外になったら動かないじゃんw

そういや例外のログがでてるのをみて、
これは正常な動作ですって言ってた某社SEがいたな。
もちろん無償で直させたけどなw
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
598 :デフォルトの名無しさん[sage]:2015/12/09(水) 17:14:13.71 ID:ZwktDk40
> 例外を投げるのはデフォルトの動作だからさ

デフォルトをメソッドが見つからなければ何もしないに
変更したほうがいいのでは?
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
599 :デフォルトの名無しさん[sage]:2015/12/09(水) 17:15:11.65 ID:ZwktDk40
例外を投げたら止まるわけだからまずいよね?
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
601 :デフォルトの名無しさん[sage]:2015/12/09(水) 17:17:00.19 ID:ZwktDk40
>>600
つまりキャッチしなければ、止まるっていうことだよね?

システムは止まったら行けないよ。それは
エラーということ。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
603 :デフォルトの名無しさん[sage]:2015/12/09(水) 17:21:04.43 ID:ZwktDk40
エラー(例外)に対応すれば止まらない。という
当たり前の話をしてるんじゃないんだよね。

そもそもエラー(例外)がでないようにするには
どうするかって話なんだから
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
605 :デフォルトの名無しさん[sage]:2015/12/09(水) 17:22:48.60 ID:ZwktDk40
>>602
今は、正常に動作するためには
どうするかって話をしているだよ。

例外すら出てはいけない。キャッチしないなんてもってのほかだ。
キャッチしても正常に動作しなければ、それも意味がニア。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
606 :デフォルトの名無しさん[sage]:2015/12/09(水) 17:23:18.22 ID:ZwktDk40
タイプミスしたw

× それも意味がニア。
○ それも意味がない。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
607 :デフォルトの名無しさん[sage]:2015/12/09(水) 17:24:02.66 ID:ZwktDk40
当たり前だと思うけど、メソッドがないという
例外が出るときはバグだよ。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
609 :デフォルトの名無しさん[sage]:2015/12/09(水) 17:28:27.85 ID:ZwktDk40
>>608
言葉遊びがしたいの?

正しく動作しないならば、
それはシステムエラーだよ。

画面に「システムエラーです」って表示されたら
それはエラーなのは当たり前。

システムエラーですっていうメッセージを表示するという処理をしているので
正常に動作していますって言う奴は某社SEぐらいだよw
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
611 :デフォルトの名無しさん[sage]:2015/12/09(水) 17:31:34.50 ID:ZwktDk40
それでも正常に動かないからバグだよね?
ソフトウェアっていうのは書いた通りに動く。

だからこれはバグではありません。
そう書いてあるんだから!っていうのは
なんの説明でもないよ。

仕様を満たしていないのはバグであり
メソッドが見つからないというのもバグ
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
612 :デフォルトの名無しさん[sage]:2015/12/09(水) 17:32:35.81 ID:ZwktDk40
「メソッドが見つからない」というバグを
防ぐ方法を教えてあげよう。

それは変数にメソッドがちゃんとあるか
型チェックをするのだ。
オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
613 :デフォルトの名無しさん[sage]:2015/12/09(水) 17:35:43.01 ID:ZwktDk40
ふぅ。結局型チェクをすることはバグを防ぐことにつながり、
動的にしか型チェックが出来ないと、型チェックするのを忘れて
バグにの元になり、手動で型チェックしたとしても手間がかかるわけか。

ちくしょー!結局型チェックは素晴らしいって
結論になっちまったぁー!
今までみた絶望的なソースコード [転載禁止]©2ch.net
603 :デフォルトの名無しさん[sage]:2015/12/09(水) 22:54:35.69 ID:ZwktDk40
 
配列に間違って一つ余計なデータを加える

   +

ループ回数を間違って最後の一つを処理しない

   =

_人人 人人_
> 正常動作 <
 ̄Y^Y^Y^Y ̄


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。