TGViewer
tech-afternoon tech-afternoon @techafternoon · 1.7K subscribers
Post #333 901
🧬 در مورد Arazzo Specification و کاربردهاش!

کمتر اپلیکیشنی رو می‌شه پیدا کردن که مستقیم یا غیرمستقیم با APIها خصوصا REST مرتبط نباشن. حالا Arazzo Specification یه استاندارد جدید و البته «باز»، از OpenAPI Initiative است که به‌عنوان مکمل OpenAPI Specification برای توصیف جریان کار (workflow) APIها طراحی شده. توسعه‌دهنده/معمار می‌تونه دنباله‌ای از فراخونی‌های API و وابستگی‌هاش رو به‌صورت ساختاریافته و قابل فهم برای انسان (فنی و کسب‌وکاری) و ماشین تعریف کنه.

📜 سابقه و هدف
قبلن، OpenAPI با تمرکز روی توصیف endpointها توسعه داده شده بود. با swagger یا ابزارهای دیگه به راحتی endpointها رو می‌شه بررسی کرد، ولی خیلی از فرایندها، چندین endpoint رو درگیر می‌کنن اما در عمل، حالا چرخه‌ی فراخونی این endpointها به نحوی باید مستند و قابل رویت باشه. چه تیم فنی و چه تیم کسب‌وکاری باید بتونن فرایند فراخونی APIها رو بررسی کنن، که کدوم API اول باید کال بشه و بعد دومی و سومی و الی آخر. برای پاسخ به این نیاز، Arazzo Specification سال ۲۰۲۴ معرفی شد تا بشه جریان‌های کاری، خصوصا پیچیده‌ها رو توصیف و تشریح کرد.

🎯 اهمیت و کاربرد
- مستندسازی API call workflow: توصیف دقیق دنباله‌ی فراخونی APIها برای سناریو خاص.
- تولید خودکار مستندات و SDK: ایجاد مستندات اینتراکتیو و تولید کدهای کلاینت بر اساس جریان‌های کاری تعریف‌شده.
- تسهیل تست‌های end-to-end: تعریف سناریوهای تست پیچیده با استفاده از جریان‌های کاری.
- ادغام با هوش مصنوعی: ارائه ساختار قابل فهم برای مدل‌های زبانی بزرگ (LLMs) برای تعامل با APIها.
- بهبود تجربه توسعه‌دهنده (DX): کاهش نیاز به مستندسازی دستی و افزایش وضوح استفاده از APIها.

🧩 ساختار Arazzo
یک سند Arazzo معمولاً شامل بخش‌های زیره:

بخش arazzo: نسخه مشخصه Arazzo (مثلاً 1.0.1).
بخش info: اطلاعات متادیتا درباره سند.
بخش sourceDescriptions: فهرستی از منابع (مثل فایل‌های OpenAPI) که جریان‌های کاری بهشون ارجاع می‌دن.
بخش workflows: تعریف یک یا چند جریان کاری، شامل مراحل، ورودی‌ها، خروجی‌ها و معیارهای موفقیت یا شکست.
بخش components: تعریف مؤلفه‌های قابل استفاده مجدد برای جلوگیری از تکرار.

مثال توی کامنت
لینک مستند رسمی Arazzo Specification
مخزن GitHub Arazzo
مقاله در Swagger Blog


جدی گرفتن رویکرد API First نه تنها کمک بزرگی به توسعه اصولی‌تره، بلکه به تیم/سازمان‌سازی بهتر کمک می‌کنه، همون‌طور که تست نوشتن بخشی از مسیر بلوغ تیم و سازمانه؛ مستندسازی درست و ساختارمند هم بخشی از مسیر بلوغ توسعه‌دهنده، تیم و سازمانه. فایل ورد یا کانفولئنس یا ... ابزار مدیریت مستندات API نیستن!

💬 نظر شما چیه؟!
spec.openapis.org The Arazzo Specification v1.1.0 The Arazzo Specification provides a mechanism that can define sequences of calls and their dependencies to be woven together and expressed in the context of delivering a particular outcome or set of outcomes when dealing with API descriptions (such as OpenAPI…
  • 🤓 4
  • 👍 1
More from @techafternoon
  1. Sep 27, 2026به عنوان یک معلم، یادگیری برای من امیده، به عنوان یک پدر، یادگیری برای من مسیر نجات فرزندم…
  2. Sep 27, 2026سلام مسعود دانش‌پور عزیز این پویش رو توی کانالش با قلم زیباش معرفی کرده؛ که فکر کنم لازم ب…
  3. Sep 19, 2026☑ چک‌لیست آماده‌سازی تیم، فرایندها و زیرساخت برای توسعه با AI توجه: هیچ چک‌لیستی جهان‌شمول…
  4. Sep 19, 2026گوفر رو رنجوندید! شرم بر شما 😂 سومین بار بود این موضوع تحلیل عمیق GC جدید گو رو توی نظرسن…
  5. Sep 18, 2026Post #478
  6. Sep 15, 2026از زبون آمار: آیا AI کدهای خوبی می‌نویسه یا نه؟ وقتی تولید کد تقریباً مجانی و خیلی سریع ان…
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 →