بعد از این درس چه کاری میتوانی انجام بدهی؟
- javac فایل java را به bytecode تبدیل و java آن را روی JVM اجرا میکند؛ نام کلاس عمومی و فایل باید یکسان باشد.
- کد را اجرا و نتیجه را پیشبینی کنی
- یک تغییر کوچک بدهی و اثرش را توضیح بدهی
- خطای واقعی درس را بخوانی و برطرف کنی
Java را ساده بفهم
Java قرارداد داده و رفتار را با نوعها و کلاسها روشن میکند و JVM اجرای یکسان روی محیطهای مختلف میدهد.
اگر برنامه اجرا نشد، از آخرین خط پیام خطا شروع کن؛ نام فایل و شماره خط معمولاً نزدیکترین سرنخاند.
چرا مهم است؟ javac فایل java را به bytecode تبدیل و java آن را روی JVM اجرا میکند؛ نام کلاس عمومی و فایل باید یکسان باشد.
اولین تمرین تو: count را 3 کن و دوباره javac و java را اجرا کن. قبل از اجرا، خروجی تازه را در یک جمله بنویس.
این درس را از چهار زاویه بفهم
قرار نیست چیزی را حفظ کنی. یک مفهوم را با چند تعبیر میبینی تا بالاخره تصویر ذهنی روشن خودت را بسازی.
خیلی ساده
Java زبانی برای تبدیل فکر به دستورهای دقیق است. برنامه یک ورودی میگیرد، کاری روی آن انجام میدهد و نتیجهای قابل مشاهده میسازد.
تشبیه اول: دستور کار
کد مثل دستور کار یک همکار دقیق است: ترتیب مهم است، نامها باید روشن باشند و هر مرحله باید نتیجه مشخصی داشته باشد.
تشبیه دوم: خط تولید
داده وارد خط میشود، چند ایستگاه آن را تغییر میدهند و خروجی بیرون میآید. با بررسی هر ایستگاه میتوانیم خطا را پیدا کنیم.
مدل فنی
در مدل فنی، کد منبع پیش از اجرا ترجمه یا کامپایل میشود. خطای نحوی یعنی مترجم نتوانسته ساختار نوشته را بفهمد.
ورودی
چه دادهای وارد میشود؟ نام، عدد، کلیک یا درخواست؟
پردازش
برنامه چه قانون یا محاسبهای را اجرا میکند؟
خروجی
چه نتیجهای باید ببینی و چطور درستی آن را میسنجی؟
هر خط دقیقاً چه کاری انجام میدهد؟
از بالا به پایین بخوان. ابتدا توضیح را ببین، سپس همان خط را در کارگاه پایین صفحه تغییر بده.
public class Main {بخشی از دستور برنامه است؛ علامتها و ترتیب آن برای محیط اجرا معنی مشخص دارند.
public static void main(String[] args) {این بخش نقطه شروع اجرای برنامه را مشخص میکند.
int price = 180000;یک مقدار را داخل نامی روشن نگه میدارد تا در خطهای بعد دوباره از آن استفاده کنیم.
int count = 2;یک مقدار را داخل نامی روشن نگه میدارد تا در خطهای بعد دوباره از آن استفاده کنیم.
System.out.println(price * count);نتیجه یا پیام را از داخل برنامه بیرون میآورد تا آن را ببینیم.
}مرز شروع یا پایان یک بخش از برنامه را نشان میدهد.
}مرز شروع یا پایان یک بخش از برنامه را نشان میدهد.
کلمههایی که نباید گنگ بمانند
کد
متنی با قواعد مشخص که کار مورد انتظار را برای کامپیوتر توضیح میدهد.
نحو یا Syntax
دستور زبان کد؛ مثل جای درست کلمات و نشانهها در یک جمله.
متغیر
یک نام خوانا برای نگهداشتن مقداری که بعداً لازم داریم.
خروجی
نتیجه قابل مشاهدهای که برای بررسی برنامه بیرون میآید.
سه «چرا»ی مهم درس اول
چرا کامپیوتر خودش منظور من را حدس نمیزند؟
چون برنامه بر اساس دستورهای دقیق و قابل تکرار کار میکند. این دقت باعث میشود همان ورودی، نتیجهای پیشبینیپذیر بسازد. ابهام برای گفتوگوی انسانی طبیعی است، اما در کد باید تصمیمها را روشن بنویسیم.
چرا از برنامهای به این کوچکی شروع میکنیم؟
در نمونه کوچک، رابطهٔ علت و نتیجه واضح است. اگر فقط یک مقدار را تغییر بدهی، دقیقاً میفهمی چرا خروجی عوض شده؛ بعد همین فهم را به پروژههای بزرگ منتقل میکنی.
اگر خطا دیدم یعنی برای برنامهنویسی مناسب نیستم؟
نه. خطا گزارش محیط اجرا دربارهٔ چیزی است که نفهمیده یا نتوانسته انجام دهد. خط اول پیام، شماره خط و آخرین تغییری که دادهای سه سرنخ اصلی تو هستند.
از مشاهده تا نوشتن مستقل
هر مرحله فقط کمی سختتر از مرحله قبل است؛ لازم نیست یکباره همهچیز را بلد باشی.
خروجی را حدس بزن
بدون اجرا، نتیجه نمونه را روی کاغذ بنویس. سپس آن را با نتیجه کارگاه مقایسه کن.
یک داده را تغییر بده
فقط نام یا عدد را عوض کن. توضیح بده کدام بخش خروجی باید تغییر کند و کدام بخش ثابت میماند.
یک خروجی تازه بساز
یک داده جدید مثل شهر یا هدف یادگیری بساز و با همان الگوی ساده آن را نمایش بده.
معیار موفقیت: عدد 360000 چاپ میشود.
از یک مثال کوچک شروع کن
javac فایل java را به bytecode تبدیل و java آن را روی JVM اجرا میکند؛ نام کلاس عمومی و فایل باید یکسان باشد. کد زیر را در فایل «Main.java» خودت تایپ و اجرا کن. بعد خروجی را با انتظار درس مقایسه کن.
۱. نمونه را اجرا کن
پیش از اجرا خروجی را حدس بزن و سپس تفاوت را یادداشت کن.
۲. کد را تغییر بده
count را 3 کن و دوباره javac و java را اجرا کن.
۳. خطا را عمداً بساز
نام فایل غیر از Main.java برای public class Main خطای compiler میدهد. متن خطا و شماره خط را بخوان، علت را پیدا کن و فقط همان بخش را اصلاح کن.
اگر برنامه اجرا نشد، از آخرین خط پیام خطا شروع کن؛ نام فایل و شماره خط معمولاً نزدیکترین سرنخاند.
سه قطعهای که باید بفهمی
نصب JDK و اولین برنامه Java
javac فایل java را به bytecode تبدیل و java آن را روی JVM اجرا میکند؛ نام کلاس عمومی و فایل باید یکسان باشد.
نتیجه قابل مشاهده
عدد 360000 چاپ میشود.
خطایی که باید بشناسی
نام فایل غیر از Main.java برای public class Main خطای compiler میدهد.
میخواهی هزینه دو بلیت را حساب کنی و مطمئن شوی JDK درست نصب شده است.
فرض کن میخواهی هزینه دو بلیت را حساب کنی و مطمئن شوی JDK درست نصب شده است. فعلاً قرار نیست کل برنامه را بسازیم؛ فقط همین نیاز را با چند خط کد حل میکنیم تا معلوم باشد هر خط چه کاری انجام میدهد.
قطعهها را به ترتیب درست بچین
روی هر قطعه بزن تا وارد پاسخ شود؛ برای برگرداندن دوباره روی آن بزن. با دکمههای جابهجایی هم میتوانی بدون کشیدن و رهاکردن ترتیب را اصلاح کنی.
بررسی ساختار تمرین
این صفحه کامپایلر کامل Java نیست؛ ساختار تمرین را صادقانه بررسی میکند و خروجی مورد انتظار را نشان میدهد. برای اجرای کامل به محیط رسمی همان زبان نیاز است.
یک بخش را تغییر بده و دکمه بررسی را بزن.
راهنماییها مرحلهای هستند؛ اول خودت پیام خطا را بخوان.
count را 3 کن و دوباره javac و java را اجرا کن. قبل از اجرا، خروجی تازه را در یک جمله بنویس.
این سه اشتباه را انجام نده
نام فایل غیر از Main.java برای public class Main خطای compiler میدهد.
کپیکردن کد بدون اجرای مرحلهبهمرحله
تغییر چند قسمت همزمان و گمشدن علت نتیجه
با 5 سؤال مطمئن شو که مفهوم را گرفتهای
خروجی درست این نمونه چیست؟
چرا پیش از اجرا نتیجه را حدس میزنیم؟
سرنخ خطای این درس چیست؟
بعد از تغییر کد چه کنیم؟
چه وقت آماده درس بعدی هستی؟
فهمیدی، تغییر دادی، نتیجه را توضیح دادی؟
فقط در این صورت درس را کامل کن و سراغ مرحله بعد برو.