</>مدرسه زیب‌موجیاد بگیر، تمرین کن، بساز
مدرسهSolidityدرس 1
درس 1 از 20 · ۳۰ دقیقه

اولین برنامه Solidity؛ کامپیوتر کد را چگونه می‌فهمد؟

از صفر مطلق شروع می‌کنیم: ابتدا می‌فهمی برنامه چیست، سپس همین نمونه کوتاه را خط‌به‌خط می‌خوانی و با یک تغییر کوچک نتیجه‌اش را بررسی می‌کنی. هیچ پیش‌نیازی لازم نیست.

۰امتیاز شما
نقشه این درس

بعد از این درس چه کاری می‌توانی انجام بدهی؟

  • با زبان خیلی ساده توضیح بدهی کد چیست و چرا به آن نیاز داریم
  • ورودی، پردازش و خروجی نمونه را از هم جدا کنی
  • هر خط برنامه را با کلمات خودت توضیح بدهی
  • یک مقدار را تغییر بدهی و پیش از اجرا نتیجه را حدس بزنی
به زبان زندگی واقعی

Solidity را ساده بفهم

Solidity مثل یک جعبه‌ابزار تخصصی است؛ ارزش آن وقتی روشن می‌شود که مسئله، ورودی و خروجی را دقیق تعریف کنیم.

نکته مهم برای شروع Solidity

در درس اول لازم نیست نشانه‌ها را حفظ کنی؛ فقط بفهم هر خط چه داده‌ای می‌سازد و کدام خط نتیجه را نمایش می‌دهد.

چرا مهم است؟ وقتی رابطهٔ خط کد و نتیجه را بفهمی، اضافه‌کردن دستورهای تازه بسیار ساده‌تر می‌شود.

اولین تمرین تو: نام هنرجو یا شماره درس را عوض کن، خروجی جدید را روی کاغذ بنویس و سپس دکمه بررسی را بزن.

کلاس پایه · بدون پیش‌نیاز

این درس را از چهار زاویه بفهم

قرار نیست چیزی را حفظ کنی. یک مفهوم را با چند تعبیر می‌بینی تا بالاخره تصویر ذهنی روشن خودت را بسازی.

1

خیلی ساده

Solidity زبانی برای تبدیل فکر به دستورهای دقیق است. برنامه یک ورودی می‌گیرد، کاری روی آن انجام می‌دهد و نتیجه‌ای قابل مشاهده می‌سازد.

2

تشبیه اول: دستور کار

کد مثل دستور کار یک همکار دقیق است: ترتیب مهم است، نام‌ها باید روشن باشند و هر مرحله باید نتیجه مشخصی داشته باشد.

3

تشبیه دوم: خط تولید

داده وارد خط می‌شود، چند ایستگاه آن را تغییر می‌دهند و خروجی بیرون می‌آید. با بررسی هر ایستگاه می‌توانیم خطا را پیدا کنیم.

4

مدل فنی

در مدل فنی، کد منبع پیش از اجرا ترجمه یا کامپایل می‌شود. خطای نحوی یعنی مترجم نتوانسته ساختار نوشته را بفهمد.

مدل ذهنی ثابت برای همه برنامه‌ها
۱

ورودی

چه داده‌ای وارد می‌شود؟ نام، عدد، کلیک یا درخواست؟

۲

پردازش

برنامه چه قانون یا محاسبه‌ای را اجرا می‌کند؟

۳

خروجی

چه نتیجه‌ای باید ببینی و چطور درستی آن را می‌سنجی؟

خواندن کد، خط‌به‌خط

هر خط دقیقاً چه کاری انجام می‌دهد؟

