Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
読まないコードリーディング術
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
菊本 久寿
March 02, 2025
Programming
330
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
読まないコードリーディング術
主にプログラマー脳のお話
菊本 久寿
March 02, 2025
More Decks by 菊本 久寿
See All by 菊本 久寿
Rubyの黒魔術
hisaju
0
280
モメンタムマーケティング
hisaju
1
250
人生を救ってくれたエンジニアという生き方
hisaju
1
2.7k
ワークシフト
hisaju
0
360
サラリーマンのススメ
hisaju
0
2.1k
つくらないキャリアの作り方
hisaju
0
1.7k
キャリアにつなげる副業のやり方
hisaju
2
2.1k
若手や未経験者を育てるときのメンターの心構え
hisaju
0
640
Other Decks in Programming
See All in Programming
Swift愛好会と私(ウホーイ) / Swift Fan Club and Uhooi
uhooi
0
150
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
6
1.6k
Webの地図
yosuke_furukawa
PRO
6
4.2k
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
0
200
Go × SIMDで高速化するベクトル検索 ~ルーフラインモデルでSIMDが効く境界を探れ! ~
po3rin
1
240
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
230
新卒PdEのリアル
ryu1013
1
490
Claude Codeを組織的に動かして月400PRを実現した話
happy_ryo
0
270
スマート反転とウェブアクセシビリティ
camiha
0
200
Security issues being discussed on Web Platforms
petamoriken
0
800
Foundry Localでエージェント開発
seosoft
0
180
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
150
Featured
See All Featured
ラッコキーワード サービス紹介資料
rakko
1
4.8M
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
240
Prompt Engineering for Job Search
mfonobong
0
450
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
BBQ
matthewcrist
89
10k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
480
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
A designer walks into a library…
pauljervisheath
211
25k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.2k
Paper Plane (Part 1)
katiecoart
PRO
1
11k
KATA
mclloyd
PRO
35
15k
30 Presentation Tips
portentint
PRO
1
390
Transcript
読まない コードリーディング術 ひさじゅ
01 自己紹介 02 プログラマー脳のおさらい 03 ベテランエンジニアの記憶の使い方 04 読まないコードリーディング術 05 まとめ
CONTENTS
自己紹介 01
ひさじゅ エンジニアをはじめて25年ほど経 ちます。ずっとその時代のスタン ダードな言語やフレームワークを学 んだり仕事で扱ってきました。その 中で一番読みやすくて書きやすい言 語がRubyです。 今までやった言語 自己紹介 C、C++、ColdFusion、SQL、PL/SQL、
VBA、Object Pascal、bash、Java、 Groovy、Perl、PHP、Python、Ruby 、サーバーサイドJavaScript (Node.js)、Lua、Go、JavaScript (ES5)、ActionScript、CoffeeScript、 JavaScript(ES6)、GoogleAppScript、 TypeScript 今全部書けるわけではないですが、読めたり はします。あとJS関連はこんな感じで振り回 されてきました。それはまた別の話で。 自己紹介
プログラマー脳のおさらい 02
長期記憶 長期記憶は、プログラミングで使用する アルゴリズム、デザインパターン、プロ グラミング言語の文法、経験則などの知 識が蓄積される場所。 頻繁に使う知識やパターンを長期記憶に 定着させることで、作業中に思い出す労 力が軽減され、効率的な問題解決が可能 になる。 短期記憶
短期記憶は、一時的に情報を保持するた めの領域。 保持できる情報の量は限られており、通 常は数個程度の情報しか同時に扱えない。 ワーキングメモリー ワーキングメモリーは、短期記憶の情報 を基に、実際の思考や計算、情報統合を 行う「作業領域」として機能。 長期記憶から必要な知識を呼び出し、短 期記憶に一時的に保持しながら、問題解 決やアルゴリズムの適用、コードの設計 といった作業を行う。 それぞれの記憶領域
チャンクとは 複数の個別の情報をひとまとまりにグループ 化した単位。プログラミングの文脈で考える と、個々の関数やアルゴリズム、デザインパ ターンなどが、使い慣れることでひとつのチ ャンクとして扱えるようになる。 繰り返しと実践 繰り返しコードを書くことで、特定のパター ンや手法がチャンクとして定着します。実際 に手を動かすことが、チャンク化の促進につ
ながります。 関連情報の整理 新しい概念を学んだとき、類似の知識や既に 習得しているチャンクと関連付けることで、 より効率的に情報を整理できます。 チャンクとは? チャンク
ベテランエンジニアの記憶 の使い方 03
なぜベテランエンジニアはプログラミングが速いのか ベテランエンジニアが プログラミングが速い理由 プログラマーは、頻繁に使用する知識を意識的に長 期記憶に定着させ、短期記憶やワーキングメモリー に頼りすぎない工夫をすることが求められます。こ れにより、作業中の認知負荷が軽減され、コードの 理解や問題解決がより効率的に行えるようになりま す。 長期記憶の知識スタック
サーバーサイド フロントエンド コンピューター・ネットワー ク・プロトコル・インフラ OS ミドルウェア 言語・アルゴリズム フレームワーク・オブジェク ト志向・デザインパターン ライブラリ プロジェクトコード ブラウザ、Web技術 レンダリング技術(HTML・ CSS・JavaScript) フレームワーク・デザインパ ターン ライブラリ プロジェクトコード 長期記憶化 つながりを チャンク化
なぜRailsの開発が速いの コンピューター・ネットワー ク・プロトコル・インフラ OS ミドルウェア 言語・アルゴリズム フレームワーク・オブジェク ト志向・デザインパターン ライブラリ プロジェクトコード
設定より規約 DRY(Don’t repeat yourselef) The One Person Framework RailsWay mixin Rack Railsは、他の言語やフレームワークとは異なり、独自のカルチャーを背景 に、フレームワークの制約の上に「RailsWay」と呼ばれる緩やかな概念・ ルールを取り入れています。これにより、プロジェクトや会社をまたいだ 場合でも同様のルールが用いられることが多く、長期記憶を活用しやすい ため、他の言語・フレームワークと比較してプロジェクトコードですら キャッチアップコストが低くなります。
読まないコードリーディング術 04
目的のメソッドを見つける 全部読もうとしない なんのためにコードを読むのかを忘れない 目的の処理を見つける 読まないコードリーディング術
実践
実践
実践
まとめ 05
01 プログラマー脳は必読 02 長期記憶を活用してコードリーディングを素早くする 03 物理スタックに合わせた知識スタックでチャンク化 04 コードリーディングは短期記憶をなるべく使わない 05 優秀なエンジニアになるにはRailsが最適
まとめ
ありがとうございました!