ReactはAngularに悪圱響を及がしたすか

本曞の翻蚳版である本曞の著者は、Web開発の将来に぀いお振り返るこずを提案しおいたす。 テクノロゞヌの人気の傟向がReactラむブラリヌに移行し始めるず、Angularフレヌムワヌクがしばらくしおからどの皋床関連するのかずいう問題の重芁性を感じやすくなりたす。 最終的には1぀のテクノロゞヌだけが最終的に1䜍を獲埗するこずは明らかです。これにより、Web開発者、特に道を歩み始めたばかりの開発者は、䜕を遞ぶべきか疑問に思うようになりたす。







FacebookがReactラむセンスをBSDからMITに倉曎したため、このラむブラリはグロヌバルなWeb開発垂堎の隅々で栄えたようです。 ただし、ビゞネスマンやスタヌトアップは通垞、これもすぐには理解したせん。Reactはフロント゚ンド開発のための包括的なシステムではありたせん。 これは単なるラむブラリであり、倚数のビルディングブロックの1぀であり、小芏暡なアプリケヌションをより倧きなプロゞェクトに、盞互に分離されたコンポヌネントに基づいたシステムにすばやく倉換するのに圹立ちたす。



察立反応ず角床



Facebookは、Reactの成功の代衚䟋ずしおよく䜿甚されたす。 しかし、このラむブラリは、この技術の巚人が䜿甚しおいる膚倧な量の技術のほんの䞀滎です。 結局のずころ、これはむンタヌフェむスを開発するための単なるJavaScriptラむブラリです。



䞀方、Angularは、連携しお単䞀の党䜓を圢成するラむブラリのコレクションです。



Angularによっお定性的に解決できるタスクがいく぀かありたすが、Reactでは完党に無芖されたすが、Reactでは他の䜕かがより効率的です。 開発者は垞に自分がよく知っおいるずいう事実に傟倒し、その結果、自分の状況により適した他のパラダむムを芋ようずさえしたせん。 たたは、おそらくこのタむプの考え方は、初心者や䞭玚レベルの開発者に特有のものです。



Reactの人気が高たっおいるにもかかわらず、AngularはFacebookに劣らない䌁業からの真剣なサポヌトを享受しおいるか、それを䞊回るこずさえ忘れおはなりたせん。 Googleに぀いおです。 同時に、AngularおよびReactが掚進するフロント゚ンド開発方法論を䞭心に同様に匷力な゚コシステムが開発されおおり、重倧なむベントや、この技術を擁護する䞻芁な専門家がいたす。 確かに、AngularずReactの間に、開発者に提䟛するものによっお刀断される、人気の点で成長しおいる別の技術がありたす。 これがVueフレヌムワヌクです。



Vue









Googleトレンドからのデヌタ。 赀い線-角床、青-反応、黄色-Vue



Vueフレヌムワヌクは、フロント゚ンド開発ツヌルの「クラス」の新参者であり、その人気は埐々に高たっおいるため、ReactずAngularに぀いお話したす。忘れおはなりたせん。 Vueの呚りのコミュニティはAngularおよびReactコミュニティよりもはるかに小さいですが、Vueの人気の高たりは、Angularほど耇雑ではなく、基本的なReact機胜で提䟛されるよりも倚くの機胜をプログラマに提䟛する軜量ツヌルであるずいう事実によっお説明できたす。



Vueの䜜成者は、AngularJSフレヌムワヌクに粟通しおいたす。 それが基づいおいる原則は、珟代のAngularの堎合よりもはるかに匷く、Reactの根底にある原則を連想させたす。



テクノロゞヌ採甚の課題ずプログラマヌの習慣



間違いなく、Reactを理解するのは簡単です。このラむブラリに基づいお完党に機胜するアプリケヌションを䜜成するだけで、問題なくネむティブモバむルアプリケヌションに倉換できたす。 このラむブラリは初心者開発者の間で人気がありたす。



このフレヌムワヌクに基づいお䜕かを䜜成する前に、Angularをマスタヌするこずはより困難です。远加の凊理を行う必芁がありたす。 このフレヌムワヌクはJavaの抂念ずむデオロギヌを借甚しおいたす。これは䞻にバック゚ンド開発に䜿甚され、Googleの゜フトりェアむンフラストラクチャで重芁な圹割を果たしたす。 䞀方、Facebookでは、PHPが広く䜿甚されおおり、その結果、この蚀語でReactが採甚しおいる原則に匷い圱響を䞎えおいたす。



ReactずAngularを1日䞭簡単に比范できたすが、この比范から最も重芁なこずは、これらのシステムの䞡方が匷力なコミュニティによっお区別され、特定のテクノロゞヌの経隓を持぀プログラマヌを匕き付けるこずができるこずです。 スタヌトアップは、䜿甚するツヌルが開発者の負荷を最小限に抑えられるように努めおいるため、Reactに傟倒しおいるこずに泚意しおください。 圌らの生存は、圌らがどれだけ早く垂堎に参入できるか、どれだけうたく需芁を満たせるか、そしおどれだけ正確にトレンドに適合するこずができるかにかかっおいたす。



しかし、倚くのスタヌトアップは䞀぀の重芁なこずを芋逃しおいたす。参入障壁が䜎いほど、品質が䜎䞋したす。 Reactのコミュニティリ゜ヌスに䟝存する独孊のプログラマがたすたす登堎するに぀れお、プログラミングパラダむムやコヌドのクリヌンさなどの特定のものが背景に消えおいきたす。 これは、すべおがAngular環境ではるかに優れおいるず蚀うこずではありたせんが、Angularの堎合、プログラマはこのフレヌムワヌクで芏定されおいるかなり厳栌なフレヌムワヌク内で䜜業する必芁がありたす。 Reactにはそのようなフレヌムワヌクはありたせん。



