タグ

refactoringに関するbobbyjam99のブックマーク (7)

  • 良いコードとは

    Twitter:https://twitter.com/Nunerm Roppongi Product Manager Meetup #6 のLTで発表した資料 https://pm-roppongi.connpass.com/event/99971/

    良いコードとは
  • 「レガシーコード改善ガイド」のススメ 第2回:コードを理解するため、仕様化テストで文書化する

    増え続けるレガシーコード この記事を読んでいる皆さんの多くは、これまでたくさんのシステム開発に関わってきたことでしょう。仕様変更と闘い、納期に追われ、やっとのことで稼働したシステムも数多いはずです。厳しい状況になればなるほど、実際にコードを動かすことが最優先になり、「コードを保護する」ための単体テストの整備は後回しになってしまいがちです。 ところが、システム開発はシステムが完成して無事に稼働した時点で終わりではありません。ユーザーが実際に使い始めると、保守開発としてさまざまな仕様変更や機能追加が発生するのが常です。それらに対応するためには、厳しいスケジュールの中で、やっつけ仕事で間に合わせたコードに対して改修や機能追加をする必要があります。では、このような仕事にどうやって取り組めば良いのでしょうか? さて、前回の記事では、『レガシーコード改善ガイド』におけるレガシーコードの定義を紹介しまし

    「レガシーコード改善ガイド」のススメ 第2回:コードを理解するため、仕様化テストで文書化する
    bobbyjam99
    bobbyjam99 2009/07/15
    "コードを「あるべき姿」に変更することより、まずは現状を受け入れてテストを整備することが重要"
  • データベースもアジャイル開発に対応したい! (1/3) - @IT

    Jiemamy作者が考える “データベースの進化的設計” データベースもアジャイル開発に対応したい! アジャイルの考え方においては、実装前にシステム要件・設計を確定させることはせず、常に変化を受け入れていく体制が必要です。アジャイル開発の考え方にのっとるなら、アプリケーションだけではなくデータベースについても設計の凍結はせず、また、ソースコードに限らずデータベースの構成・設計についてもリファクタリングが適用されるべきです。Jiemamyはこの問題に取り組むプロジェクトとして始められました。稿ではこのJiemamyの取り組みを紹介します。 ソースやスキーマだけ管理しても意味がない 近年注目を集めている「アジャイル開発」は、リファクタリングが重要な要素の1つであることはご存じのとおりです。アジャイルの考え方においては、実装前にシステム要件・設計を確定させることはせず、常に変化を受け入れていく

  • 【ハウツー】DBAを救え! DBリファクタリングツール「LiquiBase」を使ってみよう (1) データベースのリファクタリングツール | エンタープライズ | マイコミジャーナル

    LiquiBaseとは LiquiBaseというプロダクトをご存知だろうか。LiquiBaseは「データベースのリファクタリングツール」と銘打つプロダクトで、先月27日にバージョン1.3がリリースされている。稿では、現在注目を集める同プロダクトの基的な使用法を紹介したい。 LiquiBaseの最も大きな特徴は、データベーススキーマの変更管理を行える点にある。この部分が「データベースのリファクタリングツール」と呼ばれるゆえんだ。 プログラムコードに対して行う通常のリファクタリングでも、それを思い切って行うためには、リファクタリング作業を理解し、かつアンドゥ機能を完備したIDEや、いざというときにロールバックを行うためのバージョン管理システムなどが不可欠だ。LiquiBaseは、リファクタリングの前提とも言えるそうした機能を提供するツールだと言ってよい。 同ツールは、書籍『Refactor

  • Martin Fowler's Bliki in Japanese - インタフェースの変更はリファクタリングか?

    http://www.martinfowler.com/bliki/IsChangingInterfacesRefactoring.html 2007/9/2 リファクタリングの境界線のひとつ。 部分的なインタフェースの変更はリファクタリングか? 答えは簡単――インタフェースの変更はリファクタリングだ。 もちろんすべての呼び出し元を変更する必要はある。 このよい例がメソッド名の変更だ。 このインタフェースの変更によるリファクタリングは、 ほとんどすべてのリファクタリングツールでサポートされている。 すべての呼び出し元を変更するというのが、この種のリファクタリングでの肝となる。 インタフェースの宣言を変更しただけでは、システムは壊れてしまうので、 リファクタリングの定義が示すような振る舞いを保った変更にはならない。 インタフェースの変更によるリファクタリングは、あなたがすべての呼び出し元を把

    bobbyjam99
    bobbyjam99 2007/09/11
    答えはYES.ただし,呼出元がすべて把握出来る場合に限る.
  • Rolling with Ruby on Rails

    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

    Rolling with Ruby on Rails
  • モデリング・リファクタリングのススメ

    ビジネス・モデリングなどのモデリングを始めてはみたものの,なかなか上手くモデリングできない…そんな悩みを持っている方も多いと思います。そこで,今回はモデリングを上達させるための「モデリング・リファクタリング」という方法をご紹介します。 モデリング・リファクタリングとは 「モデリング・リファクタリング」とは筆者が考えた造語です。(すでに誰かによって提唱されているかもしれませんが)筆者が発明したものではなく,モデリングに慣れている方なら自然とやっているようなテクニックです。 もともと「リファクタリング」というのは,小さなプログラム(例えばクラス)を作るときに,プログラムの外側の仕様(使われ方)は変えずに,中身の構造だけを変えることです。 なぜそんなことをするかというと,とりあえず仕様は満たしていたとしても,中身が汚い設計のままでは,変更に弱く,保守性も悪いからです。そこで,小さなプログラムを作

    モデリング・リファクタリングのススメ
  • 1