モジュール化/デカップリングのためにコードを関数とクラスに分割するのは良いことですが、やりすぎると本当に断片化されたコードになってしまい、これも良くありません。
コードを関数に分割するときの黄金律は何ですか?
モジュール化/デカップリングのためにコードを関数とクラスに分割するのは良いことですが、やりすぎると本当に断片化されたコードになってしまい、これも良くありません。
コードを関数に分割するときの黄金律は何ですか?
It really does depend on the size and scope of your project.
I tend to split things into functions every time there is something repeated, and that repetition generalized/abstracted, following the golden rule of DRY (Do not repeat yourself).
As far as splitting up classes, I tend to follow the Object Oriented Programming mantra of isolating what is the same from what is different, and split up classes if one class is implementing more an one large theoretical "idea" or entity.
But honestly if your code is too fragmented and opaque, you should try considering refactoring into a different approach/paradigm.
適切な名前 (置き換えるコードよりも優れた名前) を付けることができれば、それは関数になります。
再利用性と繰り返しの排除に重点を置いた回答には同意しますが、可読性も少なくとも同じくらい重要であると考えています。したがって、繰り返しに加えて、複数のことを行うコード (クラス、関数、ブロックなど) を探します。
コードに関連付けられた名前がその機能を説明していない場合は、そのコードを、それぞれが単一の責任と説明的な名前を持つユニットにリファクタリングする良い機会です。この関心の分離は、再利用性と読みやすさの両方に役立ちます。
有用なコードは長期間使用できるため、自分 (または理想的には他の誰か) が、数か月または数年前に作成されたコードに戻って簡単に理解できることが重要です。
おそらく、私自身の個人的なルールは、それが 2 行以上の長さで、同じページ (ASP.net) で複数回参照されている場合、または数ページにまたがって数回参照されている場合です。それ。
I think you generally have to think of a chunk of codes have a chance of being reuse. It comes with experience to figure that out and plan ahead.
私は、あなたが複数回行うことはすべて関数であるべきだと教えられました。同様のものには親クラスが必要であり、何よりも、組織内のソースコードの「標準」を参照してください。後者は主に書式設定を扱います。