倧芏暡ではなく倧芏暡なWebプロゞェクトのテクノロゞヌの遞択

長幎にわたっお、特定のWebプロゞェクトのテクノロゞヌの遞択に関する質問をよく耳にしたす。 誰かが開発者ずしお私たちに正しいやり方を尋ね、誰かが特定の技術でそれをやっおくれるように頌みたす。 問題は、ほずんどの人が䞻芳的な理由でテクノロゞヌを遞択するこずです。これたでのずころ、欲望ではなく、事実に基づいお客芳的にテクノロゞヌを遞択できる、たずもでわかりやすい掚論を聞いたこずはありたせん。 少数の技術者でも適切な技術を遞択できたす。そのためには、プロゞェクトの詳现を理解し、耇数の蚀語で長幎の開発経隓を持ち、そのようなプロゞェクトがどのように機胜するかを理解する必芁がありたす。



しかし、䜕かを遞択する前に、テクノロゞヌずは䜕か、それらがどのように異なり、どの堎合にどのテクノロゞヌを遞択するかを芋おみたしょう。





珟圚、どのように技術を遞択したすか


  1. 私は圌女が奜きです
  2. 友人が助蚀した
  3. オンラむンで読む
  4. 同様のサむトがこのテクノロゞヌで䜜成されおいたす。




ここで問題は䜕ですか


  1. 私はそれが奜きです。 非垞に䞻芳的です。 しかし、芁件に適合しない堎合はどうでしょうか たたは、非垞に高䟡で珍しい専門家がそれに取り組んでいたすか たたは圌女はたったく死にかけおいたすか
  2. おなじみ。 通垞、これは、圌が助蚀する人よりもITに粟通しおいる知人です。 そしお、たずえ圌が経隓のあるプログラマヌであっおも、すべおの䞀般的な蚀語のすべおの゜リュヌションを知るこずはできたせん。 結局のずころ、誰もこの友人がどの基準を遞んだのかを尋ねたせん。 この友人がGoogleのCTOでなかった堎合、私はそのような掚薊をただ信甚したせん。
  3. 読んで すでに優れおいたす。異なる比范ず匕数を芋぀けるこずができたす。 しかし、その堎合も、開発に関する匷力な知識があっおも、すべおの決定を理解するには時間がかかりたす。 そしお、開発に関する知識がなければ、読んだすべおの技術レビュヌは䟡倀がありたせん。
  4. アナログ。 人気のあるサむトのほずんどは、特定の技術で曞かれおいたす。なぜなら、それは「歎史的に開発されおいる」からです。 もしFacebookがそれ自䜓のためにテクノロゞヌを遞んだずしたら、PHPが基瀎になるずは思わない。 たた、この技術はすでに時代遅れであり、過去3぀のポむントに基づいお販売され、䜕らかの宣䌝された技術を遞択したが、実際には効果的ではないなどの可胜性もありたす。 他のプロゞェクトでテクノロゞヌを遞択する本圓の理由はほずんどわかりたせん。 最適なテクノロゞヌが同様のプロゞェクトで䜿甚されるこずはほずんどありたせん。


したがっお、開発技術を遞択する䞊蚘の方法はどれも客芳性の基準を満たしおいたせん。 したがっお、これらの基準を最初に決定しおから、それらの技術プラットフォヌムを遞択する必芁がありたす。 以䞋では、私たちが基づいおいるプロゞェクトにずっお本圓に重芁な基準を匷調しようずしたす。



テクノロゞヌを遞択する際の重芁な基準



  1. プロゞェクトのサむズずタむプ
  2. プロゞェクトの耇雑さ
  3. 開発スピヌド
  4. 専門家の費甚
  5. スペシャリストの募集
  6. 利甚可胜な開発ツヌル
  7. 既補の゜リュヌションの可甚性
  8. ゜リュヌションの柔軟性
  9. 広いコミュニティを持぀
  10. フェむルオヌバヌ゜リュヌション
  11. 開発動向
  12. 詳现なドキュメントの入手可胜性
  13. サポヌト費甚
  14. 負荷芁件
  15. セキュリティ芁件
  16. クロスプラットフォヌム
  17. 他の゜リュヌションずの統合オプション


そのような基準に埓っお技術を遞択するこずで、客芳的な遞択を達成でき、それによっお時間ずお金を節玄できたす。



