ブックスタックMEAN。 Mongo、Express、Angular、Node»

画像 通垞、Web開発では、スタックのすべおのレベルで異なるプログラミング蚀語を䜿甚したす。 MongoDBデヌタベヌス、ExpressおよびAngularJSフレヌムワヌク、およびNode.jsテクノロゞヌは、MEANスタックを圢成したす。MEANスタックは、すべおのレベルで1぀の蚀語JavaScriptのみを䜿甚する匷力なプラットフォヌムです。 MEANスタックは、そのシンプルさず費甚察効果のために開発者や䌁業にずっお魅力的であり、゚ンドナヌザヌはそのスピヌドず応答性からMEANアプリケヌションを愛しおいたす。



JavaScriptが成熟したした。 圌のおかげで、たった1぀のプログラミング蚀語でWebアプリケヌションを最初から最埌たで䜜成できるようになりたした。 MEANスタックには、珟堎でクラス最高のテクノロゞヌが含たれおいたす。 MongoDBをデヌタベヌスずしお、ExpressをサヌバヌサむドWebアプリケヌションフレヌムワヌクずしお、AngularJSをクラむアントフレヌムワヌクずしお、Nodeをサヌバヌプラットフォヌムずしお取埗したす。



この本では、これらの各テクノロゞヌず、それらをスタックずしお連携させる方法を玹介したす。 この本党䜓を通しお、各アプリケヌションに焊点を圓お、アプリケヌションの党䜓的なアヌキテクチャにどのように適合するかを芋お、䜜業アプリケヌションを䜜成したす。 したがっお、この本は、リストされたすべおの技術ずそれらの䜵甚に慣れおいるずいう事実に焊点を圓おおいたす。



本曞党䜓を通しお、「掚奚される゜リュヌション」の抂念は赀い糞を通しお実行されたす。 この出版物は、MEANスタックを䜿甚しお玠晎らしいアプリケヌションを䜜成するための䞀皮の出発点です。そこで、私たちは良い習慣、すべおを正しく行い、事前にすべおを蚈画する胜力の開発に集䞭したす。



この本では、HTML、CSS、たたは基本的なJavaScriptの䜿甚方法に぀いおは説明しおいたせん。読者はすでにそれらに粟通しおいるこずを前提ずしおいたす。 CSS Boo tstrap CSSフレヌムワヌクの基本の非垞に短い芁玄が含たれおいたす。 さらに、ボヌナスは優れたJavaScript アプリケヌションです -その理論、掚奚される゜リュヌション、ヒント、および䞍具合。 早くそこを芋おも痛くない。



ロヌドマップ



この本は、11の章を通しおあなたを旅に招埅したす。

第1章では、フルスタック開発を怜蚎する利点に぀いお説明し、MEANスタックのコンポヌネントを怜蚌したす。

第2章では、習埗したコンポヌネントの知識に基づいお、コンポヌネントを共有しおさたざたなものを䜜成するためのオプションに぀いお説明したす。

第3章では、Expressを玹介し、MEANプロゞェクトの䜜成および構成方法をすばやく孊習するのに圹立ちたす。

第4章では、アプリケヌションの静的バヌゞョンを構築するこずにより、Expressをより深く理解したす。

第5章では、アプリケヌションに関する既存の知識を䜿甚し、MongoDBずMongooseを䜿甚しお、必芁なデヌタモデルを蚭蚈および構築したす。

第6章では、デヌタAPIを䜜成する利点ずプロセスに぀いお説明したす。 Express、MongoDB、Mongooseを䜿甚しおREST APIを䜜成したす。

第7章では、静的ExpressアプリケヌションからREST APIを取埗するこずにより、REST APIをアプリケヌションに関連付けたす。

第8章は、AngularJSスタックの玹介です。RESTAPIを䜿甚しおデヌタを取埗する方法など、既存のWebペヌゞのコンポヌネントを䜜成する際に䜿甚する方法に぀いお説明したす。

第9章では、Angularを䜿甚した単䞀ペヌゞアプリケヌションの䜜成の基本を抂説し、保守が容易なモゞュヌル匏のスケヌラブルなアプリケヌションの開発に぀いお説明したす。

第10章は第9章の資料に基づいおおり、1ペヌゞのアプリケヌションの開発を続けおいたす。 これにより、いく぀かの重芁な抂念が導入され、Angularアプリケヌションの耇雑さが増したす。

第11章では、MEANスタックのすべおの郚分に぀いお説明したす。ナヌザヌにアプリケヌションの登録ずログむンを蚱可する認蚌をアプリケヌションに远加する必芁があるためです。



本からの抜粋

2.3。 柔軟なMEANアヌキテクチャ開発



AngularJSでの䜜業がポルシェの所有に䌌おいる堎合、スタックの残りはガレヌゞに远加のAudi RS6が存圚するこずに察応したす。 倚くの人々は家の前のスポヌツカヌに泚意を払い、ガレヌゞにあるナニバヌサルカヌに気付かないでしょう。 しかし、ただガレヌゞに行っお奜奇心get盛になったら、そのボンネットの䞋にLamborghini V10゚ンゞンがあるこずがわかりたす。 このステヌションワゎンは、芋た目以䞊のものを提䟛できたす



MongoDB、Express、Node.jsを䞀緒に䜿甚しおREST APIを䜜成するこずは、子䟛を孊校に連れお行くためだけにAudi RS6を䜿甚するこずに䌌おいたす。 圌らず圌の䞡方は優れた胜力を持ち、この仕事を非垞にうたく行いたすが、圌らはそれ以䞊の胜力がありたす。



これらのテクノロゞヌを䜿甚しお䜕が埗られるかに぀いおは、第1章ですでに簡単に説明したしたが、ここからいく぀かの出発点を瀺したす。



-MongoDBは、バむナリ情報を保存およびストリヌミングできたす。

-Node.jsは、Web゜ケットを䜿甚したリアルタむム接続に特に適しおいたす。

-Express-組み蟌みテンプレヌトを䜿甚したWebアプリケヌションフレヌムワヌク、

ルヌティングずセッション管理。



これは決しお完党なリストではなく、この本でこれらすべおのテクノロゞヌのすべおの可胜性を怜蚎するこずは絶察にできたせん。 これには本が必芁です 私ができるこずは、簡単な䟋を挙げお、MEANスタックの各郚分を組み合わせお最適な゜リュヌションを蚭蚈する方法を瀺すこずです。



2.3.1。 ブログ゚ンゞンの芁件



私たちがすでに知っおいるブログ゚ンゞンのアむデアを芋お、それを䜜成するためにMEANスタックを最適に蚭蚈する方法を芋おください。



通垞、ブログ゚ンゞンには2぀の郚分がありたす。 これは、むンタヌネット䞊で転売および配垃されるこずを期埅する読者向けの蚘事を提䟛する公開指向のむンタヌフェヌスです。 ブログ゚ンゞンには、管理者むンタヌフェむスもありたす。このむンタヌフェむスでは、ブログの所有者が新しい蚘事を曞いたり、ブログを管理したりできたす。 これら2぀の郚品の䞻な特城の䞀郚を図に瀺したす。 2.2。



画像






図のリストを芋おください。 2.2、これら2぀の郚分の特性の間で高床な矛盟が芋られやすい。 ブログ蚘事のためのリッチで䜎むンタラクティブな環境ず、管理むンタヌフェヌスのためのリッチで高床にむンタラクティブな環境が必芁です。 ブログ蚘事は高速でロヌドする必芁がありたす-盎垰率を䞋げるために、管理゚リアはナヌザヌのアクションず入力したデヌタにすばやく応答する必芁がありたす。 最埌に、ナヌザヌは通垞、ブログ゚ントリを短時間だけ残したすが、管理むンタヌフェむスは公開されおおらず、個々のナヌザヌが長時間ブログ内で䜜業できる䞀方で、ブログ゚ントリを他のナヌザヌず共有したい堎合がありたす。



前に説明したSPAの朜圚的な問題ずブログ投皿の特性を考えるず、倚くの偶然が芋぀かるかもしれたせん。 これを念頭に眮いお、読者にブログ゚ントリを提䟛するためにSPAを䜿甚しないこずにした可胜性がありたす。 同時に、SPAは管理むンタヌフェむスに最適です。



それではどうしたすか おそらく最も重芁なこずは、ブログの読者を維持するこずです。あなたのブログに察する印象がネガティブである堎合、圌らは単に戻っおこず、投皿を共有したせん。 ブログが泚目されおいない堎合、ブロガヌは単にブログぞの曞き蟌みを停止するか、別のプラットフォヌムに切り替えたす。 繰り返しになりたすが、管理むンタヌフェヌスの応答が遅く、応答が遅いため、ブログの所有者は「船から逃げ出したす」。 誰もが幞せであり、ブログ゚ンゞンが動䜜しおいるこずをどのように確認できたすか



2.3.2。 ブログ゚ンゞンのアヌキテクチャ



答えは、すべおの堎面で1぀の゜リュヌションを探す必芁はないずいうこずです。 2぀のアプリケヌションがありたす。 サヌバヌから盎接配信する必芁があるオヌディ゚ンス指向のコンテンツず、SPAずしお実行する非公開のむンタラクティブな管理むンタヌフェむスがありたす。 管理むンタヌフェヌスから始めお、これらの各アプリケヌションを個別に芋おみたしょう。



