14 أبريل، 2020

تعرف على Jetpack compose : المقدمة

لو متابع الترندات الأخيرة في مجال البروجرامينج بشكل عام، هتلاحظ أن معظم الشركات وPlatforms بتتجه نحو الكود النظيف و Clean architecture، الموضوع مش في الاندرويد بس بالمناسبة، بس بما أن احنا بنتكلم عن الاندرويد فأكيد أنت سمعت عن MVVM أو Model - View - ViewModel، وهي Design pattern المحبب لجوجل، اللي غرضه الرئيسي أنه يفصل الUI عن backend وعن Data layer بتوع التطبيق. بحيث أن UI اللي هي Activity و Fragment يكون فيهم بس الكود المسؤل عن الlogic بتاع view، اللي هو امتى تظهر أو تختفي، عرض الداتا في view فقط لا غير، يعني view ميكونش عارف الداتا ديه جت...
13 أبريل، 2020

تعرف على Kotlin coroutines : الجزء الثالث

ها قد عدنا مرة أخرى، حاول تفتكر سريعًا احنا شرحنا ايه في الجزء الأول و التاني عشان فيه جزء كبير هنا مترتب عليه، في الجزء دا هنشرح حاجة مهمة جدًا وهي async و await وايه الفرق بينهم وبين الطريقة العادية Launch. لو رجعت على الجزء الأول هتعرف أن Launch بتبدأ coroutines متفرقين وبترجع Job، بس في أغلب الحالات في التطبيقات اليومية الللي بنعملها بنكون عايزين نعمل Task بياخد وقت عشان نرجع منه قيمة، يعني مثال على كدا لما تعمل Network request عشان تحمل صورة، دا يعتبر Heavy task وهياخد وقت كبير وعايزينه أول ما يخلص يعملنا return بالصورة سواء كانت...
13 مارس، 2020

تعرف على Sealed class في Kotlin

من الحجات الكويسة في كوتلن، أن المطورين بتوعها بيشوفوا ايه الشئ اللي بيأرق المطورين ويبدأ يعالجوه ويشفولوا حلول، لو أنت بقالك شوية في مجال البروجرامينج أكيد سمعت عن Enum، ولو متعرفهوش فخد لمحه سريعة عنه عشان كدا كدا في بديل كويس في الكوتلن هتستخدمه. Enum هو كلاس بيخليك تحدد Constants وتعملهم Category معينة بحيث أنه يسهلك الرجوع ليهم واسخدمهم وأنه يمنعلك الأخطاء اللي بتكون في الكود، مثال عشان تفهم أكتر : Right , Left , up , down : ممكن نحطهم في Enum بإسم direction بحيث لما اليوزر يختار اتجاه أنت يبقا عندك Constant تتأكد منه وتشوف الاختيار بتاعه بيساوي انهي...