دستورالعملهای سبک برای APIهای Jetpack Compose
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
اگر در حال نوشتن کد Compose برای برنامه خود هستید یا کتابخانه های Compose و API می سازید، بهترین روش ها را دنبال کنید تا کد خود را مقیاس پذیر، کارآمدتر و سازگار با بقیه اکوسیستم کنید.
اسناد زیر دستورالعمل هایی را برای هر کسی که کدی را می نویسد که از Compose استفاده می کند ارائه می دهد:
- دستورالعملهای API برای Jetpack Compose : الگوها، بهترین شیوهها و دستورالعملهای سبک تجویزی را برای هر سیستمی با استفاده از افزونه کامپایلر Jetpack Compose و زمان اجرا مشخص میکند. این شامل موضوعات زیر است:
- دستورالعمل های سبک کاتلین برای نوشتن، بر اساس کنوانسیون های کدگذاری کاتلین
- راهنمایی برای توابع
@Composable
و APIهایی که بر اساس قابلیتهای زمان اجرا Compose ساخته میشوند - دستورالعملهایی برای APIهایی که از مجموعه ابزار Compose UI استفاده و گسترش میدهند
- الگوهایی برای پرداختن به موارد استفاده هنگام طراحی Compose API
- دستورالعملهای API برای اجزای
@Composable
در Jetpack Compose : مجموعهای از دستورالعملها و توصیهها را برای ایجاد و استفاده از کامپوننتهای @Composable
UI شامل موضوعات زیر ارائه میکند:- ایجاد و لایه بندی اجزا
- نام گذاری یک جزء جدید
- بیان وابستگی اجزا
- پارامترها در اجزای
@Composable
- پیروی از الگوهای صحیح برای ایجاد کلاس ها و توابع مرتبط با کامپوننت
- مستندسازی اجزای
@Composable
- بهبود دسترسی برای اجزا
- بهروزرسانی APIهای مؤلفه با حفظ سازگاری با عقب
مخاطب
این دستورالعمل برای سه مخاطب زیر نوشته شده است:
- توسعه دهندگان برنامه هایی را بر اساس Jetpack Compose می سازند . اگر از Jetpack Compose در بخشی از برنامه خود استفاده می کنید، در این گروه قرار می گیرید.
- توسعه دهندگانی که روی توسعه چارچوب Jetpack Compose کار می کنند . اگر به کتابخانههای
androidx.compose
کمک کنید، در این گروه هستید. - توسعه دهندگانی که کتابخانه هایی را بر اساس Jetpack Compose ایجاد می کنند . اگر API های Compose یا کتابخانه هایی از عناصر Compose UI ایجاد کنید، در این گروه قرار می گیرید. این کتابخانههای مؤلفههای Compose ممکن است به صورت عمومی یا محلی برای شرکت یا تیم شما در دسترس باشند.
بسته به گروهی که در آن هستید، سطوح سختگیری متفاوتی برای هر دستورالعمل سبک دارید. به عنوان مثال، توسعه چارچوب Jetpack Compose عموماً به شدت از این دستورالعمل ها پیروی می کند.
برای اطلاعات بیشتر در مورد الزامات هر مخاطب توسعهدهنده، به RFC2119 مراجعه کنید.
در چارچوب و دستورالعمل ها مشارکت کنید
ما از مشارکت در کتابخانههای انتخابی در پایگاه کد androidx
و دستورالعملهای سبک ( دستورالعملهای Compose API و دستورالعملهای اجزای @Composable
) استقبال میکنیم.
برای مشارکت، دستورالعملهای موجود در راهنمای مشارکت androidx
را دنبال کنید.
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-09-04 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2025-09-04 بهوقت ساعت هماهنگ جهانی."],[],[],null,["If you're writing Compose code for your app or building Compose libraries and\nAPIs, follow best practices to make your code scalable, more performant, and\nconsistent with the rest of the ecosystem.\n\nThe following documents provide guidelines for anyone writing code that uses\nCompose:\n\n- [API Guidelines for Jetpack Compose](https://android.googlesource.com/platform/frameworks/support/+/androidx-main/compose/docs/compose-api-guidelines.md): Outlines patterns, best practices, and prescriptive style guidelines for any system using the Jetpack Compose compiler plugin and runtime. It includes the following topics:\n - Kotlin style guidelines for Compose, based on the [Kotlin Coding\n Conventions](https://kotlinlang.org/docs/coding-conventions.html)\n - Guidance for `@Composable` functions and APIs that build on the Compose runtime capabilities\n - Guidelines for APIs that use and extend the Compose UI toolkit\n - Patterns for addressing use cases when designing a Compose API\n- [API Guidelines for `@Composable` components in Jetpack Compose](https://android.googlesource.com/platform/frameworks/support/+/androidx-main/compose/docs/compose-component-api-guidelines.md): Provides a set of guidelines and recommendations for creating and using `@Composable` UI components, including the following topics:\n - Creating and layering components\n - Naming a new component\n - Expressing component dependencies\n - Parameters in `@Composable` components\n - Following correct patterns for creating component-related classes and functions\n - Documenting `@Composable` components\n - Improving accessibility for components\n - Updating component APIs while retaining backwards compatibility\n\nAudience\n\nThese guidelines are written for the following three audiences:\n\n- **Developers building apps based on Jetpack Compose**. You are in this group if you use Jetpack Compose in some part of your app.\n- **Developers working on Jetpack Compose framework development** . You are in this group if you make contributions to the [`androidx.compose` libraries](/jetpack/androidx/releases/compose).\n- **Developers creating libraries based on Jetpack Compose**. You are in this group if you create Compose APIs or libraries of Compose UI elements. These libraries of Compose components may be publicly available or local to your company or team.\n\nDepending on the group you're in, you have different strictness levels for each\nstyle guideline. For example, Jetpack Compose framework development generally\nadheres most strictly to these guidelines.\n\nFor more information about the requirements for each developer audience, see\n[RFC2119](https://www.ietf.org/rfc/rfc2119.txt).\n\nContribute to framework and guidelines\n\nWe welcome contributions to select libraries in the `androidx` codebase and the\nstyle guidelines ([Compose API guidelines](https://android.googlesource.com/platform/frameworks/support/+/androidx-main/compose/docs/compose-api-guidelines.md) and\n[`@Composable` components guidelines](https://android.googlesource.com/platform/frameworks/support/+/androidx-main/compose/docs/compose-component-api-guidelines.md)) themselves.\n\nTo contribute, follow the instructions in the `androidx` [contribution\nguide](https://android.googlesource.com/platform/frameworks/support/+/androidx-main/CONTRIBUTING.md)."]]