Code smellとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > 百科事典 > Code smellの意味・解説 

コードの臭い

(Code smell から転送)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/04/19 06:09 UTC 版)

ナビゲーションに移動 検索に移動

コードの臭い(こーどのにおい、: Code smell)とは、コンピュータプログラミングにおいてプログラムソースコードに深刻な問題が存在することを示す何らかの兆候のことを言う。

コードの臭いが示す深刻な問題は、小さく管理された手順でリファクタリングする短いフィードバックサイクルを廻し、それ以上のリファクタリングが必要なことを示すコードの臭いがないかどうか、設計を検査しなければならない。

リファクタリングを実施するプログラマの視点からは、コードの臭いはいつリファクタリングするか、どのリファクタリング手法を用いるか、発見するための方法である。すなわち、リファクタリングを後押しするものである。

「コードの臭い(code smell)」という呼び方は、ケント・ベックWardsWikiで初めて用いたようである。マーチン・ファウラーの著書 Refactoring. Improving the Design of Existing Code[1](邦訳[2]) 採り入れられたあと、様々なところで用いられるようになった。

何がコードの臭いで、何がそうでないかは主観的な判断であり、プログラミング言語、開発者や開発手法などによって異なる。 Java向けにはCheckstylePMDFindBugsなどのツールがあり、ある種のコードの臭いを自動的にチェックすることができる。

一般的なコードの臭い

重複したコード
同一あるいは同様のコードが複数箇所に存在。
長すぎるメソッド
メソッド、関数、手続きが長くなりすぎている。
巨大なクラス
大きくなりすぎたクラス神オブジェクト英語版を参照。
機能の横恋慕
他クラスのメソッドを過度に用いるクラス。
不適切な関係
他のクラスの実装の詳細に依存しているクラス。
相続拒否
基底クラスの規約が尊重されない形でのメソッドオーバーライドリスコフの置換原則参照。
怠け者クラス
行うことが少なすぎるクラス。
重複メソッド
同一あるいは同様のメソッドが複数箇所に存在。
不自然な複雑さ
簡潔な設計で十分なところに、過剰に複雑なデザインパターンの使用を強制する。

関連項目

参考文献

  1. ^ Fowler, Martin (1999). Refactoring. Improving the Design of Existing Code. Addison-Wesley. ISBN 0-201-48567-2. 
  2. ^ ファウラー, マーチン (2001). リファクタリング―プログラムの体質改善テクニック. ピアソン・エデュケーション. ISBN 4894712288. 

外部リンク


「Code smell」の例文・使い方・用例・文例

Weblio日本語例文用例辞書はプログラムで機械的に例文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Code smell」の関連用語

Code smellのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Code smellのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのコードの臭い (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
Tanaka Corpusのコンテンツは、特に明示されている場合を除いて、次のライセンスに従います:
 Creative Commons Attribution (CC-BY) 2.0 France.
この対訳データはCreative Commons Attribution 3.0 Unportedでライセンスされています。
浜島書店 Catch a Wave
Copyright © 1995-2025 Hamajima Shoten, Publishers. All rights reserved.
株式会社ベネッセコーポレーション株式会社ベネッセコーポレーション
Copyright © Benesse Holdings, Inc. All rights reserved.
研究社研究社
Copyright (c) 1995-2025 Kenkyusha Co., Ltd. All rights reserved.
日本語WordNet日本語WordNet
日本語ワードネット1.1版 (C) 情報通信研究機構, 2009-2010 License All rights reserved.
WordNet 3.0 Copyright 2006 by Princeton University. All rights reserved. License
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
「斎藤和英大辞典」斎藤秀三郎著、日外アソシエーツ辞書編集部編
EDRDGEDRDG
This page uses the JMdict dictionary files. These files are the property of the Electronic Dictionary Research and Development Group, and are used in conformance with the Group's licence.

©2025 GRAS Group, Inc.RSS