از بالا به پایین بخوان. ابتدا توضیح را ببین، سپس همان خط را در کارگاه پایین صفحه تغییر بده.

  1. pragma solidity ^0.8.20;

    بخشی از دستور برنامه است؛ علامت‌ها و ترتیب آن برای محیط اجرا معنی مشخص دارند.

  2. contract Certificate {

    بخشی از دستور برنامه است؛ علامت‌ها و ترتیب آن برای محیط اجرا معنی مشخص دارند.

  3. string public title = "Zibmoj";

    یک مقدار را داخل نامی روشن نگه می‌دارد تا در خط‌های بعد دوباره از آن استفاده کنیم.

  4. }

    مرز شروع یا پایان یک بخش از برنامه را نشان می‌دهد.

واژه‌نامه خیلی ساده

کلمه‌هایی که نباید گنگ بمانند

کد

متنی با قواعد مشخص که کار مورد انتظار را برای کامپیوتر توضیح می‌دهد.

نحو یا Syntax

دستور زبان کد؛ مثل جای درست کلمات و نشانه‌ها در یک جمله.

متغیر

یک نام خوانا برای نگه‌داشتن مقداری که بعداً لازم داریم.

خروجی

نتیجه قابل مشاهده‌ای که برای بررسی برنامه بیرون می‌آید.

استاد جواب می‌دهد

سه «چرا»ی مهم درس اول

چرا کامپیوتر خودش منظور من را حدس نمی‌زند؟

چون برنامه بر اساس دستورهای دقیق و قابل تکرار کار می‌کند. این دقت باعث می‌شود همان ورودی، نتیجه‌ای پیش‌بینی‌پذیر بسازد. ابهام برای گفت‌وگوی انسانی طبیعی است، اما در کد باید تصمیم‌ها را روشن بنویسیم.

چرا از برنامه‌ای به این کوچکی شروع می‌کنیم؟

در نمونه کوچک، رابطهٔ علت و نتیجه واضح است. اگر فقط یک مقدار را تغییر بدهی، دقیقاً می‌فهمی چرا خروجی عوض شده؛ بعد همین فهم را به پروژه‌های بزرگ منتقل می‌کنی.

اگر خطا دیدم یعنی برای برنامه‌نویسی مناسب نیستم؟

نه. خطا گزارش محیط اجرا دربارهٔ چیزی است که نفهمیده یا نتوانسته انجام دهد. خط اول پیام، شماره خط و آخرین تغییری که داده‌ای سه سرنخ اصلی تو هستند.

تمرین پلکانی

از مشاهده تا نوشتن مستقل

هر مرحله فقط کمی سخت‌تر از مرحله قبل است؛ لازم نیست یک‌باره همه‌چیز را بلد باشی.

۱خیلی آسان

خروجی را حدس بزن

بدون اجرا، نتیجه نمونه را روی کاغذ بنویس. سپس آن را با نتیجه کارگاه مقایسه کن.

۲با راهنما

یک داده را تغییر بده

فقط نام یا عدد را عوض کن. توضیح بده کدام بخش خروجی باید تغییر کند و کدام بخش ثابت می‌ماند.

۳مستقل

یک خروجی تازه بساز

یک داده جدید مثل شهر یا هدف یادگیری بساز و با همان الگوی ساده آن را نمایش بده.

معیار موفقیت: یک مقدار عمومی title در قرارداد

روش مطالعه این درس
  1. یک‌بار کد را فقط بخوان.
  2. خروجی را قبل از اجرا حدس بزن.
  3. فقط یک مقدار را تغییر بده.
  4. نتیجه را با یک جمله برای خودت توضیح بده.
توضیح ساده و قدم‌به‌قدم

از یک مثال کوچک شروع کن

برنامه مجموعه‌ای از دستورهای دقیق است. محیط اجرا آن‌ها را به‌ترتیب می‌خواند و نتیجه‌ای قابل مشاهده می‌سازد. در این درس فقط رابطه خط کد و خروجی را می‌فهمی. برای نمونه، در پروژه «قرارداد ثبت گواهی» همین مفهوم را روی یک داده کوچک و قابل مشاهده امتحان می‌کنیم؛ اول نتیجه را حدس می‌زنیم و بعد فقط یک بخش را تغییر می‌دهیم.

