staticおじさん(読み:すたてぃっくおじさん)とは、2010年に@ITに「実はオブジェクト指向ってしっくりこないんです![1]」
と投稿して炎上したおじさんのことである。
staticおじさんが爆誕した2010年ごろのIT土方界隈ではJavaを中心としたオブジェクト指向が主流であり
「なんでもかんでもオブジェクト指向」という風潮があった。
このためstaticおじさんは多勢に無勢でボロクソに叩かれる結果となり、さらにはプログラミングそのものの
話を飛び出してオブジェクト指向推進派による学歴差別などに発展したすえに無事炎上した。
それからわずか数年後、staticおじさんの主張に「極力static変数は使わない」「関数ポインタを多用する」
というコーディング規約を加えた「関数型プログラミング」がJavaScript界隈を中心に爆発的に流行し、
その流れに乗るかたちでこれら規約を半ば強制する仕様の「関数型プログラミング言語」も多数登場するなど
世界的に一大ブームになった。
ちなみにstaticおじさんの主張と非常に酷似したものが、staticおじさんの登場より遥か昔、インターネットを
支える中核技術である「IP」のRFC(仕様書)にも「階層化の有害性」として書かれていたりする。
また、海外でも同様の主張を面白おかしく書いた「Bjarne Stroustrup インタビュー」なる怪文書が出回り、
こちらも大炎上した。
https://monobook.org/wiki/%E3%82%B9%E3%82%BF%E3%83%86%E3%82%A3%E3%83%83%E3%82%AF%E3%81%8A%E3%81%98%E3%81%95%E3%82%93
なぜ「staticおじさん」は叩かれたのか?
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2019/02/08(金) 15:18:48.58ID:pS5scTjj203デフォルトの名無しさん
2019/03/06(水) 18:39:59.24ID:T925dhjI try〜catchとか後藤さんが嫌われて活躍してるじゃん。
>>203
try〜catch=SetJumpLongJmp ですか…たしかに一本とられました
try〜catch=SetJumpLongJmp ですか…たしかに一本とられました
205デフォルトの名無しさん
2019/03/06(水) 19:25:13.11ID:/lIbHJ9o 「GOTOを地上から消し去れ!とにかくGOTO表記を消し去れ!聖典にそう書いてあるというのを聞いたことがある!!」
置き換え可能な全ての機能をGOTOで置き直せ、と強制されているわけでもないのに
GOTOの4文字を目にした途端に発狂して「GOTOは悪魔の文字だ!使うな!」とわめき始める
GOTO否定教の信者さんは大変だな
置き換え可能な全ての機能をGOTOで置き直せ、と強制されているわけでもないのに
GOTOの4文字を目にした途端に発狂して「GOTOは悪魔の文字だ!使うな!」とわめき始める
GOTO否定教の信者さんは大変だな
206デフォルトの名無しさん
2019/03/06(水) 19:42:48.36ID:L0cGL7i+ ラベル付きの break, continue が現れたことで goto 文は息の根を止められたのでは?
207デフォルトの名無しさん
2019/03/06(水) 20:03:07.63ID:SgTtMyqz 下向きgotoはそこまで悪いとは思わない
gotoと並行してフラグ変数作りまくるのを勘弁して欲しい
gotoと並行してフラグ変数作りまくるのを勘弁して欲しい
208デフォルトの名無しさん
2019/03/06(水) 20:17:08.11ID:RlXQ9XDp 後藤「差別やめれ」
209デフォルトの名無しさん
2019/03/06(水) 20:40:00.08ID:6E2MmEsM 本当はメソッドに切り分けまくれば良いんだが
一番キツイのはメソッドの名前を考えること
カプセル化は名前を考える労力を減らすってのが一つの役割かもしれん
一番キツイのはメソッドの名前を考えること
カプセル化は名前を考える労力を減らすってのが一つの役割かもしれん
>>206
そのラベル付き、というのは goto に「言語上の」縛りを加えただけなのでは?バイナリーでは単なる jmp 文であるところにお節介な縛りをつけただけなのでは?
そのラベル付き、というのは goto に「言語上の」縛りを加えただけなのでは?バイナリーでは単なる jmp 文であるところにお節介な縛りをつけただけなのでは?
211デフォルトの名無しさん
2019/03/06(水) 20:52:20.84ID:T925dhjI 後藤さんは関数内ならどこにでも飛べちゃうから嫌われるんだよ。
あれが無けりゃいい奴なのに。
あれが無けりゃいい奴なのに。
212デフォルトの名無しさん
2019/03/06(水) 20:53:23.93ID:deMtns5v 昔のBASICはIF THENのあとに行番号を書いておけばそこにジャンプした
実際はGOTO
それを利用してGOTOを排除したって言ってた人がいて雑誌にそのプログラムが乗ってた
編集者も意地悪だなってオモタ
実際はGOTO
それを利用してGOTOを排除したって言ってた人がいて雑誌にそのプログラムが乗ってた
編集者も意地悪だなってオモタ
213デフォルトの名無しさん
2019/03/06(水) 21:56:50.08ID:s+f1BYLZ 自分がプログラム始めたての頃にgoto文を知ったときは、なるほどコレを使って処理を分けていけばいいんだな!と思ってgotoだらけになったからな。
その辺がgotoが悲劇を生み出す背景な気がする。
その辺がgotoが悲劇を生み出す背景な気がする。
214デフォルトの名無しさん
2019/03/06(水) 21:59:49.13ID:bD1OgwFI Learn C the hard wayが昔は無料で読めたんだけど、その中ではgotoをエラー時にリソース開放で使ってたな
あれは用途が明快で構造をシンプルに保つ唯一の手段だと納得した覚えがある
あれは用途が明快で構造をシンプルに保つ唯一の手段だと納得した覚えがある
215デフォルトの名無しさん
2019/03/06(水) 23:18:10.15ID:e2ChgRco 後藤さんは上向きに移動できる時点で使ってはいけないもの
216デフォルトの名無しさん
2019/03/07(木) 10:59:20.21ID:N2ThN7lC finallyみたいなもんか
217デフォルトの名無しさん
2019/03/07(木) 14:05:33.75ID:N/cPeE83 goto禁止なのはCPUの先読みキャッシュ再読み込みのペナルティが増えるからだろ
218デフォルトの名無しさん
2019/03/07(木) 14:08:50.43ID:BNKQ6N5d >>217
そんなの普通にループ処理でも分岐処理でも発生してるがな。
そんなの普通にループ処理でも分岐処理でも発生してるがな。
219デフォルトの名無しさん
2019/03/07(木) 21:55:15.93ID:DIhWxmq7 アセンブラレベルではgotoのようなものしかないけどな
220デフォルトの名無しさん
2019/03/07(木) 22:02:14.39ID:DIhWxmq7 もともとgotoみたいなものしかないけど意味レベルで使い方を分ければ素のgotoは使いどころが少ないので
なるべく使わないでねって事
なるべく使わないでねって事
>>220
その「意味レベルでの使い分け」とか本当に意味のある縛りなんですか?
その「意味レベルでの使い分け」とか本当に意味のある縛りなんですか?
222デフォルトの名無しさん
2019/03/07(木) 22:32:42.31ID:rioBJ/QG ダイクストラさんがこの現状見たら泣くぞ。。
223デフォルトの名無しさん
2019/03/08(金) 02:37:01.56ID:Wi6lnGN0 誰?
225デフォルトの名無しさん
2019/03/08(金) 08:51:45.91ID:G/pgcPeR ダイクストラはかく語りき
226デフォルトの名無しさん
2019/03/08(金) 09:03:00.94ID:WTQqfr5K gotoが悪玉視されたのは、関数やサブルーチンって概念が薄くて巨大な関数が鎮座するプログラムが横行していたからじゃないのかな?
1000行のメソッドの中のgotoなど地獄でしか無い
1000行のメソッドの中のgotoなど地獄でしか無い
227デフォルトの名無しさん
2019/03/08(金) 09:08:17.49ID:DXaMv9+Q 1000行のメソッド自体が地獄
228デフォルトの名無しさん
2019/03/08(金) 09:26:43.81ID:dZ4sYt+j >>226
昔はもっとすごいよ。goto文で前のループにつっこんだり、前のifにつっこんだりと本当のスパゲティが存在した。
昔はもっとすごいよ。goto文で前のループにつっこんだり、前のifにつっこんだりと本当のスパゲティが存在した。
229デフォルトの名無しさん
2019/03/08(金) 10:04:51.16ID:rZq9fJ02 2019年にもなってgotoに執着してるのはやばいだろ、逆張りにもほどがある
230デフォルトの名無しさん
2019/03/08(金) 10:43:55.93ID:WTQqfr5K 二重三重のループから脱出する手段としてはgotoとreturn、フラグの3択となる場合が多いが
gotoにしてメソッドの数を減らすやり方があってもいいとは思うんだけどね
俺はなんとなくreturn使っているが
gotoにしてメソッドの数を減らすやり方があってもいいとは思うんだけどね
俺はなんとなくreturn使っているが
231デフォルトの名無しさん
2019/03/08(金) 11:19:10.35ID:bTIRYiKW >>230
戻り先が明確なreturnが一番安全安心。
gotoなんてその時良くても、手が離れて改修されて何年か後に見てみたら違う意味になってたりするから怖いわ。
フラグは時系列的に前後関係がある場合には仕方ないから使い方次第だ。関数内スコープしか無いフラグは面倒なだけだわ。
戻り先が明確なreturnが一番安全安心。
gotoなんてその時良くても、手が離れて改修されて何年か後に見てみたら違う意味になってたりするから怖いわ。
フラグは時系列的に前後関係がある場合には仕方ないから使い方次第だ。関数内スコープしか無いフラグは面倒なだけだわ。
232デフォルトの名無しさん
2019/03/08(金) 12:18:43.98ID:rZq9fJ02233デフォルトの名無しさん
2019/03/08(金) 13:54:56.17ID:FlAUHkK4 gotoはウィザードにしか使いこなせないがウィザードはgotoの危険性も別の安全な手段も熟知しているので使用しない
結論としてgotoはいらない子
結論としてgotoはいらない子
234デフォルトの名無しさん
2019/03/08(金) 14:21:57.32ID:j3u+c/XL235デフォルトの名無しさん
2019/03/08(金) 14:25:55.23ID:bTIRYiKW gotoじゃリソース解放してくれないだろ。
236デフォルトの名無しさん
2019/03/08(金) 15:01:31.72ID:UJJsWIlY リソースの開放を忘れて、return で上位関数に戻るよりは、
リソース開放の処理を、関数末尾に集めて、
goto で必ずそこを通るようにしてから、
関数の終わりで上位関数に戻るようにした方が、良いのでは?
という意味なんだと思いますよ。私は。
リソース開放の処理を、関数末尾に集めて、
goto で必ずそこを通るようにしてから、
関数の終わりで上位関数に戻るようにした方が、良いのでは?
という意味なんだと思いますよ。私は。
237デフォルトの名無しさん
2019/03/08(金) 15:09:24.29ID:j3u+c/XL goto自体がリソース解放の命令だなんて言ってないよw
エラー時のリソース解放にgotoが有益、っていう話
if ((err = create_resource_00(args..., &res00)) goto error_00;
if ((err = create_resource_01(args..., &res01)) goto error_01;
if ((err = create_resource_02(args..., &res02)) goto error_02;
...
return 0; // success
...
error_02: destroy_resource_01(res01);
error_01: destroy_resource_00(res00);
error_00:
return err;
という感じで
エラー時のリソース解放にgotoが有益、っていう話
if ((err = create_resource_00(args..., &res00)) goto error_00;
if ((err = create_resource_01(args..., &res01)) goto error_01;
if ((err = create_resource_02(args..., &res02)) goto error_02;
...
return 0; // success
...
error_02: destroy_resource_01(res01);
error_01: destroy_resource_00(res00);
error_00:
return err;
という感じで
238デフォルトの名無しさん
2019/03/08(金) 15:16:05.87ID:j3u+c/XL 上のやつはまとめてリソースを確保するだけの処理と仮定してるので、+αで何らかの処理まで行うなら>>236の言う通りです
239デフォルトの名無しさん
2019/03/08(金) 15:17:16.15ID:p3uWfhXt COBOL級のレガシー言語ならしかたない
240デフォルトの名無しさん
2019/03/08(金) 15:37:58.89ID:bTIRYiKW リソースハンドル捕まえてんだからそう慌てて解放する必要も無いんだぞ。
何らかの準備処理に失敗して戻って来たら、後片付け処理呼べばいいだけだからな。
何らかの準備処理に失敗して戻って来たら、後片付け処理呼べばいいだけだからな。
241デフォルトの名無しさん
2019/03/08(金) 15:41:48.93ID:bTIRYiKW そもそも、リソースまとめて生成する処理があるなら、
リソースまとめて削除する処理だって作るだろうに。
なんでアンバランスな設計したがるの?
リソースまとめて削除する処理だって作るだろうに。
なんでアンバランスな設計したがるの?
242デフォルトの名無しさん
2019/03/08(金) 15:48:15.81ID:rZq9fJ02 まとめて確保するのに解放は個別処理にやらせるのかよ、gotoとか関係なしにバグの温床になりそうな設計してるな。センスないわ。
243デフォルトの名無しさん
2019/03/08(金) 16:09:58.22ID:eYLLL/Dr C/C++のbreakにラベルへ飛ばす機能があれば良かったのに
244デフォルトの名無しさん
2019/03/08(金) 16:35:52.70ID:j3u+c/XL >>241
リソースをまとめて解放する処理自体は必要だけど(エラーがなかった時に呼ぶ)、失敗時にはrollbackする戦略の方が楽だと思う
利用する側が失敗時にも終了処理するって、個人的には微妙に感じる
リソースをまとめて解放する処理自体は必要だけど(エラーがなかった時に呼ぶ)、失敗時にはrollbackする戦略の方が楽だと思う
利用する側が失敗時にも終了処理するって、個人的には微妙に感じる
245デフォルトの名無しさん
2019/03/08(金) 16:59:51.94ID:j3u+c/XL というかリソースを内包するようなモジュールを組み合わせることを考えると、非rollback戦略では無駄な状態が増えるので良くない
例えばmod-A(中でリソースを確保)mod-B(中でリソースを確保)という二つのモジュールを内部で利用する別のモジュールmod-Cを考えると、
この二つが共に非rollback戦略を採用していた場合には、mod-Aの初期化に成功、mod-Bの初期化に失敗、という場合に備えてmod-Cの終了処理はそれぞれmod-A/mod-Bが成功していたかどうかを判定するための変数を持つ必要がある
――あるいはmod-A/mod-Bは共に自身が未初期化状態であるにも関わらず終了処理を呼ぶことが合法であり、未定義動作を引き起こさないということを確約しないといけない
こういう状態管理の煩雑さを考えるとrollback戦略がいいと思う
例えばmod-A(中でリソースを確保)mod-B(中でリソースを確保)という二つのモジュールを内部で利用する別のモジュールmod-Cを考えると、
この二つが共に非rollback戦略を採用していた場合には、mod-Aの初期化に成功、mod-Bの初期化に失敗、という場合に備えてmod-Cの終了処理はそれぞれmod-A/mod-Bが成功していたかどうかを判定するための変数を持つ必要がある
――あるいはmod-A/mod-Bは共に自身が未初期化状態であるにも関わらず終了処理を呼ぶことが合法であり、未定義動作を引き起こさないということを確約しないといけない
こういう状態管理の煩雑さを考えるとrollback戦略がいいと思う
246デフォルトの名無しさん
2019/03/08(金) 17:20:44.26ID:j3u+c/XL ...ん?サブモジュール数を二つにした結果、議論が意味を成してないな
>> 245は忘れてくれww
まあ要はサブモジュールがN個あったときに非rollback戦略だと、
1 <= k <= Nであるk番目で失敗したとき、残るN-K個は完全に未定義状態なのだから、
1. その状況下でも終了処理が未定義動作を引き起こさないよう約束するか、
2. そうでないなら呼び出し側で状態を追跡できるようにするための変数が必要
ってことで、まあ結局状態管理が面倒ってことが言いたかったんだ
>> 245は忘れてくれww
まあ要はサブモジュールがN個あったときに非rollback戦略だと、
1 <= k <= Nであるk番目で失敗したとき、残るN-K個は完全に未定義状態なのだから、
1. その状況下でも終了処理が未定義動作を引き起こさないよう約束するか、
2. そうでないなら呼び出し側で状態を追跡できるようにするための変数が必要
ってことで、まあ結局状態管理が面倒ってことが言いたかったんだ
247デフォルトの名無しさん
2019/03/08(金) 18:07:41.94ID:0ga9HMQd そのrollback戦略とやらって、別にgoto使わなくても実現出来るでしょ、、
248デフォルトの名無しさん
2019/03/08(金) 18:33:27.22ID:j3u+c/XL >>247
当たり前じゃないですか
自分が言っているのは「gotoはエラー処理時に便利」「rollackの方が状態管理の煩雑さを軽減できるのでいいのではないか?」という二点であって、それ以上のことは言ってませんよ
当たり前じゃないですか
自分が言っているのは「gotoはエラー処理時に便利」「rollackの方が状態管理の煩雑さを軽減できるのでいいのではないか?」という二点であって、それ以上のことは言ってませんよ
249デフォルトの名無しさん
2019/03/08(金) 18:46:48.30ID:rZq9fJ02 ああ、こういうタイプの人か
250デフォルトの名無しさん
2019/03/08(金) 19:48:05.20ID:bTIRYiKW いやいや、createでエラーが返されたらdestroyする。
それだけだぞ。当然中身なんか知らなくてもいい様にするだろ?
なんで未定義のリソースの心配までしなきゃならないんだ?
全部createしたモジュールから機能を呼ぶだけなのに。
…あ、オブジェクト指向は理解できない人たち?
それだけだぞ。当然中身なんか知らなくてもいい様にするだろ?
なんで未定義のリソースの心配までしなきゃならないんだ?
全部createしたモジュールから機能を呼ぶだけなのに。
…あ、オブジェクト指向は理解できない人たち?
251デフォルトの名無しさん
2019/03/08(金) 20:33:53.95ID:j3u+c/XL あのさあ、人にオブジェクト指向の理解を問う前に不変条件という概念について勉強してくれないかな
class-invariantって聞いたことない?生成失敗は不変条件の構築失敗なんだから破棄処理もクソもないでしょ
前提が成り立ってないんだから
class-invariantって聞いたことない?生成失敗は不変条件の構築失敗なんだから破棄処理もクソもないでしょ
前提が成り立ってないんだから
252デフォルトの名無しさん
2019/03/08(金) 20:58:42.35ID:0ga9HMQd 情報系の学生さんっぽいね君
253デフォルトの名無しさん
2019/03/08(金) 21:33:08.23ID:meEyRQaU goto で一番問題だったのは外で変数を勝手にセットして
ループに飛び込んで、ループ内の変数を勝手に書き換えて
ループから飛び出していく
とかいうコードを当たり前のように書いていたから
変数がどこで書き換えられているのかわからなかったのが
一番の問題
ループに飛び込んで、ループ内の変数を勝手に書き換えて
ループから飛び出していく
とかいうコードを当たり前のように書いていたから
変数がどこで書き換えられているのかわからなかったのが
一番の問題
254デフォルトの名無しさん
2019/03/08(金) 22:04:49.84ID:bTIRYiKW255デフォルトの名無しさん
2019/03/08(金) 22:53:58.68ID:j3u+c/XL 上で言っているのは「要求される前提条件」についての話ですよ?
あなたの上げた例は単にあるリソースの獲得失敗は想定の内である、そのような前提条件を有するシステムが存在するっていうだけです
それとも任意のエラーを許容する、前提条件ゼロのシステムが存在するとでも?
あなたの上げた例は単にあるリソースの獲得失敗は想定の内である、そのような前提条件を有するシステムが存在するっていうだけです
それとも任意のエラーを許容する、前提条件ゼロのシステムが存在するとでも?
256デフォルトの名無しさん
2019/03/08(金) 23:16:55.43ID:j3u+c/XL というか、そもそも不変条件の構築失敗時には死ぬしかないっていう一般論が
リソース獲得時には死ぬしかないという主張に挿げ替えられているのが意味不明ですね
一体どこを読んでそう思ったんですか?皮肉じゃなくて聞きたいですね
そんなこと言ってないつもりですが
リソース獲得時には死ぬしかないという主張に挿げ替えられているのが意味不明ですね
一体どこを読んでそう思ったんですか?皮肉じゃなくて聞きたいですね
そんなこと言ってないつもりですが
257デフォルトの名無しさん
2019/03/09(土) 01:44:23.67ID:jz9xUaFa リソース獲得に失敗した時にできるだけ活かすようにするのか
即時に終了するべきかのかは、「そう簡単に一般化できる結論はない」というのが
c++での例外導入時の議論における結論。
即時に終了するべきかのかは、「そう簡単に一般化できる結論はない」というのが
c++での例外導入時の議論における結論。
258デフォルトの名無しさん
2019/03/09(土) 04:54:46.17ID:EXmOKVNB 居酒屋で愚痴ってればいいのに
ネットで発信したから
ネットで発信したから
259デフォルトの名無しさん
2019/03/09(土) 08:30:21.08ID:RvRucbhc 居酒屋で愚痴る相手もいなかったんでしょ
260デフォルトの名無しさん
2019/03/09(土) 10:09:44.53ID:fkGpFy2T こんなネタで愚痴れる居酒屋があるなら行くわ
261デフォルトの名無しさん
2019/03/09(土) 10:12:12.55ID:aSefnx8y >生成失敗は不変条件の構築失敗なんだから
プログラムのロードはそうだろうけど
プログラムのロードはそうだろうけど
262デフォルトの名無しさん
2019/03/09(土) 11:16:49.71ID:0gt1Zzgm >>260
愚痴るネタが制限されてる居酒屋ってあるの?
愚痴るネタが制限されてる居酒屋ってあるの?
263デフォルトの名無しさん
2019/03/09(土) 12:06:11.88ID:RvRucbhc vimの話をしちゃいけない居酒屋とか作りたい
264デフォルトの名無しさん
2019/03/09(土) 13:56:59.81ID:jz9xUaFa プログラミングbarとか恐ろしく殺伐としてそうw
265デフォルトの名無しさん
2019/03/09(土) 19:27:34.53ID:sW/nhyo2 Ruby使いやPython使いだらけな予感
あとはVBA使い
あとはVBA使い
266デフォルトの名無しさん
2019/03/09(土) 22:11:22.90ID:vm8VmVdo 若い実務者が「オブジェクト指向」というお題目で一致団結してプロジェクトを
進めようという雰囲気のなか、それに水を指すひとが出てくるという状況が発生してきた
実務者は若いので現実に否定されると傷害事件にも発展するかもしれない
そうなると面倒だし統制かける自信がなかったから
代表して大々的に叩いてガス抜きした
みんなウィンウィンだからこれでいいんだろ。若者なんかなにするかわかんないんだから。
進めようという雰囲気のなか、それに水を指すひとが出てくるという状況が発生してきた
実務者は若いので現実に否定されると傷害事件にも発展するかもしれない
そうなると面倒だし統制かける自信がなかったから
代表して大々的に叩いてガス抜きした
みんなウィンウィンだからこれでいいんだろ。若者なんかなにするかわかんないんだから。
267デフォルトの名無しさん
2019/03/09(土) 22:43:52.46ID:kzjDxuXD 片方winしかしてないのにwinwinとは
268デフォルトの名無しさん
2019/03/10(日) 10:26:06.25ID:al/xCIsd まずあの当時の若いエンジニアならオブジェクト指向は当然の前提だからわざわざお題目として唱えない
269デフォルトの名無しさん
2019/03/10(日) 16:36:03.29ID:FM+9nmuq >>268
オブジェクト指向と言っても何をどうしたいのは人それぞれだからな。
オブジェクト指向と言っても何をどうしたいのは人それぞれだからな。
270デフォルトの名無しさん
2019/03/10(日) 19:06:30.25ID:kEGKNzHc その昔インスタンスを一個だけ作って
あとはメソッド=関数のように扱ってるプロジェクトを見たことがある
誰もダメ出ししなかったのかと
あとはメソッド=関数のように扱ってるプロジェクトを見たことがある
誰もダメ出ししなかったのかと
271デフォルトの名無しさん
2019/03/10(日) 19:10:28.71ID:bDFWdxia やり方によっちゃリファクタリングできる余地もあるだろうしstatic変数使うよりかは
少しだけマシかなと。
最近の設計方針としてはオブジェクト指向がどうよりもSOLIDを理解してる方がだいじかなと思う。
SOLID少しバカにしてたけど、かなりコンパクトに要素をまとめた標語になってる気がしてきた。
少しだけマシかなと。
最近の設計方針としてはオブジェクト指向がどうよりもSOLIDを理解してる方がだいじかなと思う。
SOLID少しバカにしてたけど、かなりコンパクトに要素をまとめた標語になってる気がしてきた。
272デフォルトの名無しさん
2019/03/11(月) 04:59:46.90ID:pTTv+VC9 インスタンスが増える可能性があるなら良いんじゃない?
273デフォルトの名無しさん
2019/03/11(月) 05:12:51.52ID:sVkqVhUd Single responsibility principle 単一責任の原則
A class should have only a single responsibility, that is,
only changes to one part of the software's specification should be able to affect the specification of the class.
Open–closed principle 開放・閉鎖原則
"Software entities ... should be open for extension, but closed for modification."
Liskov substitution principle リスコフ置換原則
"Objects in a program should be replaceable with instances of their subtypes
without altering the correctness of that program." See also design by contract.
Interface segregation principle インタフェース分離の原則
"Many client-specific interfaces are better than one general-purpose interface."
Dependency inversion principle 依存性逆転の原則
One should "depend upon abstractions, [not] concretions.
http://developer.wonderpla.net/entry/blog/engineer/oop_solid_s/
A class should have only a single responsibility, that is,
only changes to one part of the software's specification should be able to affect the specification of the class.
Open–closed principle 開放・閉鎖原則
"Software entities ... should be open for extension, but closed for modification."
Liskov substitution principle リスコフ置換原則
"Objects in a program should be replaceable with instances of their subtypes
without altering the correctness of that program." See also design by contract.
Interface segregation principle インタフェース分離の原則
"Many client-specific interfaces are better than one general-purpose interface."
Dependency inversion principle 依存性逆転の原則
One should "depend upon abstractions, [not] concretions.
http://developer.wonderpla.net/entry/blog/engineer/oop_solid_s/
274デフォルトの名無しさん
2019/03/11(月) 10:20:49.00ID:Rz4vOdRL 役割分担がどこまで出来てるかだよな。
オブジェクト指向より前から、機能分担なんてのは普通にやってたし、共通部品化と言う考えもあったしな。
オブジェクト指向より前から、機能分担なんてのは普通にやってたし、共通部品化と言う考えもあったしな。
275デフォルトの名無しさん
2019/03/13(水) 20:12:53.02ID:AiOHxaEO スノッブだよ。スノッブが役割分担とか笑わせる
276デフォルトの名無しさん
2019/03/13(水) 20:35:09.13ID:Kky52x6n じゃあいままで一体なにやって来たんだ。
277デフォルトの名無しさん
2019/03/14(木) 06:57:29.67ID:/hJRNFKz ↓麻生太郎のあの画像
278デフォルトの名無しさん
2019/03/14(木) 11:05:30.46ID:lFrR8Qde スコープの概念が無いだけ
279デフォルトの名無しさん
2019/03/14(木) 12:44:05.36ID:jLkIdUGW 怪奇現象が怖かったから、ほら、怖いだろ?って
後片付け、気が滅入る
後片付け、気が滅入る
280デフォルトの名無しさん
2019/03/17(日) 23:41:55.70ID:qFtY3RGx staticおじさん叩いてる人の何割がSingletonをstatic class的に使ってたのか問題
281デフォルトの名無しさん
2019/03/20(水) 09:26:19.50ID:R+JMdvE0 そんなやつおるの?w
282デフォルトの名無しさん
2019/04/14(日) 10:21:07.07ID:VpFefbBa >>206
ラベル付きのbreakとかcontinueって、スペルを変えたgotoってだけだよな
ラベル付きのbreakとかcontinueって、スペルを変えたgotoってだけだよな
283デフォルトの名無しさん
2019/04/14(日) 11:52:53.79ID:u6Sj11hg284デフォルトの名無しさん
2019/04/15(月) 09:54:01.21ID:gVz3O2O7 www.sejuku.netのゴミさは異常
いい加減な記事ばかりサイトに載せやがって
検索に引っかからないでほしい
いい加減な記事ばかりサイトに載せやがって
検索に引っかからないでほしい
285デフォルトの名無しさん
2019/04/15(月) 10:44:00.27ID:BsGbG3gA 英語の意味検索するときweblio見たいのにalcとかいうゴミサイトが上に来るみたいなもんだなwww
286デフォルトの名無しさん
2019/04/15(月) 13:14:38.74ID:Q9ByXEDM 「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
これもガチで検索結果から消えてほしい
役に立ったためしがない
これもガチで検索結果から消えてほしい
役に立ったためしがない
287デフォルトの名無しさん
2019/04/15(月) 15:31:15.66ID:mM0ZEu/B インスタンス
コールスタックに実引数以外にインスタンスのアドレス積む
フィールドアクセスにアドレスの計算が必要
スタティック
コールスタックには実引数のみで良い
フィールドアクセスはダイレクトなアクセスでOK
satanic的にstaticはfantastic!!
コールスタックに実引数以外にインスタンスのアドレス積む
フィールドアクセスにアドレスの計算が必要
スタティック
コールスタックには実引数のみで良い
フィールドアクセスはダイレクトなアクセスでOK
satanic的にstaticはfantastic!!
288デフォルトの名無しさん
2019/04/15(月) 19:18:49.56ID:dnOkKB7K >>286
Google Hit Hider by Domainっていうuserscriptで検索結果から消してる
Google Hit Hider by Domainっていうuserscriptで検索結果から消してる
289デフォルトの名無しさん
2019/04/15(月) 20:37:29.25ID:Q9ByXEDM290デフォルトの名無しさん
2019/05/18(土) 13:49:08.45ID:J0miZ/5C perlあたりの時代だと手書きhtmlサイトだけだったのでperlの学習効率は高かった
今はblog化されてて、perl時代より学習効率が落ちてる
今はblog化されてて、perl時代より学習効率が落ちてる
291デフォルトの名無しさん
2019/06/18(火) 06:20:31.75ID:3nOE2mBA プログラム板にキチガイ降臨中!botに一晩も反応する異常さ
一般人(学校恩師)に殺害予告をしているのでスレ建て通報してください。
https://mevius.5ch.net/test/read.cgi/tech/1559872586/
142 名前:a4 ◆700L1Efzuv 投稿日:2019/06/18(火) 05:29:55 ID://qVkzO
>>141
名古屋の人な 俺ね、君の問題を大橋先生と混ぜないことにする。つまりね、
片桐孝洋のことをボコろうと思う。普通に顎の骨を折る。これくらいで警察来るか?
一般市民とかさ、普通にさ、俺らの秘密なんだけどさ、日本人なんて復活ねーから。
一般人(学校恩師)に殺害予告をしているのでスレ建て通報してください。
https://mevius.5ch.net/test/read.cgi/tech/1559872586/
142 名前:a4 ◆700L1Efzuv 投稿日:2019/06/18(火) 05:29:55 ID://qVkzO
>>141
名古屋の人な 俺ね、君の問題を大橋先生と混ぜないことにする。つまりね、
片桐孝洋のことをボコろうと思う。普通に顎の骨を折る。これくらいで警察来るか?
一般市民とかさ、普通にさ、俺らの秘密なんだけどさ、日本人なんて復活ねーから。
292デフォルトの名無しさん
2019/08/28(水) 16:31:00.84ID:mS+vHE7R >>19
性的女子高校生
性的女子高校生
293デフォルトの名無しさん
2020/06/22(月) 15:51:05.78ID:khT4bacP 阪神タイガース居酒屋みたいなものがあればいいのか。
Ruby居酒屋 Rubyディすると即退場
Java居酒屋
K&R C居酒屋
うーむ。K&R居酒屋は、開店しても閉店まで客一人とかだから誰もやらんな
となると、客が多くきそうな、旬なおっPython居酒屋が一押しか。
Ruby居酒屋 Rubyディすると即退場
Java居酒屋
K&R C居酒屋
うーむ。K&R居酒屋は、開店しても閉店まで客一人とかだから誰もやらんな
となると、客が多くきそうな、旬なおっPython居酒屋が一押しか。
294デフォルトの名無しさん
2020/06/22(月) 15:51:05.86ID:khT4bacP 阪神タイガース居酒屋みたいなものがあればいいのか。
Ruby居酒屋 Rubyディすると即退場
Java居酒屋
K&R C居酒屋
うーむ。K&R居酒屋は、開店しても閉店まで客一人とかだから誰もやらんな
となると、客が多くきそうな、旬なおっPython居酒屋が一押しか。
Ruby居酒屋 Rubyディすると即退場
Java居酒屋
K&R C居酒屋
うーむ。K&R居酒屋は、開店しても閉店まで客一人とかだから誰もやらんな
となると、客が多くきそうな、旬なおっPython居酒屋が一押しか。
295デフォルトの名無しさん
2020/06/22(月) 15:55:14.35ID:mmpBZ73b cobol居酒屋ないのか
296デフォルトの名無しさん
2020/06/22(月) 17:35:45.94ID:5VJoOXgM おっパブ パイソン学園。
297デフォルトの名無しさん
2020/07/04(土) 12:56:47.56ID:3Z3LdE0t Java居酒屋は最初の一杯無料っぽい
298デフォルトの名無しさん
2020/07/26(日) 17:33:08.78ID:r0UUx6Fs そりゃクラスライブラリ使うだけならいいけど
自分で作るとなると本命の処理以外の
無駄なモノあれこれ書かされるだけだからなw
自分で作るとなると本命の処理以外の
無駄なモノあれこれ書かされるだけだからなw
299デフォルトの名無しさん
2021/06/06(日) 16:36:17.54ID:XQfgI5eT >>293
BaslerのMVカメラ使う時のライブラリがPypylonて名前だったのを脈絡なく思い出した
BaslerのMVカメラ使う時のライブラリがPypylonて名前だったのを脈絡なく思い出した
300デフォルトの名無しさん
2021/07/19(月) 21:30:25.28ID:Yaij3Qmg 酷い作りのクラスだと引数ではなくメンバ変数に値をセットしてメソッド呼び出しとかあるからな。
わかるかボケ
わかるかボケ
301デフォルトの名無しさん
2021/07/19(月) 23:13:13.39ID:7DxAXQZB 「週休3日・下限年収1000万」採用ツイートが話題に! “日本のエンジニア安く買い叩かれ過ぎ問題”に一石を投じた起業家の願い
https://type.jp/et/feature/11257
ネクスウェイ、週休4日制・1日3時間勤務選択できる勤務体系を導入
https://news.mynavi.jp/article/20191217-940849/
週休4日OK、介護などと両立も SMBC日興が導入へ
https://www.asahi.com/articles/ASMDJ4HD3MDJULFA01K.html
ルネサス、週休3日制導入へ 連休明けから5000人対象
https://www.nikkei.com/article/DGXMZO58462290U0A420C2TJ2000/
土日と「水曜」は休日! ベンチャー企業が「週休3日制」を導入してよかったコト
https://www.j-cast.com/2019/07/21363088.html?p=all
2020年4月より「週休3日制」を導入。テックカンパニー化に向け、好循環を生み出すエンジニアリング組織へ
https://prtimes.jp/main/html/rd/p/000000096.000016431.html
「週休3日」でバズった、無人コンビニ「600」はどんな会社か
https://media.moneyforward.com/articles/3394
週休3日制を導入した企業が学んだ7つの教訓とは?
https://gigazine.net/news/20200712-7-lessons-four-day-workweek/
「給料が倍になるよりうれしい」経営が導入に踏み切った、エンジニアの週休3日制とは
https://www.excite.co.jp/news/article/ds_journal_dsjournal19991/
週休3日制を採用している企業一覧
https://www.k-society.com/recruit/list_of_companies_allow_a-four-day-workweek/
https://type.jp/et/feature/11257
ネクスウェイ、週休4日制・1日3時間勤務選択できる勤務体系を導入
https://news.mynavi.jp/article/20191217-940849/
週休4日OK、介護などと両立も SMBC日興が導入へ
https://www.asahi.com/articles/ASMDJ4HD3MDJULFA01K.html
ルネサス、週休3日制導入へ 連休明けから5000人対象
https://www.nikkei.com/article/DGXMZO58462290U0A420C2TJ2000/
土日と「水曜」は休日! ベンチャー企業が「週休3日制」を導入してよかったコト
https://www.j-cast.com/2019/07/21363088.html?p=all
2020年4月より「週休3日制」を導入。テックカンパニー化に向け、好循環を生み出すエンジニアリング組織へ
https://prtimes.jp/main/html/rd/p/000000096.000016431.html
「週休3日」でバズった、無人コンビニ「600」はどんな会社か
https://media.moneyforward.com/articles/3394
週休3日制を導入した企業が学んだ7つの教訓とは?
https://gigazine.net/news/20200712-7-lessons-four-day-workweek/
「給料が倍になるよりうれしい」経営が導入に踏み切った、エンジニアの週休3日制とは
https://www.excite.co.jp/news/article/ds_journal_dsjournal19991/
週休3日制を採用している企業一覧
https://www.k-society.com/recruit/list_of_companies_allow_a-four-day-workweek/
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【サッカー】Jリーグ観客動員が歴代最多を更新 初の「1300万人超え」達成…平均入場者数も史上最高に [尺アジ★]
- サナエノミクスについて力説 積極的な財政出動で「所得増える 消費マインド上がる 税収増える」片山さつき財務大臣 ★3 [少考さん★]
- 日中対立「着地点」見えず 中国、他国にも圧力の過去―関係悪化から1カ月 [蚤の市★]
- 日本の英語力96位から動かず AI評価で可視化された「読めるが話せない」の正体 (EF EPI 2025) ★2 [少考さん★]
- 【芸能】粗品、日本テレビに苦言 客のレベルが「かなり低い。あいつら分かってない」「拍手したいだけやねん」 [冬月記者★]
- 鈴木農相「おこめ券はお米しか買えないわけではない。例えば卵、味噌、しょうゆ、こうした購入に利用可能」 ★4 [Hitzeschleier★]
- 日本人騎手、香港カップで罰金10万香港ドル [462275543]
- 【朗報】イーロン・マスク「AIとロボットで誰も働かなくて良くなる。全員ニートで金銭も税金もないパラダイスみてぇな国を作りてえ」 [347751896]
- うまトマ食って「うまトマ〜」って言って滑ったんだが!?
- 仕事やめたいけど
- なんでネトウヨが勃起してるの? [377482965]
- 今これで全力シコってる