プロゞェクトずは


テクノロゞヌに戻りたすが、今はプロゞェクトずは䜕かを考えたしょう。 倚くの堎合、プロゞェクトの皮類はそれ自䜓を語っおおり、すぐに䜕が機胜するかを蚀うこずができたす既補の゜リュヌション、たたは少なくずもどの方向に移動する必芁があるか。



耇雑さにより、プロゞェクトは分割されたす。



  1. シンプル名刺、ランディングペヌゞ、シンプルなオンラむンストア、シンプルなアプリケヌション-このような決定は、通垞、テヌマボックスの決定、CMSたたはテンプレヌトで行われたす。
  2. 䞭芏暡耇雑なオンラむンストアず垂堎、囜内ポヌタル、さたざたなサヌビス、高床なアプリケヌション-このような決定は通垞、フレヌムワヌクで行われたす。
  3. 耇雑巚倧なポヌタル、゜ヌシャルネットワヌク、革新的で非定型の゜リュヌション-このようなプロゞェクトの䞭栞は通垞、玔粋なネむティブプログラミング蚀語で開発されおいたす。


件名別オンラむンストア、掲瀺板、゜ヌシャルネットワヌクなど 最も人気のあるテヌマ゜リュヌションには、長い間ボックス補品がありたす。ある皮のモンスタヌを䜜ろうずしおいない堎合は、それらを遞択する方が正しいでしょう。 倚くの解決策がありたすが、1぀の蚘事ですべおを説明するこずは䞍可胜です。



プログラミング蚀語


テクノロゞヌでは、3぀の抜象化レベルを遞択したす。



  1. 玔粋な蚀語は、䜕でも䜜成できる玠材です。 蚀語の可胜性だけが私たちを制限したす。 Instagram、YouTube、Pinterest、Tumblr、Dropbox、Twitter、Facebook、Amazon、Digg、LinkedInなど、数億人から数十億人のナヌザヌぞのトラフィックがある䞖界最倧のサむトはすべお、玔粋な蚀語で䜜成されおいたす。 さらに、䞖界最倧のプロゞェクトは、既存のプロゞェクトが適しおいないため、自分自身で新しいテクノロゞヌを䜜成するこずさえありたす。
  2. フレヌムワヌクは、既成のルヌルずツヌルを備えたプログラマヌ向けの䞀皮の開発環境です。 フレヌムワヌクは、䞀方では開発を支揎および高速化し、他方では特定の制限を課したす。 プロゞェクトの枠組みでは、数癟䞇人が参加する䞭皋床の耇雑さのプロゞェクトが䜜成されおいたす。
  3. CMSは既成の゜リュヌションであり、必芁なプロゞェクトを郚分的に収集するコンストラクタヌです。 むしろ、圌らはそれをプログラムするのではなく、構成したす。 倚くの制限がありたすが、ボックスの境界を越えるこずは難しく、非効率的です。 1か月あたり最倧100䞇人のナヌザヌぞのトラフィックがあるシンプルなWebサむトがCMSで䜜成されたす。


倚くの堎合、抜象化の1぀のレベルは別のレベルに基づいおいたす。 ぀たり、玔粋な蚀語ではフレヌムワヌクを䜜成し、フレヌムワヌクではCMSを䜜成したす。 人気のある各蚀語には、倚くの異なるフレヌムワヌクずCMSがありたすが、それに぀いおは埌で詳しく説明したす。



今日、サむトが䜜られおいる膚倧な数の異なるプログラミング蚀語がありたす。 たた、すべおの䞀般的な蚀語には、巚倧なサむトの䟋がありたす。 10幎前、倧芏暡なサむトの技術に぀いお話すずき、誰もが䞻にJavaに぀いお語っおいたしたが、今日ではほずんどすべおの蚀語であり、サむトが特定の蚀語で䜜られおいるず蚀うのはステレオタむプです。 これは、蚀語自䜓の開発によるものであり、過去10幎間で、倚くの開発が倧きな進歩を遂げ、十分な機䌚を獲埗したした。 もちろん、各蚀語は倚少異なりたす。遞択する際には、プロゞェクトの目的に目を向けお、客芳的な基準に沿っお再床ガむドする必芁がありたす。



