Untitled 2026-05-30 18.44.12.excalidraw
⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠ You can decompress Drawing data with the command palette: ‘Decompress current Excalidraw file’. For more info check in plugin settings under ‘Saving’
Excalidraw Data
Text Elements
Hello
Embedded Files
29beaba2b47fd86af5a038952257399e7deb7bca: 20. TestOutputHelper
Link to original
stateDiagram-v2 [*] --> ClientRequest: ব্রাউজার থেকে রিকোয়েস্ট state "কন্ট্রোলার (Controller Action)" as Controller { state "ডেটা প্রস্তুত করা" as PrepareData state "রিটার্ন টাইপ নির্ধারণ" as ReturnType PrepareData --> ReturnType note right of PrepareData এখানে Model, ViewData, বা ViewBag সেট করা হয়। end note } ClientRequest --> Controller state "ডেটা পাস করার মাধ্যম" as DataPassing { ViewData: কি-ভ্যালু পেয়ার (Loosely Typed) ViewBag: ডাইনামিক প্রপার্টি (Loosely Typed) StronglyTypedModel: নির্দিষ্ট ক্লাস অবজেক্ট (নিরাপদ) MultipleModels: ViewModel বা Tuple ব্যবহার করে } ReturnType --> DataPassing: View(), PartialView(), বা ViewComponent() কল করে state "রেজোলিউশন ইঞ্জিন (View Engine)" as ViewEngine { direction TB state "গ্লোবাল কনফিগারেশন" as GlobalConfigs { _ViewImports: নেমস্পেস এবং ট্যাগ হেল্পার ইম্পোর্ট করে _ViewStart: ডিফল্ট লেআউট সেট করে } state "প্রধান ভিউ (.cshtml)" as MainView { HtmlRaw: র HTML রেন্ডার করে } } DataPassing --> GlobalConfigs GlobalConfigs --> MainView state "UI সংগঠন এবং পুনঃব্যবহারযোগ্যতা" as UIStructure { direction LR state "লেআউট সিস্টেম" as LayoutSystem { LayoutView: মূল কাঠামো (HTML, Body) Sections: নির্দিষ্ট অংশের জন্য জায়গা (Scripts, Styles) NestedLayouts: লেআউটের ভেতরে লেআউট RenderBody: প্রধান ভিউ এখানে রেন্ডার হয় } state "পার্শিয়াল ভিউ (Partial Views)" as Partials { CreatePartial: ছোট পুনঃব্যবহারযোগ্য অংশ PartialWithData: কন্ট্রোলার থেকে ডেটা নেয় } state "ভিউ কম্পোনেন্ট (View Components)" as ViewComp { VC_Logic: নিজস্ব ক্লাস লজিক থাকে VC_Params: প্যারামিটার গ্রহণ করে VC_Result: নিজস্ব ভিউ রেন্ডার করে } } MainView --> LayoutSystem: লেআউট ব্যবহার করলে MainView --> Partials: Html.PartialAsync() বা <partial> ট্যাগ MainView --> ViewComp: Component.InvokeAsync() বা <vc> ট্যাগ LayoutSystem --> Partials: লেআউটের ভেতরেও পার্শিয়াল থাকতে পারে LayoutSystem --> ViewComp: লেআউটের ভেতরেও কম্পোনেন্ট থাকতে পারে state "চূড়ান্ত আউটপুট" as FinalOutput { RenderedHTML: সব মিলে একটি HTML পেজ } LayoutSystem --> FinalOutput Partials --> FinalOutput ViewComp --> FinalOutput FinalOutput --> [*]: ব্রাউজারে রেসপন্স পাঠানো হলো %% ইন্টারভিউ এবং নোটস এর জন্য আলাদা নোট (ডায়াগ্রামের অংশ নয়, তথ্যের জন্য) note bottom of FinalOutput শিখার ধাপ: Notes -> PPT (Cheat Sheet) -> Weather App (প্র্যাকটিস) -> Interview Questions end note