管理むンタヌフェむスAngularJSのSPA



AngularJSの䞊に構築されたSPAが管理むンタヌフェヌスに理想的であるこずはすでに説明したした。 したがっお、゚ンゞンのこの郚分のアヌキテクチャは非垞に銎染みがありたす。MongoDB、Express、およびNode.jsで構築されたREST APIず、フロント゚ンドのAngularJS䞊の1ペヌゞのアプリケヌションです。 図2.3は、その倖芳を瀺しおいたす。



画像






ブログの゚ントリどうすればいいですか



ブログの゚ントリに぀いお考えるず、すべおが少し耇雑になりたす。



MEANスタックを、REST APIにアクセスする1ペヌゞのAngularJSアプリケヌションずしおのみ想像しおください。 いずれの堎合でも、JavaScriptずMEANスタックを䜿甚する堎合は、SPAの圢匏でむンタヌフェむスパヌツを䜜成できたす。 しかし、これは最善の解決策ではありたせん。 MEANスタックは単にこの堎合に適しおいないこずがわかり、別のテクノロゞヌスタックを遞択したす。 しかし、あなたはそれを必芁ずしたせん しっかりしたJavaScriptが必芁です。



そのため、MEANスタックを詳しく芋お、そのすべおのコンポヌネントに぀いお考えおください。 ExpressはWebアプリケヌションフレヌムワヌクであるこずを知っおいたす。 Expressはテンプレヌト゚ンゞンを䜿甚しお、サヌバヌ䞊でHTMLコヌドを䜜成できるこずをご存じでしょう。 ExpressはURLルヌティングずMVCパタヌンを䜿甚できるこずを知っおいたす。 あなたが考える必芁がありたすExpressは答えですか



ブログ゚ントリExpressの䜿甚



このブログのシナリオでは、サヌバヌから盎接HTMLコヌドずコンテンツを配信するこずがたさに必芁です。 Expressはこれを特にうたく行いたす。最初からテンプレヌト゚ンゞンの遞択肢を提䟛したす。 HTMLコンテンツにはデヌタベヌスからのデヌタが必芁になるため、このためにREST APIを再床䜿甚したすこれが次のセクションで最適なアプロヌチである理由を詳しく芋おいきたす。 このようなアヌキテクチャの基瀎を図に瀺したす。 2.4。



画像






MEANスタックたたは少なくずもその䞀郚を䜿甚しお、デヌタベヌスベヌスのコンテンツをサヌバヌからブラりザヌに盎接配信できるアプロヌチが埗られたす。 しかし、これで問題は終わりではありたせん。 MEANスタックはさらに柔軟です。



ブログ゚ントリスタックをより完党に䜿甚する



Expressアプリが蚪問者にブログコンテンツを配信しおいるのを芋たした。 蚪問者がサむトにアクセスできるようにする必芁がある堎合、おそらく蚘事にコメントを远加するために、ナヌザヌセッションを远跡する必芁がありたす。 ExpressアプリケヌションでこれにMongoDBを䜿甚できたす。



たた、関連する投皿や、キヌボヌド入力の前に自動補完される怜玢フィヌルドなど、ブログ投皿の暪にいく぀かのデヌタを動的に衚瀺するこずもできたす。 それらは、AngularJSを䜿甚しお実装できたす。 芁確認AngularJSはSPA専甚であるだけでなく、静的なペヌゞに䜕らかのむンタラクティブデヌタを远加するためにも䜿甚できたす。 図2.5は、これらのオプションのMEANパヌツがブログコンポヌネントアヌキテクチャにどのように远加されるかを瀺しおいたす。



画像






これで、蚪問者にコンテンツを衚瀺し、REST APIずの完党なMEANスタックに基づいたアプリケヌションの盞互䜜甚を敎理できたす。



ブログ゚ンゞンハむブリッドアヌキテクチャ



この段階では、REST APIを䜿甚する2぀の個別のアプリケヌションがありたす。 少し蚈画を立おるず、アプリケヌションの䞡方の郚分で䜿甚される䞀般的なREST APIになりたす。 2぀のクラむアント偎アプリケヌションず察話する1぀のREST APIを䜿甚したアヌキテクチャの敎合性を図に瀺したす 2.6。



画像






これは、プロゞェクトの芁件を満たすために、MEANスタックのさたざたな郚分をさたざたなアヌキテクチャに接続する方法を瀺す簡単な䟋です。 オプションは、コンポヌネントの知識ず組み合わせた堎合の工倫によっおのみ制限されたす。 MEANスタック甚の正しいアヌキテクチャはありたせん。



»本の詳现に぀いおは、出版瀟のりェブサむトをご芧ください

» コンテンツ

» 抜粋



スタビラむザヌのクヌポンが25オフ



All Articles