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
44
コーディングで意識してること
kab0718
October 18, 2023
Tweet
Share
More Decks by kab0718
See All by kab0718
visxに触ってみた話
kab0718
0
220
アルゴリズムと計算量
kab0718
0
39
お嬢様言葉
kab0718
0
110
アイドルとコミュニケーション
kab0718
0
25
ブラウザレンダリングについて(簡易版)
kab0718
0
52
趣味とぷよぐらみんぐ
kab0718
0
210
SDLアプリコンテスト2019プレゼン資料
kab0718
0
56
近況報告
kab0718
0
1.3k
アイドル×アイドル
kab0718
0
140
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Fireside Chat
paigeccino
40
3.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Practical Orchestrator
shlominoach
190
11k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
The World Runs on Bad Software
bkeepers
PRO
71
11k
Unsuck your backbone
ammeep
671
58k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
Transcript
最近読んだ本と今回話す本
1.「技術書の読書術」 達人が教える選び方・読み方・情報発信&共有のコツとテクニック • 読了 • 本の「選び方」「読み方」「共有・発信」 ◦ 自分のレベルに合った本を選ぼう ◦ 目的達成できれば読み方は何でもOK
◦ 読書記録を取ろう ◦ アウトプットすることで整理
2. リーダブルコード – より良いコードを書くためのシンプルで実践的なテクニック • 読了 • 読みやすいコードを書こう ◦ 命名とコメントは大事
◦ ロジックやフローを単純化しよう ◦ 読みやすい構成とは
3. Good Code, Bad Code 持続可能な開発のため のソフトウェアエンジニア的思考 • 読書中 •
コーディングの考え方と方法について ◦ コードの品質とは何か ◦ 読みやすいコードの書き方 ◦ ユニットテストの原則・考え方
4. 単体テストの考え方/使い方 • 読書中 • ベストプラクティスとアンチパターン ◦ 良い単体テストとは ◦ 単体テストの手法と比較
◦ 結合テストについて ◦ 単体テストのアンチパターン
今回のメイン
共通して書かれていたこと • 命名 ◦ 名前に情報を詰め込もう ◦ 抽象的な単語よりも具体的な単語 ◦ コメントで誤魔化すな •
コメント ◦ 「何を」よりも「なぜ」を書く ◦ 無駄なコメントは読み手の負担を増やすだけ
共通して書かれていたこと その2 • ネスト ◦ ネストが深いと読み手に負担がかかる ◦ 可能であれば早期returnを活用するべき ◦ 必要に応じて小さな関数に分割
• 巨大なものは分割しよう • すべて不変にできないか考えよう • コーディング規約を守れ(一貫性のあるコード)
その他 • 計算量(ざっくり) ◦ 無駄な処理、ループはないか • 分岐条件 ◦ 否定形より肯定系 ◦
比較するときは左に変化する値、右に安定する値 • 直感的に気持ち悪いと思わないか
まとめ(個人的感想) • まず良いコードとは何かを知ろう • コードの品質悪いと長期的な作業効率の低下につながる • 設計は大事 ◦ DRY原則やSOLID原則とか ◦
良い設計をしたうえで今までの内容を意識 ◦ 設計が良くないとコードが読みにくくなりがち