مفاهیم پایه اندروید

آموزش جامع زبان‌های برنامه‌نویسی و محیط توسعه اندروید

زمان مطالعه: ۱۵ دقیقه

مفاهیم پایه برنامه‌نویسی اندروید

قبل از شروع توسعه اندروید، باید با مفاهیم پایه و ابزارهای اصلی آشنا شوید. در این مقاله، زبان‌های برنامه‌نویسی، محیط توسعه و مفاهیم اولیه را بررسی می‌کنیم.

زبان‌های برنامه‌نویسی

Kotlin - زبان رسمی اندروید

Kotlin زبان برنامه‌نویسی رسمی گوگل برای توسعه اندروید است که در سال ۲۰۱۷ معرفی شد. این زبان بر اساس JVM ساخته شده و کاملاً با Java سازگار است.

چرا Kotlin؟
  • کد کمتر: ۴۰٪ کمتر از Java
  • Null Safety: جلوگیری از NullPointerException
  • Extension Functions: اضافه کردن قابلیت به کلاس‌های موجود
  • Coroutines: برنامه‌نویسی غیرهمزمان ساده
  • Interoperability: سازگاری کامل با Java
// مثال ساده در Kotlin fun main() { val name = "اندروید گیک" println("سلام $name!") // Null Safety var nullableName: String? = null val length = nullableName?.length ?: 0 // Extension Function fun String.addExclamation() = "$this!" println(name.addExclamation()) }
Kotlin Null Safety Extension Functions Coroutines

Java - زبان سنتی

Java زبان سنتی توسعه اندروید است که هنوز هم در بسیاری از پروژه‌های قدیمی استفاده می‌شود. اگرچه Kotlin توصیه می‌شود، اما آشنایی با Java مفید است.

// مثال مشابه در Java public class Main { public static void main(String[] args) { String name = "اندروید گیک"; System.out.println("سلام " + name + "!"); // Null check String nullableName = null; int length = (nullableName != null) ? nullableName.length() : 0; } }
Java OOP Legacy Code
ویژگی Kotlin Java
Null Safety داخلی نیاز به بررسی دستی
Extension Functions پشتیبانی می‌کند پشتیبانی نمی‌کند
Coroutines پشتیبانی می‌کند نیاز به کتابخانه
سازگاری با Java ۱۰۰٪ ۱۰۰٪
توصیه گوگل بله خیر

Android Studio - محیط توسعه

معرفی Android Studio

Android Studio محیط توسعه یکپارچه (IDE) رسمی گوگل برای توسعه اندروید است که بر اساس IntelliJ IDEA ساخته شده است.

مراحل نصب Android Studio
  1. ۱ دانلود Android Studio از سایت رسمی گوگل
  2. ۲ نصب نرم‌افزار و انتخاب مسیر نصب
  3. ۳ دانلود و نصب Android SDK
  4. ۴ تنظیم Android Virtual Device (AVD)
  5. ۵ ایجاد اولین پروژه

ویژگی‌های کلیدی Android Studio

ابزارهای طراحی
  • Layout Editor
  • Vector Asset Studio
  • Image Asset Studio
  • Theme Editor
ابزارهای توسعه
  • Code Editor
  • Debugger
  • Profiler
  • APK Analyzer

مفاهیم پایه اندروید

۱. Activity

Activity یکی از اجزای اصلی اندروید است که نمایانگر یک صفحه در اپلیکیشن است. هر Activity یک چرخه حیات مشخص دارد.

class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } override fun onStart() { super.onStart() // Activity قابل مشاهده شد } override fun onPause() { super.onPause() // Activity در پس‌زمینه رفت } }

۲. Layout

Layout تعریف می‌کند که عناصر UI چگونه در صفحه نمایش داده شوند. در گذشته از XML استفاده می‌شد، اما امروزه Jetpack Compose توصیه می‌شود.

// مثال مشابه در Jetpack Compose @Composable fun HelloWorld() { Column { Text(text = "سلام دنیا!") Button(onClick = { /* عملیات */ }) { Text("کلیک کنید") } } }

۳. Intent

Intent برای ارتباط بین اجزای مختلف اپلیکیشن استفاده می‌شود. مثلاً برای انتقال از یک Activity به Activity دیگر.

// انتقال به Activity دیگر val intent = Intent(this, SecondActivity::class.java) intent.putExtra("message", "پیام از Activity اول") startActivity(intent) // دریافت داده در Activity دوم val message = intent.getStringExtra("message")

ساختار پروژه اندروید

پوشه‌های اصلی

app/
  • src/main/java/ - کدهای Kotlin/Java
  • src/main/res/ - منابع (تصاویر، فونت‌ها)
  • src/main/AndroidManifest.xml - تنظیمات اپ
  • build.gradle - تنظیمات پروژه
res/
  • layout/ - فایل‌های XML Layout
  • values/ - strings, colors, styles
  • drawable/ - تصاویر و آیکون‌ها
  • mipmap/ - آیکون اپلیکیشن

بهترین شیوه‌ها

نکات مهم برای مبتدیان
  • از Kotlin استفاده کنید: زبان رسمی و آینده اندروید
  • کد تمیز بنویسید: از نام‌گذاری مناسب استفاده کنید
  • مستندات بخوانید: همیشه از مستندات رسمی استفاده کنید
  • تمرین کنید: پروژه‌های کوچک بسازید
  • از Git استفاده کنید: کنترل نسخه را یاد بگیرید
اشتباهات رایج
  • نادیده گرفتن چرخه حیات Activity
  • عدم مدیریت حافظه
  • نوشتن کدهای سنگین در Thread اصلی
  • عدم تست کد

مراحل بعدی

حالا که مفاهیم پایه را یاد گرفتید، آماده یادگیری موضوعات پیشرفته‌تر هستید:

تکنولوژی‌های مدرن شروع دوره‌ها