トップページ⇒tech
1001コメント356KB

やっぱり動的型付け言語は大規模開発で効率が悪い 4

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2011/11/21(月) 11:48:03.35
大規模と書いてドカタと読む。


やっぱり動的型付け言語は大規模開発で効率が悪い 3
http://hibari.2ch.net/test/read.cgi/tech/1320832914/
0412デフォルトの名無しさん2011/12/07(水) 03:43:06.89
>>410
はあ?型を決め打ちしない上でUnitTestするのが当然だろ?おまえ馬鹿か?
0413デフォルトの名無しさん2011/12/07(水) 03:44:26.84
>>411
ああ、おまえ、直和型の代数データ型がまるでわかってないな。

静的型付関数型もわかってないし動的型付言語もシロート丸出し。
おまえ、何ができるの?
0414デフォルトの名無しさん2011/12/07(水) 04:01:54.73
まさかinstanceof乱発して「これが動的型言語だッ!」とか言ってる香具師がいるのか?

instanceofはジャバでもパイソンでもバッドプラクティスだろJK
0415デフォルトの名無しさん2011/12/07(水) 04:09:49.69
というかライブラリを書くときとかinstanceof使わないでどうやってバカよけするの?
0416デフォルトの名無しさん2011/12/07(水) 05:13:18.88
それがわからないなら動的型言語でライブラリ公開しないほうがいい

マジで
0417デフォルトの名無しさん2011/12/07(水) 05:21:44.87
isinstanceを使わない378と404のPythonコードはまだですか?
0418デフォルトの名無しさん2011/12/07(水) 05:39:13.29
>>416
しないよ。でも教えてよ。
0419デフォルトの名無しさん2011/12/07(水) 08:14:29.90
>>416
静的型付け言語しか使っていない自分も興味がある。

問題はこっちだよな。
>与えられたオブジェクトが「整数とリストだけでできている」かどうかをチェックしてTrueかFalseを返す関数を作れ。

「任意の型 (Java なら Object 型) の値を受け取って、それが特定の型を持つか否かを判定する」関数を作る
というのが問題の本質だと思われ。
静的型付け言語は、まさにこの部分をコンパイラが保証するから instanceof が不要になる。
静的型のない言語で instanceof を使わずにどう書くのか興味がある。
0420デフォルトの名無しさん2011/12/07(水) 08:17:46.58
訂正。これはちょっと誤解を与えそうだ。

>静的型付け言語は、まさにこの部分をコンパイラが保証するから instanceof が不要になる。

静的型付け言語は、最初からこんな設計にしないということ。
>任意の型 (Java なら Object 型) の値を受け取って

期待される型の値しか受け取らないようにメソッドを設計し、
そのメソッドに期待される型の値が渡されていることはコンパイラが保証する。
0421デフォルトの名無しさん2011/12/07(水) 09:36:35.50
>>413
厳密には代数データ型でのパターンマッチの場合
「型」としては一つで、値やコンストラクタによって分岐するので、
確かに「型で分岐する」のと同じではない

しかし、それを代数データ型の無いLispで同等のコードを翻訳すると
まさに「型で分岐する」>>378のようなコードになるわけで、
>>378を認めて>>374を認めないというのなら、>>408の主張は全く意味不明
>>378とisinstanceの一体何が違うんだ?
0422デフォルトの名無しさん2011/12/07(水) 09:42:23.88
C++やJavaには関数型のパターンマッチとまったく同じものはないけど
オーバーロードという静的ディスパッチはあるわな(C++にはテンプレートもある)

多くの動的型言語には同じ機構はない(そもそも同名の関数を多重定義できない)ので
似たことをやりたければ自分で手動でディスパッチすることになるんじゃないのか?
それこそ実行時型や引数の個数によって
0423デフォルトの名無しさん2011/12/07(水) 10:44:16.96
Smalltalkならflat関数なんて

Object>>flatDo:
flatDo: aBlock
aBlock value: self

Collection>>flatDo:
flatDo: aBlock
self do:[:elem|elem flatDo: aBlock]

