構造およびオブゞェクトプログラミングパラダむムのみがありたす

この蚘事は、ブリッゞパタヌンに぀いおの議論の䞭で䜜成したしたが、公開したせんでした。 Domain Driven Designが蚀及されたように、圌らはそれを理解したず思い、OOPスタむルでの蚭蚈ずプログラミングの必芁性に異議を唱える人はいないようでした。 しかし、それでも時間の経過ずずもに、誀解に出䌚いたした。 これは、玔粋に歎史的な理論䞊の蚘事になりたす。 もちろん、トピックの党容を把握しようずせずずも。 しかし、これは、いわば、トップを読み、どの原則ずルヌルを自分に固執するか、プラむマリずセカンダリを遞択できない若い開発者ぞのメッセヌゞです。



倚くの人にずっおこのトピックのタむトルは非垞に物議をかもしたすそしお意図的に挑発的ですが、ビゞネスでは:)。 それでも、ここでそれを正圓化し、プログラミングパラダむムがパラダむムず呌ばれる資栌を埗るために必芁なプロパティを理解しようずしたす。



あなたが斜めに読むかどうかだけ尋ねたす-コメントは抑制されたした。







フロむドはパラダむムに぀いお䜕を教えおくれたすか



「プログラミングパラダむム」ずいう甚語は、ロバヌトフロむド '' RWフロむド。 '' [Http://www.ias.ac.in/resonance/May2005/pdf/May2005Classics.pdfプログラミングのパラダむム] '' ACMのコミュニケヌション ' '、228455-460、1979。本のロシア語蚳を参照チュヌリング賞受賞者の最初の20幎1966-1985幎、モスクワMIR、1993幎。 1979幎の圌の講矩では、圌は次のこずに぀いお語っおいたす。



プログラミングパラダむムのよく知られた䟋は、構造プログラミングです。これは、プログラミング方法論の䞻芁なパラダむムず思われたす。 2぀のフェヌズに分かれおいたす。 最初のフェヌズであるトップダりン蚭蚈では、問題は少数の単玔な副問題に分割されたす。 この段階的な階局的分解は、匷調衚瀺されたサブ問題が発生するたで継続したす。 構造プログラミングパラダむムの第2フェヌズでは、特定のオブゞェクトず機胜から、より抜象的なオブゞェクトず機胜ぞず䞊向きに䜜業する必芁があり、トップダりン蚭蚈で䜜成されたモゞュヌルのどこでも䜿甚されたす。 しかし、構造プログラミングのパラダむムは普遍的ではありたせん。 圌女の最も熱心なディフェンダヌでさえ、䞀人でいるだけではすべおの耇雑な問題を簡単にするのに十分ではないず認めるでしょう。 より特殊なタむプの他の高レベルのパラダむムは匕き続き重芁です。 これは正確な翻蚳ではありたせんが、R。Floydの講矩に基づく著者の線集ですが、可胜な限り圌の蚀葉に忠実です。蚀葉遣いは倉曎され、R。Floydの䞻芁なアむデアず圌の明確なプレれンテヌションを匷調するためにのみ配眮されたした。





圌はさらに動的プログラミングず論理プログラミングに蚀及し、それらをパラダむムずも呌んでいたす。 しかし、それらの機胜は、それらが専門分野から開発され、いく぀かの成功したアルゎリズムが芋぀かり、察応する゜フトりェアシステムが構築されたこずです。 圌はさらに、プログラミング蚀語はプログラミングパラダむムをサポヌトする必芁があるず述べおいたす。 同時に、構造プログラミングのパラダむムはより高いレベルのパラダむムであるこずを瀺しおいたす。



「構造プログラミングパラダむム」よりも高いレベルの抜象化のパラダむム「偶数」は、蚀語の階局の構築であり、最高レベルの蚀語のプログラムは抜象オブゞェクトで動䜜し、それらを次の䞋䜍の蚀語のプログラムに翻蚳したすレベル。





高レベルのパラダむムの機胜



珟時点では、考えられるすべおのパラダむムは、゜フトりェアを䜜成する際に考えられる代替案ず同じレベルにあるず考える傟向がありたす。 しかし、これはそうではありたせん。 パラダむムは亀換できたせん。



ご芧のように、R。フロむドは、パラダむムをより高レベルでより専門的なものに区別したした。 パラダむムのどの機胜が、それらがより高レベルであるず蚀うこずができたすか もちろん、これはさたざたな客芳的なタスクぞの適甚の可胜性です。 しかし、パラダむムをさたざたな䞻題のタスクに適甚できるのはなぜですか もちろん、ここでの問題は客芳的な問題の特城ではなく、いずれかのアプロヌチで解決できたす。 アルゎリズムを1぀たたは別の特殊な方法で䜜成するこずを提案するすべおのパラダむムは、パラダむムではありたせん。これは、高レベルのパラダむムのフレヌムワヌク内の特別なアプロヌチです。



そしお、高レベルのパラダむムは2぀だけです。構造プログラミングず、より高レベルのオブゞェクト指向プログラミングです。 さらに、高レベルのこれら2぀のパラダむムは互いに矛盟し、䜎レベルでは、アルゎリズムの構築レベルが䞀臎したす。 そしお、論理的、動的、機胜的などの既にアプロヌチ䜎レベルのパラダむムは、構造プログラミングパラダむムのフレヌムワヌク内で䜿甚される可胜性があり、出珟したいく぀かの専門分野-アスペクト、゚ヌゞェント指向、むベント指向は、オブゞェクト指向プログラミングパラダむムのフレヌムワヌク内で䜿甚されたす。 したがっお、これはプログラマヌが1぀たたは2぀の高レベルのパラダむムを知っおいるだけでなく、より専門的な䜎レベルの問題を解決するずきに他のアプロヌチの知識も圹立぀こずを意味したす。 しかし同時に、゜フトりェアを蚭蚈しなければならないずきは、より高いレベルのパラダむムから始め、必芁に応じおより䜎いレベルのパラダむムに移行する必芁がありたす。 しかし、どの原則を優先するかを遞択するずいう問題が生じた堎合、䜎レベルのパラダむムの原則が高レベルのパラダむムの原則より優先されるこずはありたせん。 そのため、たずえば、構造プログラミングの原則はオブゞェクト指向プログラミングの原則を損なうものではありたせん。たた、機胜的プログラミングたたは論理プログラミングの原則は構造プログラミングの原則に違反しおはなりたせん。 唯䞀の䟋倖は、アルゎリズムのパフォヌマンスです。これは、コンパむラヌによるコヌド最適化の問題です。 しかし、完璧なコンパむラは垞に構築できるわけではなく、高レベルのパラダむムの解釈は䜎レベルのパラダむムよりも確かに耇雑であるため、高レベルのパラダむムの原則を無芖しなければならない堎合がありたす。



しかし、私たちの質問に戻りたしょうパラダむムをさたざたな䞻題のタスクに適甚できるのはなぜですか しかし、それに答えるためには、歎史的な遠足をする必芁がありたす。



構造プログラミングのパラダむムの基瀎



E.ダむクストラが1965幎に報告した埌、GOTO挔算子の拒吊を正圓化した埌、構造プログラミングに関するアむデアが生たれたこずを知っおいたす。 プログラムを構造化されおいないものスパゲッティコヌドに倉えたのはこの挔算子であり、ダむクストラはこの挔算子を䜿甚せずにプログラムを蚘述できるこずを蚌明したした。その結果、プログラムは構造的になりたす。



しかし、理論は䞀぀のこずであり、実践は別のこずです。 この意味で、1975幎たでに状況がどうなっおいたかを考慮するこずは興味深いこずです。 これは、E。Yodanの本[http://www.az-design.ru/index.shtml?Projects&AzBook&src/005/02YE000 Yodan E.プログラムの構造蚭蚈ず構築、1975幎]に明確に芋られたす。 これを怜蚎するこずは重芁です。30幎以䞊経った今、その原則はすでによく知られ、再発芋され、新しいランクに匕き䞊げられおいるからです。 しかし、同時に、歎史的背景は倱われ、これらの原則の重芁性の階局は、第䞀のものず第二のものです。 この䞍定圢の状況は、プログラミングの珟圚の状態を非垞によく説明しおいたす。



しかし、その埌どうなりたしたか Yodanが説明するように、それはすべお「良いプログラムを曞くこずはどういう意味ですか」ずいう質問に察する答えから始たりたす。 ここに、高レベルのプログラミングパラダむムが答えるべき質問の最初の基準がありたす。 この質問に盎接答えないが、プログラムの興味深い特性を取埗する方法を教えおくれるのであれば、䜎レベルのパラダむム、぀たりプログラミングぞのアプロヌチを扱っおいたす。



プログラミングの倜明けには、プログラムの䜜成速床でプログラマヌを評䟡するずいうアプロヌチがありたした。 これは、圌が良いプログラムを曞いおいるずいうこずですか 圌は管理の特別な気質ず尊敬を楜しんでいたすか 最埌の質問ぞの答えが肯定的である堎合、プログラミングの改善に関するすべおの質問は、孊術的関心の察象ずなる可胜性が高くなりたす。 しかし、経営者は、䞀郚のスヌパヌプログラマヌがプログラムを非垞に迅速に䜜成したり、非垞に効率的なプログラムを䜜成したりするこずにも気付く堎合がありたすが、これらのプログラムは未圢成のたたであり、理解、保守、たたは倉曎できたせん。 たた、埌者も時間がかかりたす。



泚目に倀する、プログラマヌ間のかなり特城的な論争

*プログラマA「私のプログラムはあなたのプログラムの10倍高速であり、必芁なメモリは3倍少ない」

*プログラマヌB「はい、しかしあなたのプログラムは機胜しおおらず、私のものは機胜しおいたす」



しかし、プログラムは垞により耇雑になっおいるため、プログラムが機胜するだけでは䞍十分です。 プログラムずプログラマの正しい動䜜を確認する特定の方法が必芁です。 さらに、これはプログラムをテストするのではなく、内郚組織ずいう意味でプログラムの正圓性を怜蚌するための䜓系的な手順を実行しおいたす。 ぀たり、それでも、珟代の蚀語で話すず、圌らはコヌド改蚂コヌドレビュヌに぀いお話したした。



さらに、それでもプログラムの柔軟性、぀たり倉曎、拡匵、修正の単玔さに぀いお話したした。 これを行うには、特定の皮類の質問に垞に答える必芁がありたす。 「このテヌブルを拡匵したい堎合はどうなりたすか」、「い぀か新しい倉曎プログラムを定矩したい堎合はどうなりたすか」、「そのような出力のフォヌマットを倉曎する必芁がある堎合はどうなりたすか」、「誰かが別の方法でプログラムにデヌタを入力するこずに決めたすか」



たた、むンタヌフェヌス仕様の重芁性に぀いおも話したした。 各モゞュヌルで実装する必芁がある入力、関数、および出力の仕様に察する正匏なアプロヌチ。



さらに、モゞュヌルのサむズず䞍倉性に重点が眮かれたした。 さらに、モゞュヌルの䞍倉性に関しおは、モゞュヌル党䜓ではなく、個々の芁因の割り圓おを考慮したした。

1.プログラムの論理構造、すなわち アルゎリズム。 プログラム党䜓が䜕らかの特別なアプロヌチに䟝存しおいる堎合、アルゎリズムを倉曎するずきに倉曎を加える必芁があるモゞュヌルの数は

2.モゞュヌルの匕数、たたはパラメヌタヌ。 ぀たり むンタヌフェむス仕様の倉曎

3.内郚テヌブル倉数ず定数。 倚くのモゞュヌルは共通のテヌブルに䟝存しおいたす。そのようなテヌブルの構造が倉曎されるず、モゞュヌルも倉曎されるこずが予想されたす。

4.デヌタベヌスの構造ず圢匏。 倧郚分は、この䟝存関係は、前述の䞀般的な倉数やテヌブルぞの䟝存関係に䌌おいたすが、実際的な芳点からは、プログラムずは無関係にデヌタベヌスを怜蚎する方が䟿利です。

5.プログラム管理のモゞュヌル構造。 䞀郚の人々は、実際にそれがどのように䜿甚されるかを考えずにモゞュヌルを曞きたす。 ただし、芁件が倉曎された堎合。 モゞュヌルの論理構造のどの郚分を倉曎する必芁がありたすか



これらおよびその他の倚くの偎面ここでは考慮しおいたせんは䞀般に、構造プログラミングのアむデアを定匏化したす。 これらの偎面に配慮するこずで、構造プログラミングは高レベルのパラダむムになりたす。



オブゞェクト指向プログラミングパラダむムの基瀎



ご芧のずおり、優れたプログラムを線成するすべおの原則は、構造プログラミングで考慮されおいたす。 優れたプログラムを䜜成するための別の、たたはこれたで知られおいなかった原則のグルヌプの出珟は、パラダむムを倉えるこずができたすか いや 構造化されたプログラムを曞く方法ずむデオロギヌを拡倧するだけです。 構造プログラミングのパラダむム。



しかし、高レベルのパラダむムが優れたプログラムの䜜成方法の質問に答えるように蚭蚈されおおり、新しい技術的手法の出珟、たたは新しい芁因の怜蚎が、構造プログラミングの境界を越えない堎合技術や芁因の数に関係なく、構造的なたたであるためそれでは、このパラダむムの境界を越えるこずができたす。 実際、䞀般的な科孊から知られおいるように、パラダむムはそれほど速く倉化したせん。 先行するパラダむムが、実際には、利甚可胜な理論的芳点から、発生する珟象を単に説明できない堎合、科孊革呜はめったに起こりたせん。 パラダむムが構造からオブゞェクト指向に倉わるずきも、同様の状況がありたす。



オブゞェクト指向のパラダむムが出珟した理由は、たすたす耇雑なプログラムを䜜成する必芁があるこずであるこずがすでに認識されおいたすが、構造プログラミングのパラダむムには䞀定の制限があり、その埌はプログラムの開発が耐え難いほど難しくなりたす。 たずえば、G。Schildtは次のように曞いおいたす。



プログラミング開発の各段階で、メ゜ッドずツヌルはプログラムの耇雑さを「抑制」するように芋えたした。 そしお、そのような各段階で、新しいアプロヌチは以前のアプロヌチから最高のものを吞収し、プログラミングの進歩を瀺したした。 OOPに぀いおも同じこずが蚀えたす。 OOPの前に、倚くのプロゞェクトがプログラミングの構造的アプロヌチが機胜しないこずが刀明した限界に達したしたそしおそれを超えるこずもありたした。 したがっお、プログラムの耇雑化に䌎う困難を克服するために、OOPの必芁性が生じたした。 [http://www.williamspublishing.com/Books/978-5-8459-1684-6.html Herbert Schildt、C4.0 Complete Guide、2011]





オブゞェクト指向プログラミングがより耇雑なプログラムを蚘述し、耇雑性制限の発生の問題を事実䞊排陀できる理由を理解するために、OOPの創蚭者の䞀人であるGrady Buchu[http://www.helloworld.ru/texts/comp/other /oop/index.htm Grady Butch、オブゞェクト指向分析および蚭蚈]。 圌は、OOPの説明を、耇雑さの意味ず、耇雑であるず芋なされるシステムから始めたす。 ぀たり、意図的に耇雑なプログラムを䜜成する問題にアプロヌチしたす。 次に、この耇雑さを理解するために、耇雑さず人間の胜力の接続の問題に移りたす。



別の䞻な問題がありたす耇雑なシステムで䜜業するずきの人の胜力の物理的な制限。 耇雑な゜フトりェアシステムの分析を開始するず、さたざたな方法で盞互䜜甚する倚くのコンポヌネントが明らかになり、システムの䞀郚も盞互䜜甚する方法も類䌌性を瀺したせん。 これは、組織化されおいない耇雑さの䟋です。 蚭蚈の過皋でシステムを線成し始めるずき、すぐに倚くのこずを考える必芁がありたす。 残念ながら、1人でこのすべおを同時に行うこずはできたせん。 ミラヌなどの心理孊者による実隓では、人間の脳が同時に監芖できる情報の構造単䜍の最倧数は玄7プラスたたはマむナス2であるこずが瀺されおいたす。 したがっお、私たちは深刻なゞレンマに盎面したした。 ''「゜フトりェアシステムの耇雑さは増しおいたすが、この耇雑さを凊理する脳の胜力は限られおいたす。 どうすればこの苊境から抜け出すこずができたすか '' '





それから圌は分解に぀いお話したす



分解アルゎリズム指向かオブゞェクト指向か アルゎリズムたたはオブゞェクトに応じお、耇雑なシステムのどの分解がより正確ですか この質問にはキャッチがあり、それに察する正しい答えがありたす。䞡方の偎面が重芁です。 アルゎリズムによる分離は、むベントの順序に焊点を圓おおおり、オブゞェクトによる分離は、オブゞェクトたたはアクションの察象である゚ヌゞェントに特に重芁です。 ただし、2぀の方法で同時に耇雑なシステムを構築するこずはできたせん。 アルゎリズムたたはオブゞェクトのいずれかでシステムを分割し始め、次に、結果の構造を䜿甚しお、別の芳点から問題を怜蚎する必芁がありたす。 経隓から、オブゞェクトの分解から始める方が有益であるこずが瀺されおいたす。 この始たりは、゜フトりェアシステムの耇雑さの組織によりうたく察凊するのに圹立ちたす。





したがっお、圌はたた、構造原則よりもオブゞェクト指向の原則を支持しおいたすが、䞡方の重芁性を匷調しおいたす。 蚀い換えるず、人間の脳が発生するタスクの耇雑さに察凊できるように、構造原則はオブゞェクト指向の原則に埓う必芁がありたす。 圌はさらに、モデルの重芁性を匷調しおいたす。



モデルを構築するこずの重芁性。 モデリングは、分解、抜象化、および階局の原則を実装しおいるため、すべおの゚ンゞニアリング分野で広く普及しおいたす。 各モデルは、怜蚎䞭のシステムの特定の郚分を蚘述し、それから、叀いモデルに基づいお新しいモデルを構築したす。 モデルにより、障害を制埡できたす。 通垞および異垞な状況での各モデルの動䜜を評䟡し、満足できないものがある堎合は適切な改善を実斜したす。 サブゞェクト領域自䜓にあるオブゞェクトに焊点を合わせ、オブゞェクト指向分解ず呌ばれるものを圢成するようなモデルを䜜成するこずが最も䟿利です。





さお、よく芋るず、オブゞェクト指向のパラダむムは䞀般的なモデリングに過ぎず、S。Lemの最も重芁な偎面が最も明確に衚珟されおいるこずがわかりたす。



モデリングは、その特性をほずんど考慮せずに、自然を暡倣したものです。 なぜわずかなのですか 私たちの無胜のため いや 第䞀に、過剰な情報から身を守る必芁があるからです。 ただし、このような過剰は、アクセスできないこずも意味したす。 アヌティストは絵を描きたすが、私たちは圌ず話をするこずはできたすが、圌がどのように圌の䜜品を䜜成するかはわかりたせん。 圌は絵を描くずき、​​圌の脳で䜕が起こっおいるのか分からない。 これに関する情報は圌の頭の䞭にありたすが、私たちはそれを利甚できたせん。 モデリングは単玔化する必芁がありたす。非垞にささやかな絵を曞くこずができる機械は、双子の兄匟のような完璧な「モデル」よりも、玠材、぀たり脳、絵画の原理に぀いお倚くを教えおくれたす。 モデリングの実践には、いく぀かの倉数を考慮に入れ、他の倉数を攟棄するこずが含たれたす。 モデルずオリゞナルは、それらで発生するプロセスが䞀臎した堎合に同䞀になりたす。 これは起きおいたせん。 モデル開発の結果は、実際の開発ずは異なりたす。 この違いに圱響する芁因は3぀ありたす。元のモデルず比范したモデルの単玔さ、元のモデルずは異なるモデルのプロパティ、最埌に元のモデル自䜓の䞍確実性です。 䜜品「Sum of technology」の断片、スタニスラフ・レム、1967





したがっお、S。Lemは抜象化をモデリングの基瀎ずしお語っおいたす。 同時に、抜象化はオブゞェクト指向のパラダむムの䞻芁な機胜です。 Buch氏はこれに぀いお次のように曞いおいたす。



合理的な分類は、間違いなく科孊の䞀郚です。 MichalskiずSteppは次のように䞻匵したす。 このような分類は、䞻な問題の理解ず科孊理論のさらなる発展を倧いに促進したす。」 分類がそれほど耇雑なのはなぜですか もちろん、䞀郚の分類は他の分類よりも優れおいたすが、これは「完党な」分類がないためです。 クヌムス、ラフィア、スラヌは、「科孊者がこの仕事を匕き受けるのず同じくらい倚くの方法で䞖界をオブゞェクトシステムに分割する方法がある」ず䞻匵したす。 分類は察象の芖点に䟝存したす。 措氎ずカヌ゜ンの䟋「むギリス...経枈孊者は経枈機関、瀟䌚孊者は瀟䌚、環境保護䞻矩者は自然の死角、アメリカの芳光客は芳光名所、゜ビ゚トの指導者は軍事的脅嚁、そしお最埌に私たちの䞭で最もロマンチック、英囜-圌らの故郷の緑の牧草地のように。」





そしお、圌は私たちが必芁ずする䞻芁な抜象化の遞択に぀いお話したす。



'' 'キヌ抜象化の怜玢ず遞択' ''キヌ抜象化は、問題領域の蟞曞に含たれるクラスたたはオブゞェクトです。 ''「䞻芁な抜象化の䞻な䟡倀は、問題の境界を定矩するこずです」 ''システムに含たれ、それゆえ私たちにずっお重芁なものを匷調し、䞍芁なものを排陀したす。 このような抜象化を匷調するタスクは、問題領域に固有です。 ゎヌルドバヌグによるず、「オブゞェクトの正しい遞択は、アプリケヌションの目的ず凊理された情報の詳现床に䟝存したす。」



すでに述べたように、䞻芁な抜象化の定矩には、発芋ず発明ずいう2぀のプロセスが含たれたす。 䞻題分野の専門家に耳を傟けるこずで抜象化を発芋したす。専門家がそれに぀いお話す堎合、この抜象化は通垞非垞に重芁です。 , , , . , «, , »; — . , , , , , , . , .



— .





そのため、オブゞェクト指向のパラダむムは高レベルのパラダむムになり、構造プログラミングパラダむムの原理を支配し、モデリングリアリティに埓事し、これらの分野の専門家の蚀語でドメむンモデルを構築したす。明確なむンタヌフェヌスず独立したモゞュヌルを持぀、簡単に修正、拡匵できるプログラムを䜜成するためにこれを怠るず、構造化プログラミングパラダむムのレベルに戻りたす。あなたのプログラムは誰にずっおも良いでしょうが、珟実には察応しおいないため、理解するこずはできたせん。あなたにしか知られおいない甚語で説明され、䞻題分野を知っおいる専門家はあなたの助けなしにプログラムを理解するこずはできたせん。最終的に、難易床は非垞に狭い範囲で枛少し、良いプログラムを組織したしたが。しかし、それはプログラムであり、モデルではありたせん。モデルが存圚しない、たたはモデルの衚面的な衚珟があれば、優れたプログラムを内郚から「爆砎」し、将来、それをさらに開発しお同行するこずはできたせん。抜象抂念が存圚しないクラスを導入するずき、これらのクラスが玔粋に䜓系的でサブゞェクト゚リアずは無関係であるずき、他のクラスの盞互䜜甚フロヌを単玔化するためだけに導入されるずき、゜フトりェアは「ひげあり」になり、リファクタリングが行われない堎合そのような領域を超えお、ある日あなたの゜フトりェアの開発が停止し、それは䞍可胜になりたす-あなたは構造プログラミングの限界に達するでしょうそしおクラスずオブゞェクトを䜿甚しおもあなたを脅かすこずはないように思われたしたかたたは衚面的な衚珟であり、あなたの良いプログラムを内偎から「爆砎」し、将来的にはそれをさらに開発および保守するこずはできたせん。抜象抂念が存圚しないクラスを導入するずき、これらのクラスが玔粋に䜓系的でサブゞェクト゚リアずは無関係であるずき、他のクラスの盞互䜜甚フロヌを単玔化するためだけに導入されるずき、゜フトりェアは「ひげあり」になり、リファクタリングが行われない堎合そのような領域を超えお、ある日あなたの゜フトりェアの開発が停止し、それは䞍可胜になりたす-あなたは構造プログラミングの限界に達するでしょうそしおクラスずオブゞェクトを䜿甚しおもあなたを脅かすこずはないように思われたしたかたたは衚面的な衚珟であり、あなたの良いプログラムを内偎から「爆砎」し、将来的にはそれをさらに開発および保守するこずはできたせん。抜象抂念が存圚しないクラスを導入するずき、これらのクラスが玔粋に䜓系的でサブゞェクト゚リアずは無関係であるずき、他のクラスの盞互䜜甚フロヌを単玔化するためだけに導入されるずき、゜フトりェアは「ひげあり」になり、リファクタリングが行われない堎合そのような領域を超えお、ある日あなたの゜フトりェアの開発が停止し、それは䞍可胜になりたす-あなたは構造プログラミングの限界に達するでしょうそしおクラスずオブゞェクトを䜿甚しおもあなたを脅かすこずはないように思われたしたかこれらのクラスが玔粋に䜓系的で、サブゞェクト領域ずは関係がない堎合、他のクラスの盞互䜜甚フロヌを単玔化するためだけに導入された堎合、゜フトりェアは「ひげあり」になり、リファクタリングがそのような領域を䞀時的に監芖しない堎合、゜フトりェア開発停止し、䞍可胜になりたす-構造プログラミングの限界に達したすクラスずオブゞェクトを䜿甚しおも脅嚁にならないように思われたす。これらのクラスが玔粋に䜓系的で、サブゞェクト領域ずは関係がない堎合、他のクラスの盞互䜜甚フロヌを単玔化するためだけに導入された堎合、゜フトりェアは「ひげあり」になり、リファクタリングがそのような領域を䞀時的に監芖しない堎合、゜フトりェア開発停止し、䞍可胜になりたす-構造プログラミングの限界に達したすクラスずオブゞェクトを䜿甚しおも脅嚁にならないように思われたす。クラスずオブゞェクトを䜿甚しおも脅嚁になりたせんか。クラスずオブゞェクトを䜿甚しおも脅嚁になりたせんか。



曎新したした。私はここで、トピックは鋭く、コメントしないず思いたした。蚘事で事実を述べたしたが、ホリバヌのレベルにたで䞋がりたくありたせん。これが考えられなかった堎合-さお、それは今回は運がないこずを意味したす。確かに、それは建蚭的です-別の蚘事で反論を曞く堎合。私は倧衆のステレオタむプを砎壊するずは思わない。



はい、たた、明確にするために、ここでの議論の埌に公開するこずにしたした。Rosenblattパヌセプトロンをプログラムしたしょう。 , , . , — , . ( ) , , . , — , , ?



All Articles