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
ソースコードリーディングのススメ / SourceCodeReading of Recomme...
Search
02
March 31, 2019
Programming
2
3.5k
ソースコードリーディングのススメ / SourceCodeReading of Recommendation
ソースコードリーディングのススメ
PHPerKaigi 2019 Lightning Talk で話した時のスライドです
02
March 31, 2019
Tweet
Share
More Decks by 02
See All by 02
PHP RFC: Deprecate implicitly nullable parameter types をサクッと話す
cocoeyes02
0
230
PHPUnit 11 概論
cocoeyes02
4
1.4k
Random\Randomizer クラスで日常のあれこれを解決しよう! / Random\Randomizer class solves familiar trouble
cocoeyes02
1
780
BASEにおける インシデント対応フローと工夫
cocoeyes02
0
1k
AWS Lambdaから始める Devチームの小さなDevOps改善 〜QCDどれも諦めない運用を目指して〜 / Start to improving small DevOps with AWS Lambda by Dev Team
cocoeyes02
0
1.3k
PHPUnit 10 概論 / Introduction of PHPUnit 10
cocoeyes02
3
8.3k
テスト駆動開発本をPHPで写経してみた / Copy Test Driven Development Code by PHP
cocoeyes02
0
450
テストコードリーディングのみでPHPUnitの仕様を理解してみる / Try to understand PHPUnit specification with test code reading only
cocoeyes02
1
2.7k
カンファレンススピーカー入門〜登壇するぞ!って決めてからトークするまで〜 / How to talk in Tech Conference
cocoeyes02
2
1.2k
Other Decks in Programming
See All in Programming
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
260
iOS開発におけるCopilot For XcodeとCode Completion / copilot for xcode
fuyan777
1
590
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
9
2.1k
Jaspr Dart Web Framework 박제창 @Devfest 2024
itsmedreamwalker
0
120
Spatial Rendering for Apple Vision Pro
warrenm
0
250
StarlingMonkeyを触ってみた話 - 2024冬
syumai
3
310
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
690
return文におけるstd::moveについて
onihusube
1
1.3k
menu基盤チームによるGoogle Cloudの活用事例~Application Integration, Cloud Tasks編~
yoshifumi_ishikura
0
120
為你自己學 Python
eddie
0
370
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
340
非ブラウザランタイムとWeb標準 / Non-Browser Runtimes and Web Standards
petamoriken
0
370
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
How to Ace a Technical Interview
jacobian
276
23k
How GitHub (no longer) Works
holman
311
140k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
RailsConf 2023
tenderlove
29
950
Done Done
chrislema
182
16k
Into the Great Unknown - MozCon
thekraken
34
1.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
97
17k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Site-Speed That Sticks
csswizardry
2
200
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Transcript
ソースコードリーディングの ススメ PHPerKaigi 2019 LT 大津 和槻 / 02
Who am I ? 大津 和槻 / 02 株式会社ウィルゲート 新卒1
年目エンジニア 今日は当日スタッフとしても参加していました
僕も PHP の話ほとんどしません! みんな謝ってるから謝っとこ
結論「ソースコードリーディングは、 アウトプットするチャンスの塊」
ソースコードリーディング? 今回話すソースコードリーディングは主にライブラリ やフレームワークのソースコードを読むこと ライブラリやフレームワークのソースコードを読むと 様々なアウトプットに繋げやすい
こんな人にオススメです
うわっ… 私のアウトプット、少なすぎ?
今日話すこと ソースコードリーディングのメリット ソースコードリーディングで繋げられるアウトプ ット 今日話さないこと ソースコードリーディングのやり方
メリットと繋げられるアウトプット プロダクトコードを読み解くスピードが上がる ブログに書くネタができる OSS に参加できる 登壇できる
プロダクトコードを読み解く スピードが上がる
プロダクトコードを読み解くスピード が上がる ソースコードリーディング ≒ 他人(過去の自分も含む)が書いたコードを読む
プロダクトコードを読み解くスピード が上がる ソースコードリーディング ≒ 他人(過去の自分も含む)が書いたコードを読む ところで、 業務で触るプロダクトコードも、他人が書いたコード
プロダクトコードを読み解くスピード が上がる ソースコードリーディング ≒ 他人(過去の自分も含む)が書いたコードを読む ところで、 業務で触るプロダクトコードも、他人が書いたコード スムーズにソースコードリーディングができる ≒ 他人が書いたコードであるプロダクトコードもスム
ーズに読める
ブログに書くネタができる
ブログに書くネタができる よくある悩み
ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」
ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」
ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」 「そんなに価値のある記事を量産できないよ… 」
ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」 「そんなに価値のある記事を量産できないよ… 」 「ブログに書けるネタが無い!」
ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」 「そんなに価値のある記事を量産できないよ… 」 「ブログに書けるネタが無い!」 「ブログに書けるネタが無い!」
ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」 「そんなに価値のある記事を量産できないよ… 」 「ブログに書けるネタが無い!」 「ブログに書けるネタが無い!」 「ブログに書けるネタが無
い!!!!!!」
提案: 1 つのメソッドを読んで、どんな処理 なのかをまとめてブログに書く
1 つのメソッドを読んで、どんな処理 なのかをまとめてブログに書く メソッドの数だけブログ記事が書ける かぶることはほぼない!はず
1 つのメソッドを読んで、どんな処理 なのかをまとめてブログに書く メソッドの数だけブログ記事が書ける かぶることはほぼない!はず 1 メソッドだけのまとめでも、価値がある 設計、言語仕様、思想、罠…
Laravel Collection avg メソッド ドキュメント: https://readouble.com/laravel/5.8/ja/collections.htm l#method-avg
http://cocoeyes02.hatenadiary.jp/entry/2019/02/28 /214952
OSS に参加できる
OSS に参加できる 「そんな強強エンジニアじゃないから、いきなり OSS なんて無理だよ~~~」
OSS に参加できる 「そんな強強エンジニアじゃないから、いきなり OSS なんて無理だよ~~~」 OSS に参加するのに、そんな難しいことをする 必要はありません!
提案: ソースコードを読んで 疑問に思ったことを issue で聞く
ソースコードを読んで 疑問に思ったことを issue で聞く 「ここの処理なんでこんな風になっているかわか らんのだけど、どう思う?」
ソースコードを読んで 疑問に思ったことを issue で聞く 「ここの処理なんでこんな風になっているかわか らんのだけど、どう思う?」 もしバグや改善すべき箇所だったら、pull request が立てられる
ソースコードを読んで 疑問に思ったことを issue で聞く 「ここの処理なんでこんな風になっているかわか らんのだけど、どう思う?」 もしバグや改善すべき箇所だったら、pull request が立てられる 仕様であっても、何故その実装になったのか
思想に基づいた理由を Committer や Contributer が教えてくれる
ソースコードを読んで 疑問に思ったことを issue で聞く issue や pull request は contribution
にもなるので、 草を生やしたい人にもおすすめ
登壇できる
実は皆さんも知っているあの有名な カンファレンスに登壇できました
None
この PHPerKaigi で 登壇できたのは ソースコードリーディングのおかげ!
最後に1 番言いたいこと
ソースコードリーディングはいいぞ!
< Thank you for listening! Twitter: cocoeyes02 GitHub: cocoeyes02