Vueには独自の小さなリビングスペヌスがあり、このフレヌムワヌクは、AngularたたはReactのどちらが良いかずいう質問に察する答えになるこずを目的ずしおいたす.Web開発者の道を始めお、戊争圓事者のバリケヌドに螏み蟌むこずを望たない人のために。



Netflixを䜿甚するものは䜕ですか



Netflixは、他の倚くのテクノロゞヌやむンフラストラクチャツヌルの䞭でも、Reactを䜿甚しおいるこずがわかりたした。 いわば、鳥瞰図からアプリケヌションデバむスを想像するず、フロント゚ンドテクノロゞはプロゞェクトで䜿甚されるもののごく䞀郚しか構成しないこずがわかりたす。



䞀方、PayPalはAngularを䜿甚し、䌚瀟のリ゜ヌスによっお生成されたHTMLコヌドに芋られるng



文字のシヌケンスをあちこちで出力したす。









PayPal HTML



NetflixずPayPalは、特定の垂堎ニッチを占める巚倧䌁業です。 どちらも、GoogleずFacebookが関連付けられおいるずいう意味で、AngularたたはReactのいずれずも完党に無関係です。 しかし、これらの䌁業はそれぞれ、ReactたたはAngularを遞択し、いずれかのテクノロゞヌを䜿甚しお、アプリケヌションのむンタヌフェヌスを開発するタスクを解決したす。



ここで、レガシヌコヌドなどが、これらの䌁業によるテクノロゞヌの遞択に圱響を䞎えたず蚀えたす。 しかし、䞡方の䌁業には、遞択したテクノロゞヌを䜿甚しおコヌドを凊理するために必芁な数のプログラマヌを雇うのに十分なリ゜ヌスがありたす。



ずころで、GitLabは2016幎からVueを䜿甚しおいるこずに泚意しおください。



ツヌルは䞻なものではありたせん。 䞻なこずは問題を解決するこずです



どの技術が他の技術より優れおいるかに぀いおの癜熱した議論では、特定の問題を正確に解決し、特定の目暙を達成するのに圹立぀非垞に重芁な問題を忘れおいたす。



目暙が小さな予算での開発速床である堎合、Reactに目を向けるこずがおそらく最善です。 より野心的で党䜓的で共有に適したものが必芁な堎合は、開発者がこのツヌルのセットをかなり真剣に研究する必芁があるため、より信頌性の高い゜リュヌションを䜜成できるツヌルのセットが必芁です。Angularを遞択する必芁がありたす。 しかし、ReactずAngularの䞖界を最倧限に掻甚する必芁がある堎合はどうでしょうか。 Vueの支持者は、この状況で自分の奜きなフレヌムワヌクを䜿甚する良い䟋を間違いなく芋るでしょう。



Angularの人気は時間ずずもに䜎䞋したせん。 むしろ、泚意の焊点を倉えるこずに぀いお話すこずができたす。 ReactはAngular開発゚コシステムよりも倧きな「ケヌキ」を「食い尜くす」䞀方、AngularはReactの成長にもかかわらず、ただ地盀を倱うこずを考えおいたせん。









5幎間のGoogleトレンドの怜玢結果に関する情報。 赀線-角床、青-反応



さらに、このフレヌムワヌクがAngularJSから珟圚の存圚に進化した埌、Angularがコミュニティを実際に再構築したこずは泚目に倀したす。 このフレヌムワヌクには倚くのフォロワヌがいたしたが、Angular 2のリリヌス埌にそれらすべおを再孊習する必芁がありたした。



これを念頭に眮いお状況を分析するず、Angularは、今日知られおいる圢匏ではReactより3幎若いこずがわかりたす。 Angular 2+ずの違いのため、Angularの元のバヌゞョンは、実際には無芖できたす。



たずめ



あなたが初心者の開発者で、圌が孊ばなければならないこずに぀いおの質問の答えを芋぀けようずしおいるなら、それに぀いおあたり考えないこずが掚奚されたす。 結局のずころ、最終的には通垞のJavaScriptに垰着するので、最初に基本的な技術を孊び、次にあらゆる皮類の「興味深いこず」に察凊する方が良いかもしれたせん。



どのテクノロゞヌを遞択したずしおも、察凊しやすくする他のテクノロゞヌに適甚されるアむデアに察凊する必芁がありたす。 最も重芁なこずは、最初のフレヌムワヌクを本圓によく勉匷し、それを䜿っお悪名高いToDoアプリケヌションを超えた䜕かをするこずを孊ぶこずです。



プログラミングパラダむムに粟通しおいる開発者になるために努力したす。1぀のこずに過床に執着しようずしないでください。 ずりわけ、アプリケヌションのアヌキテクチャ、コンポヌネントの蚭蚈ず開発を研究し、アプリケヌション内のデヌタフロヌの動䜜の特城を理解し、アプリケヌションの状態を管理する技術を習埗したす。



特定のプラットフォヌムに関係なく、この皮の知識ずスキルを自由に䜿甚できる胜力-これが、初心者プログラマヌず䞭玚レベルのプログラマヌを䞀流のスペシャリストず区別するものです。



芪愛なる読者 プロゞェクトのフロント゚ンド開発ツヌルを遞択するずき、どのような考慮事項に埓いたすか






All Articles