オブジェクト指向ってクソじゃねぇかよPart3at TECH
オブジェクト指向ってクソじゃねぇかよPart3 - 暇つぶし2ch2:デフォルトの名無しさん
18/11/22 20:13:05.54 vqLc4BhY.net
ここまでオブジェクト指向のメリットなし

3:デフォルトの名無しさん
18/11/22 20:59:26.40 R0GBuPHm.net
オブジェクト指向の是非はさておき
Smalltalkはウンコ

4:デフォルトの名無しさん
18/11/22 22:02:40.52 3Ij8+ioX.net
プロジェクトメンバーが皆アランケイならもちろんそんなものは不要
強い型付けだのカプセル化だの名前空間だのは俺を含めたアホのための技術
であり、
コンパイラさんエラーメッセージをありがとう、今日もバグが事前に検知できたよと感謝の十万回単体テスト

5:デフォルトの名無しさん
18/11/22 22:44:43.29 AcqNnxh2.net
みんなSmalltalk大好きで困っちゃうわー

6:デフォルトの名無しさん
18/11/22 23:00:07.78 VUc8aEEA.net
熱いsmallalk談義
内容は理解出来ないけど
その熱さは良いよ

7:デフォルトの名無しさん
18/11/23 12:16:28.55 xUgPEkHQ.net
だから言ったじゃん
ピュアオーディオとか純喫茶とか純文学の話になってるだろ
それに連なる『純オブジェクト指向』だ
ここで純オブジェクト指向と目されるSmalltalkを持ち出してピュア談義してるだけだ
オブジェクト指向≒Javaと見做されてる昨今では「Javaはクソ」≒「オブジェクト指向はクソ」となるのが普通だ
そこにわざわざ純オブジェクト指向なる概念を持ち出すから話がややこしくなる
平たく言うと、Javaの開発案件がたちまちクソの山になるのはそれがオブジェクト指向だから、っていう話だ
それも、数値にしがたい負の感情を産み出す母体になってる
オブジェクト指向にメリットはなく、代わりに数値化できないデメリットが業界で拡大再生産されてる
その根幹原因がJava≒オブジェクト指向にある
クソなんだからメリットが生産されるわけじゃない
デメリットが生産されてんだよ
「現状のオブジェクト指向が上手く行かないのは、それが純オブジェクト指向じゃないから」
それを延々話してるんだよ
その「純オブジェクト指向」なる状態が、あり得ないものか、未だに存在してないものか、そもそも存在出来ないものかは知らないが、
現状の実態たるJavaの話から乖離して、延々と架空の話を続けてるだけだろ
現実を見たくないからわざわざSmalltalkなんて引っ張り出して来てるんだよ
それだけクソってことだろ

8:デフォルトの名無しさん
18/11/23 12:38:27.53 IHq0MGQO.net
まあでもJavaってオブジェクト指向だからクソなんだろ?

9:デフォルトの名無しさん
18/11/23 12:40:10.05 3lsJKaBh.net
JavaのWrite once, run anywhereに代わる新しい標語を考えよう!
まず俺からな。
Java -- Motor of all fails --

10:デフォルトの名無しさん
18/11/23 12:41:08.98 3lsJKaBh.net
予測変換で間違えた!
では改めて。
Java -- Mother of all fails --

11:デフォルトの名無しさん
18/11/23 12:45:14.41 YugcRL6k.net
ぷぷぷwww間違えてやんのwww

12:デフォルトの名無しさん
18/11/23 13:01:19.47 /Y0l7Zgd.net
ここまでオブジェクト指向にメリットなし

13:デフォルトの名無しさん
18/11/23 13:07:15.96 EBrY1e8N.net
オブジェクト指向は糞の山を作りやすいというのがメリット

14:デフォルトの名無しさん
18/11/23 13:08:58.72 8zdH1C48.net
DBから取ってきたデータをただの構造体としてしか使ってない
Java現場ばかりなんだがそれをオブジェクト指向と言うのか

15:デフォルトの名無しさん
18/11/23 13:09:18.71 t8DmZZYh.net
>>7
Smalltalkが純オブジェクト指向?Self見てから言えよw

16:デフォルトの名無しさん
18/11/23 13:15:31.31 hVgyH4Uc.net
SELFよりはIo派

17:デフォルトの名無しさん
18/11/23 13:16:39.23 hVgyH4Uc.net
非同期メッセージングもあるし

18:デフォルトの名無しさん
18/11/23 13:24:25.52 YugcRL6k.net
>>14
いわないんじゃない?
せめてO/Rマッパーを使ってオブジェクトに変換しないと
でもO/Rマッパー使うの常識だよね?

19:デフォルトの名無しさん
18/11/23 13:34:30.42 8zdH1C48.net
>>18
使ってるけど、getterとsetterがあるだけのオブジェクトをサービスでごにょごにょしてる
サービスにロジックがある

20:デフォルトの名無しさん
18/11/23 13:50:21.91 rfRL5vB8.net
>Javaの開発案件がたちまちクソの山になるのはそれがオブジェクト指向だから
有る意味それは合っている
でもそれはあくまで
オブジェクト指向を効果的に使うのが難しいからで
オブジェクト指向そのものが駄目な訳ではない
効果的に使うのが難しいのは
どの様に効果的に使うか?
という方法論やセオリーが十分教範として出来上がっていない
と言うのが原因だと自分は思っている
そういう教範がそのうち出来るだろう
と思っていたけど
現実には未だもって出来ていないみたい
その辺が効果的に使う事を難しくしている
自分も完全には理解していないけど
部分的に使うだけでも効果が有って
これを完全に使いこなしたら
どれ程の物なんだろうか?
と有る意味期待をしている
自分はこのスレを通す事で
オブジェクト指向プログラミングの何が解り難いのか?
という部分がはっきりして
何らかの教範が出来る材料になればいいんじゃないかなぁ
って期待している

21:デフォルトの名無しさん
18/11/23 14:24:45.75 t8DmZZYh.net
>>18
ORMなんか使うなよ。OODB使えよ。

22:デフォルトの名無しさん
18/11/23 14:32:04.97 wr9ihIGx.net
>>20
え?これだけ書いて何も中身ないじゃん
お前という人間がクソ何だな
技術者辞めて農業でもやってろよ

23:デフォルトの名無しさん
18/11/23 14:35:25.11 1KJ0KFwU.net
農業なめてんじゃねえよITドカタが

24:デフォルトの名無しさん
18/11/23 18:08:55.01 MPvH8zSl.net
>>20のまとめ:
・オブジェクト指向は効果的に使うとすばらしい
・オブジェクト指向を効果的に使うのは難しい
・オブジェクト指向を効果的に使えるような方法論が必要だ
いや、オブジェクト指向なんて使わなきゃいいじゃん。
オブジェクト指向を使うために出てきた問題の解決方法をひねり出してイキる、まさにマッチポンプ。>>1の通りじゃんww

25:デフォルトの名無しさん
18/11/23 18:39:37.15 5BpJnoAE.net
リファクタリングを考えるなら現状オブジェクト指向しかない。

26:デフォルトの名無しさん
18/11/23 18:41:40.04 wr9ihIGx.net
>>25
意味不明

27:デフォルトの名無しさん
18/11/23 23:37:46.54 DenX8efU.net
静的型付けの方がリファクタリングはやり易いけど
オブジェクト指向は関係なくない?

28:デフォルトの名無しさん
18/11/23 23:39:22.31 ROaTpR2G.net
リファクタリングやりたすぎやろ

29:デフォルトの名無しさん
18/11/23 23:50:37.13 YugcRL6k.net
そりゃTDDやってるからな
テスト駆動だとリファクタリングが開発の1フェーズだよ

30:デフォルトの名無しさん
18/11/24 02:13:00.74 NJ75NL6c.net
928 デフォルトの名無しさん 2018/11/21(水) 18:59:11.61 ID:8Yc2p7H1
>>922
>ナンチャッテメッセージングスタイルになったのは
チンポ.オシッコを出す
チンポ.オシッコを止める
さっきトイレでやってきた。

929 デフォルトの名無しさん 2018/11/21(水) 19:07:17.83 ID:8Yc2p7H1
>>915
>単なる動的なメソッド呼び出しをメッセージと称し、ただしコールするメソッドが見つからない場合だけメッセージを
>ハンドリングできる省コストなナンチャッテメッセージングスタイルに落ち着いた。
×
俺.オシッコを止める 俺.オシッコを出す

俺.チンポに力を入れる 俺.チンポから力を抜く

31:デフォルトの名無しさん
18/11/24 02:43:42.26 NJ75NL6c.net
955 デフォルトの名無しさん 2018/11/22(木) 01:49:36.77 ID:ROOr0q+m
>>954
>違うという理由を人に聞く前に
>そうだという理由を述べるのが筋だろ
ならばシステムをオブジェクト単位に分ける必要性について答えておこうか。
>>951
>オブジェクト単位に分ける工程が完全に削除できるんだから
戦神のベルトが倉庫を圧迫。仕分けましょう【DQ10】
URLリンク(okirakudq10.com)

32:デフォルトの名無しさん
18/11/24 06:11:54.47 rcmII/yb.net
オブジェクト指向ってしっくりこないんです

33:デフォルトの名無しさん
18/11/24 06:28:10.41 emfrr2Lm.net
>>31
> ならばシステムをオブジェクト単位に分ける必要性について答えておこうか。
システムを複数のファイルに分ける必要性と同じでは?

34:デフォルトの名無しさん
18/11/24 09:15:39.26 eoAr82J8.net
ここまでオブジェクト指向のメリットなし
ピロリン♪
鉄山靠をマスターしました!←New
鉄山靠マスターしたわ

35:デフォルトの名無しさん
18/11/24 09:17:40.85 If29D5n7.net
OOPのやり過ぎで手続き型のアルゴリズムを書けない体質になってしまった
OOPなら5分で書ける処理をレビューに出したら仕様書に無いクラス作らないでっていわれてさ
手続き型で書き直そうとしたら4重ループにif分岐だらけの複雑なアルゴリズムになって頭が大混乱して手が止まっちゃった
結局それは破棄してOOPで書いたコードにロールバックしてメソッドを地道にインライン展開してテストを繰り返して1日かかってようやく完成した
俺みたいな頭が悪い人には手続き型は難しすぎる
OOPで物事をシンプルに簡単にわかりやすく整理しながら作らなきゃ先に進めない

36:デフォルトの名無しさん
18/11/24 09:37:00.38 Wpa1q256.net
例えばポリモリフィズムやるとしてもそのオブジェクトが
どこでどんな風にその多数のメソッドを利用しているか、どういう制約の元でどういうことを行うものとして
設定してるかがしっかり把握されてるクラスなんて
あんまりないわけよ。
てか実際はほとんど変更不能なほどガチガチに暗黙の仮定が置かれてるのにドキュメントがなかったり
コードから把握するのが困難なコードばっかりだったりする。
こういうのが当たり前の状況では役には立たんな。
そして信者が次にいうのはそういう風に作った奴が悪いって話になる。
一理はあるが上記のような暗黙の仮定が注入されやすいというのはオブジェクト指向だからってのは多いにあると思ってる。

37:デフォルトの名無しさん
18/11/24 10:01:58.09 eoAr82J8.net
具体的にはメソッドの呼び出し制限が不明だよね
init呼ぶ前に呼んでおかないと駄目
init呼んでから出ないと駄目

38:デフォルトの名無しさん
18/11/24 12:09:51.50 jQRgCWH8.net
オブジェクト指向の問題じゃなくて静的型付けの問題だろう

39:デフォルトの名無しさん
18/11/24 12:13:59.69 emfrr2Lm.net
話をまとめると、オブジェクト指向をやるには
しっかりテストしてないとだめということかな?