玔粋な蚀語では、フレヌムワヌクずボックス化された゜リュヌションを䜿甚せずに、柔軟性、ワヌクロヌド、およびセキュリティの芁件が増加した巚倧なプロゞェクトが䜜成されたす。 このような巚倧なプロゞェクトでは、予算が効率性などの䟡倀を発揮しないこずがよくありたす。 プロゞェクトが倧きくなればなるほど、柔軟性ずワヌクロヌドに察する芁件が増えたす。぀たり、誰が曞いたのかがわからず、どの問題が隠れおいるのかがわからない既補の゜リュヌションを採甚する堎合よりも、最初からすべおを曞いお、そのための最高の専門家を匷調する方が簡単です。 たずえば、1日1䞇人が参加する小芏暡プロゞェクトの堎合、CMSで行う方が安くなりたす。CMSは、3倍のサヌバヌリ゜ヌスを消費し、远加サヌバヌを月50ドルで远加したす。働く。 1日あたり1億人のナヌザヌのトラフィックがあるサむトに぀いお話すず、サヌバヌを远加するコストはスペヌスになりたす。そのため、特定のプロゞェクトに最適な玔粋な蚀語の゜リュヌションの開発に投資する方が簡単で安䟡です。



プロゞェクトが倧きいほど、䜿甚するテクノロゞヌスタックも倧きくなりたす。 巚倧なポヌタルでは、耇数のプログラミング蚀語を䞀床に䜿甚できたす。 繰り返したすが、テクノロゞヌを遞択するための客芳的な基準になりたす。 倚くの堎合、1぀の蚀語で1぀の問題を解決し、別の蚀語で別の問題を解決できたす。 このようなプロゞェクトは非垞に倧きくなる可胜性があるため、それらの䞀郚は、異なるドメむンサブドメむンおよび異なるテクノロゞヌを備えた異なるサヌバヌで動䜜できたす。 倧芏暡なプロゞェクトではテクノロゞヌビネグレットを恐れないでください。ただし、本圓に必芁な堎合にのみ蚱可し、すべおのテクノロゞヌに互換性があるわけではないこずを芚えおおいおください。 さたざたなテクノロゞヌを䜿甚した最も顕著な䟋はGoogleです。 非垞に倧きいため、さたざたな郚分がC / C ++、Java、Python、JS、およびその他の蚀語で蚘述されおいたす。 さらに、Googleは珟圚人気のあるAngularJSなどの新しいテクノロゞヌを積極的に開発しおいたす。



人気のある各蚀語に぀いお簡単に説明したす。



  1. PHP-䞻にシンプルで䞭芏暡のプロゞェクトに䜿甚されたす。 倚くのボックス化された゜リュヌション。 比范的安䟡なプログラマ。 近幎の反傟向は、蚀語の最新バヌゞョンが7番にリリヌスされたこずで、非垞に匷力な機胜が埗られたした。
  2. Pythonは珟代蚀語であり、その開発は高速で高品質です。 䞭芏暡および倧芏暡プロゞェクトに䜿甚したす。 プログラマヌを芋぀けるのは問題であり、安䟡ではありたせん。
  3. Rubyは最新の蚀語であり、Rubyの開発も高速です。 䞻にシンプルで䞭芏暡のプロゞェクトの開発に䜿甚され、スタヌトアップが頻繁に開発したす。 プログラマヌも少なく、高䟡です。
  4. Java-その開発は非垞に長く高䟡です。 䞻に特定の芁件を持぀倧芏暡プロゞェクトに䜿甚されたす。
  5. C-Javaの類䌌物は、FinTech分野の䞀郚である倧芏暡プロゞェクトにも䜿甚されたす。
  6. JS-急速に発展しおいる、近幎の傟向。 膚倧な数の開発があり、ゲヌムでも䜕でも曞くこずができたす。 䞭芏暡および倧芏暡プロゞェクトに䜿甚されたすが、この蚀語は最近非垞に匷力な機胜を受け取りたした。倧芏暡プロゞェクトの䟋がただ少なく、専門家が最も高䟡であり、芋぀けるのが最も難しいためです。


今日、Webで䜿甚されおいる最も人気のある蚀語に぀いお説明したした。 非垞に急速に成長しおいる倚くの新しい蚀語、特にScalaなどがありたす。 しかし、圌らは非垞に若くお未加工です。 圌らがもっず䜕かに発展するたで、私はファッションを远いかけ、それらを曞くこずをお勧めしたせん。



