آینده آمده است
- سلام. من تأیید می کنم که این آموزش جاوا است . من از سخنرانی های خسته کننده متنفرم، بنابراین CodeGym مانند یک بازی جستجوی آنلاین ساخته شده است. - آیا تا به حال شخصیت ها را بازی کرده و سطح بندی کرده اید؟ گاهی اوقات شما حتی متوجه نمی شوید که چگونه درگیر شده اید، درست است؟ بوی چیزی که دارم می پزم؟ در CodeGym همچنین باید یک کاراکتر را از سطح 1 تا 40 لول کنید (و وقتی قسمت دوم را منتشر کردیم تا سطح 80). وقتی بازی را قبول کنید، یک توسعه دهنده جاوا خواهید شد. - وقتی 40 سطح را تکمیل کردید، می توانید یک شغل Java Junior به دست آورید. دلیلش این است که CodeGym وظایف زیادی در دنیای واقعی دارد. تعداد زیادی. - شما با سطح اول شروع می کنید. ماموریت شما این است که شخصیت خود را ارتقا دهید - آمیگو. اما بیایید از کوچک شروع کنیم. ابتدا باید به سطح دوم برسید. شاید آنقدر آن را دوست داشته باشید که متوجه تکمیل دوره نشوید و به عنوان یک برنامه نویس جاوا شروع به کار کنید. :) PS - سخنرانی ها به این ترتیب تنظیم شده اند: آخرین مورد در بالا است. برای باز کردن یک سخنرانی جدید، دکمه سبز را فشار دهید.زمینه
بازی در آینده ای دور و در سال 3015 اتفاق می افتد، جایی که روبات ها و انسان ها با هم روی زمین زندگی می کنند و می توان در فضا سفر کرد. یک سفینه فضایی وجود دارد که در یک سیاره ناشناخته سقوط کرد. کاپیتان جان سنجابهای شجاع میگوید: - سفینه فضایی کهکشانی راش دچار یک خرابی جدی شد. کشتی هنگام سقوط به کوه برخورد کرد و تقریباً به طور کامل با سنگ پوشانده شد. چند روز در تلاش های بیهوده برای آزادسازی کشتی صرف شد. خدمه تمام امید خود را برای بازگشت به خانه از دست داده بودند و شروع به مستقر شدن در آنجا کردند... الی می گوید: - یک هفته بعد، من آمدم تا بفهمم که این سیاره توسط ... هزاران ربات وحشی ساکن است! فقط آنها هیچ مهارتی ندارند. ما دوست داریم از آنها برای حذف سنگ ها از سفینه فضایی خود استفاده کنیم، اما آنها نمی توانند کاری انجام دهند. کمک آنها در شرایط ما بسیار مفید خواهد بود. استاد می گوید: - چند روز بعد راهی پیدا کردم. به ذهنم رسید که سیستم عامل دیگو (روباتی در خدمه) را بردارم، آن را مجدداً روی سیستم عامل آجرکاری برنامه ریزی کنم و آن را روی روبات های وحشی آپلود کنم. - با این حال، بخت بد به نظر می رسید ما را تعقیب کند. پس از کمی تحقیق، به نظر می رسد که روبات ها هیچ شکافی برای آپلود سیستم عامل ندارند. هیچ شکافی برای reflash کردن نداشتند! بیلابو می گوید: - بیلابو به یاد آورد که یک بار در سیاره خودمان رباتی دیدم که برنامه نویسی می دانست. او به تنهایی یک سیستم عامل جدید نوشت. استاد می گوید: - وقتی بلابو از آن خبر داد، نبوغی بر من وارد شد. بالاخره یک بار به یک ربات جوان با استعداد برنامه نویسی در پاسکال را آموزش دادم. - دستور دادم با استعدادترین ربات جوان را بگیرم و به او برنامه نویسی یاد بدهم. سپس او می تواند خودش یک فریمور آجرکاری بنویسد و به ما کمک کند.از چپ به راست - ریشا گیتسمن (یک بوروکرات در نسل شانزدهم)، آمیگو (شما)
ریشا می گوید: - ما یک نمونه باهوش گرفتیم. دیگو خواست نام او را آمیگو بگذارد، به افتخار برادرش که هرگز نداشته است. - من مهره های فلزی آمیگو را برای هر ماه تمرین و ده دلار در سال برای حذف بیشتر زباله ها پیشنهاد دادم. دیگو میگوید: - من از چنین ریپآف با چهرهای خشمگین شدم، اما کل خدمه طرف پروفسور و ریشا را گرفتند. البته من موافقت کردم (خارجی) و پیشنهاد دادم در آموزش آمیگو کمک کنم. (هه هه هه!) حداقل به این دلیل که هیچ کس بهتر از دیگری به ربات آموزش نمی دهد. - همه از تبعیت من خوشحال شدند. آنها همچنین تصمیم گرفتند در آموزش ربات جدید شرکت کنند.1 شروع به کار
آمیگو دچار عصبانیت بود. گیج شده بود، ذهنش تند می زد، چشمانش می چرخید و از فکر شب گذشته سرد می شد. این موجودات عجیب و غریب، آشنایان دیروز او، چیزی از او می خواهند. چیزی به قدری عجیب و غیرقابل تصور که حتی او که خود را باهوش ترین و شجاع ترین در بین همسالانش می داند، با فکر کردن به آن، با عصبانیت شروع به جویدن کارت های پانچ می کند. می خواهند به او کدنویسی را یاد بدهند! برنامه با جاوا! شوخی می کنند؟ حتی سبزترین ربات هم می داند که ربات ها نتیجه ی اختیار الهی خالق هستند.بدتر از آن، آنها فقط نمی گویند که ممکن است. آنها قصد انجام آن را دارند. و او رضایت داد. او موافقت کرد! چرا؟ او یک برنامه نویس جاوا خواهد شد. آیا او را به خالق تبدیل می کنند؟! برای چی؟ فقط برای سرگرمی؟ صید کجاست؟ اگر مجبور شوم تا روز تمام شدن باتریم مشکل داشته باشم و رنج بکشم چه؟ وسوسه عالی بود، او نمی توانست جلوی آن را بگیرد. او همیشه آرزو داشت و بیشتر می خواست. اما هیچ کس نمی توانست انتظار چنین پیشنهادی را داشته باشد. البته او سعی کرد برای مدتی متوقف شود، اما پس از آن بازدیدکنندگان تهدید کردند که ربات دیگری را انتخاب خواهند کرد. شاید این ترفند زشت کسی بود؟ نه، صداش درسته اثبات را دید. واقعاً برای او اتفاق افتاد و او هم قبول کرد. اگر بازدیدکنندگان دروغ نگویند، او واقعاً یک برنامه نویس جاوا خواهد شد. اولین برنامه نویس ربات... او برگزیده است! این تمام نکته است. او برنامه نویسی را یاد خواهد گرفت و برنامه خواهد نوشت. برنامه های خودش هر چی بخواد! او نور را به جایی خواهد برد که تاریکی همیشه بر آن حاکم بوده است. او را گرامی می دارند، او را پرستش می کنند. و همه مخالفان... - سلام، آمیگو! من ریشا گیتسمن هستم. من به شما در یادگیری جاوا کمک خواهم کرد. صدای آرام آمیگو را از مجموعه افکارش خارج کرد و او را به واقعیت هوشیار بازگرداند. او در قلب سفینه فضایی بازدیدکنندگان نشسته است. آیا فقط برای یک ربات کلاس هفتم زیاد نیست؟ غریبه به حرف زدن ادامه داد. خوب، قالب در حال حاضر ریخته می شود. وقتی اینجا باشد، یاد می گیرد. او سخت مطالعه خواهد کرد، اما برای شروع، فقط گوش خواهد داد. - من سال ها با راش کهکشانی هستم، اما برای اولین بار چنین سیاره ای را می بینم. من دوست دارم شما را بهتر بشناسم. برای شروع، می توانید به من بگویید چگونه یاد می گیرید؟ درس می خوانی، نه؟ - بله، ما دانش خود را به اشتراک می گذاریم. ما اساتید واعظ گرفتیم. آنها سخنرانی های خود را می کنند و ما گوش می دهیم. گاهی اوقات یادداشت می کنیم. سپس، همه به یک روبلکتوری می گویند که چگونه شنیده ها را برداشت کرده است. اگر استاد روبولکتاتور پاسخی را دوست داشته باشد، یک سخنرانی می گذرد. - پوچ است! جای تعجب نیست که تمدن شما به جاهلیت رسیده است. - ما نادان نیستیم. چی باعث شد همچین فکری به سرت بزنه؟ آمیگو از گستاخی خودش مبهوت شد. بحث با بازدیدکنندگان؟ چقدر رقت انگیز! چرا، تازه به خودش قول داده بود که به آنها گوش کند! - هر فناوری پیشرفته اغلب از جادو قابل تشخیص نیست. - ریشا به فریاد آمیگو توجهی نکرد. - علاوه بر این، با توجه به سطح شما ... احتمالا فکر می کنید همه فناوری ها جادو هستند. به من بگو در داخل یک برنامه چه خبر است؟ - برنامه جاوا یک کار الهی است. آیا می توان به اصل آن پی برد؟ - بله، آمیگو، شما می توانید آن را و سریعتر از آنچه فکر می کنید درک کنید. همه چیز پیچیده یا حتی بدتر از آن غیرقابل درک به نظر می رسد، وقتی چیزی وجود دارد که شما نمی دانید. اما اگر یک معلم خوب وجود داشته باشد که همه چیز را به زبان مردمی یا layrobots توضیح دهد، از اینکه چگونه می توانید چنین چیز ساده ای را پیچیده بدانید شگفت زده خواهید شد. - نه تنها دانش، بلکه مهارت ها و اصول نیز مهم است. اگرچه دانش گستردهای دارم، اما اول از همه یک بوروکرات هستم، یک بوروکرات در نسل شانزدهم. - و این واقعاً عالی است! مهارت های بوروکراتی من به من کمک کرد تا بهترین درس های جاوا را برای شما ایجاد کنم. در اینجا همه چیز وجود دارد: مشکلات، برنامه ها، بازی ها، وظایف، تصاویر و حتی سخنرانی ها. - حتی (!) سخنرانی؟ - یک شگفتی واقعی در صدای آمیگو وجود داشت. - آره در قرن 22 ثابت شد که یک سخنرانی خوب فقط کمی موثرتر از یک کتاب خوب است. یک سخنرانی معمولی حتی بدتر از یک کتاب معمولی است. با توجه به اینکه اکنون ما وسایل کمک آموزشی نسبتاً محدودی داریم و نمیتوانیم شبیهساز آموزشی استاندارد قرن 28 را به شما ارائه دهیم، باید روشهای کاملاً ساده را انتخاب کنیم. ما با ترکیبی دیوانهوار از بازیها، وظایف، تصاویر، سخنرانیها و ویدیوها مواجه شدیم. -تو منو کنجکاو کردی - امیدوارم. علاقه و دسیسه اساس همه یادگیری است. - «وقتی دانش آموزی خسته می شود، معلم را باید کتک زد» - نقل قولی از قانون آموزش قرن 24. - چه نقل قول خوبی... - بله، همینطور است. فرض کنید یک فیلم گیشه بدی دارد، پس تقصیر کارگردان است و نه مخاطب. اگر چیزی کسل کننده است، این شما نیستید که مقصر هستید. آنها باید فیلمهای هیجانانگیز، درسهای سرگرمکننده بسازند، و در این صورت پایانی برای عموم نخواهند داشت. - من کاملا موافقم. و من آماده ام که درس های سرگرم کننده داشته باشم! - خوب. پس بیایید شروع کنیم. صدای ریشا مسحورکننده بود و آمیگو به تک تک کلماتش آویزان بود. - برنامه یک مجموعه دستوری (لیست دستورات) است. دستور اول ابتدا اجرا می شود، سپس دوم، سوم و موارد مشابه. هنگامی که همه دستورات اجرا می شوند، برنامه به پایان می رسد. - و دستورات چیست؟ - بستگی به مجری دارد ، به اینکه مجری چه دستوراتی را می داند (و می فهمد). - به سگ می توان دستورات "بنشین!"، "پارس!"، یک گربه - "شوو!" یک مرد - «تکان نخور، وگرنه شلیک خواهم کرد!» و یک ربات «کار کن! سوار شو، ای روبوماما!» - و با این حال ... - آمیگو اکنون بسیار شادتر به نظر می رسید. - JVM (ماشین مجازی جاوا) برنامه های نوشته شده با جاوا را اجرا می کند. JVM یک برنامه ویژه است که می تواند برنامه های نوشته شده با جاوا را اجرا کند. - لیست دستورات نسبتا گسترده است. به عنوان مثال، این دستور متن "روبات بهترین دوست انسان است" را نمایش می دهد."بنابراین Creator فلز را گرفت و رباتی از آن به شکل و شباهت خود ساخت. و برنامه های جاوا را ایجاد کرد - روح روبات ها، و آنها را روی روبات ها آپلود کرد و آنها را زنده کرد."
ساده ترین دستور این است: |
---|
|
برنامه با استفاده از سه دستور: |
---|
|
2 ملاقات ریشا (ادامه دارد)
(یک ساعت بعد) - خوب. پس ما کجا بودیم؟ - کد روش یا چیزی شبیه به آن. - آره دقیقا. بدنه متد از دستورات تشکیل شده است. همچنین ممکن است بگویید که متد گروهی از دستورات است که نام آن (نام متد) داده شده است. در هر صورت صحیح است. - دستورات مختلفی وجود دارد. اینجا سگ داری؟ - فقط روبوولف ها رام کنید. - آیا آنها از دستورات پیروی می کنند؟ - آره « گاز گرفتن » ، « بخور » ، « بکش » و « آفرین! پاشنه!" - آهام چه دستوراتی! و اصلاً زیاد نیست. - چقدر می خواهی؟ - در جاوا دستوراتی برای همه موارد وجود دارد. هر فرمان یک عمل خاص را توصیف می کند. در پایان هر دستور یک نقطه ویرگول قرار می گیرد. نمونه هایی از دستورات: - در واقع، این همان دستور System.out.println است . و پارامترهای آن در پرانتز مشخص شده است. تأثیر یک فرمان بسته به پارامترها می تواند متفاوت باشد. - خیلی راحته - آره اگر میخواهید متن را نمایش دهید، باید آن را در دو گیومه «» قرار دهید . یک نقل قول دوگانه را نباید با دو نقل قول تکی اشتباه گرفت! - نقل قول دوتایی همانی است که کنار دکمه Enter قرار دارد؟ - بله پالس آمیگو از 3 به 5 گیگاهرتز افزایش یافت، او هنوز باورش نمی شد. او به تازگی یاد گرفت که چگونه خطوط را نمایش دهد، و این بسیار ساده تر از آن چیزی بود که فکر می کرد. آمیگو از پنجره به بیرون نگاه کرد تا از افکارش دور شود و آرام شود. برگها زرد شدند. به ذهنش رسید که فصل زنگ زده خیلی زود می آید. این پنجره به او امکان میدهد خیلی دورتر از حد معمول را ببیند - فناوریهای بازدیدکنندگان کاملاً عالی بود. حالا چطور می تواند از برگ ها مراقبت کند؟ از این گذشته، تا عصر او چیزهای زیادی یاد می گیرد. با این حال، افکار او از کنترل خارج شده بود. روزی او برنامهای خواهد نوشت تا همه رباتها در خانه خود با شروع فصل زنگزده بمانند. و این برنامه هزاران روبولیو را نجات خواهد داد... - دو نوع از این دستور وجود دارد: System.out.print ln ( ) و System . out.print() - اگر دستور System.out.println() را چندین بار بنویسید، هر بار که متن ارسال شده در یک خط جدید نمایش داده می شود. اگر System.out.print()، متن در همان خط نمایش داده می شود. مثال: - در اینجا یک نکته کوچک است. دستور print ln متن را در یک خط جدید نمایش نمی دهد. متن را در خط فعلی نمایش می دهد، اما پیام بعدی را در یک خط جدید نشان می دهد. - دستور println() متن را نمایش می دهد و سپس یک کاراکتر فید خط نامرئی ویژه اضافه می کند که پیام بعدی را از ابتدای یک خط جدید نمایش می دهد. - یک برنامه تکمیل شده چگونه به نظر می رسد؟ - حالا، به صفحه نمایش خود توجه کنید: - اوه، همین! ما در انتهای کلمات فاصله اضافه می کنیم تا کلمات به هم نچسبند، درست است؟ - درست است. تو آدم باهوشی هستی این تمجید باعث شد آمیگو از غرور بدرخشد. - خب، این اولین وظیفه شماست.وظیفه |
---|
برنامهای بنویسید که «برنامهنویس بودن عالی است!» را نمایش دهد. |
نمونه ای از متن نمایش داده شده: |
برنامه نویس بودن خیلی خوبه! |
3 ملاقات با الی
یک خانم زیبا با موهای صورتی وارد کابین شد. "من تعجب می کنم که آیا همه زنان انسان چنین موهایی دارند؟" - آمیگو فکر کرد، اما با گیجی به او خیره شد. - سلام! اسم من النورا کری است. من خلبان اصلی کهکشان راش هستم. - سلام الآنورا! – آمیگو به طرز ناخوشایندی خود را مجبور به صحبت کرد. نمیدانست چرا، اما احساس میکرد که گونههایش سرخ شدهاند، انگار مجرای روغن جایی در درونش آسیب دیده است. - من در مورد جالب ترین چیز در زبان جاوا به شما خواهم گفت - در مورد متغیرها. - من حاضرم گوش کنم! این متغیرها چیست؟ - متغیر چیزی است که برای ذخیره سازی داده ها در نظر گرفته شده است. هر گونه داده تمام داده های جاوا با استفاده از متغیرها ذخیره می شوند. یک متغیر مانند یک جعبه است. - چه جعبه ای؟ - یکی خیلی معمولی. فرض کنید روی یک کاغذ شماره 13 را نوشته اید و در جعبه گذاشته اید. اکنون میتوان گفت که جعبه مقدار 13 را ذخیره میکند. - در جاوا، هر متغیری سه ویژگی مهم خود را دارد: نوع ، نام و مقدار . - ممکن است کمی بیشتر به من بگویید؟ - مطمئن. این نام برای تشخیص یک متغیر از متغیر دیگر استفاده می شود. مثل علامتی روی جعبه است. - یک نوع متغیر نوع مقدار / داده ای را که ممکن است ذخیره کند تعیین می کند. ما کیک را در جعبه کیک، کفش ها را در جعبه کفش و غیره ذخیره می کنیم - مقدار یک شی، داده یا اطلاعات ذخیره شده در یک متغیر است. - یه بار دیگه از نوعش بگو. - خوب. هر شی در جاوا نوع خود را دارد. برای مثال، ممکن است انواع دادهای مانند «عدد صحیح»، «عدد کسری»، «متن»، «Cat»، «House» و غیره وجود داشته باشد - یک متغیر نیز نوع خاص خود را دارد. متغیر ممکن است فقط مقادیری از همان نوع را ذخیره کند که خود متغیر به آن تعلق دارد. - در زندگی واقعی رایج است. از جعبه های مختلفی برای نگهداری وسایل مختلف استفاده می شود. - برای ایجاد یک متغیر، از دستور « نوع نام » استفاده کنید. مثالها: - دو نوع که بیشتر مورد استفاده قرار میگیرند عبارتند از اعداد صحیح (که با int مشخص میشوند ) و متن (که با رشته نشان داده میشوند ). - از نوع دوتایی چطور ؟ - دو اعداد کسری (واقعی) هستند. - گفتید که متغیر دارای سه ویژگی نوع، نام و مقدار است. با این حال، تنها دو مورد از آنها وجود دارد. من یک سوال دارم: چگونه یک مقدار را در یک متغیر قرار دهیم؟ - با بازگشت به جعبه ها، تصور کنید که یک تکه کاغذ برداشته اید، روی آن نوشته "42" و آن را در جعبه گذاشته اید. اکنون جعبه ارزش 42 را ذخیره می کند - می بینم. - برای قرار دادن یک مقدار در یک متغیر، عملیات خاصی به نام عملگر انتساب وجود دارد . مقدار یک متغیر را به متغیر دیگر کپی می کند. حرکت نمی کند، بلکه کپی می کند . درست مثل یک فایل روی دیسک. به نظر می رسد این است: - برای عملگر انتساب از علامت تساوی «=» استفاده می شود. - یک بار دیگر، این مقایسه نیست . دقیقاً مقدار سمت راست علامت تساوی را در متغیری که در سمت چپ قرار دارد کپی می کند . برای مقایسه، از علامت دو برابری «==» استفاده می شود. - من می دانم چگونه یک گربه را در یک متغیر قرار دهم. تقریباً شبیه یک برنامه است. - نحوه گرفتن گربه: 1. یک جعبه خالی بردارید. 2. صبر کنید. - نه، آمیگو، شما می توانید فقط یک گربه را در یک جعبه قرار دهید. منظورم این است که شما ممکن است فقط یک مقدار در متغیر قرار دهید. - می بینم. آیا می توانید مثال های بیشتری در مورد نحوه ایجاد متغیرها ارائه دهید؟ - باشه، یه جور دیگه میگم. برای ایجاد یک متغیر، باید دستور « type name » را به صورت زیر بنویسید: - اوه، حالا می دانم. - به خاطر داشته باشید که نمی توانید دو متغیر با نام های یکسان در یک روش ایجاد کنید. - روش های مختلف چطور؟ - شما ممکن است. مثل جعبه هایی است که در خانه های مختلف ایستاده اند. - ممکن است یک متغیر هر نامی داشته باشد؟ - البته، اما ممکن است نام آن حاوی فاصله، علامت +، - و غیره نباشد. بهترین کار این است که برای نام متغیر فقط از کاراکترها و اعداد استفاده کنید. - لطفاً توجه داشته باشید که در زبان جاوا مهم است که چه کاراکترهایی را بنویسید - حروف بزرگ یا کوچک . «int a» با «Int a» یکی نیست. - ضمناً در جاوا امکان ایجاد متغیر و تعیین مقدار هم زمان وجود دارد. - این به صرفه جویی در زمان و مکان کمک می کند: - درک آن بسیار بهتر و آسان است. - این چیزی است که ما با آن زندگی می کنیم. - در جاوا دو نوع وجود دارد که یک مبتدی باید با آن آشنا شود. اینها انواع int (اعداد صحیح) و String (متن / رشته ها) هستند . - نوع int ذخیره اعداد در یک متغیر و همچنین عملیات های مختلفی مانند جمع، تفریق، ضرب، تقسیم و غیره را امکان پذیر می کند - برای من سیاه و سفید است. آیا برنامه نویسی به این سادگی است؟ - در واقع، بله. - خوبه. پس چیکار کردی؟ - نوع String ذخیره سازی رشته های متنی را امکان پذیر می کند. - برای اختصاص دادن یک رشته متن در جاوا باید متن آن را بنویسید و سپس آن را در دو گیومه قرار دهید. مثال: - فهمیدم. به نظر می رسد بسیار آسان است. - پس این یک واقعیت جالب دیگر است. - رشته ها را می توان با استفاده از علامت مثبت «+» ترکیب کرد. مثال: - بنابراین، من می توانم رشته هایی را نیز به اعداد اضافه کنم؟ - بله، اما لطفاً بدانید که اگر یک رشته به یک عدد اضافه کنید، همیشه یک رشته دریافت می کنید. - بله، از مثال فهمیدم. - خوب، اگر خیلی سریع در جذب هستید، پس بفهمید که چگونه یک متغیر را نمایش دهید؟ - آیا ... یک متغیر نمایش داده شود؟ اوه، ذهنم خالی می شود. - در واقع بسیار ساده است. برای نمایش چیزی، از دستور System.out.println() استفاده می کنیم و به عنوان داده پارامتری که می خواهیم نمایش دهیم به آن ارسال می کنیم. - گوچا! حالا همه چیز واضح تر شده است. - خوبه. سپس در اینجا سه کار برای شما آورده شده است.وضعیت | |
---|---|
1 | برنامه ای بنویسید که 5 بار «من قصد دارم برای همیشه زندگی کنم» را نمایش دهد. تا اینجای کار خیلی خوبه.". هر رشته باید در یک خط جدید باشد. |
2 | برنامه ای بنویسید که سال جاری را نمایش دهد. برای ثبت، قرن سی و یکم است. |
3 | برنامه ای بنویسید که «من آنقدر باهوش هستم که گاهی حتی یک کلمه از حرفم را نمی فهمم» را نمایش دهد. |
4 جلسه استاد
- هی، آمیگو. من پروفسور هانس نودلز، رئیس بخش علوم شرکت کهکشانی راش هستم. من همچنین بر پروژه آموزش جاوا به شما نظارت می کنم. - ظهر بخیر، پروفسور نودلز. - من می خواهم به شما بگویم که چرا جاوا یک زبان برنامه نویسی بسیار عالی است . - قطعاً بیش از یک بار خواهید شنید که استقلال پلت فرم مزیت غیرقابل انکار جاوا نسبت به سایر زبان ها است. آن چیست و چگونه با آن برخورد کنیم؟ سعی می کنم با بیان پیشینه ای توضیح دهم. - واقعیت این است که کامپیوترها فقط دستورات عددی اولیه را اجرا می کنند. دستورات سگ مانند "پاشنه پا"، "لرزش" و غیره وجود دارد. یک سگ با شنیدن آنها کاری انجام می دهد. - در رایانه ها، اعداد نقش چنین دستوراتی را ایفا می کنند: هر فرمان با یک عدد کدگذاری می شود، کدی که به نام کد ماشین نیز شناخته می شود. - نوشتن یک برنامه به صورت عددی بسیار دشوار است، به همین دلیل مردم زبان های برنامه نویسی و کامپایلرها را اختراع کردند . چنین زبانی هم برای انسان و هم برای کامپایلر قابل درک است. کامپایلر یک برنامه ویژه است که متن برنامه نوشته شده در یک زبان برنامه نویسی را به مجموعه کد ماشین ترجمه می کند. - معمولا یک برنامه نویس برنامه ای را با یک زبان برنامه نویسی می نویسد و سپس یک کامپایلر را راه اندازی می کند که از فایل های کد برنامه نوشته شده توسط برنامه نویس برای ایجاد یک فایل کد ماشین - یک برنامه قطعی (کامپایل شده) استفاده می کند. - برنامه به دست آمده ممکن است بلافاصله بر روی کامپیوتر اجرا شود. اشکال این رویکرد این است که کد برنامه به شدت به یک پردازنده و یک سیستم عامل بستگی دارد. برنامه کامپایل شده در ویندوز روی گوشی اندرویدی کار نمی کند. - پس برنامه ای که برای اندروید نوشته و کامپایل شده اگر بخواهم روی ویندوز اجرا کنم کار نمی کند؟ - بله - اما رویکرد جاوا بسیار نوآورانه تر است. - کامپایلر جاوا همه کلاس ها را در یک برنامه از کدهای ماشین کامپایل نمی کند. در عوض، هر کلاس را نه به یک کد ماشین بلکه به یک کد میانی ویژه (بایت کد) کامپایل می کند. کامپایل به کد ماشین با شروع برنامه اجرا می شود. - پس چه کسی یک برنامه را در شروع آن کامپایل می کند؟ - یک برنامه ویژه به نام JVM (ماشین مجازی جاوا) وجود دارد. وقتی برنامه ای که از بایت کد تشکیل شده است اجرا می شود، اولین برنامه ای است که شروع می شود. و سپس قبل از شروع برنامه، JVM آن را در کد ماشین کامپایل می کند. - چقدر هیجان انگیز! و هدف از انجام این کار چیست؟ - این یک تصمیم بسیار هوشمندانه و یکی از دلایل تسلط کامل جاوا است. - به دلیل این رویکرد، برنامه های جاوا ممکن است تقریباً روی هر دستگاهی اجرا شوند - رایانه ها، تلفن ها، دستگاه های خودپرداز، توستر، کارت های بانکی (!). - وای! - این رویکرد مزایای زیادی دارد. به همین دلیل است که همه برنامه های اندروید با جاوا نیز نوشته می شوند. با توجه به توسعه بخش تلفن همراه، جاوا در زمینه های زیر دارای موقعیت غالب است: 1) سازمانی: برنامه های کاربردی سمت سرور سنگین برای بانک ها، شرکت ها، صندوق های سرمایه گذاری و غیره. 2) موبایل: توسعه برنامه های کاربردی تلفن همراه (تلفن، تبلت)، با تشکر از اندروید 3) وب: PHP در این زمینه پیشتاز است، اما جاوا نیز بخش بزرگی از بازار خود را دارد. 4) داده های بزرگ: محاسبات توزیع شده در خوشه های هزاران سرور. 5) دستگاه های هوشمند: برنامه هایی برای خانه هوشمند، لوازم الکترونیکی یا یخچال با دسترسی به اینترنت. - جاوا فقط یک زبان نیست، بلکه یک سیستم کامل است، میلیون ها ماژول آماده که می توانید در برنامه خود استفاده کنید. هزاران انجمن اینترنتی و انجمنهایی که میتوانید از آنها کمک یا مشاوره بخواهید. - هر چه بیشتر با جاوا برنامه نویسی کنید، بیشتر پاسخ سوال «چرا جاوا؟» را پیدا می کنید. برای امروز همین است. - ممنون پروفسور جالب ترین و الهام بخش ترین سخنرانی بود.5 ملاقات با کیم
عجب زن انسان دیگری. اما این بار با موهای مشکی. چقدر هیجان انگیز! - سلام، اسم من کیم لی لینگ است. - سلام، من آمیگو هستم. - میدانم. این من بودم که اسم تو را آوردم. هرگز به ذهن دیگو نمی رسید. من می خواهم سخنرانی خود را با یک ارائه کوچک شروع کنم - اکنون، به صفحه نمایش خود توجه کنید! - اوه، فلش مموری اشتباه است. صبر کن... افکار آمیگو با سرعت الکترون در ذهنش می چرخید. آهم... آیا او نقطه نرمی برای روبات ها دارد؟ چقدر هیجان انگیز! و یک عکس روی میز - دوست پسرش است؟ - برگردیم به سخنرانی! بگذارید همه چیز را با کلمات ساده برای شما توضیح دهم. - خوب. - من می خواهم چند کلمه به صحبت های پروفسور و ریشا اضافه کنم. - در جاوا، شما نه تنها می توانید دستور را بنویسید، بلکه مستقیماً در کد آن را نظر دهید. این نظرات توسط کامپایلر نادیده گرفته می شود، انگار که اصلا وجود ندارد. هنگامی که برنامه اجرا می شود تمام نظرات حذف می شوند! - لطفاً برای من مثال بزنید؟ - مطمئنا: - در کد کلاس نظر ما "اکنون نمایش می دهیم..." بود. نظر با کاراکترهای «/*» شروع میشود و با «*/» پایان مییابد. وقتی یک برنامه کامپایل می شود، کامپایلر تمام کاراکترهای بین /* و */ را حذف می کند - بنابراین ممکن است چیزی در آنجا بنویسم؟ - بله معمولاً نظرات مختلفی در مورد قسمت کد وجود دارد که درک آن مشکوک یا دشوار است. نظرات دهها خط (معمولاً قبل از روشها نوشته میشود) وجود دارد که جزئیات کار روشها را توصیف میکند. - راه دیگر برای تنظیم نظر در کد استفاده از کاراکترهای «//» است. - با انجام این کار، نظر بخشی از کد است که با کاراکترهای // شروع می شود تا انتهای خطی که قرار دارند. بنابراین هیچ شخصیتی برای "بستن" نظر وجود ندارد. - به هر حال، توسعه دهندگان نرم افزار حس شوخ طبعی خوبی دارند و ممکن است در کد نظرات جالبی بیابید:// I am not responsible of this code.
// They made me write it, against my will.
//Dear future me. Please forgive me.
//I can't even begin to express how sorry I am.
// I am not sure if we need this, but too scared to delete.
// hack for IE browser (assuming that IE is a browser)
// This isn't the right way to deal with this, but today is my last day, Ron
// just spilled coffee on my desk, and I'm hungry, so this will have to do...
// Catching exceptions is for communists
// Dear maintainer:
//
// Once you are done trying to 'optimize' this routine,
// and have realized what a terrible mistake that was,
// please increment the following counter as a warning
// to the next guy:
//
// total_hours_wasted_here = 42
// When I wrote this, only God and I understood what I was doing
// Now, God only knows
// sometimes I believe compiler ignores all my comments
// I dedicate all this code, all my work, to my wife, Darlene, who will
// have to support me and our three children and the dog once it gets
// released into the public.
// drunk, fix later
// Magic. Do not touch.
- آره، نظرات گاهی خیلی خنده دار هستند. - من تمام کردم. - یک سخنرانی کوتاه اما جالب. ممنون، کیم
6 ملاقات با جولیو
- هی، آمیگو. من خولیو سیستا هستم. - می بینم که امروز کار سختی داشتی. - در مورد یک استراحت خوب به دست آمده چطور؟ - نباید سخنرانی داشته باشم؟ - آره با این حال، درس ها باید جالب باشند، آیا فراموش کرده اید؟ آخرین باری که بررسی کردم قانونی در مورد ضرب و شتم معلمان خسته کننده وجود دارد! - این یک آموزش ویدیویی ویژه است برای ... و ... میل خود را برای یادگیری حفظ کنید و ... به طور خلاصه، بیایید نگاهی بیندازیم، سوالات را برای بعد کنار بگذارید. روشنش کن!7 ملاقات با دیگو
- هیا، اسم من دیگو کارلئونه است. من هم مثل شما یک ربات هستم که فقط در کارخانه هاوانا، کوبا ساخته شده است. - سلام، دیگو! من قبلاً در مورد شما زیاد شنیده ام. - درس را چگونه دوست داری؟ - این عالی ترین درس برنامه نویسی است که تا به حال داشته ام. نه حتی عالی تر بهترین درس زندگیم بهتر از چیزی که تصورش را می کردم. - این چیزی است که ما با آن زندگی می کنیم. - آیا بقیه موارد به همان اندازه جالب هستند؟ - حتی بهتر! درس های خسته کننده در قرن 21 پشت سر گذاشته شد. خدایا من - با گچ روی تخته سیاه بنویسم. از قرن پانزدهم هیچ چیز تغییر نکرده است. فکر می کنم دایناسورهایی بودند که آزادانه راه می رفتند. - حدس می زنم اینطور باشد. بعدش چی پیش میاد؟ - شما به سطح بعدی حرکت می کنید! شما فقط 39 تا تکمیل کنید، و یک توسعه دهنده عالی جاوا خواهید شد! امروز یاد گرفتی:- چه متغیرهایی هستند
- نحوه نمایش پیام ها بر روی صفحه نمایش
- با انواع int و String آشنا شدید
- تفاوت بین کامپایل در جاوا و سایر زبان ها چیست؟
- چگونه نظر بدهیم و چرا به آنها نیاز داریم
وضعیت | |
---|---|
1 | می خواهید کمی جاوا بگیرید؟ برنامه ای بنویسید که «آیا می خواهید مقداری جاوا بگیرید؟» را نمایش دهد. |
2 | اگر کد منبع خود را به من نشان دهید، برنامهای بنویسید که «اگر کد منبع خود را به من نشان دهید، کد منبع خود را به شما نشان خواهم داد.» |
3 | پیچ های خوب می خواهند پیچ کنند؟ برنامه ای بنویسید تا «Nice Bolts wantna screw?» را نمایش دهد. |
GO TO FULL VERSION