C++ソフトウェア設計 読書会vol.1
https://scrapbox.io/files/677e58cd6851aa4933a854f0.jpeg
開催日時
2025年1月8日(水) 21:00~22:30
開催URL
参加人数
9人
ウォーミングアップ
GitHub Copilot
1章 ソフトウェア設計の技
ガイドライン1:ソフトウェア設計の重要性を理解する
言語機能をソフトウェア設計とは捉えない
耳の痛い話
ついつい新しい機能に注目してしまう
設計が大事
なのであまり新しい機能とかを追っていなくなってしまった
なぜこの新機能が入った意味を考える
新しく入ったけどすぐdeprecateになったりとか
ラムダ式、お前のことだぞ
thisポインタを暗黙にコピーする挙動
著者の人はC++のトレーナー
いろんなプロジェクトを見て大事なのはそこ(新機能)じゃないと気づいたのかな
開発思想をドキュメントに書いていないからわからなくなった
コードだけだとテキトーにそうなったのか考えに考え抜いてこうなったのかの判別つかない
ゲーム業界仕様書なくないですか?
いいコードも悪いコードも増殖していく
汚染が始まると止まらない・・・
新しく作るものに関してはよいコードを書いてほしい
レビュー文化がない
この本文字ばっかでコードがない
後半のデザインパターンになるとコード出てくる
ソフトウェア設計:依存関係管理と抽象化の技
ソフトウェア
リアリティありすぎ
夜間ビルドで止まってます!
あんまり経験ない人も
すぐにCIが走り、10分以内に終わるような環境を作っている
夜間ビルドがあるだけ僥倖という人も
リソースの問題で夜間ビルドにならざるを得ない場合がある
最適化ありでのみ出る不具合
デフォルト最適化ありで開発してる
人工的な依存関係
人がワークフローの間の歯車になっていること?
1章を読めばわかってくるので棚上げするのが吉
人工的でない依存関係ってなんだろうと考えて読み進めるのがいい
ソフトウェア設計は科学というよりも技
工学的な話
芸術
より実務寄り
その要件や環境に合ったものを作る
これを読まないといけないのかな・・・
「Art」という単語はこういった文脈を加味しているのかな
昔のギリシャ時代ではArtは技術という意味だった
サイエンス部分もそれはそれで学ぶべきものはある
C++題材でこういう実務的な本は今までなくて驚いた
Javaはよく見かける
ソフトウェア開発の3 レベル
次回ここから
お悩み雑談室
GitHub Copilot使ってます?
古い提案されることがある
会社で福利厚生として支給される
言語によっていい悪いがある
いろんな書き方がある言語だと分散してしまう
Go,C++
C++だとダメなコードを増幅してしまわないかなという懸念がある
コピペで何万行のコードになったりとか
LLMの性質上、何万行のコードにはあまりならない
面白いところはCopilotオフにして書く
「ここは私にやらせてよ!」
生産性がない部分を書いてほしい
もっともらしい嘘をつく
人間だって嘘つくやん
Freeプラン制限がきつい・・・
Microsoft MVPだと無料で上位プラン使えるよ!
皆さん是非申請しましょう
じゃあ自己推薦文をGoogle Geminiに書かせようかな