skillup

技術ブログ

プログラミング全般

1度に1つのことを

投稿日:

今回のリーダブルコードの概念はやや抽象的。

要は一度に行うタスクは1つにする、というところがポイントになります。

そのための手法として下記のようなことを上げています。

  • コードが行っているタスクをすべて列挙する。
  • タスクをできるだけ異なる関数に分割する
  • タスクは常に小さくする
  • 1つの段落に複数の処理を詰め込まない

下記の例を示したほうがわかりやすいかも。

仕様:ユーザーの所在地をわかりやすい文字列に変換する(例,Chiba、Japan)

  • location_infoの情報から都市と国を選ぶ
  • local_area →city →prefectureの順にする
  • 上3つすべてが使えないときは、Middle -of -Nowhereを使う

言語 JavaScript

ダメなコード

リーダブルコードのデフラグ状態

良いコード

値の取得→優先度を考えた更新→結合とすべて1つずつのタスクが実行されている。

-プログラミング全般
-

執筆者:


comment

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

関連記事

no image

オブジェクト指向設計 ダックタイピング

オブジェクト指向シリーズ。ダックタイピング・・読む前は名前は聞いたことあるような気がする・・程度で細かいことは何一つわからない状態でした。今回具体的なコード例があった分イメージを何とかつかむことはでき …

no image

ExcelVBAでの他のアプリの起動

2日続けてExcelVBA。 やはり細かく分けてすぐにプロシージャごとにテストできるのはものすごく大きなメリットですね。本日は別のアプリ起動と操作に関して。 自分がやったことはWordとメモを起動して …

no image

アプリケーション間のデータの連携方法に関して

以前やった「現場で役立つシステム設計の原則」を再読してます。 今、読んでいるのはアプリ間のデータ連携に関して。 複数のアプリ間でデータをやり取りする場合、以下のような方法が考えられます。 ファイルを直 …

no image

フォームの処理について

本日はフォームの処理に関して。主に一覧検索画面のフォームについてです。 フレームワークでフォームの処理をする場合、変数の初期値やバリデーションなどをあらかじめ読み込むオブジェクトを設定しておき、変数が …

no image

画面の制御フローなど

複雑な帳票系アプリではよくあると思うのですが、ある入力値が複数の場所から影響を受けており、制御がなかなか難しいときなどがあります。 例として クリアボタンなどでクリアされる 他のプルダウンなどで影響を …