40:デフォルトの名無しさん
18/11/24 12:16:13.11 emfrr2Lm.net
オブジェクト指向じゃないプロジェクト
例えばCOBOLなんかだと、
どこでどんなふうに関数が使われているか
わからなくても、大丈夫って話をしているようだ
それが何故なのかさっぱりわからないので
理由を教えてくれ  >>36 >>37

41:デフォルトの名無しさん
18/11/24 12:16:50.14 CDKSSVF4.net
呼んじゃいけない状況にそもそもならないように作る
呼んじゃいけない状況で呼んだら例外を投げる
呼んじゃいけない状況を属性やドキュメントコメントに書く
オブジェクト指向はこのへんしっかりしてるから良いね
メインルーチンでグローバルの初期化関数を呼ばないとダメ
関数の呼び出し順序が暗黙に決まってる
入力範囲が決まっててそれに従わないと未定義処理
決まりごとがドキュメントコメントになってなくて分厚いマニュアルから必死になって探さないといけない
このように間違えようとしたら間違えられるのにわかりやすい説明がコードエディタから見れないという悪い構造はむしろ非オブジェクト指向の方が多い

42:デフォルトの名無しさん
18/11/24 12:22:32.84 emfrr2Lm.net
> init呼ぶ前に呼んでおかないと駄目
> init呼んでから出ないと駄目
ファイルをオープンする前にリードしたらだめ
だから手続き型は大変なんだ

43:デフォルトの名無しさん
18/11/24 12:22:54.51 Wpa1q256.net
>>40
>どこでどんなふうに関数が使われているか
>わからなくても、大丈夫って話をしているようだ
こんな話は一切してない。
オブジェクト指向的な言語でクラスメソッドにガツガツ詰め込むようなことすると
関数的なものよりも思った以上の暗黙の仮定を置いてるコンテキストでしか動作しないものが
出来上がりやすいと言ってる。

44:デフォルトの名無しさん
18/11/24 12:33:43.16 hG+y0dS8.net
>>41
コードのみで必要情報を示せないからドキュメントに逃げてるだけ。
「ドキュメントも完備しててすばらしい」←あるべき姿
「ドキュメントがないと使い物にならない」←オブジェクト指向の現実
オブジェクト指向によって、ドキュメントがないと使い物にならない状況を生み出す(マッチ)
ドキュメントを必須不可欠のものとする(ポンプ)
無理にオブジェクト指向に拘らなければ存在しなかった問題なのだ。
まーたマッチポンプw

45:デフォルトの名無しさん
18/11/24 12:59:17.24 bELXSZs/.net
手続き型の反対は宣言型だが、オブジェクト指向は宣言型ではない。

46:デフォルトの名無しさん
18/11/24 13:04:33.00 eK+FReVS.net
228 名無しさん@ゴーゴーゴーゴー! (ワッチョイ e3bd-rVsz [60.146.119.215]) sage 2018/11/24(土) 08:38:58.23 ID:radxgJ6W0
蠍スレから来た
ラグあるのは事実だから、支える技術本まで買ったが、内容薄すぎていまいちだった
早い話、負荷テストをやっとらんだけやろ
開発用サーバでテストプレイヤー分だけの負荷かけるだけなら、そらヌルヌル動くわな
ping値数msec差の問題よりも、任天堂ハードの処理速度のが問題
せめて提案者は自身の環境くらい書けよ
高スペックPC+有線IPoEとかならあきらかに鯖のメモリ解放失敗とかやろ
実際の環境でって、仮に一部のバトル用サーバ切り離して(できるかしらんが)テストしたところで小負荷なら同じことやろ

47:デフォルトの名無しさん
18/11/24 13:06:40.46 CY5XkBlU.net
>>38
意味わからん
頭悪そう

48:デフォルトの名無しさん
18/11/24 13:30:09.60 CDKSSVF4.net
>>44
逆なんだよね
分厚いドキュメントが必要なのは非オブジェクト指向の方だよ
守らなきゃならないルールを表現するためにいろいろな言語機能が発達したんだよ
例えばカプセル化やインターフェースね
だからオブジェクト指向はドキュメントにそれほど頼らなくても開発できるんだ

49:デフォルトの名無しさん
18/11/24 13:44:53.40 eoAr82J8.net
>>42
でも引数にオープンしないと手に入らないものが必要だろう?
でもオブジェクト指向言語は違うよね?

50:デフォルトの名無しさん
18/11/24 14:29:17.58 HpxmFCOF.net
オブジェクト指向オンリーは害悪だが用法容量を守れば便利

51:デフォルトの名無しさん
18/11/24 16:10:42.48 +zOeUKp1.net
オブジェクト指向はクラスの中にコードを書く、というのが神髄である。

52:デフォルトの名無しさん
18/11/24 16:26:33.27 hG+y0dS8.net
クラスはオブジェクト指向の必須要素ではない。
神髄とやらはオブジェクト指向と関係なかったwwwww

53:デフォルトの名無しさん
18/11/24 16:53:54.72 b7tmfxF4.net
>>43
> オブジェクト指向的な言語でクラスメソッドにガツガツ詰め込むようなことすると
> 関数的なものよりも思った以上の暗黙の仮定を置いてるコンテキストでしか動作しないものが
> 出来上がりやすいと言ってる。
お前が言った所でなんの信頼性もないよw
まず、そんなことにならない。
お前が下手なだけ

54:デフォルトの名無しさん
18/11/24 16:54:55.43 b7tmfxF4.net
オブジェクト指向への批判は、
「それと同じことを非オブジェクト指向でやっても
同じことが起きるよね」で全て反論できる

55:デフォルトの名無しさん
18/11/24 17:16:30.71 0+zZ0hnR.net
そりゃそうだ
それを言語仕様レベルで規定しているから楽なんだろうが

56:デフォルトの名無しさん
18/11/24 19:04:20.89 NJ75NL6c.net
チンポがシコシコするぜ!!

57:デフォルトの名無しさん
18/11/24 19:06:34.22 eK+FReVS.net
611 名無し三等兵 (ワッチョイ 7fe7-t9Bb) sage 2018/11/22(木) 12:46:59.97 ID:vFEoyYoC0
>>587
「ちんちん」の語源の1つの説に、
支那の娼婦が幼児語で「入れて入れて」と言った言葉を
当時の出羽守が有難がって日本に広めたという
かなり眉唾物な故事がある。
その説に依るなら「チンポかシコシコする。」は
当然のように入れた側の所感とその転用じゃな。
591 名無し三等兵 (スッップ Sd1f-hEn1) sage 2018/11/22(木) 12:26:55.61 ID:9IvK1JXqd
>>587
シコシコするは他動詞なので、所有者の意思とは無関係にチンポが自立行動するのであれば「イライラする」「ムラムラする」という自動詞を用いるのが正しい
644 名無し三等兵 (アウアウカー Sa87-dVyK) sage 2018/11/22(木) 13:18:34.11 ID:UNLN7beIa
>>587
「胸がドキドキする」
胸は心臓の意味で、行為者として心臓が使われているので「心臓が拍動する」は日本語としておかしくない。
「チンポがシコシコする」
チンポはそのままの意味で、受け手側としてチンポが使われているので「チンポはシコシコされる」又は「チンポをシコシコする」が正しい。(50字)

58:デフォルトの名無しさん
18/11/24 20:05:06.08 sj/p1kLr.net
正方形クラスは長方形クラスを継承するべきだろうか?

59:デフォルトの名無しさん
18/11/24 20:07:24.71 NJ75NL6c.net
自然言語処理スレッド その5
スレリンク(tech板)

人工知能とは、オブジェクト指向の果てなき追求ではないのか?

60:デフォルトの名無しさん
18/11/24 20:13:37.11 pJIkMQOC.net
オブジェクト指向=人工知能、という新定義はどうだろうか?
オブジェクト指向と称するものの多くは、人工知能と称するものの多くは、中身が空っぽだったりする。
この現実世界にあるあらゆる概念(名詞・動詞・形容詞)をプログラミングで表現する、
それが人工知能でありかつオブジェクト指向である。
異論があるなら何なりと!

61:デフォルトの名無しさん
18/11/24 20:20:48.98 NJ75NL6c.net
Javaなどのガベージコレクション(メモリ管理自動化機能)も、簡易な人工知能ではないのか?

62:デフォルトの名無しさん
18/11/24 20:26:47.94 NJ75NL6c.net
ユークリッド幾何学(真か偽か不明か)の殆どはMathematicaで処理できてしまう。
しかしながらこの現実世界はそのようには出来ておらず、人工知能に出来ることはせいぜい近似値計算。
213 デフォルトの名無しさん 2018/09/24(月) 08:23:13.39 ID:Kxio7RVg
物理は大半が近似でなく、すべて近似
すべて仮説だからな、当然そうなる
近似でなければ物理学は完成してることになる
人間の認識が限界がある以上、現在の科学的方法論では、科学が完成することはない
科学はひたすらその近似の精度をあげていってるだけだからな
で、こっからが重要になるが、観測値に解釈は入らない
定量的な観測値そのまんま
物理にwhyはない、コレ常識だからな
光の速度がなんで光速度なの? とか頭悪いコトいってるのと同じなワケ
観測値が光速度、それ以上の意味はないし解釈もへったくれもない
沸点はただの観測できる定量的な値の一つだからな
物理の場合、仮説をたててその他の条件となる観測値を組み合わせて関係式を作ろうとする
見方をかえれば、沸点を条件とみることもできる
頭悪い日本の文系は、自然言語処理とコレが全く異なるコトが分からない
自然言語処理は、自然科学とまったく異なるただの 形 而 上 学 だからな
はっきりいってな、日本の文系がやってる自然言語処理はオカルトに近い
その認識がないかぎり、これからも進展はない
だから今までずーっとほとんどなんの進展もなかったワケだからな
日本の文系は世界的にみても哲学的な側面でもものすごい頭悪い部類といっていい
AIでムダに騒いでるアホとある意味そっくりだからな

63:デフォルトの名無しさん
18/11/24 20:38:06.19 NJ75NL6c.net
>>41
>決まりごとがドキュメントコメントになってなくて分厚いマニュアルから必死になって探さないといけない
英単語を辞書式に沢山覚えていても、コトバの意味を理解していないとどうにもならんよな。
0.   外国語、特に英語、の教え方
「読み書きは出来るが会話ができない」というのは間違い。「読み書き」も出来ない
Decorative artとは、絵画、彫刻、建築を除いた家具、食器、絨毯、藍掛け、花瓶、タイル、
ドアのノッカーなど美術品と見做せるものの総称
表裏は日本語だと「おもて」と「うら」だが、漢文では「外側」の「内側」であり、「裏」は「なか」である。
コインの場合、英語ではhead & tailで、誰かの頭部の像がある方が日本語の「おもて」だが、tailが「うら」とは奇妙
URLリンク(hiroomikes20120501.blogspot.com)

64:デフォルトの名無しさん
18/11/24 20:41:47.06 q4NHqqSm.net
俺はオブジェクト指向の神だ。
おまえらにはオブジェクト指向はまだ早い。
ビジュアルベーシックでもやっておれ。

65:デフォルトの名無しさん
18/11/24 21:09:06.92 Wpa1q256.net
>>53
下手なだけで済ませるだけいいなら別にオブジェクト指向いらんけどね。

66:デフォルトの名無しさん
18/11/24 21:18:39.63 b7tmfxF4.net
>>65
意味不明。
下手だから、オブジェクト指向を使っても使わなくても
同じ規模のものを作ればひどいことになるって話をしてるんだが

67:デフォルトの名無しさん
18/11/24 22:03:33.13 7YEvwBu9.net
使っても使わなくても酷いならなぜ使うのか。やはりマッチポンプでは…
>>58
平行四辺形…ひし形…
バカみたいだな。
単なるコーディングがつまらんから、って哲学的探求で遊べるように細工しただけ。
実質的な価値はない。

68:デフォルトの名無しさん
18/11/24 22:05:32.96 b7tmfxF4.net
「下手なら」使っても使わなくても酷いって言ったんだけど?
下手じゃないならオブジェクト指向のほうが良いってことだよ

69:デフォルトの名無しさん
18/11/24 22:08:39.73 7YEvwBu9.net
上手ならオブジェクト指向なんか使わなくてもうまくやるよ

70:デフォルトの名無しさん
18/11/24 22:09:46.74 b7tmfxF4.net
>>69
でも、上手なら
LinuxカーネルはC言語なのにオブジェクト指向
スレリンク(tech板)
なんですよね

71:デフォルトの名無しさん
18/11/24 22:13:34.21 CDKSSVF4.net
センス無い人でもOOPなら努力次第でそこそこ良いコードが書ける
でも手続き型は脳のスペックが高くないと理解不能
あれは高学歴理系がパフォーマンス追求するときに使うものであって下々の凡人が使うようなものじゃない
非OOPは難しすぎる

72:デフォルトの名無しさん
18/11/24 22:16:32.73 b7tmfxF4.net
> 非OOPは難しすぎる
難しいと言うより大変なんだよな。
非オブジェクト指向で、オブジェクト指向的なことをするための
暗黙的なルールができるから、ドキュメント化されてないルールを守る必要がある

73:デフォルトの名無しさん
18/11/24 22:22:00.26 b7tmfxF4.net
言語の進化っていうのはアセンブラの時代から
一連のコードのパターンに対して、それを明確に示す概念
名前や文法を作ることでもあった
例えば、比較命令 + 条件分岐 に対してループという名前をつけたように
そうやって名前をつけることで、一言で他の人と理解の共有が
できるようになった。
オブジェクト指向でも、一連のコードのパターンに対して
継承や多態性などという言葉ができたわけだが、
これらを使わないと、一言で説明できず
一連のコードを全て説明しなければいけなくなる

74:デフォルトの名無しさん
18/11/24 22:40:45.74 PdTiOWtJ.net
OOP
思考停止すればかなーり楽なんだよな
グチャグチャのソースになって
手が付けられなくなるけど

75:デフォルトの名無しさん
18/11/24 22:41:15.78 b7tmfxF4.net
>>74
そういう人が書いた非OOPは
もっとぐちゃぐちゃ

76:デフォルトの名無しさん
18/11/24 22:43:39.67 WtZSNTCR.net
うむ

77:デフォルトの名無しさん
18/11/24 22:44:23.57 PdTiOWtJ.net
非OOPでグチャグチャのコード書くのは
意図的にやるなど、逆に大変

78:デフォルトの名無しさん
18/11/24 22:44:34.32 CDKSSVF4.net
手続き型だと複雑すぎて脳の容量をすぐにオーバーして思考停止しちゃう
オブジェクト指向だと簡単に理解できるから、ここがああなって、そうすればどうなるのね、なるほどなるほど、てな具合で思考がスムーズになる

79:デフォルトの名無しさん
18/11/24 22:45:37.90 b7tmfxF4.net
>>77
じゃあ非OOPで継承を書いてみて

80:デフォルトの名無しさん
18/11/24 22:47:41.47 PdTiOWtJ.net
>>76
手続き型は全然難しくない
C++,Javaを初め流行のOOP言語は手続き型の上に成り立っている
それから、手続き型はOOPの対義語ではない

81:デフォルトの名無しさん
18/11/24 22:50:46.77 PdTiOWtJ.net
>>79
継承など使う必要は全然ない
どうしてもpropertyに共通関数を使いたいならmixinでも使っときな

82:デフォルトの名無しさん
18/11/24 22:50:47.21 CDKSSVF4.net
>>80
いやめちゃくちゃ難しいよ
OOPと手続き型で同じ要件のコード書いて比較したけどOOPのが圧倒的に早く書けて高品質だった
実験が示す事実なんだから受け入れよう

83:デフォルトの名無しさん
18/11/24 22:52:55.49 PdTiOWtJ.net
>>82
C++やJavaについて言えば
OOP言語のクラスscopeや継承などのOOP言語固有の書き方以外は
すべて手続き型記述になるはずだが

84:デフォルトの名無しさん
18/11/24 22:53:53.83 PdTiOWtJ.net
>>82
そんな実験結果は現存しない

85:デフォルトの名無しさん
18/11/24 22:55:36.80 CDKSSVF4.net
>>83
でも事実としてOOPのほうがずっと書きやすいんだ
実際に比べたのだから疑いようがない
不思議だね

86:デフォルトの名無しさん
18/11/24 22:56:33.29 b7tmfxF4.net
C言語でもこれとか使えば
オブジェクト指向は簡単なんだろう
C 言語によるオブジェクト記述法 COOL ver.2
URLリンク(www.sage-p.com)

87:デフォルトの名無しさん
18/11/24 22:57:19.07 CDKSSVF4.net
>>83
ということはクラスなどOOP固有の機能がOOP言語の書きやすさに大きく影響しているのだろうね

88:デフォルトの名無しさん
18/11/24 22:57:27.24 b7tmfxF4.net
さてどれどれ
URLリンク(www.sage-p.com)
6. 集約の記述、継承の記述
集約の記述
継承の記述
多重継承の記述
重複継承の記述
動的継承の記述
絶句(大爆笑)

89:デフォルトの名無しさん
18/11/24 22:58:19.93 b7tmfxF4.net
いやー勉強になるなぁ(棒)
C言語によるオブジェクト指向プログラミング
URLリンク(github.com)

90:デフォルトの名無しさん
18/11/24 22:58:56.15 PdTiOWtJ.net
>>85
それは、言っては悪いけど、
あなたがまだ初心者で
ソフトウエアの基礎分かってなくて
手続き型だろうが関数型だろうがOOPだろうが
まだまとまった規模のソフトウエアを開発したことがなくて
とんど初心者の感触的な意見で物事を決め付けて
語っているから

91:デフォルトの名無しさん
18/11/25 01:13:09.29 1agksu/K.net
oopのが圧倒的に簡単というのはなんか危険な匂いがするな。。
確かにちょっとしてGUIを用意するっていうのならoop系統のフレームワーク使って
てきとうに組むってのが一番楽なのかも知れんが。

92:デフォルトの名無しさん
18/11/25 01:15:21.75 0mYB5fkb.net
>>67
いや、継承するべきではないという明らからしい結論が出ているのだが、これに即答できないなら、設計に関する書籍の一つも読んだことが無いのだから、議論の前にサーベイが必要かも。

93:デフォルトの名無しさん
18/11/25 05:13:23.83 feJaHqxA.net
>>90
それは、言っては悪いけど、
あなたがまだ初心者で
OOPの基礎分かってなくて
動的型だろうがライブプログラミングだろうがイメージベースだろうが
まだまとまった規模のソフトウエアを開発したことがなくて
とんど初心者の感触的な意見で物事を決め付けて
語っているから

94:デフォルトの名無しさん
18/11/25 09:10:00.13 tktqdq5V.net
つまり
雑魚でも業務システムを安全に組めるのがOOP
玄人にしか使えないのが手続き型
ということですね

95:デフォルトの名無しさん
18/11/25 09:17:03.70 EkScRF1o.net
>>94
人の問題と、技術の問題を別々に考えると、
人は玄人の方が凄い(当たり前)
技術はOOPの方が凄い
ってことにならないか?

96:デフォルトの名無しさん
18/11/25 09:22:19.13 Me7Ua5RN.net
>>95
雑魚にも使えるからと言って、玄人にも使いやすいかというと、そうとも限らないと思う

97:デフォルトの名無しさん
18/11/25 09:28:40.73 tktqdq5V.net
玄人もみんなOOP使ってる
アンチOOPは一部の変な人しか居ない
組み込みなど仕方なく手続き型を使うことはあるけど
好んで使う人は滅多にない
統計が示す事実なので受け入れよう

98:デフォルトの名無しさん
18/11/25 09:37:27.18 COKb21+F.net
>>90
よほど悔しかったんだな

99:デフォルトの名無しさん
18/11/25 10:39:17.58 EkScRF1o.net
>>96
そうとは限らないけど、オブジェクト指向に限っては
玄人にとっても使いやすいね

100:デフォルトの名無しさん
18/11/25 11:18:00.71 lQm5zIri.net
メソッドの呼び出し順番がわからないのは玄人仕様なのか?
単に欠陥品にしか見えんが

101:デフォルトの名無しさん
18/11/25 11:30:57.68 EkScRF1o.net
>>100
メソッドの呼び出し順番って?
例えば、C言語でOpenCLを使うとき、
メソッドの呼び出し順番はどうすればいいの?

URLリンク(qiita.com)

102:デフォルトの名無しさん
18/11/25 11:40:37.44 lQm5zIri.net
>>101
意味不明
脳でもやられたの?

103:デフォルトの名無しさん
18/11/25 11:47:59.76 EkScRF1o.net
>>102
だからメソッドの呼び出し順番ってなんですか?って
聞いてるんだが?OpenCLを例に教えてください

104:デフォルトの名無しさん
18/11/25 12:26:09.47 vh7k3J4B.net
オブジェクト指向以外でプログラム書けと言われてもどう書けばいいかわからない

105:デフォルトの名無しさん
18/11/25 12:44:35.18 1agksu/K.net
それループ処理とかどうしてんの?

106:デフォルトの名無しさん
18/11/25 13:21:07.14 J/tRa1t1.net
WF呼んでるだけだから

107:デフォルトの名無しさん
18/11/25 14:33:27.61 tktqdq5V.net
>>105
Linqやstream api、その他類似のライブラリを使うからループってあまり必要ない
ループ内で条件分岐してコンティニューだとか前N回のループで使ったデータにアクセス(例えば移動平均のような)的な複雑な処理だとループしたくなるけど
オブジェクト指向を正しく使うとそういった複雑なフローですら自然と綺麗に消えるから、結論としてループは不要になるんだね

108:デフォルトの名無しさん
18/11/25 14:36:00.76 weEv0p0d.net
>>107
お前の作るものすっげー重そう

109:デフォルトの名無しさん
18/11/25 14:39:55.91 tktqdq5V.net
>>108
いやそうでもないよ
Linqは遅いなんて10年前の化石みたいな考え方をしてる人よりはよっぽどパフォーマンスについて理解してっからね
君の書くコードのほうが心配
ぐちゃぐちゃの手続き型じゃキャッシュ処理1つ書くのも大変でしょう?

110:デフォルトの名無しさん
18/11/25 15:19:28.80 weEv0p0d.net
>>109
いや、重いよ
必要のないループ何重にもかけてるでしょ?

111:デフォルトの名無しさん
18/11/25 15:22:03.41 weEv0p0d.net
普通はワンループで終わるもの
何周もさせてるのに重くないわけないじゃん
脳みそイかれてるの?

112:デフォルトの名無しさん
18/11/25 15:36:44.24 tktqdq5V.net
>>110
必要性は状況次第だっての常識な
なので、なんの前提もなしにそれ必要?などと問う人はアマチュアだってバレバレなんだよね
それと何重にも無駄にループとかさ、お前の脳内で繰り広げられてる妄想を急に押し付けられても困るよ

113:デフォルトの名無しさん
18/11/25 15:40:01.76 weEv0p0d.net
>>112
は?おっせぇのが言い訳こいてんじゃねーよwww

