مشخصات مقاله
-
1160
-
0.0
-
3561
-
0
-
0
مروری بر زبان برنامه نویسی C++
مروری بر زبان برنامه نویسی ++C
++C یک زبان با قابلیت نوع داده ای static (قابلیت استفاده از متغیر بدون تعریف آن. زبانی که نوع داده ای متغیر را در زمان کامپایل بررسی می کند)، کامپایل شده، چند منظوره، حساس به کوچک و بزرگی حروف بوده که برنامه نویس در طول توسعه ی پروژه با آن تنها با یک پنجره ی فرمان (cmd) تعامل داشته و خبری از فرم، به آن شکل که در C# وجود دارد، نیست. این زبان از تکنیک برنامه نویسی مبتنی بر تابع (procedural)، شی گرا و generic (روشی از برنامه نویسی است که نوع دادهها در آینده مشخص میشود و زمانی یک نوع به عنوان پارامتر مورد نیاز باشد) پشتیبانی می کند.
از آنجایی که زبان ++C ویژگی ها و امکانات زبان های سطح بالا و سطح پایین را دربرمی گیرد، از آن تحت عنوان یک زبان برنامه نویسی سطح میانی (Middle-level) یاد می شود.
++C توسط بییارنه استراستروپ، ریاضیدان دانمارکی در سال ۱۹۷۹ در کارگاه های شرکت بل ، در جهت بهبود کارایی زبان C و بر مبنای آن طراحی شد و آن را C با کلاس خواند. وی در سال ۱۹۸۳ اسم این زبان را به ++C تغییر داد. توسعه با اضافه نمودن کلاسها و ویژگیهای دیگری مانند توابع مجازی، سربارگزاری عملگرها (operator overloading)، وراثت چندگانه، قالب توابع، و پردازش خطا انجام شد. این زبان برنامهنویسی در سال ۱۹۹۸ تحت نام ISO/IEC ۱۴۸۸۲:۱۹۹۸ استاندارد شد. نسخه ی فعلی استاندارد این زبان ISO/IEC ۱۴۸۸۲:۲۰۱۴ است.
زبانی که از static typing استفاده می کند، در واقع عملیات بررسی نوع داده ای (type-checking) را نه در زمان اجرای اپلیکیشن، بلکه در زمان کامپایل انجام می دهد.
تکنیک برنامه نویسی شی گرا (Object-Oriented)
++C به طور کامل از تکنیک برنامه نویسی شی گرا پشتیبانی کرده و در توسعه ی اپلیکیشن هر چهار اصل آن را رعایت می کند:
- Encapsulation (کپسوله سازی)
- data hiding (عبارت است از یک تکنیک توسعه ی اپلیکیشن که در آن اطلاعات داخلی آبجکت ها و اعضای داده ای کلاس برای دیگر کلاس ها مخفی می شوند. به واسطه ی این تکنیک اعضای کلاس تنها از داخل آن قابل دسترسی هستند و جامعیت آبجکت حفظ می شود.)
- Inheritance (وراثت)
- Polymorphism (چند ریختی)
کتابخانه های متعارف ++C
++C ا ز سه بخش اصلی تشکیل می شود:
- اصل زبان که ساختارهای تشکیل دهنده ی اپلیکیشن نظیر متغیرها، انواع داده ای، مقادیر ثابت (literal) و غیره ... را شامل می شود.
- کتابخانه ی استاندارد ++C (Standard Library) که طیف گسترده ای از توابع کارا را جهت ویرایش فایل ها، رشته هاو غیره ... در اختیار توسعه دهنده قرار می دهد.
- STL کتابخانه ای است که طیف گسترده ای از متدها را جهت ویرایش data structureها (همچون آرایه) را در اختیار شما قرار می دهد.
استاندارد ANSI
استاندارد ANSI یا موسسه استانداردهای ملی آمریکا سعی بر درون سازی قابلیت portability در این زبان داشته است. Portability قابلیتی است که به توسعه دهنده امکان می دهد تا کدهایی که برای کامپایلر Microsoft می نویسید، بدون خطا برای دیگر کامپایلرها نظیر کامپایلر Mac، UNIX، Windows box یا Alpha قابل فهم باشد. به عبارت دیگر زمانی که اپلیکیشن نوشته شده با ++C را بر روی محیط دیگری انتقال می دهید، بدون خطا و مانند اول بر روی آن ها ترجمه شده و اجرا شود.
استاندارد ANSI به یک ورژن پایدار رسیده و تمامی تولید کنندگان مطرح کامپایلرهای ++C این استاندارد را رعایت می کنند.
روش یادگیری ++C
نکته ای که در خصوص یادگیری زبان ++C باید در نظر داشت این است که توسعه دهنده باید تمرکز اصلی بر روی یادگیری مفاهیم اصلی گذاشته و خود را درگیر جزئیات فنی نکند.
هدف اصلی از یادگیری یک زبان برنامه نویسی جدید، تبدیل شدن به یک برنامه نویس بهتر است. بدین معنی که توسعه دهنده می بایست پس از یادگیری این زبان، قابلیت های بیشتری در طراحی و پیاده سازی سیستم های جدید پیدا کرده و نیز بهتر بتواند سیستم های قدیمی را سرویس دهی و نگهداری نماید.
++C از سبک های برنامه نویسی متعددی پشتیبانی می کند. شما می توانید اپلیکیشن خود را به سبک Fortan، C، Smalltalk یا هر زبان دیگری بنویسید. هر سبک می تواند اهداف و نیازهای مد نظر را برآورده ساخته و کارایی بالا در زمان اجرای اپلیکیشن را به ارمغان بیاورد.
کاربرد ++C
امروزه صدها هزار توسعه دهنده در سرتاسر جهان با استفاده از ++C در تمامی زمینه های برنامه نویسی به ساخت اپلیکیشن می پردازند.
برنامه نویسان با استفاده از ++C، درایورهای سخت افزاری و نرم افزارهای دیگر می نویسند که قابلیت دستکاری مستقیم سخت افزار به صورت بلادرنگ (امکان پردازش کامل قبل از ضرب العجل معین) را فراهم می آورد.
از آنجایی که زبان ++C دارای ساختار کارامد و خوانا جهت آموزش مفاهیم کاربردی و پایه می باشد، بسیاری از توسعه دهندگان مفاهیم پایه ای را از طریق این زبان می آموزند.
هر کسی که از کامپیوترهای Apple Macintosh یا دستگاه هایی که ویندوز را اجرا می کنند، استفاده کرده باشد، قطعا به طور غیر مستقیم از ++C استفاده کرده چرا که رابط کاربری و UI اغلب این سیستم عامل ها با زبان مذکور نوشته شده است.