معرفی Architecture Components

یک مجموعه از کتابخانه ها است که به طراحی و معماری بهتر برنامه ها و تست کردن راحت‌تر برنامه‌ها کمک میکند. در این ارائه کامپوننت های Room و ViewModel و LiveData بررسی می‌شوند. همچنین از این کامپوننت ها برای ساخت یک برنامه همراه با یک مثال عملی استفاده خواهیم کرد.

اصول پنج گانه SOLID در مهندسی نرم افزار

در این ارائه نقش SOLID در توسعه ی نرم افزار(با تمرکز بر روی اندروید) بررسی خواهد شد. همچنین با ارائه مثال هایی سعی در هر حل کردن چالش های روزمره را خواهیم داشت.

پیاده سازی الگوی معماری MVVM با Databinding

انتخاب معماری اپلیکیشن های اندرویدی همواره چالشی برای توسعه‌دهندگان بوده‌ است. معماری MVVM اولین بار در مایکروسافت شکل گرفت و بیشتر در توسعه برنامه‌های تحت .NET و به طور خاص WPF استفاده میشد. در کنفرانس Google I/O 2015 گوگل با معرفی کتابخانه‌ Data Binding آن را ابزاری برای پیاده‌سازی MVVM در اندروید معرفی کرد. در این ارائه ضمن معرفی این پترن، سعی در بررسی استفاده از کتابخانه Data Binding را نیز داریم.

اصول پایه Clean Architecture و نحوه استفاده از آن

شاید تا به حال ارائه های زیادی درباره معماری نرم افزار و پترن های آن دیده باشید که درباره پترن های رایج مثل MVC, MVP و MVVM صحبت شده ولی آنچنان که باید به اصول پایه معماری پرداخته نشده.. تو این ارائه به اصول پایه‌ای Clean Architecture می پردازیم و درباره نحوه‌ی استفاده از اون توی اندروید و ترکیب اش با Modular Pattern ها برای رسیدن به رویکرد جدیدی در معماری اپلیکیشن های موبایل صحبت خواهیم کرد. در نهایت هم مثال هایی کاربردی از نسخه جدید اپلیکیشن تپسی رو بررسی خواهیم کرد.

توسعه نرم افزار مبتنی بر تست و استراتژی تست نوشتن

معمولا شروع یه پروژه جدید به راحتی انجام میشه ولی رفته رفته تغییر پروژه سخت تر میشه و بعد از مدتی توسعه یا حتی نگه داری پروژه تبدیل به کاری سخت و هزینه بر میشه! در این ارائه به چرا و چگونگی تست نوشتن می پردازیم و همچنین راه حل هایی برای ارتقای سطح فنی پروژه و نگه داری آن در دراز مدت با کمک نوشتن تست ارائه میکنیم.

ساخت Custom View

در این ارائه ایمان خوش آبی در رابطه با Custom View صحبت می‌کند و توضیح می‌دهد که منظور از Custom View چیست و چطور باید از آن استفاده کرد. همچنین در طول ارایه درباره‌ی نحوه‌ی ساخت، نمایش و چرخه زندگی View در اندروید نیز صحبت می‌شود.

معرفی Room

علی محمدی در این ارائه درباره‌ی کتابخانه Room صحبت می‌کند. کتابخانه Room در Google I/O 2017 به عنوان عضوی از مجموعه Architecture Components به صورت رسمی معرفی شده است. به وسیله این کتابخانه علاوه بر اینکه از تبدیل کوئری‌ها به داده‌هایی از جنس جاوا (POJOs) خلاص می‌شویم، کوئری‌هایی که می‌نویسیم در زمان کامپایل بررسی می‌شوند تا در زمان اجرا برنامه دچار خطا نشود.

معرفی RxJava

فرزاد تباشیر در این ارائه درباره برنامه نویسی واکنشی (reactive) صحبت می‌کند. ارائه با یک نگاه کوتاه به برنامه نویسی واکنشی شروع شده و در ادامه به تشریح RxJava و مزایای استفاده از این کتابخانه محبوب پرداخته می‌شود.

بررسی دیزاین‌ پترن‌های MVC، MVP و MVVM

در این ارائه سه تا از معماری‌های رایج در اندروید بررسی می‌شوند. ابتدا با نگاه کوتاهی به MVC شروع کرده و در ادامه به بررسی بیشتر معماری‌های MVP و MVVM پرداخته می‌شود.

Dependency Injection با استفاده از Dagger2

در این ارائه عباس اویسی در مورد Dagger2 صحبت می‌کند. درصد زیادی از برنامه‌نویسان اندروید برای پیاده‌سازی پترن Dependency Injection از Dagger2 استفاده می‌کنند. در این ارائه ابتدا مقدمه‌ای درباره DI و مفاهیم آن گفته شده و سپس نحوه‌ی استفاده از Dagger2 توضیح داده می‌شود.