برنامهنویسی به زبان ساده
کامپیوترها به خودی خود نمیتوانند کاری را انجام بدهند. به همین دلیل باید به یکی از روشهای زیر دستوراتی را به کامپیوتر بدهیم تا اجرا کند.
- برنامه بنویسیم: این کار مانند دستورالعمل، مرحله به مرحله به کامپیوتر میگوید که چه اقدامی را باید انجام دهد.
- برنامه بخریم: میتوانیم برنامهای که فرد دیگری نوشته است را بخریم که در آن نیز دستورالعملی برای کامپیوتر نوشته شده است.
به هر حال برای اینکه کامپیوتر کاری را انجام بدهد یک نفر باید برای آن برنامه بنویسید. تنها کاری که این برنامه انجام میدهد آن است که به کامپیوتر بگوید چه اطلاعاتی را دریافت کند، چه اقدامی روی آن انجام دهد و سپس چه نوع خروجی بسازد که برای انسان قابلفهم باشد.
برنامهنویسی و حل مسئله
به بیان دیگر برنامهنویسی به کامپیوتر میگوید که چگونه مسئلهای را حل کند. و از آنجا که دنیا پر از مسائل است برنامهنویسی برای کامپیوتر میتواند تا بینهایت ادامه داشته باشد.
اما برای آنکه کامپیوتر بتواند مسئله بزرگی را حل کند ابتدا باید به او بگویید که چگونه مسائل کوچکتر که این مسئله را تشکیل میدهد حل کند. بهطور مثال باید این مسائل حل شوند:
- مشخص کنید که شخصیت کارتونی (فرد، ماشین، موتور و غیره) با هر حرکت کنترلرتا چه میزان باید حرکت کند.
- مشخص کنید شخصیت بازی باید روی دیوار برود، با دیوار برخورد کند و یا با شخصیت دیگری درگیر شود.
- حواستان باشد که شخصیت بازی کار غیرممکنی نظیر عبور از دیوار انجام ندهد.
- محدوده شخصیت بازی را مشخص کنید. مثلاً در نظر بگیرید که اگر شخصیت به پشت درخت میرود نباید دیگر دیده شود.
- اگر شخصیتی از نوعی سلاح استفاده میکند، مشخص کنید که برد تخریبی و میزان آسیبرسانی آن تا چه میزان است. همچنین مشخص کنید که این تخریب چه ظاهری خواهد داشت.
هر میزان مسئله آسانتر باشد برنامهنویسی برای آن نیز آسانتر خواهد بود. بهطور مثال یک بازی پینگپنگ را بسیار آسانتر از جنگ جهانی دوم با تمام جزئیات و سلاحهای به کار رفته در آن میتوان برنامهنویسی کرد.
برنامهنویسی؛ سخت یا زمانبر؟
درواقع برنامهنویسی اصلاً سخت و یا مرموز نیست. اگر میتوانید برای آدرس دادن به فردی یک دستورالعمل قدم به قدم بنویسید، حتماً برنامهنویسی هم میتوانید انجام دهید. سختترین کار در برنامهنویسی مشخص کردن مسئلههای کوچکی است که به مسئله اصلی ختم میشوند. در واقع باید گفت کامپیوترها ابله هستند و باید روند انجام هر کار را موبهمو برایشان شرح داد.
هنگامی که به یکی از دوستانتان آدرس میدهید احتمالاً اینگونه خواهید نوشت:
- بزرگراه نواب را به سمت شمال برو
- میدان جمهوری پیاده شو
- میدان را به دست راست برو
- پلاک 29
- زنگ سوم
اما اگر بخواهید همین اطلاعات را به کامپیوتر بدهید گیج میشود. کامپیوتر باید دقیقاً بداند:
- دقیقاً از چه نقطه در بزرگراه نواب شروع کنم و تا چه میزان بزرگراه را بالا بروم
- میدان را از کجا تشخیص بدهم و چگونه پیاده شوم
- پس از رفتن به سمت راست چه میزان پیش بروم
- پلاک 29 کجا قرار دارد
- طبقه سوم چیست و من باید دقیقاً با آن چهکاری انجام دهم
تا زمانی که شما دقیقاً به کامپیوتر برنامه ندهید و مراحل را مشخص نکنید، کامپیوتر گیج خواهد ماند و نمیداند چهکاری انجام دهد.
مشاهده کردید برنامهنویسی اصلاً مفهوم سختی ندارد و تنها زمانبر است.