1. آموزش گام به گام اندروید با زبان کاتلین Kotlin
  2. اولین پروژه با کاتلین

یک پروژه ساده به زبان کاتلین

ما آموزش کاتلین رو در ویندوز انجام می دیم و در این مقاله از Intellij IDEA برای ویرایش و توسعه کدها استفاده می کنیم. اما در مقالات بعدی از Android Studio استفاده خواهیم کرد چون قصد داریم برای اندروید برنامه بنویسیم بهتر است از اندروید استودیو بهره ببریم.اگر بر روی سیستم نصب دارید که چه بهتر اگر نه که ابتدا باید نصب کنید.

کاتلین برای کار کردن نیاز به JVM یا ماشین مجازی جاوا داره. نیاز هست جاوا ویرچوال ماشین بر روی کامپیوتر خودمون نصب داشته باشیم.

زیاد نمیخوام وارد جزییات بشم چون کسانی که به سراغ کاتلین میان قطعا با JVM و جاوا آشنایی دارن.

ایجاد پروژه به زبان کاتلین در Intellij IDEA

خب خیلی سریع اولین پروژه رو در کاتلین بنویسیم.

  • IDE قدرتمند Intellij IDEA رو باز کنید و بر روی Create New Project کلیک کنید.

intellij idea

یا از این طریق اقدام کنید:

file>new>project

پروژه کاتلین

 

 

  • در پنجره ی باز شده از سمت چپ kotlin رو انتخاب کنید. و بعد در پنجره ی راست همانطور که در تصویر زیر مشاهده می کنید بر روی kotlin(JVM) کلیک کنید و بعد next رو بزنید.

آموزش کاتلین

  • حالا باید نام پروژه رو بنویسیم که ما اسم chasboon رو انتخاب می کنیم و بعد بر روی دکمه finish کلیک می کنیم.

kotlin project

  • حالا در پنجره ی سمت چپ پوشه های ایجاد شده را مشاهده می کنید. برای اینکه یک کلاس کاتلین ایجاد کنیم بر روی پوشه ی src راست کلیک کرده و بعد new>Kotlin File/Class را انتخاب کنید.

kotlin class

 

  • یک نام برای کلاس انتخاب کنید. ما HiChasboon رو انتخاب کردیم.

kotlin class

  • بعد از کلیک بر روی OK میبینید که یک فایل خالی ایجاد شده! حالا نگران نباشید. با یک حرکت ضربتی تابع کاتلین را می نویسیم.

کلمه ی main رو تایپ کنید و tab رو بزنید. جالب بود نه؟

باید این کد رو ببینید:

fun main(args: Array<String>) {
    
}
  • خب ما میخواهیم یک کد بنویسیم با کاتلین که کلمه ی hello world رو در خروجی نمایش بده.

به این صورت عمل می کنیم:

fun main(args: Array<String>) {
println("hello world")
}

همانطور که میدونید واژه ی کلیدی println در جاوا برای چاپ خروجی استفاده می شد.

نکته: در زبان کاتلین نباید از سمی کالن در پایان خطوط استفاده کنید وگرنه باعث خطا در برنامه می شود!

  • برای مشاهده خروجی بصورت زیر عملی کنید:

بر روی آیکون کاتلین که کنار پنجره نمایش داده شده کلیک کنید و بعد Run HiCHasboon را کلیک کنید.

run kotlin class

  • در خروجی همچین چیزی را مشاهده می کنید!

kotlin export projectبله همانطور که مشاهده کردید کلمه ی hello world در خروجی چاپ شده.

تبریک میگم! اولین کد کاتلین رو باهم نوشتیم.

اگر شما از android studio استفاده می کنید می تونید همین مراحل رو با اندروید استودیو طی کنید. اما یادتون باشه قبلش پلاگین کاتلین رو از ریپوزیتوری دانلود کنید که حجمی تقریبا 63 مگابایتی داره.

حالا بیاید کدهای کاتلین و جاوا رو با هم مقایسه کنیم:

همین پروژه با کاتلین:

fun main(args : Array<String>) { 
  println("Hello world") 
}

همین پروژه با جاوا:

class HiChasboon{
    public static void main(String[] args) {
        System.out.println("Hello World"); 
    }
}

میبینید که کاتلین خیلی ساده تر و قابل فهم تر هست.

