Programming - Techniques and Thinking for Improving Code Quality

By learning principles and practical techniques for writing excellent code, you can develop maintainable and readable software.

Programming Coding Refactoring Clean Code Software Development

The Essence of Programming

Programming is not simply giving commands to computers. It is an intellectual activity of organizing thoughts, decomposing problems, and expressing solutions logically. Excellent programmers not only write working code but also write code that other developers can understand and that flexibly responds to future changes.

The Importance of Code Quality

In software development, code is not finished once written. It is read and modified repeatedly for feature additions and bug fixes. Hard-to-read code takes time to modify and becomes a source of new bugs. Conversely, high-quality code improves development efficiency and raises the entire team's productivity.

The books introduced here provide knowledge for fundamentally improving programming techniques. They contain content useful for everyone from beginners to experienced developers at each stage.

Readable Code

This book abundantly introduces specific techniques for making code readable. You'll acquire knowledge you can put into practice immediately, such as how to name variables and functions, how to write comments, and how to organize control flow. From beginners to veterans, it's a good opportunity for all programmers to review coding fundamentals.

  • Since more time is spent reading code than writing it, prioritize readability
  • Good names make code that conveys intent without comments
  • Break down complex processing into small components and make each component easy to understand
  • The best code is code that others can understand in the shortest time
リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

ダスティン・ボズウェル, トレバ-・フォシェ, 角征典 / オライリージャパン; 初版八刷 / 2012-06-23

「美しいコードを見ると感動する。優れたコードは見た瞬間に何を...

A book explaining simple and practical techniques for writing better code. It's packed with wisdom immediately usable in daily coding, such as variable naming, comment writing, and code structuring. Easy to understand even for beginners, it teaches the basic attitude as a programmer.

Clean Code: A Handbook of Agile Software Craftsmanship

This book demonstrates the code quality standards necessary for professional software developers. You can learn the importance of design with maintainability and extensibility, not just code that works. Through principles of object-oriented design and test-driven development, you will acquire the skills to create software with long-term value.

  • Functions should do one thing and do it well
  • Code is reading material, and the writer has a responsibility to the reader
  • Test code should be written with the same quality as production code
  • The Boy Scout Rule: Leave the code cleaner than you found it
Clean Code アジャイルソフトウェア達人の技

Clean Code アジャイルソフトウェア達人の技

Robert C.Martin, 花井 志生 / KADOKAWA / 2017-12-18

コードを書き、読み、洗練する 本書のケーススタディを注意深く...

A guidebook by Robert C. Martin for writing professional code. It explains code quality at deeper levels including object-oriented design, test code writing, and error handling. It serves as a milestone for skill improvement for intermediate developers and above.

Principles of Programming

This book systematically summarizes universal principles in programming. Even as technologies and frameworks change, these principles remain effective across time. Junior programmers can efficiently absorb wisdom that should be learned through experience.

  • KISS principle: Keeping it simple is the most important design guideline
  • DRY principle: Not writing the same knowledge in two places improves maintainability
  • YAGNI principle: Not building features not needed now avoids complexity
  • Premature optimization is the root of all evil; first write code that works correctly
プリンシプル オブ プログラミング3年目までに身につけたい一生役立つ101の原理原則

プリンシプル オブ プログラミング3年目までに身につけたい一生役立つ101の原理原則

上田 勲 / 秀和システム / 2016-03-23

KISS、ドッグフーディング、ブルックスの法則…… 古今東西...

A book compiling 101 principles and guidelines cultivated by programmers throughout history, such as KISS, DRY, and YAGNI. Even as individual technologies and frameworks change, these principles hold universal value. One book you want to read early in your career as knowledge to acquire within the first three years.

Refactoring: Improving the Design of Existing Code (2nd Edition)

This book provides systematic methods for safely improving existing code. You can learn specific refactoring patterns and the criteria for applying them. You will acquire the skills to add features and fix bugs while continuously improving code quality.

  • Refactoring is the work of improving internal structure without changing externally visible behavior
  • Develop an eye to recognize code smells and select appropriate refactoring techniques
  • Perform refactoring in small steps and run tests at each step
  • Clearly separate refactoring and feature addition as different tasks
リファクタリング(第2版): 既存のコードを安全に改善する (OBJECT TECHNOLOGY SERIES)

リファクタリング(第2版): 既存のコードを安全に改善する (OBJECT TECHNOLOGY SERIES)

Martin Fowler 著, 児玉 公信, 友野 晶夫, 平澤 章, 梅澤 真史 / オーム社 / 2019-12-01

ソフトウェア開発の名著、第2版登場! リファクタリングは、ソ...

A book explaining systematic methods for safely improving existing code. It's the revised edition of Martin Fowler's representative work that spread the concept of refactoring to the world. You can learn specific techniques for continuously improving code quality.

Summary

Improving programming skills is not just about learning new languages or frameworks. What's important is being conscious of code quality and developing the habit of writing readable and maintainable programs. The books introduced here provide foundational thinking and practical techniques for that purpose.