47
potatotips #21 framework code reading

Framework code reading

Embed Size (px)

Citation preview

Page 1: Framework code reading

potatotips #21

framework code reading

Page 2: Framework code reading

Profile

釘宮 愼之介 / @kgmyshin

Androidエンジニア

福岡県福岡市南区野多目出身

Page 3: Framework code reading
Page 4: Framework code reading

テックブログ書いてます!

Page 5: Framework code reading

Frameworkのソース読んでますか?

Page 6: Framework code reading

読むとおもしろいところ

Page 7: Framework code reading

読むとおもしろいところ起動シーケンスあたり

Page 8: Framework code reading

読むとおもしろいところ起動シーケンスあたり

パスワードロック

Page 9: Framework code reading

読むとおもしろいところ起動シーケンスあたり

パスワードロック

パターンロック

Page 10: Framework code reading

読むとおもしろいところ起動シーケンスあたり

パスワードロック

パターンロック

Telephony

Page 11: Framework code reading

読むとおもしろいところ起動シーケンスあたり

パスワードロック

パターンロック

Telephony

Permission

Page 12: Framework code reading

準備するもの

Page 13: Framework code reading
Page 14: Framework code reading
Page 15: Framework code reading
Page 16: Framework code reading

環境

Page 17: Framework code reading

なるべく割り込みの入ってこない環境が良い

Page 18: Framework code reading

このメソッドで..

Page 19: Framework code reading

このメソッドで..

このクラスで定義…

このメソッドで…

Page 20: Framework code reading

このメソッドで..

このクラスで定義…

このメソッドで…

このメソッドで..

このクラスで..

このinterfaceで..

Page 21: Framework code reading

このメソッドで..

このクラスで定義…

このメソッドで…

このメソッドで..

このクラスで..

このinterfaceで..

このinterfaceで..このinterfaceで..

このinterfaceで..

Page 22: Framework code reading

このメソッドで..

このクラスで定義…

このメソッドで…

このメソッドで..

このクラスで..

このinterfaceで..

このinterfaceで..このinterfaceで..

このinterfaceで..

Page 23: Framework code reading

このメソッドで..

このクラスで定義…

このメソッドで…

このメソッドで..

このクラスで..

このinterfaceで..

このinterfaceで..このinterfaceで..

このときに割り込みが発生して いままでなにしてたっけ状態 にならないように、、

Page 24: Framework code reading

ツール

Page 25: Framework code reading
Page 26: Framework code reading
Page 27: Framework code reading
Page 28: Framework code reading
Page 29: Framework code reading

検索できる

Page 30: Framework code reading
Page 31: Framework code reading

historyを見れる

Page 32: Framework code reading
Page 33: Framework code reading

commit間のdiffを見れる

Page 34: Framework code reading

ただ、問題もある

Page 35: Framework code reading

OpenGrokのversionが少し古い

Page 36: Framework code reading

オフラインでもみたい

Page 37: Framework code reading

ということで ローカル入れてみた!

Page 38: Framework code reading

が、 インストールしようと思ったらmacの容量がカツカツだった。

Page 39: Framework code reading
Page 40: Framework code reading
Page 41: Framework code reading

容量が空いたところで インストール

Page 42: Framework code reading

$ brew install tomcat

$ brew install ctags

$ wget http://java.net/projects/opengrok/downloads/download/opengrok-0.12.1.tar.gz

$ tar xvf opengrok-0.12.1.tar.gz

$ OPENGROK_INSTANCE_BASE=opengrok-0.12.1 opengrok-0.12.1/bin/OpenGrok index /path/to/your/source

$ OPENGROK_TOMCAT_BASE=/usr/local/Cellar/tomcat/8.0.22/libexec opengrok-0.12.1/bin/OpenGrok deploy

$ catalina start

Page 43: Framework code reading
Page 44: Framework code reading

これで 快適コードリーディング

ライフ!

Page 45: Framework code reading
Page 46: Framework code reading

まったり

Android Framework Code Reading #2 やります!

Page 47: Framework code reading

https://gitter.im/AndroidFrameworkCodeReading/CodeReadingHistory

Join us !