برنامه نویسی چیست؟

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

برنامه نویسی کامپیوتر (که اغلب به طور کوتاه برنامه نویسی نامیده می شود) فرآیند سوق دادن ساختار اصلی یک مسأله محاسباتی به برنامه ای قابل اجرا است. این کار مستلزم فعالیت هایی همچون تحلیل و درک مسأله است و عموما حل چنین مسایلی منجر می شود به ایجاد یک الگوریتم، بازبینی نیازمندی های الگوریتم که شامل صحت و میزان منابع مصرفی است، پیاده سازی(که معمولا به عنوان کدینگ از آن یاد می شود) این الگوریتم در یک زبان برنامه نویسی مقصد، تست کردن، اشکال زدایی، نگه داری کد منبع، پیاده سازی سیستم ساخت(build system) و مدیریت مصنوعات مشتق شده مانند کد ترجمه شده به زبان ماشین برنامه های کامپیوتری. الگوریتم اغلب تنها به شکل قابل تجزیه و تحلیل برای انسان و قابل استدلال با منطق نمایش داده می شود. کد منبع به یک یا چند زبان برنامه نویسی(مانند JavaScript ،Smalltalk ،Python ،Java ،C# ،C++ ،C، و غیره) نوشته شده است.
برنامه نويسی را می توان به يک بازی هوش تشبيه کرد ، بازی بر روی داده ها و متغيرها با استفاده از دستورات و ابزارهای برنامه نويسی که در اختيار ما گذاشته شده است . در اين بازی ابتدا بايد ابزراهای مورد نياز خود ، جهت نوشتن برنامه ای خاص را انتخاب کرده سپس بايد ابزارها را به گونه ای در کنار هم قرار دهيم و به گونه ای با ابزارها بر روی داده ها و متغيرها کار کنيم تا به هدف مورد نظر برسيم . بنابراين بايد در ابتدا ، شناخت کافی بر روی ابزارها و کاربرد آنها داشته باشيم که تجربه نشان داده اين يادگيری برای دانشجويان ، چندان دشوار نيست و اکثر دانشجويان قادر به درک ابزارها و دستوراتی مانند if يا while و غيره می باشند . اما نکته مهم اين است که پس از تسلط بر روی ابزارها ، تازه بازی آغاز می شود و ما تنها بر قوانين بازی و ابزارهای موجود شناخت پيدا کرده ايم . اينجاست که برخی دانشجويان دچار مشکل می شوند و قادر به استفاده مناسب از ابزارها و بسط دادن آنها در کنار يکديگر جهت رسيدن به هدف نهايی برنامه نمی باشند . در اين مرحله دانشجويان بايد دارای يک روحيه الگوريتمی شوند بدين معنی که توانايی تفکيک مراحل ، جهت رسيدن به پاسخ را داشته باشند . کمتر دانشجويی است که بدون تمرين و ممارست به اين روحيه دست پيدا کند . از علائم ورود يک دانشجو به دنيای برنامه نويسی شوق و اشتياق او جهت يافتن تمرينهای جديد برنامه نويسی است و چنين دانشجويی با پشتکار خود می تواند يک برنامه نويس حرفه ای شود.

 

آشنايی با چند زبان برنامه نويسی :


ليسب :

یک زبان برنامه‌نویسی رایانه است که در سال ۱۹۵۸ به وسیلهٔ جان مک‌کارتی ابداع شده است. این زبان، مانند زبان برنامه‌نویسی پرولوگ، بیشتر برای برنامه‌نویسی هوش مصنوعی مورد استفاده قرار می‌گیرد. با توجه به اینکه زبان لیسپ از نحو ساده‌ای برخوردار است، تجزیه و پیاده‌سازی آن نسبتاً با سهولت انجام می‌شود.

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

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

سی نام فارسی عدد ۳۰ است.

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

سی (Si) نماد شیمیایی سیلیکون است.


زبان برنامه‌نویسی C++ :

(تلفظ می شود: سی پلاس پلاس) یک زبان برنامه‌نویسی کامپیوتری سطح بالا و عمومی (با کاربرد های متنوع) می باشد. این زبان از تمام روش های مرسوم برنامه نویسی از قبیل برنامه‌نویسی شی‌گرا، برنامه نویسی ساخت یافته و برنامه نویسی پایه پشتیبانی می کند.

زبان ++C در سال ۱۹۸۳ در آزمایشگاه های بل (Bell Labs) و بر مبنای زبان سی با افزودن امکانات برنامه نویسی شی گرا ساخته شد. این زبان از حوالی سال ۱۹۹۰ میلادی یکی از پرکاربردترین زبان‌های برنامه نویسی به شمار می رود که برای برنامه نویسی سیستمی و برنامه نویسی ویژوال (بر مبنای GUI) در محیط های مختلف از قبیل ویندوز و لینوکس به صورت وسیع به کار می رود.


جاوا :

امروزه یکی از متداول ترین زبان های برنامه نویسی جهان است. این زبان از لحاظ ظاهری شباهت های زیادی به ++C دارد ولی در اصل می توان تفاوت های بنیادین زیادی را برای آنها بر شمرد. بر خلاف بسیاری دیگر از زبان های کامپایلری که سورس کد آنها پس از کامپایل شدن به باینری یک ماشین حقیقی ترجمه می شود، برنامه های جاوا پس از کامپایل شدن به باینری ماشینی به نام ماشین مجازی جاوا یا JVM ترجمه می شود. این کد باینری را بایت کد می گویند. ماشین مجازی جاوا عمدتا بصورت نرم افزاری پیاده سازی می شود ولی پیاده سازی های سخت افزاری یا ترکیبی (بیشتر به صورت کمک پردازنده) از آن نیز وجود دارد. استفاده از ماشین مجازی یک روش مدرن در زبان های برنامه نویسی محسوب می شود و مزایای زیادی دارد. ماشین مجازی جاوا می تواند امنیت اجرای برنامه ها را تضمین کند و حق دسترسی های مختلفی برای برنامه ها در نظر بگیرد. همچنین ماشین مجازی جاوا سازگاری اجرای برنامه های جاوا را تحت سیستم عامل های مختلف حفظ می کند. یک باور غلط در بین بسیاری از مردم این است که برنامه های نوشته شده به زبان جاوا کندتر از برنامه های نوشته شده به زبان های کامپایلری اجرا می شود، در حالی که سرعت اجرای یک برنامه جاوا کاملا بستگی به نحوه پیاده سازی ماشین مجازی دارد. ماشین های مجازی جدید جاوا معمولا از تکنیکی به نام کامپایل در زمان لازم یا JIT استفاده می کنند. در این روش در هنگام اجرای برنامه بایت کد ابتدا به کد باینری ماشینی حقیقی که بر روی آن اجرا می شود ترجمه می شود و سپس باینری ترجمه شده بر روی ماشین اصلی اجرا می شود. در این فرآیند ماشین مجازی می تواند بهینه سازی های خاص ماشین حقیقی را بر روی کد انجام دهد که در برخی موارد باعث می شود برنامه های جاوا حتی سریع تر دیگر زبان های کامپایلری اجرا شود.

سی‌شارپ :

همچون زبان برنامه‌نویسی جاوا زبانی‌ست شئ‌گرا و بسیار سطح بالا (high level). محصول شرکت Microsoft و بر پایه .NET از آنجایی که شئ‌گرائی و سطح بالا بودن از ابزارهای مدیریّت مؤثّر و کارآمد پیچیدگی در فضای پیچیدۀ اینترنت مدرن می باشند، در واقع می‌شود جاوا و سی‌شارپ را از جمله زبان های اصلی برای ایجاد و انجام برنامه‌های کاربردی تحت وب (web applications) و خدمات وب دانست.

اکنون مفتخریم با کسب 10 سال تجربه در عرصه برنامه نویسی ، گامی بلند در راستای تحقق اهدافمان که ارائه خدمات با کیفیت و هم طراز استانداردهای بین المللی به هموطنان عزیز است ، برداشته ایم

 

کپشن عکس : آقای فرهاد محمودوند مدیر برنامه نویسی گروه فناوری هنر مدرن
کلاس : مجتمع فنی تهران و فریلنسر