skillup

技術ブログ

プログラミング全般

短いコードを書く

投稿日:

私が普段コードを書くときに考えていることは常にいかに短くかけるか、ということといかにバグを生み出さないかということです。

基本的にはできるだけ、短くシンプルに書くようにしています。

そうすることであとで読んだ人間にとってわかりやすく、バグも少なくなります。

といってもプログラムって基本バグがあるものなんですけどね・・・そのために大切なのはできるだけコードを書かない工夫をすることです。

人間が書く以上、かけばかくほどバグの可能性は高くなります。そのためにはまずコードをできるだけかかない、という心構えが大切になってきます。

そのための工夫として下記のようなことが大切になります。

ライブラリを使う

配列の処理などいわゆるユーティリティー系の処理に属するものはなるべく用意されているものを使いましょう。JavaならApache commonsやPerlだったらCPANのライブラリを使うなど自分で作るよりはすでに実績あるものを使うほうが安全です。

再利用可能なコードは別にまとめる

何回も繰り返していますが、重複した処理をいろいろなところにかかないことが大切です。なるべく1か所でまとめるようにしましょう。

MySQL,Unixコマンドなど他のことでできないかを考える

例えば値のグルーピングならプログラムよりもデータベースが、テキストの処理ならUnixコマンドのほうが楽かもしれません。できるだけ得な仕事は得意なものにまかせましょう。

ちなみに下記リンクはこのような考え方をもっと広範囲にわたっていろいろと書いており、参考になります。一度リンクを貼りましたが、リスペクトの意味もこめてもう一度はります。

http://anopara.net/2014/04/11/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E4%B8%AD%E7%B4%9A%E8%80%85%E3%81%AB%E8%AA%AD%E3%82%93%E3%81%A7%E3%81%BB%E3%81%97%E3%81%84%E8%89%AF%E3%81%84%E3%82%B3%E3%83%BC%E3%83%89/

-プログラミング全般
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

webの仕組み その2 リクエストとレスポンス

クライアント(ブラウザ)はサーバーとの接続を確立した後、各種リクエストを送信します。サーバーはそれにこたえテキストや画像などのリソースをクライアントに転送します(これがレスポンスです。) Firefo …

no image

コードの分割

今回はリーダブルコードの8章。コードの分割について。 ポイントとしては1行に情報を詰め込みすぎているような場合は分割して、意味がわかりやすい区切りにまとめよう、といったことでしょうか。つまりは「困難は …

no image

ポート解放

新サーバー構築をしていたときにwebサーバーとしてnginxを立てましたが、外部から接続ができません。 500エラーすら吐かれず、ログも残っていません。 こんな時はホスト自体にアクセスが届いていない可 …

no image

オブジェクト指向 クラスの設計と業務ロジックの整理

本日も引き続き「現場で役立つシステム設計の原則」を読み進めてます。 本日は主にクラスの作り方について。 Contents1 クラス設計と業務ロジック1.1 要点1.2 感想 クラス設計と業務ロジック …

no image

オブジェクト指向について その2

前回のエントリーのように、データとロジックを一体で考えるのは、処理状の有効性のみならず、よりユーザー側に近い処理をかくということにもつながります。 日付の問題に関してもintやshortよりはLoca …