لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش Bootcamp توسعه برنامه Android 14 2024 - یک نمونه کار بسازید
Android 14 App Development Bootcamp 2024 - Build a portfolio
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره:
توسعه Android 14 استاد - یادگیری جاوا و کاتلین - کتابخانه پایگاه داده اتاق Jetpack - قطعات - Google Tasks clone توسعه برنامه Android 14 را بیاموزید و یک توسعه دهنده حرفه ای اندروید شوید، به صورت آزاد کار کنید یا ایده برنامه رویایی خود را بسازید برنامه های زیبا، حرفه ای و اندروید را بسازید. یک مبتدی کامل - حتی بدون هیچ تجربه برنامه نویسی قبلی - به یک برنامه نویس واقعی اندروید، شغل خود را تغییر دهید و به عنوان یک برنامه نویس اندروید شغلی پیدا کنید، بسیاری از برنامه های واقعی واقعی را بسازید که به درستی کار می کنند، عالی به نظر می رسند و با بهترین تمرینات در سال 2023 به روز هستند، بیاموزید. جاوا و کاتلین پیش نیازها: رایانه شخصی ویندوزی یا مک با دسترسی به اینترنت اصلاً نیازی به تجربه برنامه نویسی نیست - تسلط کامل به رایانه برای مبتدیان یک مزیت است، از جمله موارد اولیه مانند کپی و چسباندن
توسعه برنامه اندروید در جاوا و کاتلین. از یک مبتدی کامل، ساختن اپلیکیشن های واقعی را بیاموزید، نمونه کارها را در یک دوره مدرن با آخرین بهترین تمرین بسازید! اندروید 14 آماده است!
درباره این دوره
Bootcamp توسعه اندروید یک دوره آموزشی کاملاً جدید و بهروز است که مقدمهای عالی با مفاهیم و مهارتهای واقعی اندروید مورد نیاز برای تبدیل شدن به یک برنامهنویس موفق اندروید در سال 2024 ارائه میدهد. چه مبتدی کامل باشید و چه در حال آمدن باشید. از زبان یا پلتفرم دیگری، این دوره از راهاندازی و نصب اندروید استودیو تا ساخت برنامههای واقعی مفید و عالی میرود. شما درک عمیقی از جنبه های مهم اصلی توسعه برنامه اندروید به دست خواهید آورد و توسط یک معلم کاملاً ماهر به شما آموزش داده خواهد شد که از یک حرفه کاملاً متفاوت به مهندس ارشد اندروید در یک شرکت بزرگ بریتانیایی که برنامه های کاربردی را تولید می کند تغییر داده است. میلیون ها کاربر.
*با به دست آوردن پایه ای در XML و جاوا شروع کنید - به Kotlin، Fragments، RecyclerViews و موارد دیگر بروید*
این دوره از شما حمایت نمیکند، یا از شما میخواهد در هنگام تایپ چیزهایی که نمیفهمید کپی کنید. هیچ مفهوم مهمی نادیده گرفته نمی شود یا بدیهی تلقی نمی شود. نه، شما آن درک عمیقی را خواهید داشت که منجر به تسلط می شود.
*یک دوره آموزشی منحصر به فرد اندروید که یک برنامه درسی کاملاً یکپارچه ارائه می دهد*
بسیاری از دورههای اندروید، تعدادی از مفاهیم را به صورت مجزا آموزش میدهند. برای مثال ممکن است بخشی در جاوا جدا از سایر بخشهای «اندروید» ببینید. اما اندروید اینگونه کار نمی کند! Android/Java/XML همگی به شدت در هم تنیده شدهاند و مهارتهای ما در همه زمینهها با کسب تسلط در حال توسعه است، پس چرا آنها را به صورت مجزا تجربه کنیم؟
در این دوره، آنچه را که باید بدانید، در لحظه ای که باید بدانید، یاد خواهید گرفت! چه با فایلهای چیدمان کار کنید، چه برنامهنویسی در جاوا، میتوانید مطمئن باشید که مفاهیم کلیدی - از متغیرها، کلاسها و روشها گرفته تا ارث بردن، رابطها و خیلی چیزهای دیگر - در لحظهای که مرتبط هستند، معرفی میشوند و بهطور یکپارچه با بقیه مطابقت دارند. دوره.
درباره من
من در حال حاضر به عنوان مهندس ارشد اندروید برای یک شرکت بزرگ بریتانیایی مشغول به کار هستم، متولد و در حال حاضر در شمال انگلستان زندگی می کنم، اما برنامه نویسی جایی نبود که کارم را شروع کردم.
با داشتن یک حرفه موفق به عنوان یک معلم موسیقی کاملاً ماهر و نوازنده حرفه ای، از تدریس به توسعه نرم افزار تغییر جهت دادم و خودم آموزش می دادم. من گواه این هستم که برای اینکه یک برنامهنویس اندرویدی بسیار موفق باشید، به مدرک علوم کامپیوتر یا سالها تجربه تجاری نیاز ندارید.
علاوه بر این، از آنجایی که من سالها در زمینه تدریس آموزش میبینم، در تفکیک موضوعات پیچیده به روشهایی که به راحتی قابل درک و جذاب باشد مهارت بالایی دارم، و در ایجاد برنامه درسی که در آن مفاهیم به شکلی لذتبخش معرفی میشوند، مهارت دارم. ، به شیوه ای روان، همیشه بر اساس مهارت های موجود خود و در حین کسب مهارت های جدید.
بنابراین، بهعنوان کسی که روزی تصمیم گرفت درست مانند شما در حال حاضر وارد توسعه برنامههای اندروید شود، و بهعنوان یک معلم کاملاً واجد شرایط، موقعیت منحصربهفردی دارم تا شما را در مسیر شما برای تبدیل شدن به یک توسعهدهنده اندروید راهنمایی کنم. راهی که سرگرم کننده است، با دقت طراحی شده است، جذاب است، هرگز مورد حمایت قرار نمی گیرد، و شما را به همان اندازه که من - و هنوز هم هستم - در مورد یادگیری این مهارت شگفت انگیز هیجان زده می کند!
درباره شما (یا، الزامات دوره!)
این دوره برای شماست اگر:
میخواهید برنامههای Android بسازید
شما علاقه دارید که یک توسعهدهنده اندروید شاغل، یک مترجم آزاد، راهاندازی پروژههای خود شوید یا فقط میخواهید قدرت خود را در ساخت برنامههای موبایل واقعی امتحان کنید
شما هیچ تجربه برنامه نویسی قبلی ندارید، یا تجربه ای جز یک زبان/پلتفرم دیگر ندارید
شما دورهای میخواهید که ابزارهای واقعی را که توسعهدهندگان و حرفهایهای اندروید در دنیای واقعی استفاده میکنند، در یک برنامه درسی یکپارچه که به شما درک عمیقی از تمام مفاهیم کلیدی که یک توسعهدهنده اندروید برای داشتن یک حرفه موفق باید بداند، آموزش دهد.
در رابطه با آنچه که برای شرکت در این دوره نیاز دارید، به دو نکته زیر توجه کنید:
تجربه برنامه نویسی مطلقاً صفر مورد نیاز است (اگرچه اگر تجربه ای از برنامه نویسی دارید، خوب است!) - همه چیزهایی را که باید از ابتدا بدانید به شما آموزش داده می شود
شما به یک رایانه، یا رایانه شخصی (ویندوز) یا مک، با اتصال اینترنت نیاز دارید
سرفصل ها و درس ها
شروع شدن
Getting Started
Android Studio - دانلود و نصب (ویندوز و مک)
Android Studio - Download and Install (Windows & Mac)
Android Studio - راه اندازی
Android Studio - Setup
Android Studio - پروژه جدید و اولین نگاه
Android Studio - New Project & First Look
مبانی اندروید - قسمت 2: جاوا
Android Foundations - Part 2: Java
فایل های جاوا و زبان های برنامه نویسی
Java Files & Programming Languages
شروع برنامه نویسی: وادار کردن برنامه به انجام کاری
Starting to program: making the app do something
*مفهوم برنامه نویسی* - متغیرها
*Programming Concept* - Variables
اولین تمرین کدنویسی شما
Your First Coding Exercise
اعلان متغیرها
Declaring Variables
نظرات خود را بیابید: چگونه فایل های جاوا می دانند که در فایل طرح بندی چه چیزی وجود دارد
Find your views: how the java files know what's in the layout file
شنوندگان کلیک کنید: دکمه ها را کاری کنید
Click listeners: make the buttons do something
*مفهوم برنامه نویسی* - روش ها
*Programming Concept* - Methods
روش های نوشتن
Writing Methods
پارامترهای روش و انواع بازگشت
Method Parameters and Return Types
سازماندهی کد به روش ها و دامنه متغیر
Organising the code into methods & Variable Scope
گرفتن مقادیر از نماهای طرح
Capturing values from layout Views
استفاده از عملگرهای ریاضی برای محاسبه BMI و تبدیل رشته/int
Using mathematical operators to calculate BMI & String/int conversions
مقاصد ضمنی - انتقال به برنامه دیگر
Implicit Intents - Moving to another app
*چالش* - ایجاد فعالیت ها، اهداف و فهرست های جدید
*Challenge* - Creating New Activities, Intents, & Lists
*چالش* - صفحه نمایش دسرها را اضافه کنید
*Challenge* - Add The Desserts Screen
جزئیات چالش
Challenge Details
راه حل بخش بیابان/Codealong
Deserts Section Solution / Codealong
RecyclerViews: لیست های فوق العاده قدرتمند
RecyclerViews: Super-powered Lists
مقدمه ای بر RecyclerViews
Introduction to RecyclerViews
برنامه نمونه کارها: راه اندازی پروژه و افزودن وابستگی ها
Portfolio App: Project setup and adding dependencies
افزودن RecyclerView به طرح
Adding the RecyclerView to the layout
ایجاد طرح بندی آیتم RecyclerView
Creating the RecyclerView item layout
کلاس "پروژه" را بسازید
Make the 'Project' class
ایجاد آرایه "پروژه".
Creating the 'Project' array
Drawable ها را اضافه کنید و از شناسه ها در کد جاوا استفاده کنید
Add the Drawables and use the IDs in java code
*مفهوم برنامه نویسی* - وراثت
*Programming Concept* - Inheritance
*مفهوم برنامه نویسی* - روش های لغو
*Programming Concept* - Override Methods
مقدمه ای بر Abstract و متد 'toString()'
Intro to Abstract & the 'toString()' method
*مفهوم برنامه نویسی* - کلاس ها و روش های انتزاعی
*Programming Concept* - Abstract classes and methods
* مفهوم پاداش * - چند شکلی
*Bonus Concept* - Polymorphism
آداپتور RecyclerView و ViewHolder
The RecyclerView Adapter and ViewHolder
تکمیل ProjectsAdapter و ProjectsViewHolder
Completing the ProjectsAdapter and ProjectsViewHolder
لمس های پایانی قسمت 1 - حاشیه مورد، تصویر 'scaleType'
Finishing Touches Part 1 - Item margin, Image 'scaleType'
کارهای پایانی قسمت 2 - شعاع گوشه کارت، ارتفاع، حالت دادن به متن
Finishing Touches Part 2 - Card Corner Radius, Elevation, Text Styling
فضای نام "ابزار" در فایل های طرح بندی
The 'tools' namespace in the layout files
*چالش* - برنامه ویترین لیست زیبا - لیست سطل خود را بسازید
*Challenge* - Beautiful List Showcase App - Make Your Own Bucket List
*چالش* - برنامه فهرست سطل
*Challenge* - The Bucket List App
جزئیات چالش
Challenge Details
راه حل بخش 1: LinearLayout 'weight'، 'View' ویجت، قابل ترسیم گرادیان
Solution part 1: LinearLayout 'weight', 'View' widget, gradient drawable
راه حل بخش 2: نوار رتبه بندی، اولین نگاه به سبک، نوع متغیر اعشاری شناور
Solution part 2: RatingBar, 'style' first look, 'float' decimal variable type
راه حل قسمت 3: "float" در مقابل "double"، حاشیه نویسی @DrawableRes، بیت های نهایی
Solution part 3: 'float' vs 'double', @DrawableRes annotation, final bits
Kotlin قسمت 1: بررسی اجمالی Kotlin، متغیرها، امنیت پوچ، اشکال زدایی
Kotlin Part 1: Kotlin Overview, Variables, Null Safety, Debugging
کاتلین - نمای کلی بخش
Kotlin - Section Overview
ایجاد یک پروژه جدید Kotlin/ابتدا به کد Kotlin نگاه کنید
Creating a new Kotlin Project / First look at Kotlin code
ConstraintLayout 3 - مطابقت با محدودیت ها و درصد ارتفاع/عرض
ConstraintLayout 3 - Match Constraints & Percentage Height/Width
افزودن BottomNavigationView و Fragment Container در طرح
Adding a BottomNavigationView and Fragment Container in the layout
دارایی های برداری - اضافه کردن نمادها به برنامه ما
Vector Assets - Adding icons to our app
فایل های منبع منو - افزودن موارد به BottomNavigationView
Menu Resource Files - Adding items to a BottomNavigationView
Kotlinx Synthetic منسوخ شد! (و تاریخچه مختصری از یافتن Views در اندروید)
Kotlinx Synthetic Deprecated! (And a brief history of finding Views on Android)
ViewBinding - بهترین راه فعلی برای یافتن Views
ViewBinding - The current best way to find Views
مقدمه ای بر Fragments
Introduction to Fragments
تنظیم پروژه ما برای Fragments و فایل build.gradle پروژه توضیح داده شده است
Setting our project up for Fragments, & the project build.gradle file explained
اضافه کردن اولین قطعه ما
Adding our first fragment
تعویض قطعات
Switching Fragments
* مفهوم برنامه نویسی * - رابط ها
*Programming Concept* - Interfaces
*مفهوم برنامه نویسی* - پیاده سازی رابط ها
*Programming Concept* - Implementing Interfaces
روش های مختلف پیاده سازی رابط و کلاس های ناشناس
Different ways of implementing an interface, & Anonymous Classes
پیاده سازی OnNavigationItemSelectedListener
Implementing the OnNavigationItemSelectedListener
Fragment Layout 1 - بخش سرصفحه و ویژگی "contentDescription".
Fragment Layout 1 - Header section & the 'contentDescription' attribute
Fragment Layout 2 - فیلدهای "Record" و استفاده از ویژگی های تم در فایل های طرح بندی
Fragment Layout 2 - The 'Record' fields & using theme attributes in layout files
کپی کردن فایل های طرح بندی
Copying layout files
Viewbinding در Fragments
Viewbinding in Fragments
تنظیم شنوندگان کلیک و «زمینه» در Fragments
Setting up the click listeners, and 'context' in Fragments
عناوین نوار ابزار پویا
'Dynamic' Toolbar Titles
* چالش کوچک * - بخش دوچرخه سواری را کامل کنید و خودتان صفحه را ویرایش کنید
*Mini Challenge* - Complete the Cycling Fragment and Edit Screen yourself
*مفهوم برنامهنویسی* - بیان "وقتی".
*Progamming Concept* - The 'When' Expression
*کارگاه* - تغییر بیانیه ها
*Workshop* - Switch Statements
*کارگاه* - When Expression قسمت 1
*Workshop* - When Expression part 1
*کارگاه* - When Expression قسمت 2
*Workshop* - When Expression part 2
اعمال "زمان" در پروژه ما
Applying 'when' to our project
کد "منسوخ شده".
'Deprecated' code
منوی گزینه ها
Options Menu
پاسخ به کلیک های آیتم های منو
Responding to menu item clicks
چرخه حیات فعالیت
The Activity Lifecycle
چرخه حیات فعالیت - نمای کلی بخش
The Activity Lifecycle - Section Overview
چرخه حیات فعالیت چیست؟
What is the Activity Lifecycle?
onCreate و onDestroy - و نحوه "پایان" یک فعالیت
onCreate and onDestroy - and how to "finish" an Activity
onStart و onStop
onStart and onStop
onResume و onPause
onResume and onPause
روشهای چرخه حیات - موارد استفاده رایج
Lifecycle Methods - Common Use Cases
استفاده از مورد 1: تازه کردن داده ها
Use case 1: Refreshing Data
در راه اندازی مجدد
onRestart
مورد استفاده 2: توقف موقت فعالیت برنامه
Use case 2: Pausing app activity
استفاده از مورد 3: پاکسازی در هنگام خروج (خطر onDestroy، بهینه سازی واردات)
Use Case 3: Cleaning up on exit (the danger of onDestroy, optimizing imports)
onDestroy در عمل، و ذخیره اولین فایل ما!
onDestroy in practice, and saving our first file!
*مفهوم برنامه نویسی* - پاسخ به تماس
*Programming Concept* - Callbacks
*کارگاه* - پاسخ به تماس
*Workshop* - Callbacks
قطع کردن دکمه برگشت - onBackPressed
Intercepting the Back Button - onBackPressed
دست زدن به دکمه برگشت، روش جدیدتر/یک مشکل در راهنمایی
Back Button handling, newer method / A snag in the guidance
AlertDialog: مقدمه و اصول
AlertDialog: Introduction, and basics
AlertDialog: دکمه ها
AlertDialog: Buttons
AlertDialog: نمایش های سفارشی
AlertDialog: Custom Views
چرخش دستگاه
Device Rotation
*مفهوم برنامه نویسی* - ذخیره سازی کلید ارزش
*Programming Concept* - Key-Value Storage
SavedInstanceState
SavedInstanceState
*مفهوم برنامه نویسی* - نقشه ها
*Programming Concept* - Maps
*کارگاه* - نقشه ها قسمت 1
*Workshop* - Maps part 1
*کارگاه* - نقشه ها قسمت 2
*Workshop* - Maps part 2
مقدمه ای بر چرخه حیات قطعه
Introduction to The Fragment Lifecycle
راه اندازی زمین بازی ما برای قطعات
Setting up our Playground for Fragments
چرخه حیات قطعه در عمل
The Fragment Lifecycle in Action
onAttach و onDetach - راهی که یک Fragment می تواند به یک Activity دسترسی پیدا کند
onAttach and onDetach - a way that a Fragment can access an Activity
SharedPreferences
SharedPreferences
SharedPreferences - نمای کلی بخش
SharedPreferences - Section Overview
انتقال فایل ها به بسته های جدید - سازماندهی کد ما
Moving files into new packages - Keeping our code organised
ویرایش فعالیت ضبط - ساخت طرح
Edit Record Activity - Building the layout
مقدمه ای بر SharedPreferences
Introduction to SharedPreferences
انواع SharedPreferences
Types of SharedPreferences
ذخیره سوابق ما - قرار دادن مقادیر در SharedPreferences
Saving our records - Putting values into SharedPreferences
بازیابی سوابق ما - دریافت مقادیر از SharedPreferences
Restoring our records - Getting values from SharedPreferences
اشکال زدایی یک مشکل چرخه زندگی - نمایش به روز رسانی رکورد
Debugging a Lifecycle issue - Displaying record updates
بهبود UX ویرایش رکورد (تجربه کاربر)
Improving the Edit Record UX (User Experience)
مشکل مقداردهی اولیه - مشکل فیلدهایی که به "Context" نیاز دارند...
Property initialization issue - The problem with fields that need 'Context'...
*پایه های کاتلین* - Lazy Initialization قسمت 1
*Kotlin Foundations* - Lazy Initialization Part 1
*پایه های Kotlin* - Lazy Initialization قسمت 2 - موارد استفاده رایج
*Kotlin Foundations* - Lazy Initialization Part 2 - Common Use Cases
پاک کردن رکورد - حذف مقادیر از SharedPreferences
Clearing a record - Removing values from SharedPreferences
Refactoring به یک EditRecordActivity
Refactoring into a single EditRecordActivity
*مفهوم برنامه نویسی* - بازیگری
*Programming Concept* - Casting
دریافت و ارسال داده های صفحه ما
Receiving and Casting our ScreenData
با استفاده از ScreenData
Using the ScreenData
Refactoring - ارسال شی ScreenData جدید
Refactoring - Passing the new ScreenData object
* راه حل چالش کوچک * - نمایش رکوردهای دوچرخه سواری
*Mini Challenge Solution* - Displaying the Cycling Records
*پاداش* - مدیریت روش منسوخ getSerializableExtra
*Bonus* - Handling the deprecated getSerializableExtra method
پاک کردن فایل های SharedPreference
Clearing SharedPreference files
ارائه گفتگوی تایید
Providing a confirmation dialog
اسنک بار
Snackbars
*بنیادهای کاتلین* - ثابت
*Kotlin Foundations* - Constants
استخراج برخی از ثابت ها - مقدمه ای بر مقادیر و توابع "سطح بالا".
Extracting some constants - Introduction to 'Top Level' values and functions.
*مفهوم برنامه نویسی* - ایستا
*Programming Concept* - Static
*بنیادهای کاتلین* - اشیاء نامگذاری شده
*Kotlin Foundations* - Named Objects
*بنیادهای کاتلین* - شیء همراه
*Kotlin Foundations* - Companion Object
تبدیل ثابت های ما به اشیاء همراه
Refactoring our constants into companion objects
آیا باگ احتمالی را متوجه شدید؟!
Did you spot the potential bug?!
پشته Activity Back Stack و "Launch Modes"
The Activity Back Stack, and "Launch Modes"
تشخیص زمانی که کاربر "فلش بالا" را فشار می دهد
Detecting when a user presses the "Up Arrow"
تم روشن و تاریک
Light & Dark Theme
تعریف «سبک ها»
Defining 'Styles'
نمادهای برنامه
App Icons
*چالش* - ViewPagers
*Challenge* - ViewPagers
ViewPagers - بررسی اجمالی چالش
ViewPagers - Challenge Overview
Codealong - راهاندازی پروژه Android 14 و Material 3
Codealong - Android 14 & Material 3 Project Setup
Codealong - پیاده سازی ViewPager2
Codealong - Implementing ViewPager2
Codealong - اضافه کردن TabLayout
Codealong - Adding a TabLayout
نمایش نظرات