Twitter:https://twitter.com/Nunerm Roppongi Product Manager Meetup #6 のLTで発表した資料 https://pm-roppongi.connpass.com/event/99971/
![良いコードとは](https://cdn-ak-scissors.b.st-hatena.com/image/square/e2e54b608213f91e09b8f27d22761b06f3057a74/height=288;version=1;width=512/https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2Frandom-151209062010-lva1-app6892-thumbnail.jpg%3Fwidth%3D640%26height%3D640%26fit%3Dbounds)
増え続けるレガシーコード この記事を読んでいる皆さんの多くは、これまでたくさんのシステム開発に関わってきたことでしょう。仕様変更と闘い、納期に追われ、やっとのことで稼働したシステムも数多いはずです。厳しい状況になればなるほど、実際にコードを動かすことが最優先になり、「コードを保護する」ための単体テストの整備は後回しになってしまいがちです。 ところが、システム開発はシステムが完成して無事に稼働した時点で終わりではありません。ユーザーが実際に使い始めると、保守開発としてさまざまな仕様変更や機能追加が発生するのが常です。それらに対応するためには、厳しいスケジュールの中で、やっつけ仕事で間に合わせたコードに対して改修や機能追加をする必要があります。では、このような仕事にどうやって取り組めば良いのでしょうか? さて、前回の記事では、『レガシーコード改善ガイド』におけるレガシーコードの定義を紹介しまし
Jiemamy作者が考える “データベースの進化的設計” データベースもアジャイル開発に対応したい! アジャイルの考え方においては、実装前にシステム要件・設計を確定させることはせず、常に変化を受け入れていく体制が必要です。アジャイル開発の考え方にのっとるなら、アプリケーションだけではなくデータベースについても設計の凍結はせず、また、ソースコードに限らずデータベースの構成・設計についてもリファクタリングが適用されるべきです。Jiemamyはこの問題に取り組むプロジェクトとして始められました。本稿ではこのJiemamyの取り組みを紹介します。 ソースやスキーマだけ管理しても意味がない 近年注目を集めている「アジャイル開発」は、リファクタリングが重要な要素の1つであることはご存じのとおりです。アジャイルの考え方においては、実装前にシステム要件・設計を確定させることはせず、常に変化を受け入れていく
LiquiBaseとは LiquiBaseというプロダクトをご存知だろうか。LiquiBaseは「データベースのリファクタリングツール」と銘打つプロダクトで、先月27日にバージョン1.3がリリースされている。本稿では、現在注目を集める同プロダクトの基本的な使用法を紹介したい。 LiquiBaseの最も大きな特徴は、データベーススキーマの変更管理を行える点にある。この部分が「データベースのリファクタリングツール」と呼ばれるゆえんだ。 プログラムコードに対して行う通常のリファクタリングでも、それを思い切って行うためには、リファクタリング作業を理解し、かつアンドゥ機能を完備したIDEや、いざというときにロールバックを行うためのバージョン管理システムなどが不可欠だ。LiquiBaseは、リファクタリングの前提とも言えるそうした機能を提供するツールだと言ってよい。 同ツールは、書籍『Refactor
http://www.martinfowler.com/bliki/IsChangingInterfacesRefactoring.html 2007/9/2 リファクタリングの境界線のひとつ。 部分的なインタフェースの変更はリファクタリングか? 答えは簡単――インタフェースの変更はリファクタリングだ。 もちろんすべての呼び出し元を変更する必要はある。 このよい例がメソッド名の変更だ。 このインタフェースの変更によるリファクタリングは、 ほとんどすべてのリファクタリングツールでサポートされている。 すべての呼び出し元を変更するというのが、この種のリファクタリングでの肝となる。 インタフェースの宣言を変更しただけでは、システムは壊れてしまうので、 リファクタリングの定義が示すような振る舞いを保った変更にはならない。 インタフェースの変更によるリファクタリングは、あなたがすべての呼び出し元を把
Now, next, and beyond: Tracking need-to-know trends at the intersection of business and technology AI/ML Few technologies have the potential to change the nature of work and how we live as artificial intelligence (AI) and machine learning (ML). Future of the Firm Everything from new organizational structures and payment schemes to new expectations, skills, and tools will shape the future of the fi
ビジネス・モデリングなどのモデリングを始めてはみたものの,なかなか上手くモデリングできない…そんな悩みを持っている方も多いと思います。そこで,今回はモデリングを上達させるための「モデリング・リファクタリング」という方法をご紹介します。 モデリング・リファクタリングとは 「モデリング・リファクタリング」とは筆者が考えた造語です。(すでに誰かによって提唱されているかもしれませんが)筆者が発明したものではなく,モデリングに慣れている方なら自然とやっているようなテクニックです。 もともと「リファクタリング」というのは,小さなプログラム(例えばクラス)を作るときに,プログラムの外側の仕様(使われ方)は変えずに,中身の構造だけを変えることです。 なぜそんなことをするかというと,とりあえず仕様は満たしていたとしても,中身が汚い設計のままでは,変更に弱く,保守性も悪いからです。そこで,小さなプログラムを作
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く