概要 Gemのコードリーディングで、広く使われている高品質なコードからテクニックや定石を学んでいきます。 はじめに いきなりRailsとかRspecを読みにいくのもツラそうなので、ここでは初心者向けとウワサのsettingslogicを読んでいくことにします。Gemを読む際の難易度の目安としては、 初めてのGemの読み方を参考にさせて頂きました. 私自身は、いくつかのOSSで、放置されているissue(テストやドキュメンテーション)をお片付けしたことはありますが、普段、そんなにOSSにガッツリcommitしている訳でもありません。そんな私にとって、 メソッドの命名規則 メモ化、method chainの実現方法 コメントの書き方 など、Rubyのお作法を学ぶ題材として、またOSSのコードリーディングのきっかけとして、非常に良い題材だったと思います。 version 2.0.9を使用します。
![この冬はじめよう! 5分で理解するGemのコードリーディング(1) settingslogic - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/4a37a7efde9c3fa81ac342b828bd6ab03bfdb0bb/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Fadvent-calendar-ogp-background-7940cd1c8db80a7ec40711d90f43539e.jpg%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUUzJTgxJTkzJUUzJTgxJUFFJUU1JTg2JUFDJUUzJTgxJUFGJUUzJTgxJTk4JUUzJTgyJTgxJUUzJTgyJTg4JUUzJTgxJTg2JTIxJTIwNSVFNSU4OCU4NiVFMyU4MSVBNyVFNyU5MCU4NiVFOCVBNyVBMyVFMyU4MSU5OSVFMyU4MiU4QkdlbSVFMyU4MSVBRSVFMyU4MiVCMyVFMyU4MyVCQyVFMyU4MyU4OSVFMyU4MyVBQSVFMyU4MyVCQyVFMyU4MyU4NyVFMyU4MiVBMyVFMyU4MyVCMyVFMyU4MiVCMCUyODElMjklMjBzZXR0aW5nc2xvZ2ljJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMzQTNDM0MmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz0xZTk3YzM5OTUyOTIzNTc5Y2Y2ZDNlNTI4YzUxN2U2MQ%26mark-x%3D120%26mark-y%3D96%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9OTcyJnR4dD0lNDB0am5ldCZ0eHQtY29sb3I9JTIzM0EzQzNDJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9NmYwYzgwYTliOTU5YzI5MmE0YzJmOGQyYmEyYjE0YmU%26blend-x%3D120%26blend-y%3D500%26blend-mode%3Dnormal%26s%3D6700c9cf5fddd553b0d9bdfb94fca4e6)