💻 آخرین فرصت یادگیری برنامه‌نویسی با آفر ویژه قبل از افزایش قیمت در ۵ آذر ماه (🎁 به همراه یک هدیه ارزشمند )
۰ ثانیه
۰ دقیقه
۰ ساعت
۸ مهرداد
RelativeLayout vs ConstraintLayout
سعید شاهینی حل شده توسط سعید شاهینی

سلام 

 چرا وقتی رابط کاربری مون ساده است از Relative استفاده  کنیم ؟

ما کهConstrintداریم و در مورد  این لایه  هم  نوشتند بشدت لایه  قدرتمند‌تری است نسبت به Relative و کاری خیلی عالی داره 

بهتر نیست از Constraint حتی در رابط‌های ساده هم استفاد کنیم ؟(اگه بهتره  از relative دیگه اسمی نبریم لطفا )

 واینکه چرا Relative رو منسوخ شده حساب نکنیم ؟ کارایی  خاصی داره امروزه ؟ 

واقعا نمی‌فهمم اینو و متوجه این نمیشم دقیقا این چرا relative ؟!!؟؟؟!

سلام...

به نظر من تکنولوژی هر چی داره میره جلو داره اشتباهات گذشته رو جبران میکنن...و یه جورایی کارو راحت‌تر میکنه...

مثلا برا یه سایه دادن ساده باید کتابخونه CardView لود کنیم تو اندروید ولی تو ورژنای جدید اندروید فقط  android:elevation  کارو میکنه...

Layout و فیچرهای دیگه هم فک نکنم از این سناریو مستثنی باشن .اگه گوگل ConstraintLayout رو اول توسعه میداد فک نکنم هیچ وقت چیزی مث RelativeLayout درست میشد ...ولی اگه RelativeLayout و Layout‌های دیگه رو توسعه نمیداد به ConstraintLayout نمیرسید هر چی میره جلو‌تر به نتایج بهتری میرسه.... و شاید تو سالهای اینده یه Layout بیاد که کارو راحت‌تر کنه و نقش ConstraintLayout رو حتی یواش یواش کم کنه

farshid barati ۲۵ آذر ۱۳۹۸، ۱۸:۰۸

سلام ?

اشتباه صحیح نیست  بهتره  بگیم تجربه .طبیعیه که از تجربیات گذشته یاد بگیریم تا  بهتر بشویم در همه حیطه‌ها همینه  نه فقط تکنولوژی.... بحثی نیست .
Most Popular Programming Languages 1965 - 2019
لایه ای که دیگه کارایی نداره(خیلی بهتر و قوی‌تر از این لایه هم هست ) چرا باید استفاده بشود حرف منطقی و سوال اینه 

Relative Layout is Dead. Meet Constraint Layout 

 Understanding the performance benefits of ConstraintLayout

 

مهرداد ۲۵ آذر ۱۳۹۸، ۱۹:۰۷

اگه حذف بشه میخونیم بعدا تو مستندات گوگل?

farshid barati ۲۵ آذر ۱۳۹۸، ۱۹:۴۰

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

farshid barati ۲۵ آذر ۱۳۹۸، ۱۹:۵۴

اره واقعا دغدغه کلا زیاد دارم?.

هنوز به جاوا نرسیدیم؟! آموزش زبان جاوا و مفاهیم شی گرایی،میشه شروع جاوا دیگه درسته؟

 موافقم جلو‌تر بریم چالش بیشتر میشه و سوال جوابا رنگ بوی بهتری میگیره ...

به امید موفقیت همه دوستان ?

 

farshid barati ۲۵ آذر ۱۳۹۸، ۲۰:۳۰

به نظرم دوره هنوز اون طور که باید و شاید جا نیفتاده.چون بحث برنامه نویسی اندروید گسترده هست.مطمئنا جلوتر که بریم استاد تمرینها و چالشهای بیشتری ارائه میدن و مطالب کاربردی و پروژه محور میشه.مطمئن باشین با این بیان خوب و معلوماتی که استاد دارن اگه تلاش کنیم و پشتکار داشته باشیم متخصص اندروید میشیم. 

mohammad arefi ۲۵ آذر ۱۳۹۸، ۲۰:۴۶

خیلی جالبه که یه روز بچه‌ها می‌گن چرا Relative Layout هنوز درس داده نشده، یه روز عصبانین که چرا باید از Relative استفاده کنیم وقتی Constraint هست!  من همه رو درس دادم هر کس می‌تونه با هر کدوم راحت تره کار بکنه، وگرنه همه لایوت هارو می‌شه با Constraint پشتیبانی کرد و بقیه رو هم درس نمی‌دادم کارم خیلی راحت‌تر بود.

اما در مورد اینکه چرا گفتم می‌تونید از Relative برای Layout‌های ساده‌تر استفاده کنید، دلیلش رو می‌شه با نگاه کردن به سورس کلاس ConstraintLayout و RelativeLayout فهمید، داخل کلاس ConstraintLayout به دلیل Feature‌های زیادی که داره  آبجکت‌های زیادتری در حافظه نگه داری می‌شه و مصرف حافظه بیشتری نسبت به RelativeLayout داره. از لحاظ Performance و مصرف حافظه در لایوت‌های ساده تفاوت کمه بنابراین تصمیم با شماست که با هرکدوم راحت‌تر هستید از اون استفاده کنید. ولی در لایوت‌های پیچیده حتما ConstraintLayout باید استفاده بشه

 

سعید شاهینی ۲۶ آذر ۱۳۹۸، ۰۹:۳۴

۳ سال پیش خودم توی لیست دیجیکالا به جای relative layout از constraint استفاده کردم و relative layout سریع‌تر رندر می‌شد.

اعداد اختلاف بینشون به قدری ناچیز هست که هیچ اهمیتی نداره. اصلا اگه من دوتا اپ برات بسازم یکیش کلا با relative layout یکیش با constraint ببینم تو متوجه می‌شی کدوم با چه viewgroup ای نوشته شده و با هر گوشی هم که می‌خوای تست کن. فقط تفاوت performance توی لایوت‌های پیچیده مشخص می‌شه. من هر جا  constraint استفاده می‌کنم ۲ تا دلیل داره، یک اینکه خیلی راحت تره، ۲ اینکه سلسله مراتب view‌ها رو فلت می‌کنه و باعث افزایش performance در لایت‌های پیچیده می‌شه.

بعدشم اینکه من Relative Layout رو نساختم که ازش بخوام طرفداری کنم، یا با constraint پدرکشتگی ندارم که، فقط آموزشش دادم، توی پروژه‌های دوره‌های اینجا و پروژه‌های خودم هم از Constraint استفاده می‌کنم. بنابراین دلیلی برای گارد گرفتن یا تعصب وجود نداره. 

بهترین پاسخ
سعید شاهینی ۲۶ آذر ۱۳۹۸، ۱۱:۴۲