リファクタリング

うつくしく作る

持続可能な開発を目指して

技術的負債という言葉がある。持続的に開発していく中で不可避的に堆積していく、理想的な状態との乖離だ。
循環的複雑度といった概念はこの負債を定量的に示した指標のひとつで、ご存知の方も多いかもしれない。https://jp.mathworks.com/discovery/cyclomatic-complexity.html

一昔前と比べるとCIのプラグインが循環的複雑度を

もっとみる

#技術書典 初サークル参加から「jQuery to Vue.jsで学ぶ レガシーフロントエンド安全改善ガイド」200部完売までの軌跡

4/14(日)の技術書典6に初参加して「jQuery to Vue.jsで学ぶ レガシーフロントエンド安全改善ガイド」という本を頒布し、無事に200部を完売できた。買っていただいた皆様ありがとうございます。

イベント参加はブログを書くところまででワンセットって誰かに昔言われたような気がする。というわけで、記憶が鮮明なうちに振り返っておく。

なお私は何かを執筆したことはなく、技術書典自体に関して

もっとみる

技術書典6で「jQuery to Vue.jsで学ぶ レガシーフロントエンド安全改善ガイド」という本を頒布します #技術書典

初めてnoteに投稿するのががっつり宣伝になってるのがアレですが、タイトルの通り4/14(日)の技術書典6にて、「jQuery to Vue.js で学ぶレガシーフロントエンド安全改善ガイド」という本を頒布します。

当日の場所は「き04」です。

どんな本?

タイトルの通り、レガシーなフロントエンドコードをモダンに書き換えていく方法を、jQueryで書かれたサンプルをVue.jsに実際に書き換

もっとみる

サービス負債(技術的負債)返済時にやってよかったこと

本題に入る前に言葉の定義について

一般的には、技術的負債という言い方のほうが馴染みが良いと思うのですが

「技術」という単語が出るとどうしても「エンジニアだけのお仕事」という感じになってしまう。その時は他施策より優先度が下がることが多い気がする。
技術的負債の代替語でサービス負債という単語を考えてみた

という記事を読んで自分もこの考えに結構近い所あって、特に最後に

特に攻めの施策ばかりやって

もっとみる

技術的多重債務者を救えるか

なぜ技術的負債が発生するのか

「よし、技術的負債を作ろう!!」そう思って開発する人は恐らくいないにも関わらず、世の中には負債が溢れています。
では、どのようなときに負債が発生してしまうのか?

1. 納期/コスト都合で設計やテストがおろそかになった
2. 増改築を繰り返し気がつけばサグラダ・ファミリアが出来上がっていた
3. 技術トレンドが変わり採用技術がマイナー化

「技術的負債」という言葉で

もっとみる

プログラムと美しさ:第六章 リファクタリング ―約束された未来―

ソフトウェア業界には「動いているソースコードに触るな」という伝統的な掟がある。何かの改修のついでに、よかれと思って関係ない部分にまで改善を施す。それが仇となり、思わぬ動作の問題を引き起こす。よく見聞きするケースである。当のプログラマは善意で行ったにも関わらず、その責めを負い、二度とそのような罪は犯さないと上司に誓うはめになる。

 「コピペ」による「コードクローン」がなくならない背景には、こうした

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

[Tips] PHP それ、無名関数(クロージャー)を使った方がイケてるよ

#プログラミング, #tips, #php, #リファクタリング

この記事のきっかけ

Web言語を扱ってると下記のような記述をよく見かけます。

template/hoge.php

<html> <head> </head> <body> <div><?php// hogehogeの時if (GLOBAL_CONST_VALUE_1 === $value

もっとみる

関数の見通しをよくする(プログラム)

以下、メンテナンスしているコードの中にあったとある関数。(差し支えがないように少々定数名をいじっている)
Context という型から「ははあ Android か」とわかる方もいらっしゃいますよね?

public static String shurinkString(final Context context, final String str) { String validateStr

もっとみる

読みました:主要データベースの増え続けるdisk容量の対応事例

メルカリの膨大な商品テーブルをリファクタリングしてdisk容量を減らした話が紹介されていました。
いくつかの案の検討経緯が細かく記されていて良かったです。

もっとみる

アーキテクチャから見直した Android 版 Zaim の大規模リファクタリング #Zaim

はじめに

こんにちは、Zaim の Android アプリ開発チームの原です。Zaim では、2018 年 5 月に丸々一ヶ月かけて Android アプリの大規模なリファクタリングを実施しました。

今回は、その背景や開発時の判断および実装について、四つの構成に分けて共有してみようと思います。ソースコードがないので多少曖昧な部分もありますが、少しでも参考になれば幸いです。

目次
1. 取り組

もっとみる