Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
コーディングで意識してること
Search
kab0718
October 18, 2023
0
43
コーディングで意識してること
kab0718
October 18, 2023
Tweet
Share
More Decks by kab0718
See All by kab0718
visxに触ってみた話
kab0718
0
210
アルゴリズムと計算量
kab0718
0
36
お嬢様言葉
kab0718
0
78
アイドルとコミュニケーション
kab0718
0
22
ブラウザレンダリングについて(簡易版)
kab0718
0
49
趣味とぷよぐらみんぐ
kab0718
0
200
SDLアプリコンテスト2019プレゼン資料
kab0718
0
55
近況報告
kab0718
0
1.2k
アイドル×アイドル
kab0718
0
140
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
34k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Raft: Consensus for Rubyists
vanstee
138
7k
Optimizing for Happiness
mojombo
379
70k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
How STYLIGHT went responsive
nonsquared
100
5.6k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
It's Worth the Effort
3n
184
28k
Documentation Writing (for coders)
carmenintech
71
4.9k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Transcript
最近読んだ本と今回話す本
1.「技術書の読書術」 達人が教える選び方・読み方・情報発信&共有のコツとテクニック • 読了 • 本の「選び方」「読み方」「共有・発信」 ◦ 自分のレベルに合った本を選ぼう ◦ 目的達成できれば読み方は何でもOK
◦ 読書記録を取ろう ◦ アウトプットすることで整理
2. リーダブルコード – より良いコードを書くためのシンプルで実践的なテクニック • 読了 • 読みやすいコードを書こう ◦ 命名とコメントは大事
◦ ロジックやフローを単純化しよう ◦ 読みやすい構成とは
3. Good Code, Bad Code 持続可能な開発のため のソフトウェアエンジニア的思考 • 読書中 •
コーディングの考え方と方法について ◦ コードの品質とは何か ◦ 読みやすいコードの書き方 ◦ ユニットテストの原則・考え方
4. 単体テストの考え方/使い方 • 読書中 • ベストプラクティスとアンチパターン ◦ 良い単体テストとは ◦ 単体テストの手法と比較
◦ 結合テストについて ◦ 単体テストのアンチパターン
今回のメイン
共通して書かれていたこと • 命名 ◦ 名前に情報を詰め込もう ◦ 抽象的な単語よりも具体的な単語 ◦ コメントで誤魔化すな •
コメント ◦ 「何を」よりも「なぜ」を書く ◦ 無駄なコメントは読み手の負担を増やすだけ
共通して書かれていたこと その2 • ネスト ◦ ネストが深いと読み手に負担がかかる ◦ 可能であれば早期returnを活用するべき ◦ 必要に応じて小さな関数に分割
• 巨大なものは分割しよう • すべて不変にできないか考えよう • コーディング規約を守れ(一貫性のあるコード)
その他 • 計算量(ざっくり) ◦ 無駄な処理、ループはないか • 分岐条件 ◦ 否定形より肯定系 ◦
比較するときは左に変化する値、右に安定する値 • 直感的に気持ち悪いと思わないか
まとめ(個人的感想) • まず良いコードとは何かを知ろう • コードの品質悪いと長期的な作業効率の低下につながる • 設計は大事 ◦ DRY原則やSOLID原則とか ◦
良い設計をしたうえで今までの内容を意識 ◦ 設計が良くないとコードが読みにくくなりがち