はてなキーワード: デザインパターンとは
うーん
君とかにあんまりデザインパターンだとかアルゴリズムだとか言わないほうが良い気がしてきた
知ると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あたりにでも確認すると
恐らくすべて確認することができるだろう。
そんな中で「デザインパターンを猫でもわかるように解説するぜ!」
みたいないわゆる入門レベルの書籍、記事はそういった情報が欲しい人にとって必要だろうか。
私はそうは思わない。
新しい言語にはたいてい新しいアイディアが含まれてる。そういうのを知るのは楽しい。目からうろこが落ちるような経験が結構あった。おれも PHPer だったけど、以前、.NET の LINQ を学んだときは楽しかった。
まあ PHP はその「新しいアイディア」をどん欲に取り入れ続けている言語だから、けっこうそれだけで満足してしまう気持ちは解る。でも「今の自分の知識だけで、たいていのものは作れるからなあ」と思ってしまうと、たぶん勿体ない。あなたが将来、未知のプラクティスやデザインパターン、アルゴリズムを発明しないと断言できないのだから。
PHPer ならマニュアルの例文で散々お世話になっている「干し草の山」と「針」のたとえ話で言うと、次のような感じ。
https://kenbi.ti-da.net/e3637076.html
「博士とわたしたちその他大勢との違いはなんですか?」という質問を受け、
こう答えました。
「たとえば、干し草の山から針を探さなければならないとします。
ほとんどの方はたぶん、針が1本見つかるまで干し草の中を探すでしょう。
私は、針が全部見つかるまで探し続けると思います。」
※ PHP ですでに作られたものは膨大なので、そのメンテナンスも今後何十年は無くならない。仕事にあぶれることはないと思う。
・機械工学は大学で学んだ。機械系4力学のさわりだけなら大体やったがもう忘れている。
・切削加工はけがき、フライス盤、ボール盤、くらいならできるが複雑な形状は作れる気がしない。そういえば旋盤は使わなかった。耐久性を考えなければ3Dプリンタでなんでも作れるらしいが、3Dプリンタは触ったことがない。
・CADは大学の演習でSolidWorksを触った程度。もうすっかり忘れている。手書きの製図とかは調べて思い出せば簡単な形状ならできるかもしれない。
・シミュレータはANSYSをマニュアル通り触った程度。動力学解析とか連成解析とか仕組みは全くわかっていない。
・電気工学はだいぶ勉強不足。簡単な回路図はチップの製品情報を睨めっこしながらINとOUTと接地をどうすればいいかくらいはわかったが、複雑なものになるとダメ。ArduinoとRasberryPiは買ってみたが埃かぶっている。論理回路の読み方はすっかり忘れているが調べれば思い出せると思う。
・化学系は全くの無知。大学受験で知識は止まっている。物性物理的なところも無知。
・数値計算はPythonやMatlabでちょっとできる程度。ライブラリを使った行列計算や簡単なニュートン法くらいなら書けるが、精度や速さが必要だったり複雑になるとダメ。解析は微分積分や常微分方程式を調べて思い出せばできる程度。測度論とか特殊な積分とかいわゆる大学数学的な道具が必要になる解析はできない。
・競技プログラミングはちょっとかじったがやめてしまった。むずかしすぎた。
・機械学習や統計はなんとなく知識はついているが、手を動かして何か作ったことはない。この前統計検定1級落ちた。
・バックエンドはSQLをそれなりに書いてとりあえず動くものなら書ける程度。可用性とかパフォーマンスとか考えられるレベルではない。JavaはJavaEEを横展開的に書いた程度。理解できている自信はない。保守性高めたりデザインパターン的に綺麗な書き方とかできない。C++は一瞬だけ触ったことがあるが、環境構築ハマった&謎のSegmentation Faultで苦手意識を残したまま。Go?Rust?なにそれおいしそうだね。
・クラウドはAWSをマニュアル通りに使っている程度。1から設計なんてできない。なのでAWSのソリューションアーキテクトを勉強中。AzureやFirebaseは触ったこともない。
・ネットワーク系とかセキュリティ系は全く勉強不足。応用情報をギリギリ合格できる程度の知識しかない。わかるようにはなりたい。
・フロントエンドはFlutterを勉強中。Flutterむずかしい、どんな言語でもそうだけどチュートリアルから業務レベルまでの乖離がありすぎてよくわからない。javascriptはjQuery一強時代にちょっと書いた程度。VueとかReactとかなにもわからない。TypeScript?なにそれおいしそうだね。
・ハード系だったりファームウェア系だったりコンパイラ系は何もわからない。わかるようにはなりたい。
全部中途半端だな、、、
はてブのホットエントリ(総合)で月内に数多く[あとで読む]タグを集めたエントリ
278あとで/1848users セガがjavascriptでぷよぷよを作るプログラミング講座を出しているが、とても良いプログラミングの教材になっている「写経はとても大事」 | Togetter
238あとで/1666users ジャズのコード進行の原理 - アラクー Arakur
228あとで/1260users ソフトウェアエンジニアなら3秒で理解できる NFT 入門 - Okapies' Archive
220あとで/1885users Adobe製品と同じような事をフリーソフトでやりたい場合の対応表がすごく使える→他にも高機能なフリーソフトが集まる | Togetter
211あとで/1407users 「Visual Studio」の中の人が作ったプログラマー向け十徳ナイフ「DevToys」/今までググって探していたツールがひとまとめに | 窓の杜
210あとで/3113users ゲームの勝敗でかんしゃくを起こす子どもにできることは大人げない大人になること|フィンランドワークショップomena|note
201あとで/1188users 総務省「誰でも使える統計オープンデータ」無料オンライン講座スタート | ITMedia
198あとで/960users プログラムがメモリをどう使うかを理解する(1) | rita | Zenn
196あとで/1262users 仕様書の参考例と、こんな内容を仕様書に最低書くといいというお話|田辺めぐみ|note
189あとで/973users フロントエンドのデザインパターン | Shinya Fujino | Zenn
187あとで/1551users 英語面接で5歳児みたいなことしか言えないからカッとなってWebサービス作った【個人開発】 - Qiita
187あとで/1563users TOEIC満点ホルダーがやっているおすすめ英語学習法(2022年版)|Shin|note
177あとで/1554users 207で1年間磨き続けた1on1のフォーマットを公開します|207株式会社|note
171あとで/1530users エンジニアの"有害な振る舞い"への対処法 - Qiita
170あとで/1316users 顧客との打ち合わせが上手い人がやっていること|いまにし|note
165あとで/1551users 「この会社は詰んでます。潰れました」で気づいた“恥ずかしさ” DeNA南場智子氏がエンジニアから学んだこと | logmi Tech
158あとで/1342users 「勝手に学ぶ人」と「期待されて学ぶ人」の差が埋められない|柴田史郎|note
153あとで/1343users 強いエンジニアになるために英語が必要と聞いたので4ヶ月でTOEICスコア400→900まで上げた話 - Qiita
148あとで/1190users なぜ40歳を越えると「やる気」が出ないのか? 「中年の危機」を乗り越えるためのエンジンの回し方 | 野水克也, 萩原雅裕 | logmi Biz
148あとで/955users ITエンジニアが投票した「ITエンジニア本大賞2022」ベスト10発表。「シェル・ワンライナー160本ノック」「モノリスからマイクロサービスへ」「恐れのない組織」など | Publickey
142あとで/690users JavaScriptを遊び尽くす究極のWebサービス・ツールを厳選して大公開! - paiza開発日誌
138あとで/891users そこまで努力しないで生活をちょっと改善する100の方法 | 英紙が元旦に紹介 | COURRIER
137あとで/1237users 問題職員の正しい辞めさせ方 1/10 | anond.hatelabo.jp
136あとで/635users フロントエンドを集中的に学習できる究極の無料リソースを厳選してみた! - paiza開発日誌
133あとで/768users ミーティング・ファシリテーション入門 / Introduction To Meeting And Facilitation | ストックマーク株式会社 iwashi | SpeakerDeck
126あとで/1056users Future社員が使っているWindows便利ツール(新人さん向け) | フューチャー技術ブログ
126あとで/802users 『データ分析のためのSQL勉強会』資料公開|高橋 光|note
126あとで/859users エンジニアを始めてから便利だったツールまとめ | nakaatsu | Zenn
125あとで/757users 2022年におけるフロントエンド開発のベースライン - LINE ENGINEERING
123あとで/1202users 50歳になってようやく気付いた、人生で重要なことと、後悔したこと。 | fujipon | Books & Apps
123あとで/1055users 【必読】総務省直伝のExcelマニュアルが目から鱗が落ちるものだった | Togetter
ジャズのコード進行を解説したブログが2位になった。はてブでこんなページを目にできようとはとブクマカが驚愕。
COURRIERの「そこまで努力しないで生活をちょっと改善する100の方法」はペイウォールの向こうに行ったが原文は読める。 https://www.theguardian.com/lifeandstyle/2022/jan/01/marginal-gains-100-ways-to-improve-your-life-without-really-trying