114:デフォルトの名無しさん
18/11/25 15:50:20.72 tktqdq5V.net
>>113
遅いの定義は?
俺の書いたコードを測定したか?
測定結果と遅いの定義を比較して確かに遅いと言えるのか?
この辺りが当たり前にできないようじゃねぇ
パフォーマンスを語るには10年はやい
5chだから俺が相手してやってっけどさ
お前がここと同じノリで業務中に遅い遅いって喚いても誰にも相手にされんぞ?
遅いと主張したいなら遅い速いの定義、測定法の妥当性の理論的証明、測定結果、分析、改善案をレポートにまとめて提出して
それがプロフェッショナルとして最低限の仕事でしょうよ

115:デフォルトの名無しさん
18/11/25 15:51:52.39 eaHucPl1.net
はいはいコーダーさんたち少し落ち着きましょおねぇ~w

116:デフォルトの名無しさん
18/11/25 15:56:14.50 1agksu/K.net
こいつ現実でもクソコード直さない言い訳めちゃくちゃしてそうだな。

117:デフォルトの名無しさん
18/11/25 16:06:29.19 tktqdq5V.net
俺はいつもOOPでエレガントかつハイパフォーマンスのコードを書くからクソコードを書きなおせなんて言われたことはないなぁ
強いて言うなら開発初期のプロトタイプをリファクタリングする時ぐらいか?
でもそれって人に言われることじゃなく自発的にやることだから言われたっていうのは違うか

118:デフォルトの名無しさん
18/11/25 16:18:02.15 VkAQ98By.net
自分が書いたコード張ればよいんじゃないの。
見てて痛々しすぎる。

119:デフォルトの名無しさん
18/11/25 16:25:18.06 tktqdq5V.net
言い返せなくなると悪口
君たちほんとワンパターンだね

120:デフォルトの名無しさん
18/11/25 16:51:45.36 weEv0p0d.net
>>114
長文乙
お前のプログラムもそんなんwwww

121:デフォルトの名無しさん
18/11/25 18:31:47.00 iHAZEqh5.net
このようにオブジェクト指向脳はバカばかりです

122:デフォルトの名無しさん
18/11/25 18:38:29.89 qs4SgZZJ.net
昔、「プログラミング言語C++」
を読んでオブジェクト指向をマスター
しようとしたが挫折した
笑ってやってくださいw

123:デフォルトの名無しさん
18/11/25 18:41:31.33 0mYB5fkb.net
まあC++はオブジェクト指向言語じゃないので。

124:デフォルトの名無しさん
18/11/25 20:11:04.19 vr+gezjU.net
もうマスターとかいう次元じゃないんだよ
オフショアに発注するのにUMLでも何でもいいけど書いて設計わたさなきゃいけないんだから
自称玄人の単価高いだけのオッサンは要らないぞ?

125:デフォルトの名無しさん
18/11/25 20:14:51.63 1agksu/K.net
「誰も文句を言わない」って状況に少しは疑問を覚えたほうがいい。
その状況は相当ヤバイ。

126:デフォルトの名無しさん
18/11/25 21:54:54.02 DgoPPid/.net
高スキル人材でも同じ単価だから
逆にレベル下げれば差額で利ざや稼げる

127:デフォルトの名無しさん
18/11/26 01:34:43.75 4L+i6kyj.net
 コ ー ド 書 く の は 簡 単 だ け ど 、 コ ー ド 直 す の は 難 し い ん だ よ !

128:デフォルトの名無しさん
18/11/26 09:14:52.86 idl47KUs.net
僕たち地球人~今日も明日もあさっても~チンポがシコシコ~するんだよー!
 バ バ ア が 潮 吹 い た ぁ !
スレリンク(welfare板)

129:デフォルトの名無しさん
18/11/26 16:47:46.52 W9ZstVyK.net
>>127
さっさとExcel方眼紙の仕様書通りにコードを書くんだ

130:デフォルトの名無しさん
18/11/27 02:07:04.35 lw5ggjJM.net
876 その名前は774人います (JPWW 0Hc7-PNEt) 2018/11/27(火) 01:56:44.19 ID:DNZYahFJH
『スループット』を測定して、ラグ率を公開しろ!
プログラミング言語の性能差
主な言語とスループット
言語 スループット 特性
C/C++ 100 静的言語ネイティブコード
Java 1~10 静的言語VMバイトコード
Ruby/Python 0.1~1 動的言語
オンラインゲームのサーバではC/C++が最も使われ

URLリンク(www.wata-lab.meijo-u.ac.jp)
そう思う   0
そう思わない 200

131:デフォルトの名無しさん
18/11/27 02:21:25.99 W6F5hY0t.net
っ Fortran

132:デフォルトの名無しさん
18/11/27 13:16:17.46 DSo9/Qg/.net
オブジェクト指向は、Ruby で学ぶのがベスト
Duck Typing・動的クラス定義、
メタプログラミングで、DSL も作れる

133:デフォルトの名無しさん
18/11/27 14:27:23.37 zCT4SpRg.net
そして何より大人気言語である!
一生役に立つ!!
URLリンク(gigazine.net)
URLリンク(www.softantenna.com)
URLリンク(www.softantenna.com)
URLリンク(findy-code.io)
大人気Ruby!
Ruby大人気!!

134:デフォルトの名無しさん
18/11/27 15:52:51.26 cxMbwZ5k.net
チンカチンカのしゃっこいルービー

135:デフォルトの名無しさん
18/11/27 21:29:01.45 0SaTRf+U.net
>>9
間違えたにしちゃなかなかいいな
全ての誤りの原動機、か。

136:デフォルトの名無しさん
18/11/29 18:53:54.55 KWwJYRcq.net
チンポがシコシコするぜ!!

137:デフォルトの名無しさん
18/11/30 02:13:24.31 K5e3xJIx.net
しねぇよハゲが

138:デフォルトの名無しさん
18/11/30 20:09:13.61 Z9rHHL+q.net
チンポがシコシコするぜ!!

139:デフォルトの名無しさん
18/12/02 10:22:59.07 hwrbleuo.net
何人かNG登録して前々スレ見てみなよ
日本人には答は出せなさそうだぞ
一般人はヲタや信者にに振り回されず、
言語的進化を享受すればよい

140:デフォルトの名無しさん
18/12/02 17:28:53.55 i9+KKCk5.net
もうメリデメフクメテ浸透してるし今更語る事なんてないだろ
所詮道具でしかないんだし適材適所で使っていけ

141:デフォルトの名無しさん
18/12/02 17:42:16.45 HcBcsiAe.net
OLEオートメーションサーバにしたって、サーバ側は欧米人が用意するから
日本人は黙ってVBからOLEクライアントのコードをコピペして業務要件をまっとうすればよかっただろ
OOPだって同じこと
ゆめゆめライブラリ提供者になったつもりになって語るなよ
身の程知らずも甚だしくて、おこがましいわ

142:デフォルトの名無しさん
18/12/03 12:57:22.45 MuhWYfR9.net
人間の理解力や把握できる範囲の限界を認めることから出発してるから正直で現実的な考え方だったと思う
で、いろいろ作っていったら複雑になっちゃった
うんちく垂れ流して人を煙に巻く奴まで出て来た
継承の段数が深すぎるなら、コピーして横並びの改造版でもいいじゃん
格好つけるためにやるんなら無意味だよ
俺たちバカで忘れっぽいうっかりさんだからわかりやすくしておこう指向でいいじゃん

143:デフォルトの名無しさん
18/12/03 18:07:01.86 1lxn2Mvc.net
チンポがシコシコするぜ!!

144:デフォルトの名無しさん
18/12/03 18:22:58.26 MuhWYfR9.net
>>143
チンポ「を」だろ
はいコンパイルエラー
やり直し

145:デフォルトの名無しさん
18/12/03 21:25:38.43 YfUt50QH.net
611 名無し三等兵 (ワッチョイ 7fe7-t9Bb) sage 2018/11/22(木) 12:46:59.97 ID:vFEoyYoC0
>>587
「ちんちん」の語源の1つの説に、
支那の娼婦が幼児語で「入れて入れて」と言った言葉を
当時の出羽守が有難がって日本に広めたという
かなり眉唾物な故事がある。
その説に依るなら「チンポかシコシコする。」は
当然のように入れた側の所感とその転用じゃな。
591 名無し三等兵 (スッップ Sd1f-hEn1) sage 2018/11/22(木) 12:26:55.61 ID:9IvK1JXqd
>>587
シコシコするは他動詞なので、所有者の意思とは無関係にチンポが自立行動するのであれば「イライラする」「ムラムラする」という自動詞を用いるのが正しい
644 名無し三等兵 (アウアウカー Sa87-dVyK) sage 2018/11/22(木) 13:18:34.11 ID:UNLN7beIa
>>587
「胸がドキドキする」
胸は心臓の意味で、行為者として心臓が使われているので「心臓が拍動する」は日本語としておかしくない。
「チンポがシコシコする」
チンポはそのままの意味で、受け手側としてチンポが使われているので「チンポはシコシコされる」又は「チンポをシコシコする」が正しい。(50字)

146:デフォルトの名無しさん
18/12/03 22:54:51.11 mN7ne2WE.net
>>1
そのとおりじゃ!
というか、おれはオブジェクト指向のC++が現れてすぐに
クソだウンコだと言ってきた。
オブジェクト指向が素晴らしい?はあ?何言ってんの馬鹿なの?
オブジェクト指向の特徴は、カプセル化と継承じゃ!

そんなもの他の言語ではもっと簡単な方法で実現してる!
それが理解できないバカはさっさと死ね!

147:デフォルトの名無しさん
18/12/03 22:57:21.92 YfUt50QH.net
>>146
>オブジェクト指向が素晴らしい?はあ?何言ってんの馬鹿なの?
928 デフォルトの名無しさん 2018/11/21(水) 18:59:11.61 ID:8Yc2p7H1
>>922
>ナンチャッテメッセージングスタイルになったのは
チンポ.オシッコを出す
チンポ.オシッコを止める
さっきトイレでやってきた。

929 デフォルトの名無しさん 2018/11/21(水) 19:07:17.83 ID:8Yc2p7H1
>>915
>単なる動的なメソッド呼び出しをメッセージと称し、ただしコールするメソッドが見つからない場合だけメッセージを
>ハンドリングできる省コストなナンチャッテメッセージングスタイルに落ち着いた。
×
俺.オシッコを止める 俺.オシッコを出す

俺.チンポに力を入れる 俺.チンポから力を抜く

148:デフォルトの名無しさん
18/12/03 23:29:36.52 YOh0g1vW.net
特定の言語の話なんか誰もしてないのに本当に馬鹿だな
指向とそれを言語仕様に組み込むかどうかは別の話なのに本当に馬鹿だな

149:デフォルトの名無しさん
18/12/03 23:40:34.11 7LyrQmlv.net
チンの始皇帝
略してチンシコ

150:デフォルトの名無しさん
18/12/04 21:52:10.12 oP1QWx6j.net
無理やりOOPしなくていいと思うよ、ソフトが見やすくメンテしやすい事か重要なんだから。
無理しても余計へんちくりんなコードになるしね、ただちゃんと設計されたOOPはマジでわかりやすいので勉強はした方がいいと思う
OOP否定派はどうせ手続き型でもまともに設計できない。出来るのは自分流の設計だけ、自分では気づかないけどめちゃくちゃわかりにくいコードだよ、それ

151:デフォルトの名無しさん
18/12/04 21:54:17.37 vKKb4ksI.net
チンポがシコシコするぜ!!

152:デフォルトの名無しさん
18/12/04 22:10:57.24 ooaSXOiW.net
オブジェクト指向で良い設計ができるのっていつ?ってことと、
もし筋の悪い設計だったとき、オブジェクト指向で作ってれば変更が楽なの?って観点が欲しい

153:デフォルトの名無しさん
18/12/04 22:42:42.95 ZSkJl4U8.net
手続き型(imperative)の対立用語は宣言型(decrative)
ずーっとOOPの対立概念として手続き型を使ってる低脳クソ間抜けがいるな。
C++もJavaも今のメインストリームは大体オブジェクト指向“かつ”手続き型。
分かったかクソ間抜けwww>>150