倧芏暡なサむトの䟋





これらの䟋は、倧芏暡なサむトが異なる蚀語に察応できるこずを非垞によく瀺しおおり、これは正垞な動䜜です。 繰り返しになりたすが、客芳的な理由に基づいお、芁件に合ったテクノロゞヌを遞択する必芁があるずいう事実に至りたす。



フレヌムワヌクずプラットフォヌム


これはプログラマ向けの䞀皮の開発環境であり、兞型的な問題に察する暙準的な゜リュヌションを備えた既補のむンフラストラクチャず倚数の既補の機胜がありたす。 キャンディヌを䜜るこずができるような半補品。 各蚀語には倚くの異なるフレヌムワヌクがありたす。 ゜リュヌションの開発甚に䜜成された䞀般的なものず、狭いタスク甚の特殊なものの䞡方がありたす。 たずえば、Syliusは、Symfonyに基づいた特殊なEコマヌスフレヌムワヌクです。 たた、倧芏暡で耇雑な決定が䞋されるものもありたすが、他の人はこれを目的ずしおいたせん。 以䞋では、倧芏暡で耇雑な゜リュヌションを䜜成できる各蚀語の䞀般的なフレヌムワヌクに぀いお説明したす。



フレヌムワヌクでは、独自の機胜を備えた非垞に倧きく耇雑なサむトが開発されおいたす。 玔粋な蚀語よりもはるかに高速で安䟡ですが、同時にこの゜リュヌションを䜿甚するず、非垞に耇雑なものを開発し、負荷のかかった状態ですべおを最適化できたす。 さらに、ほずんどすべおのボックス化されたCMSよりも安党です。



人気のあるフレヌムワヌクずプラットフォヌム



  1. PHPSymfony、Laravel
  2. PythonDjango
  3. RubyRuby on Rails
  4. Java春
  5. C.NET
  6. JSNode.js、AngularJS


ほずんどのフレヌムワヌクはPHPにあり、この蚀語には倚くの遞択肢がありたすが、実際に機胜するものはそれほど倚くありたせん。 他の蚀語では少なく、䞀般的にいく぀かの本圓に高品質のフレヌムワヌクでは、Ruby蚀語のように1぀だけです。 Javaには、サむトだけでなく、さたざたな目的のためのさたざたなフレヌムワヌクがありたす。 これらのフレヌムワヌクはすべお毎幎開発され、より倚くの新しいバヌゞョンがリリヌスされ、䞀郚のフレヌムワヌクは他のものを远い越しおいたす。 たずえば、最も掗緎されたサむトはただSymfonyで構築されおいたすが、Laravelはここ数幎で人気の点でトップになりたした。



.NETずNode.jsは、特定の蚀語に基づいた完党に独立したプラットフォヌムですが、非垞に幅広い機胜を備えおいたす。



最近、私たちは専門ずするフレヌムワヌクに関する調査を実斜したした。 どのような倧芏暡なプロゞェクトが䜿甚されおいるかを芋たした。 特に、 Python / Djangoの 巚倧サむトずPHP / Symfonyの巚倧サむト 。 たた、SymfonyでAPIず䞀緒に゜ヌシャルネットワヌクをどのように開発したかに぀いおも曞きたしたこのトピックに぀いおは、むンタヌネットに関する最も広い説明であるAPIに぀いおの蚘事です。 リストされた各フレヌムワヌクには、同じ巚倧なサむトがありたす。



CMSおよびCMF


これは既補の゜フトりェアであり、蚭定するだけで、それほど頻繁ではありたせん-䞀郚のパヌツを远加/曞き換えするこずができたす。 どのような蚀語にもこのような゜リュヌションはたくさんありたすが、歎史的には、基本的にすべおの人気のあるCMSはPHPで䜜成されおいるこずが刀明したした。 ここでのポむントは蚀語の開発であり、以前はCMSが䜜成されたシンプルなサむトはPHPで䜜成されおいたした。 私はただ、CMSがほずんどなく、スクリプトがあり、異なるサむトの既補の郚分が別々であった圓時を芋぀けたした。 埌に、これらのスクリプトは、単玔なサむトの90のニヌズを解決するために蚭蚈されたボックス補品に組み蟌たれたした。 たたたたメむンのCMSがPHPで䜜成されおいるのです。 今日、他の蚀語のCMSは開発が䞍十分です。PHPにはすでに匷力な競合他瀟が存圚し、単玔なサむトでは蚀語が倧きな圹割を果たさないため、誰もがこれらの完成品の機胜に泚目しおいたす。



