リファクタリング

【図解】ITプロジェクトをバランスシート(B/S)の視点で考える

ITのプロジェクトを会計の概念であるB/S(バランスシート)に落とし込んだらどうなるのか、ふと気になったので書いてみます。

まず、資産の部・負債の部・純資産の部の解釈はこちらです。

資産の部:投下された資源の運用形態(現金を生み出すもの)
負債の部:プロジェクトの資産を喰いつぶすもの
純資産の部:投下資本(会社視点のB/Sだとソフトウェア等の勘定科目)

プロジェクトの状態をB/Sに書き出して

もっとみる

テストコードを減らすためのリファクタリングテクニック

ようやく本題です。
今日はこの話をしたいがためにサンプルコードの記事を書いていたのですが、色々やっていくうちに気付きがあったので、別記事で色々と書き足す事にしました。

# 謝辞

書き終えて気付いたんですが、言ってる内容がほとんどこれでした。

# サンプルコード

このうち、

## リファクタリング前

## リファクタリング後

を取り上げます。
どちらも、不正な値が入力された時以外は同じ

もっとみる
読了ありがとう。この記事があなたを楽しませられた事が、私は嬉しい!
6

リファクタリング・ウェットウェア

最近おすすめされた本で リファクタリング・ウェットウェア という本がよかったので、まとめておきたいと思います。
リファクタリング・ウェットウェア

リファクタリング・ウェットウェアの意味

リファクタリングとは、一般的にプログラムの内部構造を整理することを示します。
一方ウェットウェアは、人間の思考方法をさします。
これら2つを合わせると、人間の思考方法の内部構造を整理することと言えそうです。

もっとみる
よっしゃ!!!
6

リファクタリングが重要な理由

リファクタリングとは、ソフトウェアの動作はそのままキープしつつ、プログラムをきれいに整理することです。とても大事な作業ですが、プログラマーではない人には、機能が追加されたわけでもないので、仕事が進んでいないと見えるでしょう。ですが、ぜひ、その必要性を理解してあげてください。日々のこまごまとしたリファクタリングもありますし、プログラム全体の構造を整理する大規模なリファクタリングもあります。整理整頓さ

もっとみる

プログラミングは整理整頓・首尾一貫

プログラミングで 特に重要なことは何かと問われれば、繰り返しになりますが、それは整理整頓・首尾一貫です。明日の自分は赤の他人だと割り切ることです。自分のためにも、共同で開発する人のためにも、プログラムは常に整理整頓しなければいけません。ただ、難しいアルゴリズムを実装している時や、新しい機能を追加した時など、思った通りの動作になるまでプログラムが散らかることがあります。これはしょうがないことで避けら

もっとみる

2020/05/29

起きた。今日はビーフカレー。ビーフが牛肉であることは既に人生の途中で履修してある。昨晩は本当によく寝た。まず、途中で起きなかったのが偉い。ただ、寝ているだけで褒めてくれるなんて(幼少の頃の)両親くらいのものだと思ったけど、自分自身がいた。

上のように言った次の瞬間、ご飯を炊いておくのを忘れていたので、炊飯器をセットして二度寝した。目を覚ましてビーフカレーを食べたのは、首都圏をブルーインパルスが飛

もっとみる
ありがとうご材木ーーーーーッ
4

「単体テストが面倒くさい」に立ち向かう ―5つの弾丸

やらなきゃいけない。
でもやる気が起きない。
そんなときがありますね。

特に単体テストは、プロダクションコードの進捗に直接は寄与しませんし、技術的にもチャレンジングなところはありませんから、モチベーションを上げるのに苦労するのも無理はありません。

そこで対処方法を挙げてみました。

リファクタリングする

AAA (Arrange, Act, Assert) の Arrange が面倒で、立ち

もっとみる
ありがとうございます! よろしければほかのノートもご覧ください。
4

リファクタリングどこから手を付けるか問題

「リファクタリングしよう!」と技術的負債と向き合い始めた時にどこから手を付ければいいか問題ってありますよね。っていうかありました。

すぐに思いつくようなものだと以下のようになると思います。

- 修正が簡単そうな箇所
- 複雑そうな箇所
- 影響なさそうな箇所
- DRY原則に反している箇所

はじめは小さく、影響範囲を狭めて、リリース時の影響範囲も小さくしたいと考えるでしょう。

ですがここで

もっとみる

the.kalaclista.com のテンプレートを書き直している話

とりあえず最近はそんな事をしています。

なんで書き直しているのか

・一部がバグった URL などになっている
・Hugo ですら生成に 30秒ぐらい掛かっている
・ファイル構造などが正直メンテしづらすぎる

というのが主な理由です。

まぁどっちかって言うと新規開発と言うよりは、メンテナンス性を上げるためのリファクタリングなんですが、これがまぁなんでここまで複雑怪奇な感じになっとるのか、と言う

もっとみる

「レガシーソフトウェア改善ガイド」を読んだ

読みました。
それなりに歴史のあるソフトウェアを扱うならば、十中八九レガシーな部分には遭遇するわけで、そういったものへの対処法を学ぶことで良い仕事ができるようになったりストレス軽減になったりすることもあるだろうということを期待して手に取りました。

サマリ

レガシーソフトウェアの改善について様々な角度から指針やメリットデメリットを教えてくれる書籍です。
テーマとしては、コーディング、アーキテクチ

もっとみる
ありがとうございます!良ければまた見に来てください(^^)
7