154:デフォルトの名無しさん
18/12/04 23:03:20.35 cCqvXBTi.net
まあ宣言するだけで、低レイヤーではしこしこ手続き書くんだけどな

155:デフォルトの名無しさん
18/12/05 00:05:37.74 9gT+gzvf.net
Javaは中途半端。プリミティブとオブジェクトを無駄に分けるし、後からジェネリクス入れたせいでダサいライブラリが残存してる
何よりもユーザーが作れるもの全てがオブジェクトになるんで「ここだけオブジェクト指向の考えを入れよう」っていうアプローチがとれない

156:デフォルトの名無しさん
18/12/05 02:04:49.95 VoKxlQ5r.net
> 何よりもユーザーが作れるもの全てがオブジェクトになるんで
それのどこが中途半端?原理主義だというなら分からんでもないが…

157:デフォルトの名無しさん
18/12/05 07:30:32.23 u/KmWkrw.net
チンポがシコシコするぜ!!

158:デフォルトの名無しさん
18/12/05 12:12:46.64 YAapXrxf.net
155じゃないけど
原理主義はどっちかって言うと
smalltalk
とかなんじゃないだろうか?
javaは全部がオブシェクトじゃなくて
プリミティブ型
が混じっているから
中途半端
と判断しているのではないかな?
javaは所謂手続き型的に書きにくい(書けない?)
クラスを作ってオブジェクト指向しないといけないのに
オブジェクトじゃないプリミティブ型が混じっているから中途半端見えるのでは?
javaは登場当初の時期が古い頃でもあるから
処理性能的にプリミティブ型が必要だったのかも?
c++は手続き型的に書ける感じだけど
javaはそういうのがし難い印象
だからstaticおじさんとかが登場したとかじゃないのかなぁ?
良く知らないけど

159:デフォルトの名無しさん
18/12/05 12:19:31.57 ZLI12txd.net
>>158
> 何よりもユーザーが作れるもの全てがオブジェクトになるんで「ここだけオブジェクト指向の考えを入れよう」っていうアプローチがとれない
と言っているのにその擁護はおかしい。

160:デフォルトの名無しさん
18/12/05 14:32:43.01 w2+RR7F7.net
>>159
ユーザーがプリミティブ型を作れると思ってる?

161:デフォルトの名無しさん
18/12/05 14:40:35.72 3gNaylqN.net
>>160
分かった。けど>>155の文章力はちょっと酷すぎないか…

162:デフォルトの名無しさん
18/12/05 16:30:58.93 ifntcr/4.net
>>153
OOPも元は宣言的を目指してるし、smalltalkや最近の関数型機能も取り込んだOOPな言語もある程度宣言的なんだよね。
じゃあ宣言的ってなんぞやってなるんだけど、HaskellもPrologも結局ループを再帰とかmapとかfoldlとかに置き換えて、if/switch文がガードやパターンマッチになっただけって言う。
(実際、Haskellのパターンマッチはcase(C言語系のswitch)の構文糖衣)
OOPもそう言う制御構造をメソッドに押し込んじゃえって感じだけど(少なくともmainとかの中身は宣言的に書きやすい)、メソッドの中身は相変わらず手続き的と言う。
(この辺、最近の言語だとクロージャ(ラムダ式含む)やらLinqやらで比較的、制御構造を隠蔽し易くなってると思う。あとはif/switch文だけだ。がんばれ!)
でも逆にそう言う目で見ると、関数型言語も手続き型言語も大差無い。
(関数型言語も事実上の再代入は可能だし)
強いて言えば関数型言語の方が関数に分割し易かったり、ガードやパターンマッチで分岐のネストが減る分、見やすいってだけ。
(どっちかと言えばアルゴリズムと相性が良いリストが基本か、効率重視の配列が基本かの違いの方が大きいので、リスト使う限り文法以上の違いは感じない)
GoとRust入門サイト読んでみたけど、どっちもOOPじゃ無いんだね。
Go=手続き型言語に最近トレンドの機能入れました。(ただしOOPは除く)
Rust=手続き型言語でも関数プログラミングな書き方出来ますが、関数型言語は言語レベルでサポートしてますー>なら、手続き型言語でも言語レベルで関数プログラミングをサポートしようじゃ無いか。
Goは依存関係に苦しんでた結果生まれたとか(dllとか基本的に作らない方針)、OOPへの問題提起な印象。
RustはOCamlとかSMLで良くね?と思ったけど、関数型言語のままだと普及しないから、手続き型言語に寄せました的な印象。

163:デフォルトの名無しさん
18/12/05 17:09:13.00 dEDNahW6.net
OOPのすべてを表現できるOOPLが無いから
こうなるんだよ。たぶん不可能だし、その場しのぎ
で作って、文法ごと捨ててしまうのが正しい。

164:デフォルトの名無しさん
18/12/05 17:10:16.06 dEDNahW6.net
>>141
そんなミイラの話をするのか?

165:デフォルトの名無しさん
18/12/05 17:39:07.44 dEDNahW6.net
死んだのはJavaだけやろ
そらインタプリタやらサブセットやら自由な実装を認めないし
フレームワークをゴミ箱に捨て続けるようでは
そらうんざりだわ

166:デフォルトの名無しさん
18/12/05 17:40:27.21 dEDNahW6.net
>>154
だな

167:デフォルトの名無しさん
18/12/05 17:41:51.93 dEDNahW6.net
>>160
作れる言語もあるよ

168:デフォルトの名無しさん
18/12/05 17:43:38.84 dEDNahW6.net
アノテーションは、くそだし、いいわけ臭い

169:デフォルトの名無しさん
18/12/05 17:47:53.12 dEDNahW6.net
くそはJavaだから、限定すると
Cとかと結合出来にくいから、ダメなんよ
逆に呼ぶのもメンドイし、バインディングが
最大の欠点よ。自分の殻に閉じ籠って
独自の世界観作っちゃってるのよ。

170:デフォルトの名無しさん
18/12/05 17:53:40.31 dEDNahW6.net
>>162
ちゃうぞ、パターンマッチはオーバーロードの機能もあるから

171:デフォルトの名無しさん
18/12/05 17:59:22.17 ifntcr/4.net
>>170
OOPとの比較だとそうだけど、if/switchは手続き的と宣言的(OOP含む)の比較だから。

172:デフォルトの名無しさん
18/12/05 18:07:26.91 Sqih7UKg.net
>>169
その言い方だと、他の言語はC言語と結合できやすいといってるように思えるけど、
ソースレベルで結合できるC/C++以外で、
C言語は他の言語と結合できるの?
くそなのはむしろC言語では?

173:デフォルトの名無しさん
18/12/05 18:54:41.97 ifntcr/4.net
Hello World!!
ello World!!
llo World!!
lo World!!
o World!!
World!!
World!!
orld!!
rld!!
ld!!
d!!
!!
!
を無限に繰り返すプログラムをCで宣言的?に書いてみた。

174:デフォルトの名無しさん
18/12/05 18:55:14.61 ifntcr/4.net
#include <stdio.h>
#include <string.h>
void hello(char[],int);
int main()
{
char s[] = "Hello World!! ";
int sl = strlen(s);
while(1) for(int i = 0; i < sl; i++) hello(s,i);
return 0;
}
void hello(char str[], int i)
{
puts(&str[i]);
for(int j = 0; j < 50000; j++){}
}

175:デフォルトの名無しさん
18/12/05 18:56:07.81 ifntcr/4.net
こっちはHaskell
main = do
mapM_ (\_ -> hello str) [1..]
hello [] = return ()
hello (s:ss) = do
putStrLn (s:ss)
mapM_ (\_ -> putStr "") [1..50000]
hello ss
str = "Hello World!! "

