1 ارسال در این موضوع قرار دارد

آموزش برنامه نویسی Kotlin

Kotlin چیست؟

Kotlin (کاتلین) یک زبان برنامه‌نویسی‌ست که با استفاده از آن میتوان برنامه نویسی اندروید را توسعه داد. نسخه های اخیر اندروید استودیو به طور رسمی از کاتلین پشتیبانی می‌کنن، مسئله‌ای که در Google IO 2017 اعلام شد.

kotlin تبدیل به bytecode جاوا میشود پس بنابراین به خوبی java میتونه روی اندروید اجرا بشه و از این نظر تفاوتی وجود نخواهد داشت. و اینکه میشه توی یک پروژه اندروید همزمان از kotlin و java استفاده کرد، بنابراین حتی اگر خیلی کم با کاتلین آشنا هستید باز هم میتونید بخشی از پروژه‌هاتون رو با کاتلین انجام بدید.

چرا Kotlin؟

دلیل اول اینکه با کاتلین میتونیم کدهایی تمیزتر و خواناتر بنویسیم. میدونیم که زبان جاوا boiler code زیاد داره. boiler code به کدهایی میگیم که جز syntax زبان هستن ولی همیشه بدون دلیل تکرار میشن و میشد حذفشون کرد.

 

 

1 کاربر پسند دیده است

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط Farzad Sarseifi
      دوره پیشرفته ‌آموزشی اندروید

      🔻آخرین دوره سال ۹۷
      📍دوره پیشرفته برنامه نویسی اندروید
      💭مدرس: فرزاد سرسیفی
      تماس:  ۸۸۵۰۸۰۸۰ -۸۸۵۵۴۲۱۷ -۸۸۵۵۴۲۱۳
      لینک ثبت نام:
      https://goo.gl/3fwHKM
       
    • توسط Farzad Sarseifi
      آموزش پیاده سازی دیتابیس اندروید همراه با مثال عملی
      در این اموزش میتوانید یک دیتابیس اندروید ایجاد کنید که توانایی افزودن اطلاعات،ویرایش اطلاعات ،حذف و لیست گیری اطلاعات باشید.
       
      ابتدا  یک کلاس برای ایجاد SqliteopenHelper دیتایس و جداول ایجاد میکنیم و متدهای مورد نظر را نیز در ادامه مینویسیم
      import java.util.ArrayList; import java.util.HashMap; import java.util.Hashtable; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.DatabaseUtils; import android.database.sqlite.SQLiteOpenHelper; import android.database.sqlite.SQLiteDatabase; public class DBHelper extends SQLiteOpenHelper { public static final String DATABASE_NAME = "MyDBName.db"; public static final String CONTACTS_TABLE_NAME = "contacts"; public static final String CONTACTS_COLUMN_ID = "id"; public static final String CONTACTS_COLUMN_NAME = "name"; public static final String CONTACTS_COLUMN_EMAIL = "email"; public static final String CONTACTS_COLUMN_PHONE = "phone"; private HashMap hp; public DBHelper(Context context) { super(context, DATABASE_NAME , null, 1); } @Override public void onCreate(SQLiteDatabase db) { // TODO Auto-generated method stub db.execSQL( "create table contacts " + "(id integer primary key, name text,phone text,email text)" ); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO Auto-generated method stub db.execSQL("DROP TABLE IF EXISTS contacts"); onCreate(db); } public boolean insertContact (String name, String phone, String email) { SQLiteDatabase db = this.getWritableDatabase(); ContentValues contentValues = new ContentValues(); contentValues.put("name", name); contentValues.put("phone", phone); contentValues.put("email", email); db.insert("contacts", null, contentValues); return true; } public Cursor getData(int id) { SQLiteDatabase db = this.getReadableDatabase(); Cursor res = db.rawQuery( "select * from contacts where id="+id+"", null ); return res; } public int numberOfRows(){ SQLiteDatabase db = this.getReadableDatabase(); int numRows = (int) DatabaseUtils.queryNumEntries(db, CONTACTS_TABLE_NAME); return numRows; } public boolean updateContact (Integer id, String name, String phone, String email) { SQLiteDatabase db = this.getWritableDatabase(); ContentValues contentValues = new ContentValues(); contentValues.put("name", name); contentValues.put("phone", phone); contentValues.put("email", email); db.update("contacts", contentValues, "id = ? ", new String[] { Integer.toString(id) } ); return true; } public Integer deleteContact (Integer id) { SQLiteDatabase db = this.getWritableDatabase(); return db.delete("contacts", "id = ? ", new String[] { Integer.toString(id) }); } public ArrayList<String> getAllCotacts() { ArrayList<String> array_list = new ArrayList<String>(); //hp = new HashMap(); SQLiteDatabase db = this.getReadableDatabase(); Cursor res = db.rawQuery( "select * from contacts", null ); res.moveToFirst(); while(res.isAfterLast() == false){ array_list.add(res.getString(res.getColumnIndex(CONTACTS_COLUMN_NAME))); res.moveToNext(); } return array_list; } }  
      سپس واسط کاربری گرافیکی Layout را طراحی میکنیم  activity_main.xml
      <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/scrollView1" android:layout_width="match_parent" android:layout_height="wrap_content" tools:context=".MainActivity" > <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="370dp"> <EditText android:id="@+id/editTextName" android:layout_width="match_parent" android:layout_height="wrap_content" android:ems="10" android:inputType="text" > </EditText> <EditText android:id="@+id/editTextEmail" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="22dp" android:ems="10" android:inputType="textEmailAddress" /> <EditText android:id="@+id/edit_phone" android:layout_width="match_parent" android:layout_height="wrap_content" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="28dp" android:text="@string/save" /> </LinearLayout> </ScrollView>
      برای ذخیره اطلاعات در دیتابیس.میبایستی در اکتیویتی دیتابیس را new کنید تا بتوانید که اطلاعات را در دیتابیس فراخوانی کنید
      افزودن اطلاعات :
      public class MainActivity extends AppCompatActivity { DBHelper mydb; EditText editTextName,editTextEmail,edit_phone; Button button1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); editTextName=(EditText)findViewById(R.id.editTextName); editTextEmail=(EditText)findViewById(R.id.editTextEmail); edit_phone=(EditText)findViewById(R.id.edit_phone); button1=(Button)findViewById(R.id.button1); mydb = new DBHelper(this); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String name=editTextName.getText().toString(); String email=editTextEmail.getText().toString(); String phone=edit_phone.getText().toString(); mydb.insertContact(name,email,phone); } }); }  
      بزودی آموزش تکمیل میگردد.
       
      دوره آموزشی اندروید
      http://android-learn.ir/online-learning/android-development-training/guruPrograms/1-android-programming/2-programming-mobile-applications-for-android
       
       


       

       
    • توسط Seyed-Hossein-Akbari
      الگوهای زیادی برای طراحی برنامه نویسی هستند که بستگی به سلیقه شما دارند از آنها استفاده کنید یا نکنید ...
       
      برای آموزش Singleton Design Pattern کلیک کنید
       
      برای سفارش پروژه پیام بگذارید
    • توسط Farzad Sarseifi

      کمپ تابستانه  برنامه نویسی اندروید
      👍مدرس  : فرزاد سرسیفی
      👍تاریخ برگزاری : 6 الی   9  شهریور 1397
      👍تلفن های ثبت نام : ۸۸۵۵۴۲۱۷ -۸۸۵۰۸۰۸۰
      👍همراه با نهار و پذیرایی
      https://goo.gl/vPF2e5
      معرفی دوره و ثبت نام
       
    • توسط soroush_l
      سلام. سوالم اینه که چطور میشه اطلاعات موجود در یک تگ script از یک html رو استخراج کرد؟ برای مثال script زیر رو در نظر بگیرید:
      <script id="ld" type="application/ld+json">{"@context": "http://schema.org/","@type": "Recipe","name": "طرز تهیه معجون پرتقال و هویج","image":"https://mamifood.org/images/files/Article/ART4643.jpg","author": {"@type":"Person","name":"مامی فود"},"datePublished": "7-26-2018 ","description": "طرز تهیه معجون پرتقال و هویج یک نوشیدنی سالم و آبمیوه طبیعی میکس شده با طعم سیب زمینی شیرین را در مامی فود دنبال کنید و از خوردن آن لذت ببرید. مامی فود لذت غذای خانگی","keywords":"انواع آبمیوه,سیب زمینی شیرین,آبمیوه طبیعی,نوشیدنی سالم,نوشیدنی خنک,رژیم دیابتی","prepTime": "PT10M","cookTime": "PT0M","totalTime": "PT10M","recipeYield": "1","recipeIngredient": ["سیب زمینی شیرین : 1 عدد","آب پرتقال : 2 عدد","هویج : 1 عدد","نعناع : برای تزئین"],"recipeInstructions": "<p style='text-align: justify;'>&nbsp; حتما از خودتان میپرسید: چرا برای تهیه آبمیوه باید از سیب زمینی شیرین استفاده کنیم؟ دلایل این امر کاملا روشن است؛ مثل هر میوه ی تازه و سالمی این ریشه ی خوراکی سرشار از ویتامین C، فیبر و آنتی اکسیدان است. ضمن اینکه به سیستم گوارش کمک فراوانی میکند و باعث سهولت هضم غذا میشود. اما مهم ترین نکته در مورد خواص این محصول این است که چون قند طبیعی دارد برایبیماران دیابتی بسیار مفید است و باعث کنترل قند خون میشود.</p> <p style='text-align: justify;'>برای تهیه 200 سی سی از این معجون ابتدا، سیب زمینی، پرتقال و هویج را پوست بگیرید. برای آبدار شدن آن می&zwnj;توانید برای مدتی آن را در آب قرار دهید، سپس هر سه را به همراه چند تکه یخ در میکسر بریزید و توسط مخلوط کن خوب هم بزنید تا مخلوط و کاملا یکدست شوند. این معجون یکی از پرانرژی ترین معجون&zwnj;ها می&zwnj;باشد. برای تزئین این معجون خوشمزه می&zwnj;توانید از چند برگه نعنا روی آن استفاده کنید. <br /><br /><br /></p> <p style='text-align: center;'><img src='/images/files/article/noshidani/carrot-orange-sweet-potato-juicing-recipe-2178.jpg' alt='معجون پرتقال و هویج' width='600' /></p>","interactionStatistic": [{"@type": "InteractionCounter","interactionType": "http://schema.org/Comment","userInteractionCount": "8"},{"@type": "InteractionCounter","interactionType": "http://schema.org/WatchAction","userInteractionCount": "111"}],"review": [{"@type": "Review","author": {"@type":"Person","name":"هانیه قلیزاده"},"datePublished": "7-28-2018 ","reviewBody": "<p>تلخ نمیشه اگر بمونه؟؟؟</p>","reviewRating": {"@type": "Rating","bestRating": "5","ratingValue": "5","worstRating": "1"}},{"@type": "Review","author": {"@type":"Person","name":"معصومه رشيدآبادي"},"datePublished": "7-24-2018 ","reviewBody": "<p>عالي</p>","reviewRating": {"@type": "Rating","bestRating": "5","ratingValue": "5","worstRating": "1"}},{"@type": "Review","author": {"@type":"Person","name":"اکرم اسدی"},"datePublished": "7-18-2018 ","reviewBody": "<p>باید امتحانش کنم</p>","reviewRating": {"@type": "Rating","bestRating": "5","ratingValue": "5","worstRating": "1"}},{"@type": "Review","author": {"@type":"Person","name":"مریم قائم مقامیان"},"datePublished": "7-18-2018 ","reviewBody": "<p>جالبه...بستگی به ذائقه داره</p>","reviewRating": {"@type": "Rating","bestRating": "5","ratingValue": "5","worstRating": "1"}},{"@type": "Review","author": {"@type":"Person","name":"ایران ثابتی جاغرق"},"datePublished": "7-9-2018 1","reviewBody": "<p>به امحانش می ارزه</p>","reviewRating": {"@type": "Rating","bestRating": "5","ratingValue": "5","worstRating": "1"}},{"@type": "Review","author": {"@type":"Person","name":"زهرا اصلانی"},"datePublished": "7-4-2018 4","reviewBody": "<p>فوق‌العاده</p>","reviewRating": {"@type": "Rating","bestRating": "5","ratingValue": "5","worstRating": "1"}},{"@type": "Review","author": {"@type":"Person","name":"فاطمه کرقلی "},"datePublished": "7-4-2018 1","reviewBody": "<p>با آب میوه طبیعی موافقم</p>","reviewRating": {"@type": "Rating","bestRating": "5","ratingValue": "5","worstRating": "1"}},{"@type": "Review","author": {"@type":"Person","name":"فاطمه کرقلی "},"datePublished": "7-4-2018 1","reviewBody": "<p>عالی و مخصوص تابستان </p>","reviewRating": {"@type": "Rating","bestRating": "5","ratingValue": "5","worstRating": "1"}}]}</script> توی این script اطلاعات یک غذا تو یه سایت آموزش آشپزی موجود هست. مثلا جلوی عبارت "name" اسم غذا رو نوشته جلوی عبارت "cookTime" زمان پختش رو نوشته. چطور میشه این مقادیر رو با دستورات jsoup در جاوا یا کاتلین استخراج کرد؟ خیلی تو اینترنت جستجو کردم ولی چیزی مشابه این پیدا نکردم.

  • دوره آموزشی اندروید آموزش ویدئویی اندروید اندروید کاپ سورس اندروید دوره اندروید آموزش Kotlin آموزش برنامه نویسی ios مهارت های فروش دانلود اپلیکیشن طراحی اپلیکیشن
  • فایل