オープンソースは使うだけではなく、中身を読んでどう動いているのかを知るべし

一人アドベントカレンダー 2016 11 日目 by @takkyuuplayer

1行まとめ

オープンソースは使うだけではなく、中身を読んでどう動いているのかを知るべし

中身がどう構成されているかを知らないと、無駄なコードを書いてしまう

例えばユーザーの新規登録機能。それは登録フォーム表示のテンプレートやメール送信の機能など、複数の部品から構成されているはずだ。

f:id:takkyuuplayer:20161211153056p:plain

新規登録の機能自体は中身がどう構成されているかを知らなくても、とりあえず動きはする。 では中身を知らなくてもいいのか?というともちろんそんなことはない。 中身がどういう部品で構成されているかを知らないと、本来再利用できるはずの部品を作り直してしまう。 あるいは、新規機能を開発する際に使うであろう「この機能はどう分割しておけば、それぞれの部品が再利用可能なものになるのか?」という知見が貯まらない。

オープンソースのライブラリを使えるだけで、それを理解した気になっていないか?

オープンソースのドキュメントを見て使い方が分かっただけで、どう実装されているかも知らずにそれを理解した気になっていないだろうか? それでは勿体無い。オープンソースは多くの人の手によりレビュー・改善されており「機能はこう分割して実装しておくといいぜ!」という知見の宝庫だ。 是非ともコードを読んでその知見も含めて吸収し、普段の仕事に活用したい。

次回予告

5日ほどサボってしまいましたが、明日の担当も @takkyuuplayer です。