اندروید

پیاده سازی BottomAppBar قسمت اول : کامپوننت های متریال برای اندروید

[مقاله] یکی از جدیدترین کامپوننت های اندروید  که در Google I/O سال 2018 معرفی شده BottomAppBar است که یک افزونه از Toolbar می باشد . بر خلاف Toolbar که در قسمت بالای پنجره برنامه قرار دارد BottomAppBar در پایین پنجره برنامه قرار می گیرد  . با این تغییر الگو ، تیم طراحی Material انتظار یک تجربه ک...

تسلط بر Context در اندروید

[مقاله] Context در اندروید از جمله object هایی است که بیشترین استفاده و همچنین سوء استفاده را به خود اختصاص داده است، اما بیشتر مقالاتی که در صفحات وب قرار دارند بر روی تعریف آن تمرکز کرده اند. من نتوانستم منبع مناسبی بیایم که بینشی به من دهد و در یافتن دید و درک بهتر آن به من کمک کند. از این رو من تلاش کرد...

توسعه ی اندروید: اصول SOLID

[مقاله] SOLID مخفف پنج اصل زیر بنایی طراحی شی گرا (Object-Oriented Design) است: Single Responsibility Principle Open-Closed Principle Liskov Substitution Principle Interface Segregation Principle Dependency Inversion Principle  The Single Responsibility Principle (SRP) :SOLID 1 یک کلاس بای...

چرا گوگل کاتلین را برای اندروید اتخاذ کرده است؟

[مقاله] تقریبا یک سال پیش گوگل پشتیبانی رسمی خود را از زبان برنامه نویسی کاتلین برای توسعه ی اندروید اعلام نمود. سالگرد مبارک! فرصت عالی مهیا شده است تا به بحث در مورد علت تصمیم گوگل درباره ی کاتلین بپردازیم. اولین مقاله ی من در این باب با عنوان "داستان کامل کاتلین در مقابل جاوا" نوشته شده است. در این مق...

مسئله اسکرول کردن RecyclerView داخل NestedScrollView

[مقاله] همان طور که از قبل میدانیم recyclerView خودش دارای اسکرولی smooth یا روان می باشد . اما وقتی ما میخواهیم recyclerView را درون scrollView قرار دهیم مانندمثال زیر, این کار انجام نخواهد شد . <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/r...

ایجاد فرم های ورود ساده و موثر در اندروید

[مقاله] این مقاله یک روش ساده و موثر برای رسیدن به "فرم اعتبارسنجی شده" در اندروید با استفاده از کلاس های View سفارشی، حالت های drawable سفارشی و کتابخانه ی پشتیبانی اندروید است. هدف ایجاد یک کلاس View سفارشی است که UI را بسته به اینکه آیا View در وضعیت خطا (که به صورت سفارشی تعریف شده) به درستی نمایش داده...

درک هسته اندروید : Looper , Handler و HandlerThread

[مقاله]   این مقاله  موضوعات  Looper اندروید , Handler ,  HandlerThread را پوشش می دهد . اینها از جمله  بلاک های ساختمانی سیستم عامل اندروید هستند .   در تجربه شخصی من ، تا همین اواخر ، از آنها در یک زمینه بسیار محدود استفاده میکردم . مورد استفاده من مربوط به ارسال task...

چرا باید بیشتر به فکر انتخاب MVVM باشیم تا MVP؟ - معماری اندروید

[مقاله] معماری؟؟؟؟ بر طبق اطلاعات موجود در ویکی پدیا معماری نرم افزار به ساختارهای سطح بالای یک سیستم نرم افزاری، نظم برای ایجاد چنین ساختارهایی و... اشاره دارد. همه ی ما می دانیم معماری چیست!! به عبارت ساده تر تصمیم گیری و پیاده سازی معماری کد خاص یا الگوی طراحی، همه برای حل مشکلاتی است که ما توسعه دهن...