だな。
(elem isKindOf: Collection) ifTrue: [...]なんて馬鹿なコード書いたら
世界中のSmalltalkerに大笑いされるw
0424デフォルトの名無しさん2011/12/07(水) 10:53:16.29
374だが、読解力と論理展開に呆れてるから今後スルーするよ。でも不愉快だよね。
374に注意書きで:
動的は型チェックを行う場所(関数)を熟考して決めていく必要がある。
(すべての関数で型チェックをする必要も無いので。)当然、最適化も手動に
なってくるから、こちらも静的よりは頭を使う。
--
と書いてるのにな。静的は静的で頭を使うから 静的よりか〜というのは撤回
しておくよ。HaskellとLispは熟考が必要な言語だし。
0425デフォルトの名無しさん2011/12/07(水) 10:57:33.71
この教科書をどう考えてるんだろうかな。
http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-26.html#%_sec_4.1.1

0426デフォルトの名無しさん2011/12/07(水) 11:01:53.09
>>424
他人にとやかく言う前にヘッポコなコード書いた自分を責めろよ
0427デフォルトの名無しさん2011/12/07(水) 11:05:00.33
>>426
へっぽこと思うならどうぞご自由に。口だけの人の意見なんてどうでもいいですから。
では失礼。
0428デフォルトの名無しさん2011/12/07(水) 11:05:03.04
>>426
黙れ!貴様のコードが糞だろ!!
0429デフォルトの名無しさん2011/12/07(水) 11:07:56.42
SICPの例も出てるけどLispのコードでは当たり前に出てくるパターンだわな
なんか一人がんばってる人いるみたいだけど
0430デフォルトの名無しさん2011/12/07(水) 11:10:28.81
>>374
isinstanceの是非は横に置いといて、
あなたのコードが突っ込み所満載なのは事実だよ。
宣言部とか==Trueとか。
0431デフォルトの名無しさん2011/12/07(水) 11:12:47.30
SICP読んだなら、せめてtype discriminationとpattern matchingとconditional executionの区別ぐらいはつくようになれよw
0432デフォルトの名無しさん2011/12/07(水) 11:12:55.01
>>430
確かによくわからんコードだ
defineで関数を定義する動的型付け言語で一番メジャーなのってSchemeか?
でもどう見てもSchemeのコードではないしな
まあただの例ということなんだろうけど

0433デフォルトの名無しさん2011/12/07(水) 11:18:09.26
>>430
擬似コードをかいてるだけだから。突っ込みどころがあるなら、
貴方が良いと思うコードを示すといいんですよ。じゃあ見せておくれ。
>>429も触れてるけど、あのコードはListの中に、いろんな型をいれる
のが普通のLispのものからだよ。
もし、Listの中に1つの型しかないようなデータならばあのような
形にはしないだろうが、いろんな物が入ってる場合は、柔軟に対処する
方法かな。
ここではオブジェクト指向や多態性のことは擬似コードでは想定してないよ。
0434デフォルトの名無しさん2011/12/07(水) 11:19:52.08
>>431
単に言語のレベルで直和型やパターンマッチを提供しないLispでそれと同じことを
やろうと思ったら実行時の条件分岐になるって話じゃねーのか?
0435デフォルトの名無しさん2011/12/07(水) 15:06:41.10
ADTを使った次の静的型のコードは良くて、
hasattrで分岐してる動的型のコードがダメな理由は何?

(* OCaml *)
type 'a t = Leaf of 'a | Node of 'a t list

let rec flatten x xs = match x with
    Leaf x -> x :: xs
  | Node x -> List.fold_right flatten x xs
let flatten x = flatten x []


# Python
def flatten(x):
    if hasattr(x, '__iter__'):
       return reduce(lambda a,b: a + flatten(b), x, [])
    else:
        return [x]
0436デフォルトの名無しさん2011/12/07(水) 15:58:29.48
Javaでinstanceofが悪なのは依存が発生するからであって、
ダウンキャストと同じで必要なら使うよ。