CMFは、簡単に蚀えば、機胜の点でCMSずフレヌムワヌクの間の䜕かです。 通垞、このカテゎリの最も耇雑なサむトにはCMFが䜿甚されたす。 このアプロヌチにより、特定のプロゞェクトに必芁のないCMSの䞍芁な郚分を取り陀くこずができたす。



CMSの目的は異なりたす。䞀般、オンラむンストア、ブログなどです。 䜿甚方法が異なりたす有料ず無料。 人気のある各CMSには、簡単にプラグむンしお䜿甚できるさたざたな有料および無料のモゞュヌルがありたす。



䞻に䞭小䌁業に必芁な小芏暡サむトは、ほずんど垞にCMSを䜿甚したす。 これにより、開発時間を倧幅に節玄できたす。 さらに、そのような゜リュヌションを蚭定するのに高䟡なプログラマヌは必芁ありたせん。通垞、プログラミングの初心者はこれを行うこずができたす。少なくずもコヌドを䜜成する必芁がある堎合、蚭定はより耇雑です。



このような゜リュヌションの最終顧客の間で最も誀解が生じるのは、CMSずの共同䜜業です。 すべおのCMSは、あらゆる堎面で䜿甚できる倧量の既補のプログラムコヌドです。 数十および数癟のモゞュヌルが箱入りで出荷されたす。 これはすべお専門家を倧きく制限したす。 このような゜リュヌションは非垞に遅くなり、絶察に柔軟性がなく、非垞に簡単に解読できたす。特に無料のCMSです。 CMSは、重倧な脆匱性を持぀サヌドパヌティのモゞュヌルを介しおハッキングされるこずがよくありたす。これは、プログラマがこのモゞュヌルたたはそのモゞュヌルを䜜成したレベルがわからないためです。 ぀たり、CMSは倧芏暡で耇雑なサむト向けには蚭蚈されおいたせん。 圌女は重い負荷に耐えるこずができたせん。 この゜リュヌションは安党ではないため、特定のCMSの開発者は発蚀できたせん。



私はほずんどすべおの人気のあるCMSで解決策を芋たしたが、倚くは10幎以䞊の仕事でしたが、私は個人的に働かなければなりたせんでした。 それらのいく぀かはRuNetで人気があり、いく぀かは䞻に西郚で知られおいたす。 䞊蚘の理由により、䜿甚されおいるCMS蚀語に䟵入するこずは意味がありたせん。 人気のある各CMSに぀いおいく぀かの蚀葉を蚀う方が良いでしょう



  1. WordPress-か぀おはブログ゚ンゞンでしたが、珟圚では店舗を含むほがすべおのサむトを䜜成しおいたす。 䞖界で最も人気のあるCMSの1぀であり、非垞に蚪問されたサむトの䟋がありたす。 倚くの堎合、さたざたなメディアを含む情報サむトを䜜成したす。 システムは無料です。
  2. Joomla -CMS汎甚。 倚くの初心者プログラマヌが孊習し始めるのはこのCMSであるため、品質に倧きな違いはなく、非垞に小さなサむトを䜜成し、通垞は他のすべおのオプションよりも安䟡です。 システムは無料です。
  3. Drupalはすでに汎甚CMFであり、最近では、Symfony組み蟌みフレヌムワヌクが付属しおいたす。 非垞に匷力で、有名なサむト、たずえばホワむトハりスの公匏りェブサむトがありたす。 システムは無料です。
  4. Magentoは、䞖界のオンラむンストアで最も人気のある管理システムです。 非垞に匷力で耇雑です。 RuNetでは、䞻に西偎ではほずんど䜿甚されたせん。
  5. PrestaShopは、䞖界の店舗で最も人気のあるCMSの1぀です。 たた、非垞に匷力で、䞻に西で䜿甚されたす。 システムは無料です。
  6. OpenCartは、オンラむンストアで人気のあるもう1぀のシステムですが、それどころか、欧米よりもRuNetでより倚く䜿甚されおいたす。 䞻に小芏暡で耇雑でない店舗向け。 システムは無料です。
  7. 1C-Bitrixは非垞に独自の汎甚CMSであり、RuNetのナンバヌ1です。 可胜性は非垞に広いです。 圌らは倧芏暡で耇雑なサむトを䜜成しようずするこずがよくあり、䞀定のしきい倀に達した埌、他の技術を䜿甚しおそれらを曞き換えたす。 倚くの人は、このCMSのみが1Cず統合できるず信じおいたすが、このリストに蚘茉されおいるすべおのCMSは1Cず統合できるため、これは真実ではありたせん。 システムは有料です。


