آموزش جامع Processing
درس 1: شروع به کار با Processing
قبلا در سایت، به معرفی نرمافزار Processing پرداختیم؛ اما حالا قصد داریم تا اولین درس رسمی خود را برای دورهی جامع این نرمافزار جالب و کاربردی شروع کنیم. پس با فول کده همراه باشید.
ایجاد اولین پروژه!
به تبعیت از رسم همیشگی شروع یادگیری هر چیز جدیدی در برنامهنویسی، بیایید ابتدا اولین پروژهی خود که چاپ پیام Hello World خواهد بود را به صورت کاملا کلیشهای در Processing پیاده کنیم! بنابراین، ابتدا نرم افزار را اجرا کنید. سپس در همان شروع کار، زبانهای (Tab: تب) به نام Sketch برای شما ایجاد شده است تا بتوانید کدهای خود را درون آن بنویسید؛ و همچنین برای نوشتن و اجرای کد، ضروری نیست که پروژه را حتما در جایی ذخیره کرده باشید!
اما حالا برای سلام کردن به دنیا با چاپ پیام Hello World، کد زیر را به صورت کاملا کلیشهای در Processing وارد کنید:
void setup() { println("Hello World!"); }
و برای اجرای آن، کافیست تا روی آیکون Run که در بالا و با علامت Play قرار دارد، کلیک کنید؛ سپس با صحنهی زیر رو به رو خواهید شد:
همانطور که میبینید، در پایین Proessing و بخش Console، پیام Hello World چاپ شده است! و پنجرهای نیز با ابعاد کوچک در وسط صفحه بالا آمده که البته درون آن چیزی برای نمایش وجود ندارد!
آنچه که باید دانسته باشید و بدانید:
- در کد بالا، setup یک متد است.
- متد println، شکل خلاصه شدهی System.out.println جاوا است!
- در Processing، کلاسی با نام PApplet وجود دارد که هر کلاس دیگریی که بخواهیم به عنوان یک Sketch (طرح) عمل کند، بایستی آن را از PApplet مشتق کنیم. (یعنی از PApplet ارثبری کند)
لذا به صورت پیشفرض، یک کلاسی توسط خود Processing ایجاد شده است و کدی که ما در بالا نوشتهایم، در واقع درون یک کلاس مشتق شده از PApplet میباشد! بنابراین تمامی توابعی مثل println، درون PApplet تعریف شدهاند. - با توجه به نکتهی سوم، setup نیز متدی درون PApplet است؛ که در بالا آن را Override کرده و کدی درون آن نوشتهایم. همچنین این متد، موقع راهاندازی و بالا آمدن پروژه (در زمان اجرا) و قبل از نمایش داده شدن پنجره، فراخوانی میشود؛ در آینده آن را بیشتر توضیح خواهم داد.
ایجاد یک تب جدید و درک بیشتر ساختار Proessing
همانطور که میدانید، بعد از اجرای Processing، به صورت پیشفرض یک تبی (زبانهای) با پسوند Sketch وجود دارد. برای شروع چیزی که قصد توضیحش را دارم:
- روی فِلِشِ رو به پایینی که کنار تب پیشفرض قرار دارد کلیک کنید، تا منویی نمایش داده شود.
- روی گزینهی New Tab را که برای ایجاد یک تب جدید میباشد، کلیک کنید.
- نام دلخواهی برای تب نوشته و روی OK کلیک کنید.
حالا که تب جدیدی ایجاد کردیم، به نظرتان این تب، همانند تب پیشفرض، یک کلاس جدا خواهد بود که از PApplet مشتق شده است؟! یعنی بتوانیم داخل آن Setup و … بنویسیم!
جواب خیر است! این تب، به همان تب قبلی چسبیده است و خلاصه بگویم هر تبی که ایجاد کنیم، در واقع در حال مرتب سازی و بخش بندی کلاس پیشفرض هستیم! لذا ایجاد یک تب جدید، به معنی این نخواهد بود که یک کلاس جدیدِ مشتق شده از PApplet ایجاد میکنیم! برای درک این گفته، متدی با نام welcome، در تب جدیدی که ایجاد کردهایم، به صورت زیر تعریف میکنیم:
public void welcome() { println("Welcome to FuLLKade!"); }
سپس درون setup ای که در تب اصلی قرار دارد، متد فوق را صدا میزنیم:
void setup() { welcome(); }
و با اجرای کد، خواهیم دید که پبام در Console چاپ میشود! لذا میتوان گفت که اگر یک کلاسی در یک تب جدید تعریف شود، در واقع آن کلاس در حالت تعریف شدن درون یک کلاس پیشفرض است! همچنین، میتوان متد setup و … را درون تبهای دیگر Override کرد!
ذخیره کردن یک پروژه
کافیست کلیدهای ترکیبی Ctrl+S را بزنید؛ و یا اینکه از منوی File، روی Save کلیک کنید. سپس مسیری را تعیین کرده و پروژه را ذخیره کنید. لازم به ذکر است که به هنگام ذخیرهی پروژه، هرنامی که برای پروژه مشخص کنید، یک پوشه با آن نام ساخته خواهد شد و تب پیشفرض نیز به آن نام تغییر خواهد یافت.
در درس بعدی، وارد پیکربندی پروژه خواهیم شد.
نظرات ثبت شده بدون دیدگاه