1

۱. مثال را با زبان خودت بگو

پیش از کد یا پرامپت، ورودی، کار و نتیجه را در سه جمله کوتاه بنویس.

2

۲. کوچک‌ترین نمونه را بساز

فقط یک مفهوم تازه اضافه کن تا رابطه علت و نتیجه گم نشود.

3

۳. یک حالت متفاوت را امتحان کن

مقدار عادی، مرزی یا نامعتبر را تغییر بده و تفاوت را توضیح بده.

نکته مهم

اصل مهم: در هر تمرین فقط یک مفهوم تازه را تغییر بده؛ چند تغییر هم‌زمان یادگیری و خطایابی را سخت می‌کند.

مفهوم‌های اصلی

سه قطعه‌ای که باید بفهمی

کد

دستورهای نوشته‌شده با قواعد زبان.

اجرا

خواندن و انجام دستورها.

خروجی

نتیجه‌ای که می‌توانی ببینی و بررسی کنی.

سناریوی واقعی

ساخت مرحله‌ای «قرارداد ثبت گواهی» از نمونه کوچک تا خروجی قابل آزمون.

برای نمونه، در پروژه «قرارداد ثبت گواهی» همین مفهوم را روی یک داده کوچک و قابل مشاهده امتحان می‌کنیم؛ اول نتیجه را حدس می‌زنیم و بعد فقط یک بخش را تغییر می‌دهیم.

ورودی روشنیک تغییر کوچکنتیجه قابل سنجش
بازی ساختن کد

قطعه‌ها را به ترتیب درست بچین

روی هر قطعه بزن تا وارد پاسخ شود؛ برای برگرداندن دوباره روی آن بزن. با دکمه‌های جابه‌جایی هم می‌توانی بدون کشیدن و رهاکردن ترتیب را اصلاح کنی.

مرحله ۲ از ۳ · مرتب‌کردن کد
بانک قطعه‌هاقطعه مناسب را انتخاب کن
ترتیب پاسخ تواز بالا به پایین اجرا می‌شود

    هنوز پاسخی بررسی نشده است.

    کارگاه تعاملی

    بررسی ساختار تمرین

    این صفحه کامپایلر کامل Solidity نیست؛ ساختار تمرین را صادقانه بررسی می‌کند و خروجی مورد انتظار را نشان می‌دهد. برای اجرای کامل به محیط رسمی همان زبان نیاز است.

    sol-first
    خروجیآماده
    یک بخش را تغییر بده و دکمه بررسی را بزن.
    بعد از هر تغییر، نتیجه را دوباره بررسی کن.
    تمرین هدایت‌شده

    یک مقدار را عوض کن، خروجی تازه را پیش‌بینی کن و سپس نمونه را بررسی کن.

    دام‌های رایج

    این سه اشتباه را انجام نده

    1

    کپی نمونه بدون پیش‌بینی خروجی

    2

    افزودن چند مفهوم تازه در یک مرحله

    3

    نادیده‌گرفتن حالت خالی یا نامعتبر

    سنجش چندمرحله‌ای

    با 5 سؤال مطمئن شو که مفهوم را گرفته‌ای

    سؤال 1 از 5

    هدف اصلی این درس چیست؟

    سؤال 2 از 5

    کد در این درس چه نقشی دارد؟

    سؤال 3 از 5

    بهترین ترتیب تمرین کدام است؟

    سؤال 4 از 5

    کدام حالت باید جدا آزمایش شود؟

    سؤال 5 از 5

    چه زمانی آماده درس بعدی هستی؟

    پایان درس 1

    فهمیدی، تغییر دادی، نتیجه را توضیح دادی؟

    فقط در این صورت درس را کامل کن و سراغ مرحله بعد برو.