リストされおいるすべおのCMSで䜜業したした。 䞻に開発者から。 私は間違いなくJoomlaをお勧めしたせん、あなたは残りで働くこずができたす。 店舗の堎合、䞀般的なCMSよりも専門的なものを遞択するこずをお勧めしたす。 1C-Bitrixに加えお、RuNetには同様の商甚CMSもあり、倚くの点で非垞に䌌おいたす。 各システムには独自の特性がありたすが、それらはすべお倧芏暡で耇雑なプロゞェクト向けではなく、䞻なこずは忘れおはなりたせん。



以前に、最も蚪問されたRunetサむトが䜜成されたCMSに぀いお調査したした パヌト1およびパヌト2 、 最倧のオンラむンストアおよび最倧の銀行サむト 。 これらの研究は、蚘事に蚘茉されおいる発芋を裏付けおいたす。



パタヌン


過去5幎間、テンプレヌト゜リュヌションは非垞に掻発に開発されおきたした。 これは、CMSよりも1ノッチ高いです。 CMSがコンストラクタヌであり、カスタマむズする必芁がある堎合、テンプレヌトは䞀般的なケヌスの既補の゜リュヌションです。 たずえば、各郜垂には独自のレストラン、タクシヌ、蚺療所などがありたす。 これらすべおのタむプの䞭小䌁業では、ほが同じものが必芁です。 したがっお、既成のテヌマテンプレヌトを遞択し、ロゎ、色、コンテンツを眮き換えるだけです。 必芁に応じお、そのようなテンプレヌトは所有者の裁量で倉曎できたす。



このような゜リュヌションの利点は、非垞に安䟡であり、すぐに起動できるこずです。 しかし同時に、そのような決定はビゞネスの特性を考慮しおおらず、コンバヌゞョンはそれほど高くありたせん。



テンプレヌトの特別なカタログがありたす TemplateMonster 、 ThemeForestなど。倚くの堎合、テヌマデザむナヌを含むオンラむンデザむナヌがいたす Wix 、 PageCloudなど。



モバむルアプリ


最近、モバむルアプリケヌションでは、ネむティブ開発ずクロスプラットフォヌムテクノロゞヌの2぀のアプロヌチが䜿甚されおいたす。 ネむティブは、元のプログラミング蚀語、特にSwiftiOSの堎合、以前はObjective-CがありたしたおよびJavaAndroidの堎合で行われたす。 珟圚、倚くのクロスプラットフォヌムテクノロゞヌがあり、それらは異なるプログラミング蚀語、特にApache Cordova、React Nativeなどに基づいおいたす。 いずれにせよ、耇雑なアプリケヌションは垞にネむティブテクノロゞヌで蚘述されたす。 クロスプラットフォヌムの問題は、倚くの堎合、いく぀かの機胜がさたざたなクロスプラットフォヌムテクノロゞヌでは実行䞍可胜である、デバむスのRAMの負荷が高い、バッテリヌがすぐになくなるなどの点で発生したす。



これらの2぀のアプロヌチでは、倚くの堎合、人々は混乱し、あらゆる堎面でクロスプラットフォヌムテクノロゞヌを䜿甚しようずしたす。 クロスプラットフォヌムではコヌドを1回曞くだけで枈み、iOSずAndroidの䞡方ですぐに動䜜し、ネむティブテクノロゞヌでは少なくずも2倍のコストがかかるため、理解できたす。 しかし、開発䞭のさらなる問題を知っおいる人はほずんどいたせん。 テクノロゞヌを非垞に慎重に遞択するこずをお勧めしたす。たた、クロスプラットフォヌムは単玔なアプリケヌションにのみ䜿甚するこずをお勧めしたす。そうでない堎合は、曞き換える必芁がありたす。 ただし、クロスプラットフォヌムテクノロゞヌは埐々に開発され、改善されおおり、それらに曞かれたアプリケヌションはより耇雑になっおいたす。



倧芏暡プロゞェクトの技術の積み重ね



䞊蚘では、倧芏暡なプロゞェクトで䜿甚されるさたざたな蚀語ずフレヌムワヌクに぀いお説明したしたが、実際に倧芏暡なプロゞェクトを芋るず、さたざたな蚀語ずテクノロゞヌを芋぀けるこずができたす。 ほずんどすべおの倧芏暡なサむトは、1぀の䞻芁蚀語ずいく぀かの远加の䞻芁蚀語を䜿甚しおいたす。 デヌタベヌスの堎合も同じです。䞀郚のタスクにはリレヌショナルデヌタベヌス、その他のタスクには非リレヌショナルデヌタベヌスを䜿甚できたす。 そしお、これらすべおが1぀のプロゞェクトに有機的に組み合わされおいたす。



テクノロゞヌの遞択は、提案されおいるプロゞェクトアヌキテクチャに䟝存したす。 将来のサむトの䞻芁なブロックに぀いお考えるのは建築家です。 基瀎ずなる蚀語、ネむティブたたはフレヌムワヌク、遞択するキャッシングシステム、デヌタベヌス、接続方法など。



たずえば、InstagramテクノロゞヌInsight ITデヌタを怜蚎したす。





そしお、これは完党に通垞の技術スタックです。 Instagram自䜓は、䞖界最倧か぀最も耇雑なサヌビスではありたせん。



専門家の費甚


テクノロゞヌを遞択する䞊で最も重芁な芁玠の1぀は、スペシャリストのコストず可甚性です。これは、どのプロゞェクトでも最も高䟡な郚分だからです。 RuNetには、絊䞎甚のプゟメルカが1぀だけありたす。https //jobs.dou.ua/salaries/-シニアレベルのキ゚フで3〜5幎の経隓がありたす。 平均倀を比范したす。



絊䞎



  1. C-$ 3072
  2. Java-3300ドル
  3. JS-$ 3,500
  4. PHP-2780ドル
  5. Python-3000ドル
  6. ルビヌ-3000ドル
  7. Scala-3,900ドル


米囜では、わずかに異なる画像







次に、数字を人間の蚀語に翻蚳したす。 Javaは、新しい蚀語ではありたせんが、スペシャリストは垞に最も高䟡な蚀語の1぀です。 PHPは垞に最も安䟡であり、垂堎には倚くの専門家がいたす。 それに比べお、私はScalaを最新のトレンド蚀語の1぀ずしお远加したした。そのため、Scalaは最も高䟡です。 䟝然ずしお高䟡なJSです。これは、近幎の急速な成長ず、AngularJSず同様にNode.jsの人気の高たりによるものです。



したがっお、保存したい堎合は、PHPを確認するこずをお勧めしたす。スペシャリストは安䟡で、コミュニティは倧芏暡です。 そしお、最高の品質が必芁な堎合は、Web開発の未来ず呌ばれるScalaを怜蚎したすが、スペシャリストを芋぀けるこずはほずんど䞍可胜であり、単に基瀎はありたせん。



もう1぀の重芁なパラメヌタヌは、開発速床です。 結局のずころ、プログラマヌの絊䞎だけでなく、開発のスピヌドも重芁です。 既存の開発を考慮しない堎合、開発の最速の1぀はPythonずRubyであり、最も遅いのはJavaです。 ちなみに、この理由から、過去10幎間にJavaでリリヌスされた新しいメガプロゞェクトはほずんどありたせんが、Pythonには倚くのプロゞェクトがありたす。これに぀いおは以䞋で説明したす。



トレンド


テクノロゞヌを遞択するずき、私たちは楜しみにする必芁がありたす。 特に倧芏暡プロゞェクトの堎合。 すべおのテクノロゞヌは非垞に高速に開発されおおり、たすたす倚くの新しいバヌゞョンがリリヌスされおいたす。 蚀語は5〜7幎ごず、フレヌムワヌクは2〜3幎ごず、CMSは1〜2幎ごずに劇的に倉化したす。 今日だけでなく、優れた技術を遞択するだけでなく、数幎埌に銬にずどたるような方法で開発動向を予枬するこずが重芁です。 それ以倖の堎合、最終的には、プロゞェクトを曞き盎す必芁がありたすが、これは垞に非垞に問題がありたす。



いく぀かの統蚈的蚈算が瀺すこずができるすべおの皮類の研究がありたす。 たずえば、 TIOBE Indexの調査では興味深い統蚈が瀺されおいたす。







さたざたな研究の結果によるず、明確な成長リヌダヌを特定できたす-これらはJSES6バヌゞョン以䞊およびマルチパラダむム蚀語、特にScalaです。 ずころで、Java蚀語の埌継ず芋なされおいるのはScalaであり、倚くの点でScalaに䌌おいたす。 Pythonは自分自身を芋せるこずも悪くありたせん。



アンチトレンドは、倚くの叀い蚀語ずPHPを保持しおいたす。 しかし、最近、倚くの重倧な欠陥を修正した第7バヌゞョンのPHPをリリヌスしたした。 ですから、PHP開発の新しいラりンドが間もなく始たるず思いたす。 たた、倚くの倧芏暡プロゞェクトがRubyから他の蚀語にコピヌされおおり、これも特定のアンチトレンドです。



説明のために、米囜で䞍足しおいる専門家を芋おみたしょう。







それは、私たちが芋おいるトレンドの本圓の姿ずみなすこずができるものです。



過去10幎間に倧きなプロゞェクトは䜕が行われたしたか



  1. Airbnb-ルビヌ
  2. Instagram-Python
  3. Pinterest-Python
  4. Foursquare-Python
  5. グルヌポン-Ruby-> JS
  6. Twitter-Ruby-> Scala
  7. Uber-JS


これは理論的な統蚈ではなく、実際の実践です。 PythonずJSは非垞によく機胜したす。



サポヌト費甚


もちろん、技術を遞択するための重芁な基準はサポヌトのコストであり、開発の初期段階で考えおいる人はほずんどいたせん。 通垞、誰もが1時間のサポヌトのコストの芳点から考えおいたすが、これは根本的に間違っおいたす。 1時間のコスト、時間数、技術に察する公匏サポヌト、専門家の確保、開発ぞの適切なアプロヌチなど、いく぀かのパラメヌタヌが重芁です。



1時間の費甚は専門家の絊䞎に䟝存したす。これはすでにわかっおいたす。 しかし、時間数はテクノロゞヌ自䜓ずコヌドを曞く品質に䟝存したす。 ゜リュヌションがボックス化されおいる堎合、長時間かかるこずがありたす。 ぀たり、䞀方では、プロゞェクトの最初のバヌゞョンを開発する際にお金を節玄できたすが、その埌の絶え間ない開発で行き詰たっおしたいたす。 ゜リュヌションが人気があり、公匏のドキュメントがある堎合に䟿利です。 しかし、倚くの堎合、圌らはドキュメントのないあたり知られおいないボックス化゜リュヌションを遞択したす。そのような゜リュヌションでは、サポヌトのコストはボックス自䜓のコストよりも䜕倍も高くなりたす。 䜎品質の開発にも同じこずが圓おはたりたす。䜕らかの理由で、既補の゜リュヌションたたはその䞀郚の技術監査を実斜する文化が完党に欠けおいたす。 平均しお、20〜40時間でほずんどすべおの゜リュヌションを確認し、その䞻な欠点を芋぀けるこずができたす。 コヌドが優れおいるほど、メンテナンスが簡単で、したがっお安䟡になりたす。



たた、蚀語バヌゞョン、フレヌムワヌク、CMSも確認する必芁がありたす。 プロゞェクトが実皌働に入る前に陳腐化しないように、垞に最新の安定バヌゞョンを䜿甚する必芁がありたす。 新しいバヌゞョンが衚瀺されたら、プロゞェクトをこのバヌゞョンに転送する可胜性をすぐに考慮する必芁がありたす。 , , .



?


たずめるず。 . . , . , . , , , .



. 100 . . , , , , . :)



PS . info@digitov.com



PPS — Facebook , VK Twitter .



投皿者

, CEO, « SECL Group »



All Articles