0. 概要
코드를 작성할 때 따라야 하는 몇 가지 기본적인 원칙들이 존재합니다.
물론 무조건 따라야만 한다는 것은 아니지만, 위 원칙을 지켜 코드를 작성할 시 여러가지 이점이 존재합니다.
이러한 원칙들은 코드를 더 읽기 쉽고 유지 보수하기 쉽게 만들어줍니다. 아래에는 몇 가지 중요한 코드 작성 원칙을 소개하겠습니다.
1. 약자로 기억하는 개발 원칙
1.1. DRY (Don't Repeat Yourself)
DRY (Don’t Repeat Yourself) 원칙은 코드에서 중복을 피하라는 의미입니다.
동일한 기능이나 정보를 여러 곳에서 반복해서 작성하는 대신, 해당 기능이나 정보를 단일 장소에서 관리하세요.
중복 코드는 버그가 발생하기 쉽고 유지 보수가 어려울 수 있습니다. 가령 여러분이 동일한 기능의 코드를 여러방식으로 작성했을 경우, 해당 코드의 수정이 필요한 상황에서도 똑같이 수차례에 걸쳐 코드를 수정해야 합니다.
1.2. KISS (Keep It Simple, Stupid)
KISS(Keep It Simple, Stupid) 원칙은 코드를 가능한 간단하게 유지하라는 의미입니다.
복잡한 코드보다 간단하고 명확한 코드가 이해하기 쉽고 버그를 찾기 쉽습니다. 복잡성은 문제를 해결하는 과정을 어렵게 만들 수 있습니다.
코드의 가독성과 유지보수는 긴밀하게 연관되어 있습니다. 코드길이와 가독성이 떨어지는 코드는 오류가 생기는 부분이나 수정해야하는 부분을 찾기가 어려워집니다.
특히 주니어개발자가 가장 많이 하는 실수로, 나만 알아보기 쉬운 코드를 작성했다가 다른 팀원의 야근을 유발하기도 합니다.
2. 변수, 함수, 모듈 필수 원칙
2.1. 의미 있는 변수와 함수명 사용
変数と関数名を明確で意味のあるものにしてください。他の開発者や自分自身がコードを読む際に変数や関数が何をしているか理解しやすくなります。
できるだけ直感的で簡潔なコーディングのためには、すべての変数と関数に意味が含まれている必要があります。意味のない関数、変数名はその機能を理解するのに時間がかかり、生産性を低下させる最大の要因となります。
2.2. 小さな関数とモジュールの使用
関数とモジュールをできるだけ小さく保ちましょう。関数は1つのことだけを行い、モジュールは関連する機能をグループ化する必要があります。
大きな関数とモジュールの問題点は、比較的に汎用性が低いことです。一方、小さな関数とモジュールはコードの再利用を容易にするため、開発規模が大きくなるにつれてコーディング時間を劇的に短縮するのに大きな助けとなります。
3. 開始よりも重要な終了原則
3.1. ユニットテストとテスト駆動開発(TDD)
コードを書く際にユニットテストを書き、テスト駆動開発(TDD、Test-driven development)原則に従ってください。テストはコードの動作を検証し、バグを発見するのに役立ちます。
ただしTDDを使用する場合には、開発と同様にテストを作成する過程を経ることで開発スピードが遅くなることがあります。どちらが自分のプロジェクトに適しているか判断し、適用する柔軟な姿勢が必要です。
3.2. 例外処理
例外処理に注意を払って書いてください。開発を進める際、常に例外状況を予測し、処理するコードを考えなければなりません。
堅牢に動作するプログラムの場合、さまざまなケースに対応できるように例外処理が十分に準備されていることが多いです。結局のところ、私たちの開発意図とは異なる予期しない条件で動作する場合があるため、開発計画段階で全体的に必要な例外処理を把握できることが大きな助けとなります。
3.3. コードレビュー
コードレビューは重要な学習ツールです。他の開発者のコードを読んでフィードバックを受け取りましょう。他人の視点からコードを見ると、バグや改善点を見つけることができます。
もしコードレビューを一緒に行う人がいない場合、TDDを利用して自己コードレビューを行う代替策も存在するので、参考にしてください。
4. チーム(Team)単位の開発を目指す原則
4.1. 適切なコメントの使用
コードに説明を含んだコメントを使用してください。そのコードが何をしているか、なぜこのように書いたのかを説明するコメントは、チーム単位で開発が進行する実務で大きな助けとなります。
しかし、頻繁なコメントの使用はコード自体で説明が難しいということと同じです。できるだけコメントを減らし、コード自体で説明されるよう努めることが良いです。
4.2. コードスタイルガイドの遵守
プロジェクトチームや言語に関するコードスタイルガイドに従ってください。一貫したコードスタイルを維持することで、協力がより簡単になり、コードの可読性が向上します。
同じコードスタイルを合わせることは時には不要で、非効率的に感じることもあります。しかし、チーム単位でプロジェクトを進める際は誰でもそのコードを理解し、修正/利用が可能にすることが重要です。
特に既存のプロジェクトに参加する場合、直ちに開発に着手する前に既存のコードスタイルを把握し、ガイドを習得することが必須です。
5. スキル向上を目指す原則
5.1. 自己啓発投資
プログラミング技術の発展速度はますます加速しています。これに対応するためには継続的な学習と努力が必要です。年数がどれだけ経っても、新しい技術やツールを学び、自分のスキルを向上させることに投資することが不可欠です。
5.2. トレンドモニタリングと技術者間の交流
GitHub、Reddit、GitHub Newsなどのトレンドから遠ざからないために継続的なモニタリングと業界に関する関心が求められます。
自己の作品の完成度を高めることよりも、速やかに市場に投入してさまざまな分野の専門家からフィードバックを受けることもスキル向上に大きく役立ちます。
6. 結論
コードの作成は芸術と科学の組み合わせです。最初は難しいかもしれませんが、経験を積み重ね、上記の原則に従うことでより優れたプログラマーに成長することができます。失敗とバグは学びの一部であり、継続的に改善しながらより良いコードを作成することになるでしょう。
この記事も一緒に読んでみてください:
データ収集、これから自動化しましょう
コーディングなしで5分で開始・5,000以上のウェブサイトクローリング体験




