2020-06-01から1ヶ月間の記事一覧

書籍「リーダブルコード」 3章 まとめ

3章 誤解されない名前 filter 限界値は「min」「max」 ブール値の名称 ユーザーの期待に合わせる 複数の名前を検討する 誤解されない名前 名前が「他の意味と間違われることはないだろうか?」と何度も自問自答する 積極的に「誤解」されそうな部分を探して…

書籍「リーダブルコード」 2章 まとめ

2章 名前に情報を詰め込む 明確な単語を選ぶ 汎用的な名前を避ける tmp retval ループイテレータ 抽象的な名前より具体的な名前 名前に情報を追加 単位 重要な情報 変数の長さの決め方 スコープが小さければ短くてもいい 頭文字と省略形 不要な単語は削る 名…

書籍「リーダブルコード」 1章 まとめ

1章 理解しやすいコード コードは読みやすく書かなければならない 小さいことは絶対にいいことか 他の目標との競合 理解しやすいコード コードは読みやすく書かなければならない このコードは、 b = 1 if a == 2 else 2 if a ==2 else 0 以下のコードよりも…

書籍 プリンシプルオブプログラミング 第7章 まとめ

7章 法則 〜プログラミングのアンチパターン〜 7.1 ブルックスの法則 要員追加は火に油 スケジュールより遅れている案件に対し、単純に人を追加すると「依存関係によるオーバーヘッド」「教育に時間が取られる」といった要因から、さらなるスケジュールの遅…

書籍 プリンシプルオブプログラミング 第6章 まとめ

6章 手法 〜プログラマの道具箱〜 6.1 曳光弾 最終形にも残る「骨格コード」 対空砲の曳光弾のように、プログラミングでも挙動の軌跡を見えるように曳光弾を放つ。 プログラミングにおける曳光弾は、優先的に検証したい部分を先行的に実装すること。 本来の…

書籍 プリンシプルオブプログラミング 第5章 まとめ

5章 習慣 〜プログラマのルーティーン〜 5.1 プログラマの三大美徳 怠慢 全体の労力を減らすための手間を惜しまない - とにかく人の作業量を減らし、機械に仕事をさせる 繰り返しの仕組み化 手作業で行なっている部分を、コードを書いて自動化する(テストや…

書籍 プリンシプルオブプログラミング 第4章 まとめ

4章 視点 〜プログラマの観る角度〜 4.1 凝縮度 モジュールは純粋に 凝縮度:モジュールに含まれる機能の「純粋さ」を表す尺度 凝縮度は7段階の強度に分かれており、段階が高いほど純粋である。 最も強度が高く理想的なモジュールは「機能的強度」であり、以…

書籍 プリンシプルオブプログラミング 第3章 下 まとめ

3章 UNIX哲学 〜 UNIX哲学 3.37 UNIX思想 UNIX思想 UNIX文化の中で育まれた、優れたプログラミングを行なうための技法の集まり UNIXが誕生してから、今なお50年以上使用されていることが、思想の正しさを証明している 3.38 モジュール化の原則 控えめなモジ…

書籍 プリンシプルオブプログラミング 第3章 中 まとめ

3章 アーキテクチャ非機能要件 〜 7つの設計原理 3.23 アーキテクチャ非機能要件 非機能要件:機能以外の全般についての要件 非機能はリリース後に影響大 開発や保守、運用、コンピュータリソースへの影響がある。 例えば、運用時における「システムダウン」…

書籍 プリンシプルオブプログラミング 第3章 上 まとめ

3章 プログラミングセオリー 〜 アーキテクチャ根底技法 思想 ~プログラミングのイデオロギー~ プログラミングセオリー 最高のコード:拡張しやすい、余分な要素が存在しない、読みやすい、理解しやすい 価値観を技術の選択基準に プログラミングにおける問…