つか普通に使えよ。なんで問題を難しくするんだよ。
0437デフォルトの名無しさん2011/12/07(水) 17:50:16.18
まあjavaコードなんてどのみち依存性ガチガチのクラス直接参照決め打ちコードだらけだからな、
ちっとぐらいisinstance減らしても意味ないね
0438デフォルトの名無しさん2011/12/07(水) 18:02:48.96
多態による分岐が難しいって人は
素直にinstanceofを使えばいいよ
0439デフォルトの名無しさん2011/12/07(水) 18:48:32.83
hasattrでの分岐禁止なんてアホがいるのか?
0440デフォルトの名無しさん2011/12/07(水) 20:13:54.83
RubyとPythonやってるけど、確かにisinstance()やis_a?()は滅多に使わんね
静的で型で縛りを入れてるコードは
動的では全くアプローチの違うコードになる気がする
何か書き換えてみたいなあ、静的での例ある?
0441デフォルトの名無しさん2011/12/07(水) 20:29:37.95
どうして使わないかという以前に、Lisp的なデータの中に雑多なものを
いれるというものを他では余りやらないからだろう?

RもPも一つのリストの中にいろんな型のデータは含めることはできるがね。
sympyみたいな数式処理関連のライブラリなら"isほにゃらら"は使っている
ね。isinstanceも当然含む。
細かな表現力が要求されない限り、雑多な型のデータを入れるリストって
最適化にも悪いからやらんもんな。
0442デフォルトの名無しさん2011/12/07(水) 20:34:34.07
R とか P とかで関数の引数が int か int のリストかで処理が別れるのってあるよね
あれはやっぱり関数の中で引数を isinstance で調べてるんだよね
0443デフォルトの名無しさん2011/12/07(水) 21:04:42.86

朝日新聞は一時期300人のネット工作員をかかえ、工作していた。
捕まった編集者は49歳ですが、こんなカスでも1500万円の年収がもらえるんですよ。
>>866
14時以降に何が起きたんだ

>>866
Domain Information: [ドメイン情報]
a. [ドメイン名] ASAHI-NP.CO.JP
e. [そしきめい] かぶしきがいしゃ あさひしんぶんしゃ
f. [組織名] 株式会社 朝日新聞社

これが規制されたからじゃねw

−「朝日新聞社は、とある思想やパラダイムに日本の世論を誘導する見返りに、中国から大量の資金を貰っている。」−
これはおそらく週刊誌さえ書けない。
「失語症躁鬱ニートは氏ねよ」【ネット】朝日新聞社員(49)ネットで荒らし行為、会社ごとアクセス規制へ
0444デフォルトの名無しさん2011/12/07(水) 21:42:55.24
(defun flatten (lst)
  (if (atom lst)
      (list lst)
      (mapcan #'flatten lst)))

(defun number-or-list-p (object)
  (or (numberp object)
      (null object)
      (and (listp object)
           (not (member-if-not #'number-or-list-p object)))))

(defun number-or-list-p2 (object)
  (not (member-if-not #'numberp (flatten object))))
0445デフォルトの名無しさん2011/12/08(木) 04:44:54.00
Twitterの中の人は、Rubyで書いてるコードは大きくなるうちにkind_ofだらけになってやってられないから、Scalaに移行したって言ってたな。
0446デフォルトの名無しさん2011/12/08(木) 07:13:36.10
Lispはまあ別として、動的型付けOOPでisinstanceやis_a?使うのは
ダックタイピングの良さを消してる気がするわ
hasattrやrespond_to?を使って構造的部分型で分岐するのは良いけど
0447デフォルトの名無しさん2011/12/08(木) 09:48:01.64
つまり、Twitterみたいな大規模システムじゃ動的な型付けの言語は不向きってことなんだろうな。
0448デフォルトの名無しさん2011/12/08(木) 10:18:27.76
ドカチン集めたらkind_ofだらけだろうな
それを動的型付けの欠点と言うのはアサッテだが
0449デフォルトの名無しさん2011/12/08(木) 11:01:02.86
http://topsecretproject.finitestatemachine.com/2009/04/the-great-twitter-ruby-vs-scala-war-debate/
これか

http://www.infoq.com/jp/news/2010/09/big-ball-of-mud
http://www.laputan.org/mud/
0450デフォルトの名無しさん2011/12/08(木) 11:07:58.44
twitterは技術力がある方の会社だと思ってたんだがちゃうの?
もっとも動的言語はMT車みたいなもんだからな。
0451デフォルトの名無しさん2011/12/08(木) 11:21:56.70
>>450
技術力の問題ってより、大規模開発の特性ってことじゃないの
amazonのコードベースも糞の山みたいに言われてたと思う

現実に世界規模のサービスを動かしている人たちの言うことだから、少なくとも
2chの名無しの言うことよりは説得力がある
0452デフォルトの名無しさん2011/12/08(木) 11:51:58.38
Amazonのコードベースが糞の山と言ったSteve Yeggeは
JavaもScalaもこき下ろしてたけどな
0453デフォルトの名無しさん2011/12/08(木) 12:03:51.04
どこぞの会社が何々したとか、誰かが言ってたとか
そういう話は嬉々として語るのな。
技術力無い奴にありがちだけど。
0454デフォルトの名無しさん2011/12/08(木) 12:05:48.35
あるある()
0455デフォルトの名無しさん2011/12/08(木) 12:37:00.62
>>450
うんそれはわかってるよ。

このスレのタイトルの真偽がわかりつつあるね。

amazonのC++のゴミコードの山ってはなしあったな。

オブジェクト指向だけはなぁ。。。。 スパゲティー屋さん多いからな。

関数型のコードのほうが好きっ☆(てへ)
0456デフォルトの名無しさん2011/12/08(木) 12:44:41.42
という事で、
動的→カタ・クラスチェックの山
OOP→スパゲティ
残ったのは、OcamlやF#みたいなの?となりそうに思うけど、これらが
大規模で使われてるときかない理由はいかに?
0457デフォルトの名無しさん2011/12/08(木) 12:55:16.14
大規模では使いづらいから
0458デフォルトの名無しさん2011/12/08(木) 13:00:32.18
いいものが流行るとは限らないから
0459デフォルトの名無しさん2011/12/08(木) 13:05:32.49
Haskellが使われないのはわからなくはないけどな。あれは純血主義だし
Scalaも仕様について糞っかすに言われるのもわからなくもない。
日本語でも英語でもScala批判は炎上を招くらしくブログでは余り触れたがらない人が多いかも。
0460デフォルトの名無しさん2011/12/08(木) 17:02:01.44
>>456
バカ?
0461デフォルトの名無しさん2011/12/08(木) 17:02:58.64
>>459
ハスケルもスカラもカルトすぎ
0462デフォルトの名無しさん2011/12/08(木) 17:46:30.38
カルトつーか、あのやたら攻撃的で排外的な雰囲気がダメ
関わり合いになりたくない

ScalaからJavaに戻した途端のあの叩きようを見てマジ引いたわ
0463デフォルトの名無しさん2011/12/08(木) 17:53:46.93
という事で、ドカタに書かせるなら
動的→カタ・クラスチェックの山
OOP→スパゲティ
残ったのは、OcamlやF#みたいなの?となりそうに思うけど、これらが
大規模で使われてるときかない理由はいかに?
0464デフォルトの名無しさん2011/12/08(木) 18:05:46.98
>>463
書けるドカタがいない、とか?
0465デフォルトの名無しさん2011/12/08(木) 18:31:36.47
でも連中、

関数型は子供にも簡単に書けるようになる
難しく思えるのは命令型に洗脳されているだけ

とか言ってるぞw
0466デフォルトの名無しさん2011/12/08(木) 18:44:40.43
>>465
ドカタとは何かという問題だよ。
OCaml などをわざわざ勉強するような向上心?のあるやつはドカタではないとか、
F# を使えるやつはドカタではないとか。


何人のプログラマをプロジェクトに従事させるか知らないけれど、
経験者が集まらないか集めても高いとかじゃないかと。
0467デフォルトの名無しさん2011/12/08(木) 19:03:50.27
>>462
英語のメーリングリストとか、フォーラムは別にそんな感じは無くて、どっちかと言うと「事実が勝つ」って感じだけどな。
排外的って例えばどこ?
0468デフォルトの名無しさん2011/12/08(木) 20:48:16.46
>>466
ただ向上心という問題だけだろうか?名古屋みたいな土地なら岡村は
増えそうだが。周りにおらんだろ?
0469デフォルトの名無しさん2011/12/08(木) 23:00:44.63
関数型の知識なんて木構造に対するmapとfilterが書けるくらいで十分
0470デフォルトの名無しさん2011/12/08(木) 23:13:37.39
フジテレビが大嫌いな君が代をフジテレビ前で歌う
http://www.nicovideo.jp/watch/sm15377275
youtube: http://www.youtube.com/watch?v=lf4iNq_E9XA

http://blog-imgs-34.fc2.com/d/e/l/deliciousicecoffee/DSCN6426.jpg
http://4.bp.blogspot.com/-mEsOSb2V_m4/TlD4HoAbG0I/AAAAAAAADEc/ou3_NGs9h4E/s1600/6.jpg
0471デフォルトの名無しさん2011/12/08(木) 23:15:21.32
YO! YO! キミがYO!
0472デフォルトの名無しさん2011/12/09(金) 00:20:40.43
C#でDynamicJSONを使ってみて、動的も静的も偏りすぎ、大事なのはバランス感覚だと悟った
0473デフォルトの名無しさん2011/12/09(金) 00:24:19.73
でも動的型付け言語だと、バランスを取ること
つまり静的と動的を両方使うことができないんだよな。
0474デフォルトの名無しさん2011/12/09(金) 01:01:51.05
>>422
呼ぶメソッド名を変更すりゃいいだけの話
0475デフォルトの名無しさん2011/12/09(金) 01:53:03.83
>>474
何を言ってるの…。
0476デフォルトの名無しさん2011/12/09(金) 02:13:09.05
動的型なら組んでる時は常に型を意識する羽目になるから、
「ミスするやつはドカタ(キリ」とか思ってる馬鹿でもなきゃ、
堅牢性が必要な部分の界面では素直にis、has使うと思うんだけど。
0477デフォルトの名無しさん2011/12/09(金) 02:35:58.51
Cだって静的型付けだけど
ポインタにぬるぽが来たら問題起こすだろ
そのためにポインタを引数にとる関数の全部に
ぬるぽチェック入れてたらオーバーヘッドだらけになるからやらない
動的型付けで引数チェックいちいちしないのもそれと同じ
0478デフォルトの名無しさん2011/12/09(金) 02:55:33.19
>>477
「全部」には入れないまでも、堅牢性が必要な場面の界面ではやる必要がある、
ということで、>>476の言っていることと別に矛盾はしないのでは

はやい話がユーザプログラムが変なポインタ渡したぐらいでkernelが
パニクったら困るみたいな

普通に考えれば界面が限定されていればチェックが必要なコードも
限定されるはずだけれども
twitterで型チェックだらけ、とかいうのは、要は界面の面積がものすごく大きいって
ことだろう
kernelの例でいうと本来の意味での界面はシステムコールになるけれども
多数の開発者で分担して作っている大規模システムでは、他の開発者がある意味で
信用できずに、システム内部で他の奴が作ってる部分との間にも
(バグと戦うために)結局界面というものが必要になってくる
twitterの話というのは、そういうことかと思った
0479デフォルトの名無しさん2011/12/09(金) 03:09:30.65
>>475
オーバーロードってメソッド名を変更する手間を省くくらいの意味しか無い機能だと思ってるが違うのか
0480デフォルトの名無しさん2011/12/09(金) 03:16:03.20
Cでnullチェックしないことが多いのは、JavaやC#みたいな言語と違って
そんなことをやる意味がほとんどないからだろう

ポインタは32bitなり64bitなりのメモリ空間全体を指し得るから
ランダムに適当なポインタを与えられた場合、それは読み込みや書き込み
不能なページにあるかもしれないし、できたとしてもスタックのリターンアドレスを
書き換えたりヒープの管理情報をブチ壊したりしてしまうような位置かもしれない

なので、Cで引数として与えられたポインタが単にぬるぽかどうか確認するだけでは
屁の役にもたたず、何の意味もない
04814772011/12/09(金) 03:30:21.67
>>478
別に矛盾するとは言ってないし
全部にチェック入れないとも言ってないのに
0482デフォルトの名無しさん2011/12/09(金) 03:30:30.22
>>478
なのでinstanceofの類を使わずに動的型付けの言語でどうやってバカよけをする
のかを以前ここで尋ねるも返答がなかった件。
0483デフォルトの名無しさん2011/12/09(金) 03:33:34.72
>>478
>twitterで型チェックだらけ、とかいうのは、要は界面の面積がものすごく大きいって
>ことだろう
>kernelの例でいうと本来の意味での界面はシステムコールになるけれども
>多数の開発者で分担して作っている大規模システムでは、他の開発者がある意味で
>信用できずに、システム内部で他の奴が作ってる部分との間にも
>(バグと戦うために)結局界面というものが必要になってくる
>twitterの話というのは、そういうことかと思った

要するにtwitterの設計思想がまずいって話だな
Rubyだからそうなったのか
それに気付いてScalaにしたのかどうかとは別次元の話
0484デフォルトの名無しさん2011/12/09(金) 06:00:29.77
>>473
つ 型注釈
つ 動的型検査
0485デフォルトの名無しさん2011/12/09(金) 06:02:26.25
>>482
おまえの質問が馬鹿避けに引っ掛かったことに気付け馬鹿
0486デフォルトの名無しさん2011/12/09(金) 06:06:08.63
>>473
両方を満たせないのは静的型付け言語でしょ。
動的型付け言語は型注釈でコンパイル時検査も実行時検査も出来る。
でも静的型付け言語ではヘテロなオブジェクトを作れない。
0487デフォルトの名無しさん2011/12/09(金) 06:09:58.38
>>485
で、どうやってやるの?
0488デフォルトの名無しさん2011/12/09(金) 06:29:10.94
〜もできる、〜もできる、と並べたてても、たった一つの「しないこともできる」が
すべてを台無しにするパターンじゃないのかな。
まあたった一つじゃないんだけども。
0489デフォルトの名無しさん2011/12/09(金) 06:52:28.06
ドカタに自由などいらない
0490デフォルトの名無しさん2011/12/09(金) 07:39:27.00
動的型付けの言語はプログラマ性善説に頭からどっぷり漬かって安穏としている。
静的型付けの言語はプログラマ性悪説に凝り固まって奪える限りの自由を奪う。


規模が大きくなって色々な人が仕事に関与するようになると確かに性悪説に立った
方が無難。
0491デフォルトの名無しさん2011/12/09(金) 07:51:49.10
>>469 FizzBuzzすら満足に書けない土方が多いのに……
関数型が普及しないわけだ
0492デフォルトの名無しさん2011/12/09(金) 08:08:04.87
自分たちの技術が受けられない理由を世の中のせいにするのはどんな凡庸な
人間にも出来ること。
それを自らの問題ととらえて打開策を模索するのがより生産的な姿勢。

今の関数型言語が普及しない事を嘆いているヒマがあれば土方でも使える
関数型言語の設計でも考えれば良いのにね。
動的型は土方には使えないとか宣っている連中も似たようなものだ。
0493デフォルトの名無しさん2011/12/09(金) 08:50:19.78
>>480
0/1 でしか考えられない、典型的な馬鹿乙。
0494デフォルトの名無しさん2011/12/09(金) 09:31:06.63
それは精神的バックトラックが継続を襲ってるんだよ。
0495デフォルトの名無しさん2011/12/09(金) 10:51:29.39
>>487
型注釈でもいいし、多態で分岐してもいいし、例外捕まえてもいいし、、、

むしろ1つも思い付かないほうが不思議だ
0496デフォルトの名無しさん2011/12/09(金) 11:17:35.99
>>491
思い込みで話してませんか? ほんとにいるんだろうか?
現場でFizzBuzz書けない奴って。
0497デフォルトの名無しさん2011/12/09(金) 11:25:26.71
馬鹿はいる
もちろん全員じゃない
0498デフォルトの名無しさん2011/12/09(金) 11:28:13.67
動的型付けの弱点はインテリセンス等の開発サポートツールの作成のしようが無い所だろうな。
性悪とか性善とか正直どうでもいいし気にしないけれど
重機あるのにノミとトンカチでトンネル掘るような作業をするのには正直耐えられない。
0499デフォルトの名無しさん2011/12/09(金) 11:29:55.28
引数の省略もインテリセンスにはきついんじゃないのか
C++は性的暴行
0500デフォルトの名無しさん2011/12/09(金) 11:31:16.72
開発サポートツールの作成のしようが無い
あるいは物凄く困難になって実質存在しないか不完全な言語も嫌い
動的型付けも嫌いだけれどincludeやC言語系defineなんかは最悪だから全滅して欲しい
0501デフォルトの名無しさん2011/12/09(金) 11:33:14.38
>>499
きついだろうけど、引数の省略ってあまり使わないから。

ちなみに、>>498 は単なる IDE 依存症の馬鹿。
0502デフォルトの名無しさん2011/12/09(金) 11:33:20.99
>>499
引数省略は障害にならないようです、C#は見事に問題なし。
インテリセンス以外にも、リファクタリングツールやテストツールも型無しは地獄だね。
0503デフォルトの名無しさん2011/12/09(金) 11:35:05.35
いまさらIDE等を使わないで作る奴は頭弱過ぎとしか思えないけどな
3秒で済む事一週間かけてやっているに違いない
0504デフォルトの名無しさん2011/12/09(金) 11:49:08.47
IDE 依存症と書かれたら、脊髄反射で IDE 使ってないとか、
こういうアホテリセンスは一生直らないんだろうな。(w
0505デフォルトの名無しさん2011/12/09(金) 11:51:21.04
多すぎるんだよ、IDE使わない俺カッコイー系の爺さん、仕事の邪魔だから会社やめてくれ
お前の所で何時もスケジュールが滞っているんだよ
0506デフォルトの名無しさん2011/12/09(金) 12:01:59.54
インテリセンス厨はこいつだな
http://hibari.2ch.net/test/read.cgi/tech/1317403825/610
どうせ自演だろうが
0507デフォルトの名無しさん2011/12/09(金) 12:29:21.14
で、IDEの機能の多くは動的型付け言語が発祥だね、
っていつもの話にループするわけだ。

ドカチンは進歩しねえなw
0508デフォルトの名無しさん2011/12/09(金) 12:32:28.79
組み込み用のIDEとか糞すぎて禿丸使わないといけないんだぜ
0509デフォルトの名無しさん2011/12/09(金) 12:38:57.49
筋肉モリモリ鉱夫の蒸気機関掘削機に負けない自慢だな
バカバカしい自慢話だ
0510デフォルトの名無しさん2011/12/09(金) 13:02:49.88
COBOLやFlex/as3プログラマーが定時退社で月給150万円もらってるという事実すら知らず、
Flashはオワコン、Webサイコー、Javaサイコー、Rubyサイコー、動的だ、静的だ、
とか言ってるアホが多い

まあアホだからこそ中卒土方以下の月収40万円無保障使い捨てでもこき使えるんだが

そんなことに頭つかってるからドカタなんだよw
0511デフォルトの名無しさん2011/12/09(金) 13:09:04.97
>>510
ちなみにあなたのご職業は?
■ このスレッドは過去ログ倉庫に格納されています