巨大なクラスを部分に分割するのに役立つ良い補助/ツールはありますか? コードはうまく機能しますが、500 行を超えるクラスを持つことは快適ではありません。小さいパーツに分割できると確信しています。
今回はPython用のツールに興味がありますが、数え切れないほどです。
巨大なクラスを部分に分割するのに役立つ良い補助/ツールはありますか? コードはうまく機能しますが、500 行を超えるクラスを持つことは快適ではありません。小さいパーツに分割できると確信しています。
今回はPython用のツールに興味がありますが、数え切れないほどです。
なぜこれを手動で行うことができないのですか?500行は対処するのにそれほど多くありません。どのツールも、それが提供する目的のコンテキストで意味のあるクラスを分割できるとは思えません。自分で分割し、コードを再設計/リファクタリングすることをお勧めします。
まず最初に、500 行のコードが「居心地が悪い」と感じる理由は何でしょうか。クラスを 2 つの新しいクラスに分割する必要があるのはなぜだと思いますか? おそらく、クラスはそのままで問題ない (500 は大きくない) か、クラスを 3 つまたは 4 つの異なるクラスに分割する必要があるかもしれません。
それ以上の情報がなければ、なぜツールをより小さな断片に分割する必要があると感じるのかを理解するまで、ツールは役に立たないと思います。クラスを分割する方法を教えてくれるツールはありません。
クラスの唯一の責任とは何かを自問してください。複数のクラスを思いついた場合は、少なくとも責任の線に沿ってクラスを分割する必要があります。6 つ思いついた場合は、やるべきことがかなりあります。
まあ、それはあなたが意味する言語を数えます。Python などの言語と比較して、Java などの言語ではより安全な自動リファクタリングを行うことができます (Python の動的な性質のため)。
Python では通常 ( "pythonic" ) 使用しますgetattr()
が、Java ではイントロスペクションを使用するのは"必要がない限り使用しないでください"に似ています。このような手法では、すべての関係を検出できないため、自動リファクタリング ツールが機能することがほとんど不可能になります。
とにかく、java と python の両方で、リファクタリングにEclipseを使用しています。それは非常にうまく機能します。Python の場合、pydevプラグインまたは aptana studio が必要です。
Java用のExtC Visualizerを見つけましたが、まだ動作していません。