مجموعه تقلب مصاحبه شغلی برنامه نویس اندروید - قسمت هشتم

سلام و خسته نباشید خدمت همهقسمت هشتم از مجموعه تقلب مصاحبه شغلی برنامه نویس اندروید رو در پیش داریم که میتونید از طریق لینک های زیر به توضیحات و قسمت های قبلی دسترسی داشته باشید ، امروز میریم سراغ ده سوال بعدی...مجموعه تقلب مصاحبه شغلی برنامه نویس اندروید - قسمت اولمجموعه تقلب مصاحبه شغلی برنامه نویس اندروید - قسمت دوممجموعه تقلب مصاحبه شغلی برنامه نویس اندروید - قسمت سوممجموعه تقلب مصاحبه شغلی برنامه نویس اندروید - قسمت چهارممجموعه تقلب مصاحبه شغلی برنامه نویس اندروید - قسمت پنجممجموعه تقلب مصاحبه شغلی برنامه نویس اندروید - قسمت ششممجموعه تقلب مصاحبه شغلی برنامه نویس اندروید - قسمت هفتم ۷۱. چگونه انیمیشن swipe را در اندروید پیاده سازی می کنید؟<set xmlns:android=&quothttp://schemas.android.com/apk/res/android&quot android:shareInterpolator=”false”> <translate android:fromXDelta=”-100%” android:toXDelta=”0%” android:fromYDelta=”0%” android:toYDelta=”0%” android:duration=”700&quot/> </set>۷۲ـ ArrayMap یا HashMap ؟مقاله اول در این موضوعمقاله دوم در این موضوع۷۳. چگونه از نشت حافظه ( memory leak ) جلوگیری کنیم؟این مقاله توضیحات مفصلی در رابطه با این سوال داده است.۷۴.چگونه حجم فایل apk را کم کنیم ؟پروگارد را برای پروژه ی خود فعال کنیدـ shrinkResources را فعال کنیدریسورس های اضافه را با اضافه کردن اسم ریسورس های مورد نیاز به resConfigs از پروژه حذف کنیدتمامی تصاویر را به webp یا vector drawable تبدیل کنید۷۵. کامپوننت های Architecture اندروید را نام ببرید :ـ Roomـ LiveDataـ ViewModelـ Data Bindingـ Lifecycles۷۶.تفاوت معماری های MVC و MVP و MVVM چیست ؟معماری MVC که نام آن مخفف Model-View-Controller است به این صورت است که کلمه Model به فایل های Model داده های شما اشاره می کند View به فایل های XML شما و Controller به فایل هایی که منطق اپلیکیشن شما را پیش می برند اشاره می کند. مشکل این معماری استفاده از unit test ها است Model ها تا زمانی که فعالیتشان به چیز دیگری گره نخورده قابل تست هستند اما فعالیت Controller ها به Api های اندروید گره خورده و این مورد تست آن ها را سخت می کند همچنین انعظاف پذیری و ماژولار کردن اپلیکیشن مشکل دیگر این معماری است چون فعالیت View و Controller به هم گره خورده است. اگر ما View را تغییر دهیم مجبوریم که Controller را نیز تغییر دهیم. همچنین Maintenance نیز مشکل دیگر این معماری می باشد.در معماری MVP که نام آن مخفف Model-View-Presenter است View تمامی فایل های XML و کلاس های اکتیویتی و فرگمنت را شامل می شود و منطق و توابع برنامه در گروه Presenter قرار میگیرند و این مورد باعث راحت تر شدن عمل unit test می شوددر معماری MVVM که نام آن مخفف Model-View-ViewModel است Model شامل کلاس های مدل اپلیکیشن و کلاس هایی که وظیفه ی آن ها دریافت داده هاست می شود و View Model ها وظیفه دریافت این داده ها و آماده سازی آن ها برای استفاده در View ها را دارند.۷۷. قوانین S.O.L.I.D در توسعه نرم افزار چیستند ؟قانون Single Responsibilityقانون Open-Closedقانون Liskov Substitutionقانون Interface Segregationقانون Dependency Inversion۷۸. فرق Throw و Throws در جاوا چیست ؟کلمه کلیدی Throw هنگامی استفاده می شود که ما میخواهیم یک خطا ( Exception ) را از یک متد یا بلاک استاتیک بازگردانیم در صورتی که کلمه کلیدی Throws نشان دهنده خطاهایی است که ممکن است توسط متد بازگردانده شوند.۷۹. راهی برای skip کردن بلاک finally در try/catch وجود دارد‌؟با استفاده از تابع System.exit می توانیم از اجرای بلاک finally جلوگیری کنیم و آن را بگذرانیممتد System.exit می تواند یک خطای امنیتی ( SecurityException ) بازگردانی کند. در JVM اگر متد System.exit بدون وجود خطای امنیتی فراخوانی شود بلاک finally اجرا نخواهد شد اما اگر خطای امنیتی وجود داشته باشد بلاک finally اجرا می شود۸۰. کلاس های ناشناس ( Anonymous ) چیستند ؟کلاس های ناشناس همانطور که از اسم آن ها پیداست کلاس های بدون نامی هستند که فقط یک نمونه از کلاس را می سازند و توابعی از آن را اجرا می کنندقوانین :یک کلاس ناشناس حتما باید یک ابرکلاس ( super class ) یا یک اینترفیس را پیاده سازی کند یا از یک ابرکلاس مشتق شده باشد اما نمی تواند به عنوان مشتق یا ابرکلاس استفاده شودیک کلاس ناشناس حتما باید تمامی توابع abstract درون ابرکلاس یا اینترفیس را پیاده سازی کندیک کلاس ناشناس برای نمونه گیری همیشه از تابع سازنده ابرکلاس خود استفاده می کند.مثال:MyButton.setListener(new Button.Listener { @override public void (View view){ //some code } });ترجمه متنی از Anitaa Murthyتشکر بابت مطالعه پستلایک و حمایت یادتون نرهسوالی بود درخدمتمنوشته شده با ❤️ توسط کوچیکتون حمیدرضا شجراوی =)))