همچنین می توانید ویدیوهای آموزشی کاتلین را در اینجا مشاهده کنید:

آموزش اندروید با زبان کاتلین

با آموزش های بعدی کاتلین ما رو همراهی کنید و اگر سوالی داشتید حتما کامنت بذارید.

اولین پروژه با کاتلین - 3.8 از 5 بر اساس 150 رای

امتیاز کاربران

اولین پروژه با کاتلین
دیدگاه‌ها
ناصر ناصر 6 ماه پیش
سلام ی سوال داشتم، چطور میتونم با یک دکمه 2 تا اکتویتی باز کنم با فاصله زمانی 24 ساعت یا مثلا اگه امروز روش کلیک شد یه اکتویتی نشون بده و فردا که روش کلیک شد یه اکتیوتی دیگه باز بشه آیا همچين چیزی امکان پذیره؟
آرمان بابائی آرمان بابائی 6 ماه پیش
در برنامه‌نویسی همه چیز امکان پذیره. قطعا می‌شه. کمی جستجو کنید به جوابتون می‌رسید.
ripper ripper 11 ماه پیش
سلام من توی اندروید استدیو ک میخام ای دی های باتن های که ساختم رو توی قسمت کد نویسی معرفی کنم تا وقتی روش کلیک میشه دستورات اجرا کنه شناسایی نمیکنه.یعنی ایدی دکمه رو ک میدم ارور میده و نمیشناسه
محمد محمد 1 سال پیش
سلام چه زبانی برای ساخت اپلیکیشن راحت تر
آرمان بابائی آرمان بابائی 1 سال پیش
سلام. از نظر راحتی کاتلین نسبت به جاوا راحت تر هست و زمان یادگیری کمتری داره.
زضا زضا 2 سال پیش
سلام اقای بابائی وقتتون بخیر خسته نباشید من الان حدود 1 ماهی هست تصمیم گرفتم کاتلین رو شروع کنم برای پیش نیاز چندین شخصی ک برنامه نویسی میکردن راهنمایی کردن ک الگوریتم رو یاد بگیرم ،منم یاد گرفتم فقط تنها مشکلی ک الان دارم واسه اینکه بتونم سیستم ب adb کانکت بشه و بعد بتونم اندروید دیوایس یا شبیه ساز ناکس رو اندروید استودیو کانکک کنم یا اینکه از طریق دستورات cmd بتونم به ریشه اندروید در شبیه ساز ناکس دسترسی داشته باشم مشکل دارم و ناکس نه در اندروید استودیو و ن در cmd کانکت نمیشه حتی پورت رو هم درست متصل کردم وقتی دستورات زیرو میزنم adb devices adb shell root:android این گزینه رو نمیاره یه اسم دیگه داره ک اصلی هیچ ربطی به شبیه ساز و یا ریشه اصلی نداره بنظرتون چطوری میتونم مشکل رو رفع کنم و در اخر ممنون که راهنمایی میکنید
آرمان بابائی آرمان بابائی 2 سال پیش
برای همچنین سوال تخصصی باید سوالتون رو در قسمت بپرس سایت بیان کنید تا دوستان ببینن و بهتون کمک کنند.
محمد محمد 2 سال پیش
سلام . من میخوام بجای اندروید استودیو با intellij. بذنامه نویسی کنم . چطور میتونم شبیه ساز اندروید رو به intellij متصل کنم و ایا باید sdk. رو جدا نصب کنم ؟
آرمان بابائی آرمان بابائی 2 سال پیش
این دو IDE فرق چندانی باهم ندارن. پیشنهاد میکنم برای سادگی و همچنین تست سریع و روان تر از شبیه ساز Genymotion استفاده کنید.
متین متین 3 سال پیش
سلام بین جاوا و کاتلین کدوم بهتره؟ من برای برنامه نویسی اندروید و ای او اس و همین ساعت و.... میخوام فقط من 17سالمه و دنبال زبانی هستم که بتونم باهاش زندگی خودمو بگذرونم و سریع یاد بگیرم
آرمان بابائی آرمان بابائی 3 سال پیش
نمیشه گفت کدوم بهتره. ولی کاتلین هم سریع تر هست و هم یادگیری آسون تری نسبت به جاوا داره و اومده تا جای جاوا رو بگیره. من در دوره آموزشی ویدیویی کاتلین مزایای کاتلین رو نام بردم که می تونید ببینید.
کامیاب کامیاب 3 سال پیش
سلام خسته نباشید...ببخشید یه سوال تقریبا بی ربط...من به مشکل خوردم...ادیت تکس(plaintext) اضافه کردم ولی وقتی داخلش مینویسم بجای اینکه بره خط بعدی از صفحه میزنه بیرون..یعنی میخام بصورت خودکار وقتی خط تموم شد بره خط بعدی ...و هرچی میگردم گزینشو پیدا نمیکنم ..میشه راهنمایی کنید ؟
آرمان بابائی آرمان بابائی 3 سال پیش
سلام. سوالی دارید در قسمت پرسش پاسخ بنویسید تا بهتر و سریعتر پاسخ داده بشه. به این شکل عمل کنید: android:maxLines="20" این خط رو اضافه کنید به editText
رامین رامین 3 سال پیش
سلام.برای شروع برنامه نویسی کدوم برنامه رو به مبتدیا پیشنهاد میکنین؟جاوا!؟ کاتلین!؟ ری اکتیو!؟ و یا...!؟؟ کدومش راحتتره یاد گرفتنش برای اونایی که هیچ اطلاعی از برنامه نویسی ندارن و میخوان از اول شروع کنن؟؟
آرمان بابائی آرمان بابائی 3 سال پیش
سلام. خیلی سوال خوب و بجایی کردین. از اونجایی که کاتلین و جاوا فقط برای برنامه نویسی اندروید ایجاد نشدن و از این زبان ها در اکثر دستگاه ها( مانند اتومبیل، تلویزیون، ماشین لباسشویی، دستگاه خودپرداز بانک و موبایل) استفاده میشه پیچیدگی های خاص خودش رو در برنامه نویسی داره تا همگی دستگاه ها رو ساپورت کنه که همینطور در یادگیری سخت تر هست. اما ری اکت نیتو چون متمرکز بر روی پلتفرمهای موبایل هست، یادگیری آسون تر و ساده تری نسبت به کاتلین و اندروید داره. همچنین مقدماتی که برای شروع به یادگیری ری اکت نیتیو دارین اکما اسکریپت 6 هست که من آموزش اکما اسکریپت 6 رو به صورت رایگان دادم و می تونید قبل از شروع ری اکت نیتیو ابتدا اکما رو یاد بگیرید و بعد وارد یادگیری ری اکت بشید.
رامین رامین 3 سال پیش
ممنون جناب بابایی عزیز.طبق فرمایش شما شروع میکنم و پیش میرم.
آرمان بابائی آرمان بابائی 3 سال پیش
امیدوارم در راهی که قدم میذارید موفق باشید و همچنین ما پشتیبان شما هستیم.
کیمیا کیمیا 3 سال پیش
خیلی عالیه آموزش هاتون . موفق باشید.
آرمان بابائی آرمان بابائی 3 سال پیش
ممنون بابت فیدبک انرژی بخش شما.
شکوفه شکوفه 3 سال پیش
private val btnId = findViewById(R.id.button) as Button فهمیدم مشکل کجاست..باید این خط کدو داخل oncreat تعریف کنیم ن خارج از اون و البته بدون private :/
آرمان بابائی آرمان بابائی 3 سال پیش
بله کاملا حق با شماست. اگه دقت کرده باشید پروژه ای که من نوشتم برای تقریبا یکسال پیش هست و کاتلین دستخوش تغییراتی شده. من دوباره پروژه رو با اندروید استودیوی جدید و همچنین کاتلین جدید تست کردم و دیدم error می گیرم. بنابراین تصمیم گرفتم این پست رو آپدیت کنم. دوباره می تونید از این روشی که آپدیت شده استفاده کنید. ممنون از پیگیری شما دوست عزیز.
شکوفه شکوفه 3 سال پیش
Unable to instantiate activity ComponentInfo در مورد اینم سرچ کردم یعنی تنها خطی بود که تو logcat میشد چیزی ازش فهمید.. ولی به نتیجه نرسیدم گفته بودن داخل منیفست اکتیویتی رو رجیستر نکردی که رفتم دیدم انجام دادم این کارو
شکوفه شکوفه 3 سال پیش
val res = x.text.toString().toInt() + y.text.toString().toInt() سلام ...بابت اموزشتون ممنون، یه مشکلی داشتم، تو خط بالا زیر textخط میکشه و alt+enter هم که میزنم فایده ای نداره...
آرمان بابائی آرمان بابائی 3 سال پیش
به logcat در اندروید استویو برید و یه بار پروژه رو run کنید و بعد error رو بنوسید اینجا تا بررسی کنیم
شکوفه شکوفه 3 سال پیش
همینطور که میدونید تو محیط اندروید استدیو خطا رو دقیقا نمیگه چیه!! فقط میره رو خط کدی که ارور بهش مربوط میشه، میره رو خط ...Private val btnId=findView جایی که متغیر باتن رو تعریف کردیم
آرمان بابائی آرمان بابائی 3 سال پیش
گفتم که باید به logcat برید. اونجا خطا رو دقیقا میگه چیه.
شکوفه شکوفه 3 سال پیش
به logcat رفتم دیگه!! ن دقیقا نمیگه چیه!!! اگه میگفت ک خیلی خوب بود، ایمیلتونو لطف میکنید تا عکس بفرسم?
شکوفه شکوفه 3 سال پیش
خطی که ارور داخل logcat هست اینه که من چیزی نمیفمم ازش!! at com.example.shokoufe.kotlinproject.MainActivity.<init>(MainActivity.kt:12)
آرمان بابائی آرمان بابائی 3 سال پیش
شماره و ایمیل بنده در قسمت تماس با ما موجوده
شکوفه شکوفه 3 سال پیش
سلام ، ممنون از توضیحاتتون... این برنامه با این کدا مشکل داره .. شما توی ایکس ام ال ، ادیت تکست تعریف کردید ولی برا کدای جاوا تکست ویو
آرمان بابائی آرمان بابائی 3 سال پیش
دوست عزیز شما با دقت متن رو نخوندید.بنده دوتا editText گذاشتم و یک textView .من برنامه رو قبل از نوشتن یکبار اجرا میکنم و بعد در اختیار شما میذارم.
شکوفه شکوفه 3 سال پیش
سلام صبحتون بخیروخوشی...من تازه کوتلین رو با اموزش های شما شروع کردم، قبلا اندرویدو با جاوا کار کردم..برا همین به خودم شک کردم و کدای شما رو عینا کپی پست کردم ..باز هم کرش میکنه، بازم بررسی می کنم..ممنوون
آرمان بابائی آرمان بابائی 3 سال پیش
با سلام. خوشحالم که آموزشهای کاتلین رو با ما شروع کردید. یه نگاهی به آموزشهای ویدیویی من بندازین کمکتون می کنه.
sajad sajad 4 سال پیش
سلام سایتتون فوق العاده است چرا بخش دیدگاه ها نظرات جدید پایین تر هستن معمولا نظرات جدید بالاتر هستن
آرمان بابائی آرمان بابائی 4 سال پیش
ممنون از شما دوست عزیز
سید مهدی سید مهدی 4 سال پیش
درودو خدا قوت سپاس فراوان برای تلاش و لطفتون و آموزش های ساده و روانتون. همواره شاد و پیروز در پناه حق
آرمان بابائی آرمان بابائی 4 سال پیش
ممنون از شما دوست عزیز
نسیم نسیم 4 سال پیش
ممنون میشم ویدئو هم بزارید
آرمان بابائی آرمان بابائی 4 سال پیش
حتما دوست عزیز
رسول رسول 4 سال پیش
فیلمشو ک بززززارین عااااااالی میشه خیلی ممنون کالتین خخخخیلی از جاوا راحتره منتظر اموزش های بعدی البته از نوع فیلمش هسم ممنون
alireza alireza 4 سال پیش
عالیه ولی خیلی کم کم اموزش ها اپدیت میشود سریعتر باشید عشقید
علی علی 4 سال پیش
ادامه نداره آموزش خوبتون
آرمان بابائی آرمان بابائی 4 سال پیش
درود. با تشکر از شما.قطعا این آموزش ادامه داره و بهترین مرجع کاتلین به زبان پارسی خواهد بود.
سلام  سلام 4 سال پیش
آقا دستت درد نکنه خیلی عالیه
آرمان بابائی آرمان بابائی 4 سال پیش
خوشحالیم که مورد پسند قرار گرفته.

2021 © Copyright کليه حقوق مادی و معنوی براي چسبون محفوظ است و هرگونه کپی برداری پیگرد قانونی دارد.