InfoQ ホームページ Refactoring に関するすべてのコンテンツ
-
Rails 2.3.3のリリースとRails 3.0+Merbの進行状況
Railsのバージョン2.3.3がリリースされた。このリリースでは通常のバグフィックス以外に、ActiveRecordのtouch機能、JSONに関するAPIの変更といったいくつかの新しい機能が加わった。そしてRails 3とMerb 1.1の現状についても見てみよう。
-
Ruby on Rails プロジェクトを救助する
Ruby on Railsが世に出て5年ほどの間,開発者たちは数多くのアプリケーションを開発してきた。その多くがRubyないしRuny on Railsを習得しながら開発されたため,ベストプラクティスとは言いがたいが,それでもWebサイトとして製品にはなっている。これらのWebアプリケーションには問題もあるが,その解決方法を取り上げた本が新たに発行された。
-
立ち止まってリファクタリングをする?
いつリファクタリングをするべきなのだろうか?単純に技術的負債("technical debt")を返済しなければならない時もあり、そこでは立ち止まってリファクタリングをするべきなのか。そうではなくて、ユーザストーリーに関わっている時だけしかリファクタリングするべきではないのか。どちらのアドバイスが正しいのだろうか?あるいは、もしかしたら第3の選択肢が存在するのだろうか?
-
コード再利用へのアジャイルアプローチ
Extreme Programming Yahoo Groupの最近のディスカッションにおいて、ソフトウェアを再利用可能にすることと、必要になるまでコードを書かないというXPのプラクティスの間で明らかな対立が起こった。Ron Jeffries氏その他の人たちは、コード再利用の費用と効果、そして、アジャイル環境でコードの再利用を行う方法と時期についての考えを共有した。
-
ReSharper 4.5 ベータはパフォーマンス向上を保証する
先日 JetBrains は ReShaper 4.5 ベータをリリースした。この新バージョンはパフォーマンスの向上とメモリの消費量の削減を保証している。新機能として VB9 のサポート、ネイティブな MSTest のサポート、「実装に移動」機能、そして F#、Compact Framework および Silverlight との互換性の改善が含まれる。
-
RFactor:テキストエディタ用のRubyのリファクタリングサポート
RFactorは Rubyのgemであり、みなさんのお気に入りのテキストエディタ用に、自動化されたリファクタリングのサポートを提供することを目標としている。リファクタリングをサポートしているIDEがあるではないか、と思われるだろう。そうではあるが、RFactorの開発者であるFabio kung氏は「Ruby開発者のほとんどはIDEを使わない」し、テキストエディタで十分であると考えている。
-
「良いデザイン」とは?
ソフトウェアプロジェクトが成功する上で(および、実のところソフトウェア職に携わる上でも)、要となるのは良いデザインであるということは、今さら言うまでもない。「良いデザイン」が何を意味するのかを定義することは、一連の終わりのない討論、論文、話し合い、議論などで、長い間大々的に取り上げられてきた。これも新しいことではない。J.B.Rainsberger氏およびScott Bellware氏が真の定義がなされるまでフォローすると役立つアドバイスを提供している。
-
CodeRush Xpress for C#が無償で利用可能
DevExpressは、CodeRush Xpress for C#の可用性を発表した。それは、C#デベロッパをターゲットにしたVisual Studio 2008向けの無償のアドインであり、コードのエクスペリエンスを向上することを意図している。CodeRush XpressはHighlight All References、Smart Clipboard Operations、Generate from Using (TDD)のようなコードナビケーション機能およびMake Explicit、Make Implicit、 Name Anonymous Typeなどのような25のコードリファクタリング機能を提供する。
-
Clone DetectiveのImmo Landwearth氏にインタビュー
Visual Studio向けのオープンソースプロジェクトClone DetectiveのImmo Landwerth氏にインタビューした。同プロジェクトはConQATを利用してC#コードの複製を分析する。
-
「技術的負債」に対する新しい見方
Technical Debt Workshopは最近、「技術的負債」に対する業界の理解と扱い方の向上に取り組みつづけており、その結果として興味深いアイデアが生まれている。
-
JetBrainsがReSharper 4.0をリリース、C# 3.0のサポートのほか多くの機能改善
JetBrainsは、大変待ち望まれたツールであるVisual Studioアドイン、ReSharper 4.0をリリースした。Resharper 4.0には機能の改善や新機能が多数ある。
-
Interview: Coplien氏とMartin氏、TDDとCDDそしてプロフェッショナルの定義について大いに語る。
JAOO '07 で「今時、ユニットテストを実施してないコードを納品するのは無責任な開発者だ」というBob Martin氏の主張について、議論が起こった。このInfoQビデオは、BobとJim Coplien氏がこれに関連する話や、いくつかの他の話題について議論する様子を納めたものだ。
-
継続インテグレーションとデータベースのバージョン管理
原則として、データベースに対する作業は必ずバージョン管理しなければならない、と強く主張した記事を投稿した後で、Scott Allen氏はデータベースのバージョン管理を最大限に利用する手法について詳しく述べている。彼は、ベースラインを作成し、スキーマのリビジョン管理に変更スクリプトを使い、データベースの(ビューやストアドプロシージャ、ファンクション、トリガ等の)プログラムされたオブジェクトを管理し、そしてブランチやマージ処理を利用する、包括的で実用的な手法を紹介している。
-
オピニオン: リファクタリングは必要な無駄
リファクタリングは、アジャイル開発者のツールキットにおいて、キーとなる技術的なプラクティスの一つだ。リファクタリングはまた、顧客にとっての価値としては目立ったものではない。それはまさしく、リファクタリングの定義自体によるものだ - 振舞いを変えずに、構造 (設計) の変更を行う、と言うものだ。リーン・ソフトウェア開発の世界では、顧客にとっての価値を持たないものは全て無駄であり、そして、顧客は振舞い/機能だけを知覚する。構造ではない。
-
多すぎるコード行に殺される?
Steve Yegge氏は、彼の最新のブログ記事で、開発者コミュニティの神経を逆なでした。ソフトウェア開発において最も重要なのはコードサイズを最小限にしておくことだ、とSteve氏は主張した。彼の視点からみると、コードの行数を少なく保つためにいくつかのデザインパターンを放棄し、リファクタリングを避ける必要がある、と言うのである。さらに、あなたの抱えている問題が非常に大きいなら - 他のプログラミング言語に切り替える必要があるかもしれない、と言っている。