Persian Software Engineers – Telegram
Persian Software Engineers
1.9K subscribers
353 photos
14 videos
84 files
303 links
تجربیات شخصی یک مهندس نرم افزار در آلمان‌.
کانال یوتیوب:
https://www.youtube.com/@Dev_Germany
ادمین کانال :
@mohamad_germany
Download Telegram
Channel photo updated
با سلام. با جلسه اول آموزش اندروید در خدمتتان هستم. پس از نصب فایلهای لازمه که آموزش نصب آن در پی دی اف ضمیمه شده کار خود را شروع میکنیم.
1)شروع ساخت پروژه
برنامه intellij را باز کنید.
اولین صفحه ای که میبینید صفحه welcome از محیط intellij هست. روی create new project کلیک کنید.حالا از سمت چپ android را انتخاب کرده و بعد از قسمت سمت راست application module را بزنید.
حالا توی صفحه ای که باز میشه اون بالا اسم app را بدید و به بقیه اش کاری نداشته باشید فقط حواستون باشه تیک
Create hello world
زده شده باشه.
. توی صفحه جدیدی که میاد باید مسیر sdk و jdk که نصب کردید را بدید. جلوی project sdk یک new نوشته. آن را بزنید.
سپس مسیری که jdk را نصب کردید بیارید. کافی هست روی پوشه ی نصب jdk برید و خوده پوشه را انتخاب کنید و اوکی کنید. مثلا اسم پوشه من هست jdk1.7.0_51 و خودشو انتخاب کردم و اوکی میکنیم.
حالا یه پنجره دیگه باز میشه. اندفعه به همین ترتیب برید و پوشه ی sdk رو انتخاب کرده و اوکی کنید.
قسمت پایین همانجا هم هست: Terget device
این یعنی اینکه چطوری اصلا برنامتونو خروجیش را ببینید. وقتی برنامه وب یا ویندوزی مینویسید خب خروجی را در خوده کامپیوتر میبینید. اما اینجا دارید برای سیستم عامل دیگری برنامه مینویسید. برای اجرا شدن یا باید داخل خود گوشی ببینید خروجی را یا از یک شبیه ساز موبایل استفاده کنید. شبیه سازهای زیادی هست اما خودintellij شبیه ساز داره و فعلا از همون استفاده میکنیم. پس فعلا فقط بزنید Emulator.
حالا next را بزنید و برید برای ساخت پروژه. کمی طول می کشد. صبر کنید.
حال سراغ کلیات یک پروژه اندروید خواهیم رفت، سمت چپ را نگاه کنید. در بالا اسم پروژتان و یک منوی کشویی هست. آن را باز کنید. دوتا پوشه ی مهم اینجا هست. اولیش هست res. فایلهای مربوط به صفحات نمایش نرم افزار در اینجا قرار میگیره. آن را باز کنید. داخل پوشه layout برید. و main.xml را باز کنید. این اولین صفحه نرم افزار شما هست که اتوماتیک ساخته شده برای شما.
خب حالا داخل این صفحه پایین رو ببینید دوتا انتخاب دارید:
text & design
شما میتوانید برنامه های اندرویدتان را هم با کد، ظاهرشان را بسازید هم با دیزاینه خوده این محیط برنامه نویسی که صد درصد کد بهتر و دقیق تر است که در آینده متوجه می شوید.
2)اکتیویتی ها
میرسیم به بحث Activity ها.
از منوی سمت چپ پوشه ی src رو باز کنید و MyActivity رو از داخل com.example.. ببینید. بازش کنید.
میبینید که کلاسی برای شما باز میشود به نام MyActivity که از کلاس دیگری به نام Activity ارث برده.
فقط توجه کنید در این جلسه میخواهیم فقط با مفاهیم آشنایی کلی پیدا کنیم وگرنه بر روی هرکدام ازین مفاهیم بحث های زیادی خواهیم داشت و این مفاهیم را دقیق تر بهش میپردازم اما تا الان درین حد بدونید که extend در جاوا به معنای ارث بردن است
یک متد داخل کلاس هست به نام oncreate که ورودی دارد به نام bundle.
فعلا تا اینجا این را بدانید که هر صفحه ای که در نرم افزارتان استفاده میکنید باید یک چنین کلاسی برایش ساخته بشه.
حالا یه سوال پیش میاد. اصلا bundle چی هست؟!
خب ببینید به هر دلیلی ممکن هست که نرم افزار شما توسط سیستم اندروید kill شده و دوباره ساخته شود.
حتی مثلا فرض کنید شما در حالی که دارید از یک نرم افزار استفاده میکنید صفحه گوشی را بچرخوانید. در همین کار هم، صفحه ای از برنامه که جلوی شما باز هست restart میشود تا دوباره با oriantation جدید برایتان باز شود.
خب درحالت عادی واضح هست که هر اطلاعاتی که وارد کرده باشید از بین میرود وقتی صفحه ریست شود. اما bundle این کمک رو میکنه به شما که اطلاعات رو نگه دارید. وقتی که اولین بار یک کلاس باز میشود (توجه کنید کلاس مرتبط با صفحه ای از برنامتان هست) مقدار bundle برابر تهی یا null هست. اما وقتی صفحه برنامتان به هر دلیلی مثل چرخاندن گوشی، خارج شد، مقادیر و تغییراتی که دادید داخل bundle میرود و ذخیره میشود. حال دوباره که صفحه باز شود مقادیر از bundle خوانده شده و برای شما جایگزین میشود.
حالا بریم داخل تابع oncreate. این متد موقع ساخت کلاس صدا زده میشود. متدهای مشابهی هم برای کلاس ها هست که در آینده خواهیم پرداخت.
داخل متد را نگاه کنید.
super.onCreate(savedInstanceState);
این دقیقا همان توضیحی هست که بالا به شما در مورد bundle دادم.
همانطوری که گفتم هر صفحه برنامه اندروید یک کلاس دارد. الان این کلاسی که میبینید باید مشخص کنیم که به کدام صفحه متصل است. اینکار هم با این انجام شده:
setContentView(R.layout.main);

با کلاس R که یک کلاس مهم و پایه ای در اندروید هست آشنا میشید. تا اینجا بدانید که R فعلا برای ما برای صدا زدن صفحات و یا ابزارهایی که داخل صفحه گذاشتید کاربرد داره.
3)کار با Layout ها
حالا برمیگردیم به پوشه res و بعد ازآن layout و سپس main.xml.
وقتی بازش کنید یک صفحه گوشی به شما نشان داده میشود.