前置き
この質問は、皆さんにソースコードの読み解き方の考え方をご指導いただきたく立ち上げました。
コーディングに疲れた際の息抜き感覚で答えていただけると幸いです。
背景
現在業務で Open-Source Subscription Billing & Payment Platform - Kill Bill が、実務で使えるか、使うにはどの様にするかという調査をしております。(支払い・決済システムのオープンソースソフトウェアです)
恥ずかしながら、私自身専門学校の授業でJavaのCLIアプリを作った程度の者のため、最近のJavaの読み方・書き方は愚か、ここまで大規模でデザインパターンやデータドリブン・イベントドリブンな設計のソフトウェアの動作を読み解くのに、とても難航しております。(素直に申し上げると、ユーザーガイドの読み解きにも行き詰まりを感じております)
素直な感想を申し上げると、簡単なVB.netのソースコードの読み書きはできるのに……と悔しい気持ちでいっぱいです。
質問
そもそも私のオブジェクト指向の理解が漠然としているからソースコードの読み解きに難航しているのだと思いますが、
皆さんは大規模なオブジェクト指向で組まれたプログラムの読み解きを行う際は、どの様なことを意識しているのでしょうか?
- 読み解く際の考え方
- ソースコードリーディングする際に使うツール
- 読み解くに当たって参考にした資料
- etc...
「これ、今どきのプログラマだったら普通に分かってるだろう……」
と思うようなことでも構いません。自分や「オブジェクト指向に馴染みがない人」のアドバイスになるかもしれないと思いましたら、ぜひご回答いただけると幸いです。
P.S. 質問者の技量
回答する際の参考になるかわかりませんが、筆者の技量を掲載いたします。
業務経験など
- 2000年: HotSoupProcessorで
if
とgoto
のみで構成されたスクリプトを書く - 2008年: Pythonで
if
,for
,while
,def
,class
で構成したスクリプトを書く - 2011年: 2年生専門学校卒
- 今日まで: 2, 3年ブランクはあるものの、プログラマとして働いている
- GitHubには亀よりも遅い開発速度だが、趣味で作ったプログラムを公開してたり。manzyun (Hidetsugu Takahashi)
使用経験のある言語
- Python
- VB(6, .net)
- C#
- PHP
- JavaScript
- Go
- TypeScript
趣味で触っている(触った)言語
- Nim
- Haskell
- Scheme
- Smalltalk(Pharo)
(一応)読んだ書籍
- Java言語で学ぶデザインパターン入門 / 結城浩
- その他、Webの記事(TECHSCOREなど)
回答4件
あなたの回答
tips
プレビュー