はてなキーワード: デザインパターンとは
Javaって自分もちょっと他人に自慢できる実績あったりなかったりするけど、分かりやすいぞ
東大の五十嵐先生とか、筑波の三谷先生とか、なんでもJavaで書いてたりしてたけど、Pythonなんぞよりよっぽど分かりやすい
Javaというか、FlashのActionScriptみたいな範囲で使ってる分には分かりやすいよ
あと、マインクラフトの作者のnotch氏もなんでもJavaで書く、凄い速度でJavaでゲーム書く人だよ
そもそも、Javaはセットトップボックスとか小さい機器で動かすための小さな言語で、名前も元々はオーク?樫の木?だったかで、
現在の立ち位置としてはLuaとかそういう言語を想定して開発したと思う
作者のゴスリングさんとかはそういう想定だったんだろうけど、JavaをAppletとしてNetscapeブラウザ内に実装したり、
そのNetscapeも勝手にJavaの名称を拝借したJavaScriptなんて別物を勝手に実装したりして、
そこからIBMがしゃしゃり出てきて、Javaで巨大な業務アプリもできるよね?みたいな話になって、話が壮大になっていった気がする
あと、EclipseはSun Microsystemsを〇す、という意図で命名されたりもしたけど、巨大だよねEclipseのコード
デザインパターンを信奉して重視しすぎた設計とかこの辺の時期だろうと思う
Javaのコアな部分は本当に素直な言語だよ、素直な子だったんだよ
本当は素直で優しい良い子だったんだよ…😟
https://note.com/joan_of_arc/n/ned510ca913c7
これは業務が自分から見てクソだったので、良くするために提言したが全てないがしろにされ鬱になり退職しましたという話を延々している記事だ。
まず仕事においては営業的な意味で数値改善できる根拠が出せないのであればそれは改悪である。リファクタリングを幾らしても自分にとっていいコードになることはあれど、それ以上はない。何故なら書いた人物たちはそれが最善だと思って書いているからだ。
DDDだのデザインパターンだの、モジュール化だのポリフォーリズムだの素晴らしい設計技術が叫ばれて久しいが、一般人にそんなものは脳裏にないし、そんなのを勉強する暇があれば他にすることがある。プライベートで仕事に関することなんてするわけない。家で寝転がってポテチをぐーたら食べているのが現実。もし、そうでなければとっくにまともなコードになってる。
さて、仮にリファクタリングをしてもいいとされた時、業務外では家で寝転がってポテチをぐーたら食べている連中が書いたコードをどう直させるかだ。ほぼ不可能だろう。彼らには動くコードが正義で、自分の読みやすい密結合スパゲティぐちゃぐちゃコードこそ正義だ。そして彼らは金を産むコードを書いてきた先人でもある。要するに無理な話ということだ。君が社長でないのであれば諦めろということだよ。
うーん
君とかにあんまりデザインパターンだとかアルゴリズムだとか言わないほうが良い気がしてきた
知ると1冊くらい読んで自分で設計して書いたこともないのに「デザインパターンとかアルゴリズムを休日に勉強しろ!」とか言いそう
僕がそれは技術じゃないと言ったのはデザインパターンやアルゴリズムなんかはライブラリとか言語がなんでも使える普遍的なものだけど
ライブラリとか言語は知ってるか知ってないかってだけだしそんなもの山ほどあるわけだし
味噌汁にクソを入れるかミソを入れるかはどうでも良くないよ
デザインパターンというのは言語やフレームワークを超えて使うものだよ
GAFAのSWE面接で言語やフレームワークなんか聞かれないよ
好きな言語で答えてくださいって言われる
俺は知ってるんだよ
2回落ちたから笑
就職失敗してSES入っていやいやパソコン触って仕事してたんだよ
毎月給料もらえるからまあいいかくらいのかんじで当然仕事はやる気はない
正直何も理解してなくて雰囲気でコピペしてなんとなく動かす感じ
技術書買って覚えようなんて気は一切ない
今から思うとレガシーな現場ばかりで周りも似たようなマインドの人ばかり
で、今年の4月から別の現場に移ったんだけどそこが意識高い高いの人の集まりで
仕事の内容も何言ってるかわからないし早くクビにしてくんねえかなと思ってた
ある日OAuthが必要になるから会社のPDFの本読んでおいてくださいって言われて
最初は無視してたんだけど、何度も読みました?って言われたからうざくて観念して読んでみたんだよ
どうせ読んでもわかんねえだろと思ってたらなんか内容が理解できたんだよ
周りが言ってる仕事の内容もわかるようになってきて仕事も楽しくなってきて
コードレビューもしてくれて最初は殺したいくらいうざかったけど
こういうときにこのデザインパターン使うと分岐が減るのか!とか感動したり
もっと真面目にやってればなあ
Flashでサイト作れるようになったらキャリアの半分くらいとか下手すると全部とかそれで食える業界いくらもあるんだよな
そんなの勉強のうちに入らなくて廃れたらすぐ他のを覚えられるということ自体がスキルなのと
アルゴリズムやらデータストラクチャやらAIモデルやらプログラミングパラダイムやらデザインパターンやらの実際の勉強とトレーニングもいるのとでまあいろんな職種のなかでトップレベルに覚えること訓練することは多い職
ワードプレスでサイト作れますレベルの「ITエンジニア」も確かにいるけどそれだと数年で全く通用しなくなって他のをやり直す羽目になることが多いので勉強云々になるんだろう
そんな数年で変わらない業界のが多いわけで
例えばフロントならReactなどのフレームワーク 10年前はJQueryあたりで法改正どころではないくらい違う
そもそもフロント自体がテンプレートエンジンからSPAへと大きくかわっている
スマホも10年前なら普及率1/4くらいでサイトのターゲット自体がPCからスマホに
2013だとJava7だけどJava7と8も大幅にちがうので8やった事ない人が今の俺のコード読んでも読めない
いまはクラウド当たり前だけど10年前ならまだまだオンプレでこれも法改正どころではないくらい違う
AIも全然話題じゃなかったしこれは線形代数や微分からやり直したけど何ヶ月もかかった
これにからんでPythonの興盛 まあ新言語1からやるのが大きな法改正くらいだろうか
C++がRustになんてのも俺はまだ手を出してないけどある
開発手法で言うとこの10年のウォーターフォールからアジャイルへの移行で仕事の進め方が他業種に転職以上に変わってる
このほか変わったことではないけれどアルゴリズムやデータストラクチャーデザインパターンなんかは本ちょっと読むだけじゃなくて実際に手を動かして体に身につくまでやる必要がある
普通に大量にあるな
「この説明、よくわからないな」と感じたときにふとChatGPTを使ってみるかと思い
"プログラミングのデザインパターンであるBridgeパターンのサンプルコードをRubyで書いてください”
と入力してみると、なんと購入した技術書と同じくらいのコードが返ってきた。
ただ、理屈がまだわからないから文章で説明してもらうことにした。
入力中に先程の回答の文章部分が英語だったことを思い出したので
"プログラミングのデザインパターンであるBridgeパターンについて教えてください
日本語で"
するとわからない部分が腑に落ちるような回答が返ってくるではないか。
もう少し詳細に指定するならば
「入門書レベルの、知らないことを知ってる事柄の理解に関してはChatGPTで十分に学習可能」
ではないだろうか。
このデザインパターンにしても
詳細についてはつかめている気がしないという状態の人間は多く存在すると思う。
これらの名前についてはデザインパターンとググるか、ChatGPTあたりにでも確認すると
恐らくすべて確認することができるだろう。
そんな中で「デザインパターンを猫でもわかるように解説するぜ!」
みたいないわゆる入門レベルの書籍、記事はそういった情報が欲しい人にとって必要だろうか。
私はそうは思わない。