Angular অ্যাপ্লিকেশনে রুট মডিউল (বা AppModule) হলো মূল মডিউল যা পুরো অ্যাপ্লিকেশনটির কেন্দ্রীয় মডিউল হিসেবে কাজ করে। এটি Angular অ্যাপ্লিকেশনটির ইনিশিয়াল কনফিগারেশন এবং স্টার্টিং পয়েন্ট হিসেবে কাজ করে। AppModule-এ অ্যাপ্লিকেশনটির প্রয়োজনীয় মডিউল, কম্পোনেন্ট, সার্ভিস এবং অন্যান্য ডিপেন্ডেন্সি কনফিগার করা হয়।
AppModule হলো Angular অ্যাপ্লিকেশনটির মুল মডিউল। এটি অ্যাপ্লিকেশনটির অন্যান্য সব মডিউল এবং কম্পোনেন্টকে একত্রিত করে এবং অ্যাপ্লিকেশনটির স্ট্রাকচার সেটআপ করে। যখন Angular অ্যাপ্লিকেশন শুরু হয়, তখন AppModule-কে প্রথমে লোড করা হয়। এর মধ্যে ব্যবহৃত ডেকোরেটর @NgModule
অ্যাপ্লিকেশনটির বিভিন্ন অংশ যেমন কম্পোনেন্ট, ডিরেক্টিভ, পাইপ, এবং সার্ভিস সম্পর্কে Angular-কে জানিয়ে দেয়।
Angular অ্যাপ্লিকেশনের রুট মডিউল বা AppModule সাধারণত app.module.ts
ফাইলে থাকে। এর মধ্যে @NgModule
ডেকোরেটরের মাধ্যমে অ্যাপ্লিকেশনের মডিউল, কম্পোনেন্ট এবং অন্যান্য ডিপেন্ডেন্সি কনফিগার করা হয়।
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';
import { AppRoutingModule } from './app-routing.module'; // রাউটিং মডিউল
@NgModule({
declarations: [
AppComponent, // কম্পোনেন্ট ডিক্লেয়ারেশন
],
imports: [
BrowserModule, // ব্রাউজার মডিউল
AppRoutingModule, // রাউটিং কনফিগারেশন
],
providers: [], // সার্ভিস এবং অন্যান্য ডিপেন্ডেন্সি
bootstrap: [AppComponent] // অ্যাপ্লিকেশনটি যেটি দিয়ে শুরু হবে
})
export class AppModule { }
@NgModule
ডেকোরেটরAngular-এ মডিউল কনফিগারেশন করতে @NgModule
ডেকোরেটর ব্যবহার করা হয়। এটি মূলত একটি মেটাডেটা অ্যানোটেশন যা Angular-কে নির্দেশ দেয় কোন ক্লাসগুলি, কম্পোনেন্টগুলি এবং মডিউলগুলি অ্যাপ্লিকেশনটির অংশ হিসেবে যুক্ত হবে।
@NgModule
এর অংশগুলি:declarations: এই অংশে অ্যাপ্লিকেশনের সমস্ত কম্পোনেন্ট, ডিরেক্টিভ এবং পাইপ ঘোষণা করা হয়। প্রতিটি কম্পোনেন্টের জন্য একটি আলাদা এন্ট্রি থাকে।
উদাহরণ:
declarations: [AppComponent]
এখানে AppComponent
হলো অ্যাপ্লিকেশনের প্রধান কম্পোনেন্ট।
imports: এই অংশে অ্যাপ্লিকেশনের অন্যান্য মডিউলগুলোকে অন্তর্ভুক্ত করা হয়, যেমন BrowserModule
, FormsModule
, অথবা আপনার নিজস্ব রাউটিং মডিউল।
উদাহরণ:
imports: [BrowserModule, AppRoutingModule]
providers: অ্যাপ্লিকেশনের সার্ভিস বা ডিপেন্ডেন্সি এখানে ঘোষণা করা হয়। সাধারণত সার্ভিসের ইনজেকশন ব্যবস্থাপনার জন্য এই অংশ ব্যবহার হয়। এটি কোডে কোথাও ব্যবহার করার জন্য সার্ভিস বা ডিপেন্ডেন্সি সরবরাহ করে।
উদাহরণ:
providers: [UserService]
bootstrap: অ্যাপ্লিকেশনটির যেকোনো এক কম্পোনেন্ট যেটি প্রথম লোড হবে, তাকে bootstrap
অ্যারে তে ঘোষণা করা হয়। সাধারণত এটি AppComponent
হয়।
উদাহরণ:
bootstrap: [AppComponent]
Angular অ্যাপ্লিকেশন শুরু হওয়ার সময় AppModule প্রথমে লোড হয়। এটি মূল রুট কম্পোনেন্ট AppComponent
কে ইনিশিয়ালাইজ করে, এবং তারপর রাউটিং বা অন্যান্য ফিচার গুলি কার্যকর করতে অন্যান্য মডিউল এবং কম্পোনেন্টগুলিকে লোড করা হয়। Angular এই প্রক্রিয়া সম্পন্ন করার পর, অ্যাপ্লিকেশনটি কাজ শুরু করে।
UserModule
, AdminModule
, ইত্যাদি। এতে কোড আরও মডুলার হয়ে ওঠে এবং রক্ষণাবেক্ষণ সহজ হয়।AppRoutingModule
, যা AppModule
-এ ইমপোর্ট করা হয়। এর মাধ্যমে এক পেজ থেকে অন্য পেজে নেভিগেশন পরিচালনা করা হয়।AppModule হলো Angular অ্যাপ্লিকেশনের মূল মডিউল যা অ্যাপ্লিকেশনের সমস্ত কম্পোনেন্ট এবং মডিউলকে একত্রিত করে। এটি @NgModule
ডেকোরেটরের মাধ্যমে অ্যাপ্লিকেশনের কনফিগারেশন পরিচালনা করে এবং অ্যাপ্লিকেশন লোডের শুরুতেই কার্যকর হয়। AppModule কম্পোনেন্ট, সার্ভিস, রাউটিং এবং অন্যান্য গুরুত্বপূর্ণ ডিপেন্ডেন্সির জন্য একটি সেন্ট্রাল কনফিগারেশন পয়েন্ট হিসেবে কাজ করে।
Read more