Jetpack compose چیست؟
این زبان برنامه نویسی در سال ۲۰۱۹ برای طراحی رابط کاربری متریال معرفی شد که شرکت گوگل آن را برای توسعه نرمافزارهای موبایلی ارائه کرد و مدام در حال پیشرفت کردن است که به ما در ساخت برنامههای اندرویدی با کیفیت و عالی کمک میکند و هم چنین باعث میشود از نوشتن کدهای طولانی برنامه نویسان جلوگیری کنند و چیزهای پیچیده را برای ما سادهتر کند. به طور کلی یک ابزار مدرن است که برای ساده و کوتاه کردن زبان برنامه نویسی کاتلین و مدل برنامه نویسی reactive بکار برده میشود به این صورت که رابط کاربری با فراخواندن توابع که دادهها را به صورت سلسله مراتبی به رابط کاربری تبدیل میکند و هنگامی که دادههای اصلی عوض میشوند فریمورک به صورت خودکار با فراخوانی دوباره تابع سلسله مراتب viewها را بروزرسانی میکند.
Jetpack compose چیست؟
Jetpack compose با تعداد کد کمتر، تعداد Api بصری کاتلین و ابزارهای قدرتمند به سادهتر شدن و سریعتر شدن طراحی رابط کاربری در سیستمهای اندروید کمک زیادی کرده است که Compose به معنای انشا و ایجاد کردن است که متنباز است و توسط دو شرکت گوگل و jet brains معرفی شد که جدیدترین پروژه در زمان حاضر برای ایجاد رابط کاربری اندروید است. اگر بتوانید این مهارت جدید و کارآمد را فرا بگیرید شما را از دیگر برنامه نویسان اندروید متمایز میکند و به مهارتهای اندروید شما میافزاید که به کمک این ابزار میتوانید UI برنامههای خودتان را سریعتر و راحتتر با یک روش جدید و متفاوت ایجاد کنید و این ابزار جایگزین ابزارهای قدیمی میشود که همچنان توسعه دهندگان آن را آزمایش میکنند و با انتشار اندروید ۱۲ این برنامه هم به مرحله پایانی عرضه خواهد رسید که از اولین نسخه آن تا به امروز قابلیتهای زیادی به آن اضافه شده است مانند پشتیبانی انیمیشنهای جدید و پشتیبانی از قابلیت نوشتن متن و غیره که قابل مشاهده است و برای ساخت ui در اندروید به صورت کدنویسی یا، با Xml میتوانید UI بسازید که راحتترین راه ساختن Xml است که اندروید ابزاری به نام Compose را برای این کار معرفی کرده که میتوانید کدنویسی را با این ابزار به راحتی انجام دهید.
مزیتهای Jetpack compose
- مستقل بودن.
- عدم وابستگی به ویوها.
- نوشتن تعداد کد کمتر و خلاصه شدهتر.
- آسان تر شدن مدیریت وضعیت UI.
- دارای تابع منظم است.
- با یک سری سلسله مراتب رابط کاربری را ایجاد میکند.
- ساخت Ui با جتپک کامپوز.
- برای رسم کردن از ابزار متن استفاده میکند.
- برای ساخت نماهای ساده به شما کمک میکند.
- پشتیبانی از انیمیشنها.
معایب Jetpack compose
از Layout Preview و طرح محدودیت پشتیبانی نمیکند اما در نسخههای بعدی قرار است این قابلیت هم اضافه شود.
لایه بندی در Jetpack Compose
به همان ترتیبی که توابع را صدا بزنید لایه بندی به همان ترتیب برای شما انجام میشود به طور مثال اگر تابع A را درون تابع B صدا بزنید تابع A به عنوان فرزند تابع B شناخته میشود و اگر چند Text را پشت سر هم بنویسید خروجی کار شما بسیار شلوغ و کثیف میشود پس نوع قرارگیری عناصر را جوری مشخص کنید که خروجی کار شلوغ نیست و همچنین با استفاده از تابع ستون میتوان Viewها را از بالا به پایین یا برعکس مرتب کنید و میتوانید به آنها Style بدهید که برای دادن Style باید در ورودی تابع مقادیر را مشخص کنید.
نحوه کار با Composable
آجرهای سازنده تکنولوژی Compose هستند که به شما این امکان را میدهند به راحتی داخل Composable هر چند تعداد که میخواهید رابط کاربری تعریف کنید که هر کدام مسئولیت نمایش یک بخش از Ui را به عهده دارند که کامپوزبلها فقط از داخل کامپوزبل دیگری فراخوانی میشوند که به صورت پیش فرض داخل کتابخانهها Compose تعریف شده و میتوانید از آنها استفاده کنید و فاقد حالت هستند یعنی اگر به طور مثال متنی را مینویسید شما نمیتوانید اندازه، رنگ و فونت آن را مشاهده کنید و همان موقعی که ویژگیها را مشخص میکنید رابط کاربری هم ساخته میشود اما این در حالی است که Viewهای اندروید هر کدام ویژگی خاص خود را دارند در Compose اگر بخواهید چیزی را عوض کنید باید از تابع State استفاده کنید و مقدار بازگشتی آن به عنوان Delegate عمل میکند.
استفاده دوباره از Compose
هر چقدر تعداد مولفههای بیشتری به رابط کاربری خود اضافه کنید تعداد تابعهای تو در توی بیشتری ایجاد میشود مانند توابع پایگاه داده که هر چقدر تابع بزرگ شود بر میزان خوانایی آن تاثیر میگذارد که اگر این اجزا را به صورت کوچک ایجاد کنید رابط کاربری آسانتر در دسترس برنامه قرار میگیرد که مسئولیت یک بخشی را به عهده دارد و به صورت مستقل میتواند آن را ویرایش کند.
زمانی که یک کد رابط کاربری را refactor میکنید باید تابع را به صورت Composable حاشیه نویسی علامتگذاری کنید تا کامپایلر متوجه شود این یک تابع Composable شود تا بتوانید توابع دیگر را فراخوانی کنید حاشیه نویسی برای توابعی که از رابط کاربری emit استفاده میکنند ضروری است.
جمع بندی
Jetpack Compose آخرین تغییر طراحی رابط کاربری اندروید است که هنوز در حال پیشرفت و ایجاد کردن تغییرات روی سیستمهای اندروید است که باعث شده یک رابط کاربری مناسب را برای سرعت بخشیدن به برنامههایتان تجربه کنید که این رابط کاربری همه روزه در حال پیشرفت کردن هست و باید منتظر نسخههای دیگری از این برنامه بود.
تجربهی کار خود را با این تکنولوژی در بخش نظرات بنویسید.
ارسال پاسخ