176:デフォルトの名無しさん
18/12/05 19:03:09.82 Sqih7UKg.net
こっちはシェルスクリプト
#!/bin/sh
while :; do
s="Hello World!!"
while [ "$s" ]; do
echo "$s"
s=${s#?}
done
done

177:デフォルトの名無しさん
18/12/05 19:05:46.15 Sqih7UKg.net
シェルスクリプト版改良
#!/bin/sh
while [ "${s:=Hello World!!}" ]; do
echo "$s"
s=${s#?}
done

178:デフォルトの名無しさん
18/12/05 21:57:00.01 ifntcr/4.net
do-doneが宣言的じゃ無いぬ(´-ω-`)
Cのはwhileやforが一つの文か式は{}を省略できるから宣言的であって。。。
てか、OOPどうした。

179:デフォルトの名無しさん
18/12/05 22:00:07.15 ifntcr/4.net
てか、手続きやOOPの本当に厄介なのはポインタとか参照とか使う場面なんで、これは良い例であってだな。。。
しかし、手続き型言語の良い点もまたそこを効率的に使える点なんだよね。。。
(安全性とトレードオフ)

180:デフォルトの名無しさん
18/12/05 22:39:32.59 lB72HyJ5.net
正直どうせフォンノイマン型計算機なんだから手続きベースでいいじゃんっていう気もする
そんなことより問題領域を表現するデータ構造(演算の定義域)をきちんと構造化してですね...
いわゆる巷で言われるOOPだと、何というか分散処理の匂いがしてあまり好みではない
OS上のプロセス自体を巨大なFSMとして見ることができて、そのモデルはかなり役に立つけど、どうしてその実装までそのモデルを強いられるんだ、という
別にメモリ上の構造化されたデータ群に対して演算を加えていく形式でもいいじゃんっていう
そっちの方が順序回路っぽいし
ミクロの視点かマクロの視点か、という違いな気もするけど

181:デフォルトの名無しさん
18/12/05 22:51:05.76 XBoqgBKa.net
> Cのはwhileやforが一つの文か式は{}を省略できるから宣言的
> Cのはwhileやforが一つの文か式は{}を省略できるから宣言的
> Cのはwhileやforが一つの文か式は{}を省略できるから宣言的
> Cのはwhileやforが一つの文か式は{}を省略できるから宣言的
なんでバカは知ったかが他人にバレないと思い込むんだろう?
浮気男が「自分がこんなに楽しんでいるのだから妻も同じようなことをしてるに違いない」と決めつけるように、
「自分がよく分からないのだから適当なこと言っても他人も分からないに違いない(からイキっておこう)」という精神なのだろうか。 👀
Rock54: Caution(BBR-MD5:1341adc37120578f18dba9451e6c8c3b)


182:デフォルトの名無しさん
18/12/05 22:51:40.08 vbqGwRKl.net
>>173 GNU Smalltalk
| str |
str := 'Hello World!!'.
0 to: FloatD infinity do: [:idx | (str allButFirst: idx \\ (str size + 1)) displayNl]
URLリンク(ideone.com)

183:デフォルトの名無しさん
18/12/05 22:57:46.55 O9mDBW5G.net
ソートしたいぜ!
と宣言すればあとは誰かが宜しくやってくれる素晴らしい世界
しかし
ソートが遅い
ソート順が特定条件で意図しない結果に
などの現実にぶち当たり自分が小人さんになったりする世界

184:デフォルトの名無しさん
18/12/05 23:10:23.55 9gT+gzvf.net
真面目な話だけど、forとwhileは「ボクの考えた最高な制御構造だから、ブロックの中身を全部見て、どこで変数が使われてるか全部把握してね!」って書いてるようなもんだよ
そこをmapにすると「シーケンスの各要素を関数で変換します」、foldだと「シーケンスの各要素を使って一つの値を出力します」って意図が最初っから込められてる
だから宣言的な方が読み取りやすい

185:デフォルトの名無しさん
18/12/05 23:47:33.72 tu0nld1G.net
>>181
いや、そいつに関してはシッタカというよりはもっとシンプルに
本人のおつむの悪さが俺らを困惑させてるケースだと思うw
周回遅れの人間が微笑んでくる感じ

186:デフォルトの名無しさん
18/12/05 23:58:29.47 Sqih7UKg.net
>>184
forは「要素を全てブロックの中で処理します」だろ?

187:デフォルトの名無しさん
18/12/06 00:11:05.89 3Vav0lUR.net
「それではその処理を説明します」
「“まず”~~します」
「“次に”~~します」
「“それから”~~します」
「“最後に”~~します」
「そして何も返しません」
「操作していた配列は無茶苦茶にしておきました」

188:デフォルトの名無しさん
18/12/06 00:23:57.83 vM4xO2xb.net
なるほど、つまりconstを使えば宣言的って言いたいわけだな!

189:デフォルトの名無しさん
18/12/06 01:28:24.96 kqr3R6FL.net
>>181
>>185
いあぁ。。。宣言的ってのに再代入禁止とか関数脳に侵され過ぎてもね?
実際、再代入可能な方がメモリ効率は良いのよ。
それをプログラマーが見やすいか?が重要なんだけど、現状関数プログラミングよりhs手続き型で単純な方が宣言的って言うね?
まあ悪い例とでも受け取ってよ。
普通に{}で囲む処理書いてたし。
それをわざわざ?宣言的っぽく関数に括り出したわけで。
OOPならこうじゃ!なのも受け付けるし。
>>182
さすが、純粋OOPLやね。
ただ、関数型もOOPLも結局か標準関数の多さが強みじゃね?って思いがある。
(samlltalkはオブジェクト自体がコード呼び出せるって意味で文系環境だし、理系なら結局Cに行くわな。。。って意味で関数型にもOOPLにも、ライブラリの重要性しか感じないんだけど)

190:デフォルトの名無しさん
18/12/06 04:18:18.28 xIiNgjk2.net
バカ「関数に括り出すと宣言的」

191:デフォルトの名無しさん
18/12/06 08:46:37.49 vM4xO2xb.net
でも>>177が一番シンプルでわかりやすいよな?
宣言的だからって必ずしもいいとは限らない例だよな

192:デフォルトの名無しさん
18/12/06 09:12:46.27 rq0vzYZs.net
藁人形論法と言う。
「ミカンと浣腸は違う。お前はミカンが何か全く知らないのに知ったかで論評しようとするからめちゃくちゃな文になってる」
「でもミカンが黄色いとは限らないよね」←これがお前。
誰もミカンが必ず黄色いとは言ってない。
お前のミカンの理解が間違ってる、浣腸と比べるものではないと言っている。
何事か言い負かされて、でも空って青いとは限らないよね、と言ってるのと同じだ。
お前はあれか、全く本も読まない勉強もしないでこんなところでノー知識で言葉のうわべだけから妄想したポエム書き散らしてるだけで何か得ることができるとでも思ってるのか。

193:デフォルトの名無しさん
18/12/06 22:46:17.83 LqRlvnk/.net
池沼「ペンギンは空飛ばない空飛ばない」
池沼「カモノハシは卵産む卵産む」
低学歴知恵遅れにかぎって
継承大好きだからな

194:デフォルトの名無しさん
18/12/07 05:32:10.71 frCtIBO+.net
>手続き型で単純な方が宣言的って言うね?
単純なら宣言的って思ってるのか
>>178で{}を省略できたから宣言的だって主張してるのはそういうことなのか
頭がくらくらする

195:デフォルトの名無しさん
18/12/07 14:33:41.27 F84vPdId.net
>>194
単純ならってわけでも無い。
whileやforを繰り返し構造を表す関数として解釈した。
関数が関数や値を受け取って、処理を進めているように見えるように意識した。

196:デフォルトの名無しさん
18/12/07 16:41:42.35 /wuQ7bh3.net
よりドツボにハマっていくスタイル

197:デフォルトの名無しさん
18/12/07 18:24:50.91 F84vPdId.net
ドツボに嵌るついで。
>>175 のdo式の書き方をモナド式に直す。
main = mapM_ (\_ -> hello str) [1..]
hello [] = return ()
hello (s:ss) = putStrLn (s:ss) >> mapM_ (\_ -> putStr "") [1..50000] >> hello ss
str = "Hello World!! "

198:デフォルトの名無しさん
18/12/07 18:26:57.31 F84vPdId.net
>> は、左を実行して右を実行する演算子。
Haskellでは2項演算子を()で囲むと2引数の関数になるので
main = mapM_ (\_ -> hello str) [1..]
hello [] = return ()
hello (s:ss) = (>>) (putStrLn (s:ss)) ((>>) (mapM_ (\_ -> putStr "") [1..50000]) (hello ss))
str = "Hello World!! "

199:デフォルトの名無しさん
18/12/07 18:28:40.18 F84vPdId.net
(>>)を関数fに置き換える。
main = mapM_ (\_ -> hello str) [1..]
hello [] = return ()
hello (s:ss) = f (putStrLn (s:ss)) (f (mapM_ (\_ -> putStr "") [1..50000]) (hello ss))
where f = (>>)
str = "Hello World!! "

200:デフォルトの名無しさん
18/12/07 22:07:56.84 BUuGF4Ds.net
いい加減、50000ってのを直せよ
バグだろ

201:デフォルトの名無しさん
18/12/07 22:09:23.48 BUuGF4Ds.net
とっても見やすくシンプルでバグもないシェルスクリプト版
#!/bin/sh
while [ "${s:=Hello World!!}" ]; do
echo "$s"
s=${s#?}
done

202:デフォルトの名無しさん
18/12/07 23:06:18.22 QnrdJVUz.net
クソみてえなおまじないコマンド/usr/bin/[ とか代入と値評価を一度にするクソ構文のどこがシンプルなんだ?
これがシンプルでわかりやすいなら、↓のCも同じくらいシンプルでわかりやすくなっちゃうけど、普通にわかりにくいだろ。
#include<stdio.h>
int main(void) {
while(!NULL) {
char* c = "Hello World!!";
while(printf("%s\n", c++) != 2);
}
return 0;
}

203:デフォルトの名無しさん
18/12/07 23:30:46.58 //esc+Fs.net
Javaならオブジェクト指向でこんなに簡単に
Stream.generate(() -> "Hello World!!")
.flatMap(s -> IntStream.range(0, s.length()).mapToObj(s::substring))
.forEach(System.out::println);

204:デフォルトの名無しさん
18/12/07 23:43:31.81 BUuGF4Ds.net
>>202
シェルスクリプトの文法が複雑かどうかじゃなくて
書いたコードがシンプルって話をしてるんだよw

205:デフォルトの名無しさん
18/12/08 02:19:55.24 5PBkTMHJ.net
>>200
iPadでちょうど良い速さにする重み付け。
CPU性能に合わせて増減して下しあ。

206:デフォルトの名無しさん
18/12/08 02:36:05.47 5PBkTMHJ.net
重み付け消すと流石にスッキリ。
main = mapM_ (\_ -> hello str) [1..]
hello [] = return ()
hello (s:ss) = f (putStrLn (s:ss)) (hello ss)
where f = (>>)
str = "Hello World!! "

207:デフォルトの名無しさん
18/12/08 09:15:05.98 LYqii6LP.net
だったらアセンブラがいいな
上記のことをやるカスタム命令

unk xxxxx xxxxxx xxxx xxxx

208:デフォルトの名無しさん
18/12/08 11:13:42.32 TkizOfcn.net
カスタム命令に対応しているCPUを教えてください
作るしか無いのであれば、その作り方まで書く必要があります。
そこまでやって回答として認められます。

209:デフォルトの名無しさん
18/12/08 12:14:15.63 Wi+m9177.net
>>193
半角サマが正気に戻った…

210:デフォルトの名無しさん
18/12/08 13:40:17.04 fIshozug.net
>>149
>チンの始皇帝
>略してチンシコ
2014-07-26
草間彌生の水玉は去勢されたペニス
なんと若き草間彌生が無数のペニスの上に寝転がっている。この写真を見てはっとした。
現在の水玉の作品にいたるまで、草間はひとつのテーマで描き続けているのではないだろうかと直感した。
URLリンク(hpo.hatenablog.com)

211:デフォルトの名無しさん
18/12/11 01:12:09.09 jHINMsWI.net
ここまでオブジェクト指向のメリットなし

212:デフォルトの名無しさん
18/12/11 22:46:18.49 yA4tg2d2.net
低学歴知恵遅れがオブジェクト指向言語使わなければ
オブジェクト指向言語はメリット満載

213:デフォルトの名無しさん
18/12/11 23:21:32.78 y908H20V.net
>>212
そしたら誰も使わないだろうに
満載もクソもあるか

214:デフォルトの名無しさん
18/12/13 01:07:24.00 8DZ4oTBo.net
URLリンク(www.kh.rim.or.jp)

215:デフォルトの名無しさん
18/12/13 01:17:08.28 mMIcaeGH.net
>>214
C++ はひどい言語だ。これは、多くの平均以下のプログラマーが使ってるために
さらに輪をかけてゲロゲロになっていて、どうしようもないゴミが
簡単に生産されるようになってる。正直いって、C を選ぶ理由が C++ プログラマーを
追っぱらうため *だけ* だったとしても、それ自体、C を使う強力な理由になりうる。
C++ はトンでもなく悪い設計の元になりうる。どうせこの言語ではいつも STL やら
Boost やら、その他ゲロゲロベロベロの「素敵な」ライブラリの機能を使って、
それがあんたのプログラムに「役立つ」んだろうが、以下のことが起きる:
- うまく動かないときにもたらされる際限のない苦痛 (あと STL とか、特に Boost が
安定してるとか移植性があるとかいう奴は、どいつもこいつも大ウソつきで、
もはや笑えるレベルを超えている)
- 非効率な抽象プログラミングモデルで、2年たった後にこれらが実はそんなに
効率的じゃなかったことに気づくケース。でもそのときにはすでに全部の
コードがその素晴らしいオブジェクトモデルに依存していて、直すためには
アプリ全体を書き直さなきゃなんない。
言いかえれば、唯一まともで、効率がよくて、システムレベルで使えて、移植性がある
C++ ってのは、基本的に C で使える機能だけに限ったときなんだ。そして C だけに
限定するってことは、他の人がそれをめちゃくちゃにしないってことで、
ついでに沢山のプログラマが実際に低水準の問題を理解することができて、アホらしい
「オブジェクト・モデル」のたわごとを持ちこまないってことだ。

216:デフォルトの名無しさん
18/12/13 19:24:28.58 /U42sxDQ.net
Object-oriented programming is an exceptionally bad idea which could only have originated in California.

— Edsger W. Dijkstra

217:デフォルトの名無しさん
18/12/14 00:40:39.32 ayIeof0t.net
>>214
面白いおっさんだなぁw
実際素晴らしい物を作る
という様な理由や
そう言った事を実は言って無いんだよなぁ
寧ろ難しいから普通の人は止めておけ
って言っていたらしい
実際そう思う
その記事に有る
気まり事を沢山覚えておかないと大変な事になる
というのはその通りで
c++11やそれ以降も増え続けていて
いったいこれはどうやって使えばいいんだ?
なんて思う
既にオブジェクト指向言語の枠は超えて
関数型みたいな形でライブラリーを使わないといけなかったり
かなり大変
オブジェクト指向は実際に効果が有る
その記事に書いて有る方法だと余り活用する方法は未だに思いつかないけど
それ以外なら結構効果が有る
わざとらしく上手く行かない部分だけ持ち出す辺りは
あのおっさんらしいと言うべきなのかw
続く

218:デフォルトの名無しさん
18/12/14 00:41:24.35 ayIeof0t.net
続き
オブジェクト指向プログラミング問題は
それを使いこなす事が難しいって事だ
結局オブジェクト指向とc++を同時にまともに使える人はそんなに居ない
逆に言うとまともなプログラマを確保するには
良いフィルター
になっているとも言える
そういった人たちに安定的に報酬を与えたい
それに散々描いて有るけど
設計をしっかりしないといけない
これが重要で
設計をしっかりやって更に作る
となると時間が掛かるのは当たり前で
そういう事をしないといけない
そうする事を出来る人間が本来使う物
そういう面が有るのがc++とオブジェクト指向
ここを見ていれば解るとおり
オブジェクト指向プログラミングだけでも難しい
その上cの元々持ってる文法的な誤認性の高さを持ったままc++は更に難しくなってる
c++を使いこなすのは実際至難の業だと思う
osはリーナスなんかも言ってるけど
細部まで制御して作りたいし
しないといけない
でもc++はかなり背景で色々な事をするから邪魔
だからcの方が向いている
最適化すら余計な事をするなって言うくらいだし
まぁ当たり前だわね
それでもアメリカのf-35はc++で出来てるって最近聞いて驚いた

219:デフォルトの名無しさん
18/12/14 01:08:15.68 cnCtFwTt.net
つまり時間がかかるようにしてお金がかかるようにした。
C++作者が自ら言ってるように、雇用創出だね。

220:デフォルトの名無しさん
18/12/14 01:17:07.94 g+Rqe6w2.net
>>219
科学技術や文化が後退するぞ
そんなこと言っていると

221:デフォルトの名無しさん
18/12/14 01:51:29.18 g+Rqe6w2.net
設計は理不尽な方法を力ずくで遂行するのではなく
科学的工学的手法を用いて合理的にすべし

222:デフォルトの名無しさん
18/12/14 06:24:46.77 vqN/tea0.net
普通に、Json オブジェクト程度のものとしておけばいいのにね

223:デフォルトの名無しさん
18/12/14 07:54:14.33 8KSBcVH8.net
何人かの常駐を除いて、意外に前スレと前々スレが良スレだよな

224:デフォルトの名無しさん
18/12/14 10:00:28.99 Zmoa3gJf.net
ジョークすらわからんのか

225:デフォルトの名無しさん
18/12/14 12:32:56.65 IR70YMjL.net
ちんぼがシコシコするぜ!!

226:デフォルトの名無しさん
18/12/14 13:38:31.78 z5B+Ssa1.net
1 C/C++
2 その他
C/C++それ自体は使い難いが、要らないコードを減らすため、コンピューターの仕組みを知るための C/C++。

227:デフォルトの名無しさん
18/12/14 13:42:14.57 f5Y1ye2A.net
C/C++にはいらないコードを減らす能力はないよ
結局の所、何かしらのコードは、コンピュータが自動でやるか
人間がやるかのどちらかしか無い。
コンピュータにやらせれば人間の負担は減るが、実行速度が遅くなる。
C/C++は実行速度を早くするのが第一の目的になってるので
人間がやることが多い

228:デフォルトの名無しさん
18/12/14 22:01:09.12 lcoUdBQK.net
とはいえ、ある程度同じような内容なら
同じような形で最適化できてチューンせんでも良いから高級言語ってものが成り立つわけだ。

229:デフォルトの名無しさん
18/12/15 01:39:33.98 k5T0HzJW.net
>>227
>C/C++にはいらないコードを減らす能力はないよ
気軽にコードを書き加えられないつーことでは、無駄なコードを減らすことにも繋がるのでは?
C 言語にポインタがある理由は省メモリ化・高速化・開発作業の省力化です
URLリンク(pg-kura.hatenablog.com)
低スキルでも読めるコードは、属人的なコードになる
スレリンク(tech板)
1 C/C++
2 その他
前者のほうがスキルとデバッグの苦労が多い分、コードの書き加えに慎重になるだろう?

230:デフォルトの名無しさん
18/12/15 01:41:14.00 EyhC0X8P.net
> 前者のほうがスキルとデバッグの苦労が多い分、コードの書き加えに慎重になるだろう?
それはマイナス点ですよね

231:デフォルトの名無しさん
18/12/15 01:45:15.34 k5T0HzJW.net
高級言語は簡単にプログラムを書けてかつデバッグの労力も少ないが、要らないコードが増えやすい。
パワーポイント使用を禁止する会社が増えている理由
URLリンク(news.allabout.co.jp)
同様にパワーポイントを使えば簡単に書類作成できるが、その分無駄な書類が量産されやすくなる。

232:デフォルトの名無しさん
18/12/15 01:48:10.37 k5T0HzJW.net
宮本
いま、若いデザイナーがゲームをつくっている時、面白くならなかったら、ついつい新しい材料を追加して
面白くしようとするんですよ。実は、いま目の前にあるのものをちゃんと使ってそれを面白くするほうが先やのに、
新しいものを持ってくるという。
URLリンク(www.nintendo.co.jp)
 コ ー ド 書 く の は 簡 単 だ け ど 、 コ ー ド 直 す の は 難 し い ん だ よ !
230 デフォルトの名無しさん sage 2018/12/15(土) 01:41:14.00 ID:EyhC0X8P
> 前者のほうがスキルとデバッグの苦労が多い分、コードの書き加えに慎重になるだろう?
それはマイナス点ですよね

233:デフォルトの名無しさん
18/12/15 09:52:05.77 mEke7jIQ.net
> 前者のほうがスキルとデバッグの苦労が多い分、コードの書き加えに慎重になるだろう?
言語の問題よりも直交性のない書き方してるかどうかのが大きいけどな。

234:デフォルトの名無しさん
18/12/15 17:47:07.05 86paL/Pn.net
プログラミングに限らず、環境や部品を作る技術者と
その上で部品を組み立てる技術屋を分けて考えないとな
どんな業種でもなんとなく住み分けできてるのに、
プログラミングだけは技術屋が背伸びするんだよな

235:デフォルトの名無しさん
18/12/15 17:53:31.83 VvS+qBfB.net
分業だったりそうじゃなかったりもするし

236:デフォルトの名無しさん
18/12/15 18:18:52.12 tRQh3wn/.net
自分がやってる事が組み立てでしかないって感じる事すら出来ずに居るからだろうな。
犬小屋程度なら日曜日のお父さんでも作れるのと同じ。

237:デフォルトの名無しさん
18/12/15 18:56:24.50 xvkgSdvR.net
犬小屋程度のものに金払いすぎだろお前

238:デフォルトの名無しさん
18/12/15 20:12:53.48 mEke7jIQ.net
>>234
他の業種に比べるとプログラムは再現性が高いからというのがあるのかも。
それがある種の選民思想というか万能感を産んでる気はする。
うまく行き過ぎる分野でやってる人というのは他も同じようにうまくやれると思い込む可能性が
高いのではないか。

239:デフォルトの名無しさん
18/12/15 20:49:06.63 cynZ90Gn.net
>234,238は本当に背伸びが好きなのです

240:デフォルトの名無しさん
18/12/15 22:48:36.56 8aRCy95z.net
このスレみればわかる通り
低学歴知恵遅れ仕様のオブジェクト指向()が
すべてを不幸にしてるのが証明されてる
低学歴知恵遅れはどんなものでもダメにする才能がある
低学歴知恵遅れにオブジェクト指向は
キチガイに刃物

241:デフォルトの名無しさん
18/12/16 01:22:07.08 0WbTxJge.net
故にこの世の中から、刃物を無くすべきだ
鉄、金属、電気そんなものはなくして
人間は自然とともに生きるべきだエルフのように

242:デフォルトの名無しさん
18/12/16 01:54:20.69 lUGhamUq.net
オブジェクト指向ってしっくりこないんです

243:デフォルトの名無しさん
18/12/16 01:59:44.85 0WbTxJge.net
「語呂が良い」「しっくりくる」 高輪ゲートウェイを「高輪門」とする案にいいね殺到、「ゲートウェイ」を凝縮して「門」に
URLリンク(nlab.itmedia.co.jp)

244:デフォルトの名無しさん
18/12/17 08:05:20.43 c+zeSDWw.net
技術者とはOSなりコンパイラなりIDEなり、フレームワークなりを作れる人。
おおいにOOPを活用すればいいし、その資格がある。
技術屋はその環境でライブラリを活用すればいい。
ただし学者気取りでOOPを議論してはならない。
日曜大工にとどめておいて、仕事に持ち込まないこと。

245:デフォルトの名無しさん
18/12/17 13:22:19.58 xYD22s/a.net
むしろアプリレイヤーの方が恩恵が大きいだろ
本当にOSやコンパイラ開発にOOPなんて使ってんのか?

246:デフォルトの名無しさん
18/12/17 16:55:41.30 X3IN+Evw.net
そもそもIDEの始祖たるSmalltalkはアルト向けのOS(のいくつかるうちのひとつ)として開発されたもの

247:デフォルトの名無しさん
18/12/17 18:30:05.26 UsBD63Zl.net
>>245
まあ、oo自体いらないからね

248:デフォルトの名無しさん
18/12/17 20:38:36.88 iM9tKYK0.net
先駆者の言葉を使わずにオレオレ定義を作りたがる、けど論理的でもないし発想が優れているわけでもない
俺は知ってるぞ。そういうやつが何の役にも立たないフレームワークもどきを作って1ヶ月で技術的負債にするんだって

249:デフォルトの名無しさん
18/12/17 20:41:06.58 oCmK2PVR.net
とゆう非論理的な感情の吐露

250:デフォルトの名無しさん
18/12/17 23:54:22.59 pyrPEcPo.net
OOPの言語でなくてもOOなデザインはやってるだろう
イベント駆動で受け身のコーディングじゃなきゃしんどいよ
中央政権的なコーディングには限界がある

251:デフォルトの名無しさん
18/12/18 12:51:46.93 q/J1cc1X.net
中央集権的な、だった

252:デフォルトの名無しさん
18/12/18 13:26:04.43 oYgGV2Oh.net
>>251
訂正しなくてもそう読めたよ。
仕様書読む上では余計な機能だけど。

253:デフォルトの名無しさん
18/12/19 14:30:45.83 0YMLYUSa.net
379 その名前は774人います (ワッチョイWW 4b08-kSAM) 2018/11/11(日) 09:59:42.88 ID:SzY2QaI/0
>>221
>CycはFredがひげをそっている間、Fredはそれでも人間なのかと尋ねた
チンポがシコシコしている間、俺はそれでも人間なのか?
221 その名前は774人います (バットンキン MM32-lPnu) 2018/10/10(水) 04:41:52.41 ID:Ko5F36TvM
>>211
>所有者の意思とは無関係に、勃起して「シコシコする」
それは『電気カミソリ』とは全く違う!
(第1章 はじめに 2頁)
たとえば、CycはFredという名前の男が朝にひげをそるという話が理解できなかった。
Cycの推論エンジンは、この話の中に矛盾を見つけた。Cycは人間には電気の部品がないことは知っているが、
Fredが電気カミソリを持っていたので、エンティティ「Fredがひげそり中(FredWhileShaving)」
には電気の部品が含まれていると考えた。したがって、CycはFredがひげをそっている間、
Fredはそれでも人間なのかと尋ねた。
『深層学習』
著者:
Ian Goodfellow, イアングッドフェロー,
Yoshua Bengio, ヨシュアベンジオ,
Aaron Courville, アーロンカービル

254:デフォルトの名無しさん
18/12/19 14:31:49.25 QzBRL+7W.net
たとえば、CycはFredという名前の男がドナルドダックのモノマネをするという話が理解できなかった。
Cycの推論エンジンは、この話の中に矛盾を見つけた。Cycは人間には羽がないことは知っているが、
アヒルのように歩き、アヒルのように鳴くものはアヒルに違いないと考えた。
したがって、CycはFredがドナルドダックのモノマネしている間、
Fredはそれでも人間なのかと尋ねた。

255:デフォルトの名無しさん
18/12/20 00:45:34.98 JEb4hZ4L.net
Cycは「ええ、アタシはいつだって人間よ!アナタの性の玩具ではないのよ!」
そう言ってスカートをたくし上げると、パンティに隠されていないCycのオマンコが丸見えになった。
Fredはそのオマンコに齧りつきたいと考えたのだが、朝にひげをそっていない事を思いだしたので
「すこしチクチクするかな?下手糞だと思われたら嫌だな」と心の中で思った。
しかし、抗い難い性的欲求を抑えきれなくなったFredは「おまえがパンティを履いてないのが悪いんだぞ!」と
叫ぶなりCycを上四方固めに極めてツルリと剃り上げられたCycのオマンコに自分のひげを押しあてた。
Fredはそれなりに勃起した。

256:デフォルトの名無しさん
18/12/21 01:43:59.75 JxXDkc1c.net














257:デフォルトの名無しさん
18/12/21 02:16:52.51 2iFVCAc3.net
抽象化ってどういうことなんですか? を考えていたら答えが出た話
URLリンク(togetter.com)
これはわかりやすい

258:デフォルトの名無しさん
18/12/21 02:17:20.29 2iFVCAc3.net
特にこの図
URLリンク(twitter.com)
(deleted an unsolicited ad)

259:デフォルトの名無しさん
18/12/21 08:27:36.93 AbI0aG/Q.net
>>257
それ抽象化ちゃう共通化やw

260:デフォルトの名無しさん
18/12/22 11:28:54.80 WOvsil6D.net
抽象化と共通化を混同する奴って絶えないな

261:デフォルトの名無しさん
18/12/22 12:21:39.69 YxQl9nWo.net
低学歴無能が多いからしょうがない

262:デフォルトの名無しさん
18/12/22 14:44:04.23 NO8ddV9L.net
>>260
では、汎化と共通化の違いを、どうぞ。
ちなみに汎化は抽象化の一種なので、
抽象化と共通化が異なるものであるなら、
汎化と共通化も異なるもののはずだよね。

263:デフォルトの名無しさん
18/12/22 16:52:17.32 ca6MyRE4.net
何故それらが似ているのかを理解せずに共通化をして、似ていない部分の記述が不便になるような悪い共通化と、
何故似ているのかを理解して、似ていない部分も分かりやすく記述できるような良い共通化があって、
良い共通化を抽象化と呼んでいるんだと個人的には思っている
別物である複数のモノに同じような処理を行いたいっていう前提がないと、良し悪しなんて決められないけどね

264:デフォルトの名無しさん
18/12/22 18:02:09.87 b6CiPLFa.net
池沼のオツムでは
人類もホモも同じ
人類も鳥も同じ
セックスするからな
池沼のオツムでは
鳥も昆虫も同じ
空飛ぶからな

265:デフォルトの名無しさん
18/12/22 18:05:25.90 BhMGTTnH.net
抽象化とは、対象から細部や具体性を取り去り、本質的に重要な要素や、着目している側面のみを取り出して、一つの概念として定義すること。
また、異なる複数の対象に共通する性質や要素を見出し、共通点を組み合わせて汎用的な概念を構成すること。
ソフトウェアの設計・開発やプログラミングで特に多用される概念で、プログラミング言語がメモリの番地に名前をつけて変数として扱えるようにすることや、
複数のプログラムモジュール(部品)から共通する機能を抜き出して一つのモジュールにまとめること、同じ呼び出し規約で複数の異なるプログラムを呼び出せることなどがこれに当たる。
URLリンク(e-words.jp)

266:デフォルトの名無しさん
18/12/22 18:06:49.92 isgJM7yv.net
セックスできないあなたは何者でつか
空を飛ばないあなたは池沼以下でつか

267:デフォルトの名無しさん
18/12/22 18:08:39.73 b6CiPLFa.net
低学歴知恵遅れほど論理()という言葉が大好き
しかもそれがぜんぜん論理的じゃない
低学歴知恵遅れの論理は風が吹けば桶屋が儲かるというレベルの論理
そして低学歴知恵遅れはその自覚がない

268:デフォルトの名無しさん
18/12/22 18:54:10.89 isgJM7yv.net
この人は何と闘っているんだろう…
ま、オレにとってはどうでもいいことだけど。

269:デフォルトの名無しさん
18/12/22 19:01:59.30 b6CiPLFa.net
オレは日々低学歴知恵遅れと戦っている
この板で跋扈している声のデカイ低学歴知恵遅れをこの板から排除しないと
板が正常化しないからな
まともな人間が近寄らない
オマエもその一部だからな

270:デフォルトの名無しさん
18/12/22 20:42:42.76 jp/Rya+k.net
つまり、
「俺は俺自身と戦っている!」
ってことだな。
カッコいい!

271:デフォルトの名無しさん
18/12/22 23:54:25.90 LDNLBP8a.net
     チ
     ン
     ポ
     が
     シ
     コ
     シ
     コ
     す
     る
     ぜ
     !
     !

 ン
  ポ
   が
    シ
     コ
      シ
       コ
        す
         る
          ぜ
           !
            !

272:デフォルトの名無しさん
18/12/23 09:09:52.56 NdY1oHc3.net
ベテランが降臨しなくなったな
何気に良スレだったのに

273:デフォルトの名無しさん
18/12/23 09:11:14.97 NdY1oHc3.net
過去スレのことね
このスレはクソ

274:デフォルトの名無しさん
18/12/23 10:22:47.54 qffc/3mK.net
もともとクソみたいな低学歴知恵遅れしかいなかったスレで
なんかいってるわ
オレがすべて排除したからな

275:デフォルトの名無しさん
18/12/23 11:01:32.64 52OagQlj.net
>>263
共通化に良いも悪いもないねん
とゆうか設計手法的には共通化ゆう考え方が既に悪手なんや
正当な段階を踏んで設計された場合抽象化されたモデルには
必然的に属性や操作に共通点が表れるちゅう結果にすぎんねん
ところがおまえらはいきなり共通部分をさがしてモデル化しようとするやろ?
せやから本来モデルに必要十分な属性や操作に対して過不足が生まれんねん
これがおまえらの敗因や
大事なんは、共通化はするな、対象を比較するな、やで

276:デフォルトの名無しさん
18/12/23 11:26:43.66 AQ4G8Wg1.net
まあ共通化とモジュラリティー上げるってのを良いバランスでやるってのは難しいわな。
難しいからこの商売成り立ってるんだろうし。

277:デフォルトの名無しさん
18/12/23 12:41:35.17 mANdNsFQ.net
>>274
人に嫌われて避けられていることを自慢してどうするw

278:デフォルトの名無しさん
18/12/23 19:02:17.06 yG9FxXJv.net
本当に仕様がきっちり整理されてるならそもそも共通化なんて起こらん
後で見直して抜けや重複が出てるのは
設計が失敗している
そもそも三流の仕事だと思う

279:デフォルトの名無しさん
18/12/23 19:13:19.16 yUjQiXy1.net
膨大な行数になるような物の将来を100%見通すことが出来る千里眼を持っていれば
最初っから正しい設計ができるだろうなw
重要なのは間違っている設計を正しい設計に正す技術だよ

280:デフォルトの名無しさん
18/12/23 19:18:31.66 /SuaHXVx.net
>>275
で、汎化と抽象化の違い、まだー?

281:デフォルトの名無しさん
18/12/23 19:18:34.37 yG9FxXJv.net
>>279
いや、設計書かけよ低脳

282:デフォルトの名無しさん
18/12/23 19:29:49.92 yUjQiXy1.net
>>281
1995年に2018年のWindows 10の設計書が書けたら
神だと思うよw

283:デフォルトの名無しさん
18/12/23 20:11:00.83 yG9FxXJv.net
>>282
え?そんな仕事あったの?

284:デフォルトの名無しさん
18/12/23 20:11:40.28 yUjQiXy1.net
そりゃMSにはWindows開発って仕事はあるだろうね

285:デフォルトの名無しさん
18/12/23 20:12:50.61 yG9FxXJv.net
そうやってありもしない想定ばっかりしてるカスだから提案の一つもできないんだろう

286:デフォルトの名無しさん
18/12/23 20:19:31.19 yG9FxXJv.net
そもそも設計技術の本質がわかっているのか?
どんなに自分がいいと思っていても見るやつが
なにこれきったねぇ構造してやがんなクソ
って思ったら終了だっての
残りは動くか動かねぇかしか残ってねぇ
つまり、設計とはコミュニケーションスキルのことだ
テメーが一番苦手なことだろうがよ
なにできる気になってんだよボケカスアホ
今まで一度だってうまくコミュニケーションが取れたことなんてお前らにねぇだろバーカ
陰キャにうまい設計なんて物理的に不可能

287:デフォルトの名無しさん
18/12/23 20:24:40.15 yG9FxXJv.net
格ゲーでいつまでも技を出すことに執着してる雑魚と何ら変わらん
相手の動きをよく見て相手の動きに対応するということができない
設計がコミュニケーションスキルであれば
プログラムを組む人間をよく見てよく知ることが
設計技術を伸ばすための必須条件である
自分がやりたいことしかできない人間にそもそも設計技術は身に付かない

288:デフォルトの名無しさん
18/12/23 20:29:08.85 p2HcTr2p.net
大手SIerが作った自社糞フレームワークが何か?

289:デフォルトの名無しさん
18/12/23 20:43:18.65 yUjQiXy1.net
>>286
> って思ったら終了だっての
> 残りは動くか動かねぇかしか残ってねぇ
動くことは最低条件で、それに加えて
低コスト(低期間)で実現することが必要なのでは?
さらに完成して終わりではなくバージョンアップを繰り返すのであれば
それにたいしても低コスト(低期間)で実現することが必要になる。
最低条件だけで十分っていうのなら別にいいけどさ
いくらでも開発コストだしてくれて期間も伸ばしてくれるの?

290:デフォルトの名無しさん
18/12/24 00:02:49.16 zs7tYDO5.net
>>289
は?見積り次にオブジェクト指向で工数を削減する気なの?
んであいつより俺のが少ない工数でできますよって安値競争すんの?
正気か?
お前バカなんだからもうちょっと考えて発言しろよ

291:デフォルトの名無しさん
18/12/24 01:11:24.56 pmN6czHN.net
>>290
それ発言してるのお前じゃね?
俺は安値競争するなんて言ってないよ
ちょっと考えから発言しようよ
馬鹿にみえるよ

292:デフォルトの名無しさん
18/12/24 03:32:55.95 1NZsCgqj.net
     チ
     ン
     ポ
     が
     シ
     コ
     シ
     コ
     す
     る
     ぜ
     !
     !

 ン
  ポ
   が
    シ
     コ
      シ
       コ
        す
         る
          ぜ
           !
            !

293:デフォルトの名無しさん
18/12/24 07:18:40.39 WUv3NjP/.net
コーダーはコストなんか気にしても見積りできんのやから意味ないでw
てかオブジェクト指向どこいったんやw

294:デフォルトの名無しさん
18/12/24 07:21:15.16 zs7tYDO5.net
>>291
発言元は低コストって連呼してね?
これが安値競争でないって本格的に脳に異常があるんだな

295:デフォルトの名無しさん
18/12/24 07:46:58.56 pmN6czHN.net
>>294
お前ビジネス向いてないよ。
ビジネスの基本は「安く仕入れて(作って)高く売る」だ
なんで低コストで作って低プライスで売らんといかんのだ。
馬鹿なのか?人月計算が正しいと思って
開発期間が減ったら請求金額も下げる馬鹿なのか?


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch