TGViewer
EverCode EverCode @ever_code · 254 subscribers
Post #22 140
خیلی ها از سینتکس minimal apiها خوششون میاد، اما خیلی ها شاید ندونن که این سینتکس از فریمورک express.js اومده و انقدر معروف شد تو یه دوره که خیلی از فریمورک‌ها سعی کردن ازش الهام بگیرن. اولین شغل برنامه‌نویسی که داشتم بک اند با node js و همین express بود. وقتی وارد دنیای دات نت شدم تازه دات نت ۶ اومده بود و این minimal api های عزیز هنوز اونقدر معروف نشده بودن. اما الان خیلی پیشرفت کردن. اولین باری که دیدمشون خیلی خوشحال شدم!
بنظرم خیلی چیز مثبتیه چون باعث میشه مرز بین زبان ها کم بشه. یادمه اولین بار که با Golang میخواستم یه سرویس بالا بیارم، فریمورک fiber رو پیدا کردم و انقدر سینتکسش آشنا بود که خیلی سریع و راحت تونستم یه پروژه تر تمیز بالا بیارم!
اینکه زبان ها و فریمورک ها از هم یاد میگیرن و تکامل پیدا میکنن اتفاق بشدت جذابیه برام.
بنظرم قشنگی minimal api همونطور که توی اسمشون هست مینیمال بودن و simplicity هست. برای تعریف یک endpoint شما خیلی راحت نیاز دارین فقط توی app تون map کنین:

app.MapGet("/echo", () => "Hello from Minimal Apis!");


آپشین دیگه‌ای که خیلی کاربردی هست قابلیت Group کردن endpointهاست:

var api = app.MapGroup("/api");
api.MapGet("/echo", () => "Hello from Minimal Apis!"); // /api/echo



یکی دیگه از نکاتی که راجب minimal api ها شاید جالب باشه بدونین هدف Microsoft از توسعه‌شون هست. از زبان David Fowler توسعه دهنده SignalR:

Minimal APIs was the final phase in breaking up the monolith MVC framework that was a carry-over from ASP.NET on .NET Framework into "pay for play" pieces that could be used to build applications that scale from a single endpoint to many endpoints in your web application. Over time, we refactored many of the features of MVC like action descriptors and routing, different types of filters, model binding, results etc into the core platform. This is one of the reasons why minimal APIs is faster, it's pay for play and less extensible than MVC (by design!).


به زبان خودمون، سعی کردن ماهیت قدیمی تر controller ها رو بشورن. توی minimal api ها نیازمندی ها رو به مرور و وقتی بهشون نیاز دارین اضافه میکنین.
از لحاظ پرفورمنس توی این لینک میتونین ببینین که با استفاده از BenchmarkDotNet و چندتا تست اساسی چه تفاوتی دارن. تفاوت پرفورمنس بین minimal api ها و controller ها خیلی زیاد نیست اما توی این تست ها minimal api ها همیشه یکم سریع تر بودن اما تفاوت اصلیشون توی مقدار memory allocation شون هست.

همه این حرف ها رو راجبشون زدیم، یه کتاب کوچولو هم معرفی میکنم که شاید خوشتون بیاد و بیشتر ازشون استفاده کنین.

@ever_code
Steven-Giesel Comparing the performance between the Minimal API and classic Controllers Today, we are going to benchmark the performance of the Minimal API in ASP.NET 9 (and for reference against ASP.NET 8 as well) against the classic Controllers. We will test a few scenarios and check how the performance of the Minimal API compares to the classic…
  • 🔥 2
  • 👍 1
More from @ever_code
  1. Oct 10, 2026اولین بار که با مفهوم سیستم عامل بصورت درست آشنا شدم، دوره ی خیلی قدیمی جادی برای LPIC 1 ب…
  2. Oct 9, 2026https://claude.ai/artifact/SQQRuCYtcH9RyBY1ZfWaXg برای ادامه دادن مبحث shader programming…
  3. Oct 9, 2026بیاین یکم بیشتر روی گرافیک تمرکز کنیم. این تصویر: https://www.shadertoy.com/embed/XsXXDn?g…
  4. Oct 9, 2026واقعا خیلی زیبا درس میده بنظرم
  5. Oct 9, 2026یه سری شاخه های کامپیوتر دقیقا اون جاهایی هستن که ما میگفتیم مگه ریاضی کجا تو زندگی به درد…
  6. Oct 8, 2026شرکت Stripe چند وقتی میشه که به یکی از شرکت های مورد علاقم تبدیل شده. یکی از بزرگترین شرکت…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →