$30 off During Our Annual Pro Sale. View Details »

ソースコードリーディングのススメ / SourceCodeReading of Recommendation

02
March 31, 2019

ソースコードリーディングのススメ / SourceCodeReading of Recommendation

ソースコードリーディングのススメ

PHPerKaigi 2019 Lightning Talk で話した時のスライドです

02

March 31, 2019
Tweet

More Decks by 02

Other Decks in Programming

Transcript

  1. ソースコードリーディングの
    ススメ
    PHPerKaigi 2019 LT
    大津 和槻 / 02

    View Slide

  2. Who am I ?
    大津 和槻 / 02
    株式会社ウィルゲート 新卒1
    年目エンジニア
    今日は当日スタッフとしても参加していました

    View Slide

  3. 僕も PHP
    の話ほとんどしません!
    みんな謝ってるから謝っとこ

    View Slide

  4. 結論「ソースコードリーディングは、
    アウトプットするチャンスの塊」

    View Slide

  5. ソースコードリーディング?
    今回話すソースコードリーディングは主にライブラリ
    やフレームワークのソースコードを読むこと
    ライブラリやフレームワークのソースコードを読むと
    様々なアウトプットに繋げやすい

    View Slide

  6. こんな人にオススメです

    View Slide

  7. うわっ…
    私のアウトプット、少なすぎ?

    View Slide

  8. 今日話すこと
    ソースコードリーディングのメリット
    ソースコードリーディングで繋げられるアウトプ
    ット
    今日話さないこと
    ソースコードリーディングのやり方

    View Slide

  9. メリットと繋げられるアウトプット
    プロダクトコードを読み解くスピードが上がる
    ブログに書くネタができる
    OSS
    に参加できる
    登壇できる

    View Slide

  10. プロダクトコードを読み解く
    スピードが上がる

    View Slide

  11. プロダクトコードを読み解くスピード
    が上がる
    ソースコードリーディング

    他人(過去の自分も含む)が書いたコードを読む

    View Slide

  12. プロダクトコードを読み解くスピード
    が上がる
    ソースコードリーディング

    他人(過去の自分も含む)が書いたコードを読む
    ところで、
    業務で触るプロダクトコードも、他人が書いたコード

    View Slide

  13. プロダクトコードを読み解くスピード
    が上がる
    ソースコードリーディング

    他人(過去の自分も含む)が書いたコードを読む
    ところで、
    業務で触るプロダクトコードも、他人が書いたコード
    スムーズにソースコードリーディングができる

    他人が書いたコードであるプロダクトコードもスム
    ーズに読める

    View Slide

  14. ブログに書くネタができる

    View Slide

  15. ブログに書くネタができる
    よくある悩み

    View Slide

  16. ブログに書くネタができる
    よくある悩み
    「ブログに書けるネタが無い!」

    View Slide

  17. ブログに書くネタができる
    よくある悩み
    「ブログに書けるネタが無い!」
    「他の人が既に書いている内容かもしれないし…

    View Slide

  18. ブログに書くネタができる
    よくある悩み
    「ブログに書けるネタが無い!」
    「他の人が既に書いている内容かもしれないし…

    「そんなに価値のある記事を量産できないよ…

    View Slide

  19. ブログに書くネタができる
    よくある悩み
    「ブログに書けるネタが無い!」
    「他の人が既に書いている内容かもしれないし…

    「そんなに価値のある記事を量産できないよ…

    「ブログに書けるネタが無い!」

    View Slide

  20. ブログに書くネタができる
    よくある悩み
    「ブログに書けるネタが無い!」
    「他の人が既に書いている内容かもしれないし…

    「そんなに価値のある記事を量産できないよ…

    「ブログに書けるネタが無い!」
    「ブログに書けるネタが無い!」

    View Slide

  21. ブログに書くネタができる
    よくある悩み
    「ブログに書けるネタが無い!」
    「他の人が既に書いている内容かもしれないし…

    「そんなに価値のある記事を量産できないよ…

    「ブログに書けるネタが無い!」
    「ブログに書けるネタが無い!」
    「ブログに書けるネタが無
    い!!!!!!」

    View Slide

  22. 提案:
    1
    つのメソッドを読んで、どんな処理
    なのかをまとめてブログに書く

    View Slide

  23. 1
    つのメソッドを読んで、どんな処理
    なのかをまとめてブログに書く
    メソッドの数だけブログ記事が書ける
    かぶることはほぼない!はず

    View Slide

  24. 1
    つのメソッドを読んで、どんな処理
    なのかをまとめてブログに書く
    メソッドの数だけブログ記事が書ける
    かぶることはほぼない!はず
    1
    メソッドだけのまとめでも、価値がある
    設計、言語仕様、思想、罠…

    View Slide

  25. Laravel Collection avg
    メソッド
    ドキュメント:
    https://readouble.com/laravel/5.8/ja/collections.htm
    l#method-avg

    View Slide

  26. http://cocoeyes02.hatenadiary.jp/entry/2019/02/28
    /214952

    View Slide

  27. OSS
    に参加できる

    View Slide

  28. OSS
    に参加できる
    「そんな強強エンジニアじゃないから、いきなり
    OSS
    なんて無理だよ~~~」

    View Slide

  29. OSS
    に参加できる
    「そんな強強エンジニアじゃないから、いきなり
    OSS
    なんて無理だよ~~~」
    OSS
    に参加するのに、そんな難しいことをする
    必要はありません!

    View Slide

  30. 提案:
    ソースコードを読んで
    疑問に思ったことを issue
    で聞く

    View Slide

  31. ソースコードを読んで
    疑問に思ったことを issue
    で聞く
    「ここの処理なんでこんな風になっているかわか
    らんのだけど、どう思う?」

    View Slide

  32. ソースコードを読んで
    疑問に思ったことを issue
    で聞く
    「ここの処理なんでこんな風になっているかわか
    らんのだけど、どう思う?」
    もしバグや改善すべき箇所だったら、pull request
    が立てられる

    View Slide

  33. ソースコードを読んで
    疑問に思ったことを issue
    で聞く
    「ここの処理なんでこんな風になっているかわか
    らんのだけど、どう思う?」
    もしバグや改善すべき箇所だったら、pull request
    が立てられる
    仕様であっても、何故その実装になったのか
    思想に基づいた理由を Committer
    や Contributer
    が教えてくれる

    View Slide

  34. ソースコードを読んで
    疑問に思ったことを issue
    で聞く
    issue
    や pull request
    は contribution
    にもなるので、
    草を生やしたい人にもおすすめ

    View Slide

  35. 登壇できる

    View Slide

  36. 実は皆さんも知っているあの有名な
    カンファレンスに登壇できました

    View Slide

  37. View Slide

  38. この PHPerKaigi
    で 登壇できたのは
    ソースコードリーディングのおかげ!

    View Slide

  39. 最後に1
    番言いたいこと

    View Slide

  40. ソースコードリーディングはいいぞ!

    View Slide

  41. < Thank you for listening!
    Twitter: cocoeyes02
    GitHub: cocoeyes02

    View Slide