برنامه نویسی به زبان ساده – سلام دنیا!
به رسم یک قانون نانوشته اما اجرایی در آموزش برنامه نویسی، ما هم آموزش خود را با hello world! ها آغاز می کنیم. اما به جای معرفی چند دستور برای چاپ این عبارت بر روی مانیتور، این عبارت را تبدیل به hello programming world! کرده و درباره اش حرف می زنیم.
سلام دنیای برنامه نویسی!
نمی دانم شما چه فکر می کنید ولی از نظر من واژه ی دنیا کاملا برای برنامه نویسی مناسب است. دنیایی که در هر شاخه از آن فعالیت کنید به انتها نمی رسید و هر چه جلوتر بروید بیشتر در آن غرق می شوید و لذت می برید.
ورود به این دنیا بسیار راحت است. با یاد گرفتن یک زبان مانند سی شارپ در عرض یکی دو ماه و یادگیری اطلاعات پایه ای در مورد پایگاه داده ها می توانید برنامه های تجاری درست کنید و حتی به درآمدی هم برسید. این دقیقا همان کاری است که ایرانی ها در آن به شدت استاد هستند و اثراتش هم در صنعت نرم افزار ایران کاملا قابل مشاهده است.
اما مشکل اینجاست برنامه نوشتن هنر نیست، برنامه ی خوب نوشتن هنر است. شاید برای روشن تر شدن این قضیه یک مثال لازم باشد. شما می توانید مراحل ساخت یک ساختمان را با یک برنامه مقایسه کنید. اولین کار در ساخت ساختمان انتخاب محل ساخت است که در نرم افزار می توان آن را با انتخاب موضوع و هدف برنامه یکسان دانست. مرحله ی بعدی نقشه کشی است که این موضوع در نرم افزار همان بحث معماری نرم افزار و کشیدن کلاس دیاگرام ها می باشد. بعد از این مراحل، شروع به ساختن ساختمان می کنند و برنامه نویسی برنامه ی ما هم آغاز می شود. زمانی که کار ساخت ساختمان به پایان برسد نوبت به کچ بری، رنگ آمیزی، نما و امکانات رفاهی ساختمان می رسد که ساکنان بتوانند در آن راحت باشند که بسیار در فروش خانه مهم است. این بخش همان ساخت اینترفیس یا رابط کاربری در نرم افزار می باشد. بعد از ساخت ساختمان و برنامه هر دو برای فروش نیاز به بازاریابی دارند. همین نزدیکی و یکسان بودن باعث این شد که ساخت نرم افزار را هم جزء رشته های مهندسی حساب کنند و مهندسی نرم افزار بنامند.
مهمترین هدف من از مثال این بود که به شما نشان دهم شاید مصالح بدی را در ساختمان بکار ببرید و کسی متوجه نشود اما در اولین زلزله ساختمان شما تخریب خواهد شد. شاید شما آسانسور و لامپ های سنسور دار و سیم کشی خوب با درنظر گرفتن احتمال اضافه شدن سیم در آینده نذارید و ساختمان فروش برود، اما در آینده نارضایتی زیادی به دنبال خواهد داشت. برنامه ی شما هم همان ساختمان شماست. اگر خیلی در هم و برهم برنامه نویسی کنید و اصلا به معماری نرم افزارتان فکر نکنید با اولین هجوم همزمان کاربران (زلزله) برنامه تان در سرویس دهی دچار مشکل می شود. شاید برای برنامه تان کلید میانبر (همان آسانسور) تعریف نکنید، کاربر همه جا باید تمام مشخصات را تایپ کند و کار خودکار انجام نشود (لامپ های سنسور دار) و یا اگر برنامه ی دیگری نتواند به برنامه شما متصل شود (سیم کشی) بتوانید برنامه را بفروشید اما حتما با یک برنامه استاندارد بسیار فاصله خواهد داشت.
برای حرفه ای شدن در این رشته راه بسیار طولانی و سختی را باید پیمود. اما لذتی که در این راه وجود دارد، همه ی سختی های آن را آسان میکند. به نظر من در این رشته به جای تهیه کردن لیست از دانسته هایتان، باید از ندانسته هایتان لیست برداری کنید.