زبان های برنامه نویسی Cو ++C
اگر علاقمند به یادگیری زبان های برنامه نویسی Cو ++C هستید ما در ادامه مطالب مفیدی دراین باره برای شما قرار دادیم.
مسلما یکی از سودمندترین اختراعات بشر تا به امروز کامپیوترها بوده اند. دستگاه هایی که هزاران بار سریعتر از انسان فکر میکنند و سرعت عملشان به طرز غیر قابل باوری بالاست. سرعت و قدرت، امکان انجام خیلی از کارهایی را فراهم کردند که انسان به طور عادی از انجام آن ها عاجز بود. اما یک مشکل وجود داشت: این دستگاه ها به همان اندازه که قوی بودند ، کم هوش هم بودند؛ آن ها به طور عادی هیچ عملی انجام نمی دادند مگر این که به صراحت از آن ها درخواست می شد. اما این درخواست چگونه باید صورت می گرفت؟ باید راهی برای گفتگو با آن ها پیدا می شد. و در این زمان بود که متخصصان تصمیم گرفتند زبان های مخصوصی را بوجود بیاورند تابتوانند با کامپیوترها گفتگو کنند. این زبان های مخصوص به اصطلاح زبان های برنامه نویسی کامپیوتر نام گرفتند.به نسل اولیه زبان های برنامه نویسی، زبان های سطح پایین گفته می شد، چرا که به سختی قابل یادگیری و به کارگیری بودند. پیاده سازی اعمالی ابتدایی توسط این زبان ها باعث می شد مدت ها وقت با ارزش برنامه نویسان گرفته شود. اما وضع به همین منوال نماند و با گذشت زمان زبان های جدیدی به وجود آمدند که آموختن آن ها راحت تر بود. طی سه دهه ی اخیر، صنعت کامپیوتر مورد هجوم انواع زبان های برنامه نویسی قرار گرفت.
اگر به برنامه نویسی علاقه دارید آموزش پایتون را از دست ندهید.
مقدمه
سیستم های کامپیوتری جدید ، تاثیرات وسیع و رشد یابنده ای بر اکثر فعالیت های بشری داشته و دارند. کامپیوتر امکان داده است تا زمینه های جدیدی از تحقیقات در علوم ایجاد شوند که پیشتر ، به سبب کمبود داده ها و محدودیت در انجام تحلیل ها و محاسبات عددی ، چندان شناخته شده نبودند. کامپیوتر ، پیشرفت های تکنولوژی ، از قبیل سفر به ماه ، را تسهیل کرده و بعنوان وسیله ای برای کنترل فرایندهای صنعتی ، به گستردگی مورد استفاده قرار می گیرد . اکثر سیستم های حسابداری و بانکی ، اینک کامپیوتری شده و در فعالیت هایی مثل مدیریت موجودی و انبار ، پرداخت حقوق حمل و نقل و مراسلات ، از کامپیوتر در حد وسیع استفاده می شود . سازمان های دولتی ، اینک برای ذخیره و بازیابی اطلاعات ، کامپیوتر را بکار می گیرند . در دانشگاه ها برای ذخیره و بازیابی اطلاعات ، امور حسابداری و پرداخت حقوق ، برنامه ریزی دروس و ثبت نام دانشجویان و فعالیت های دیگر از کامپیوتر بهره برداری می شود . بسیاری از سیستم های کتابداری ، اینک کامپیوتری شده اند و در کتابخانه ها ، حتی برای نگاهداری و بازیابی اسناد و مدارک و چکیده های علمی ، از کامپیوتر استفاده می کنند. سخن کوتاه ، کامپیوتر در تمام فعالیت هایی که در آنها پردازش سریع حجم زیادی از اطلاعات ، مورد نیاز باشد، بکار برده می شود .
اگر به دنبال شغلی پر درآمد هستید آموزش طراحی سایت با وردپرس را از دست ندهید.
تاریخچه برخی از زبان های برنامه نویسی
قصد دارم که چند تا از زبان های برنامه نویسی رو معرفی کنم و یه خورده از تاریخچه شون بگم.
شاید تکراری باشه برای دوستان برنامه نویس.
زبان برنامه نویسی C:
در اوایل دهه ۱۹۷۰ میلادی ، زبان C ، توسط دنیس ریچی و به عنوان زبان برنامه نویسی سیستم ها طراحی شد. این زبان از دو زبان قدیمی تر بنام های BCPL و B حاصل شده است. زبان C تا سال ۱۹۷۸ منحصر به استفاده در لابراتوار کمپانی BELL بود تا این که توسط دو تن بنام های ریچی و کرنیه نسخه نهایی این زبان منتشر شد. به سرعت کامپایلر ها و مفسر های متعددی از C توسعه یافت اما برای جلو گیری از ناسازگاری های ایجاد شده و نیز حفظ قابلیت حمل زبان، تعاریف متحد الشکلی توسط استاندارد (ANSI (American national standard institute موسسه استاندارد ملی آمریكا ارائه گردید.مفسر خود برنامه ای کامپیوتری است که برنامه ی سطح بالا، داده ی ورودی آن و برنامه ی ایجاد شده به زبان ماشین، خروجی آن را تشکیل می دهد. به طور کلی ویژگی های مهم زبان C به اختصار به شرح زیر است:
- زبان سی به طور گسترده ای در دسترس است. مفسر های تجاری آن در بیشتر کامپیوتر های شخصی، مینی کامپیوتر ها و نیز در کامپیوتر های بزرگ قابل استفاده اند.
- سی زبانی است همه منظوره، ساخت یافته سطح بالا (مانند زبان پاسکال و فرتون . …) و انعطاف پذیر که برخی از خصوصیات زبانهای سطح پایین را نیز که معمولا در اسمبلی یا زبان ماشین موجود است داراست. در عین حال این زبان برای کاربردهای ویژه طراحی نشده و می توان از آن در همه ی زمینه ها، بخصوص به دلیل نزدیکی آن به زبان ماشین در برنامه نویسی سیستم، استفاده کرد. بنابراین سی بین زبان های سطح بالا و سطح پایین قرار دارد و در نتیجه اجازه می دهد که برنامه نویس خصوصیات هر دو گروه زبان را به کار برد. از این رو در بسیاری از کابردهای مهندسی به طور انحصاری زبان سی به کار می برند. (زبان های سطح بالا، دستور العمل هایی شبیه زبان انسان و پردازش فکری او داردند، همچنین یک دستور العمل زبان سطح بالا معادل چند دستور العمل به زبان ماشین است).
- برنامه های نوشته شده به زبان c به طور کلی مستقل از ماشین یا نوع کامپیوتر است و تقریباً تحت کنترل هر سیستم عاملی اجرا می شود.
- کامپایلرهای سی معمولا فشرده و کم حجم اند و برنامه های هدف ایجاد شده با آنها در مقایسه با سایر زبانهای برنامه سازی سطح بالا، خیلی کوچک و کار آمدند.
- برنامه های سی در مقایسه با سایر زبانهای برنامه سازی سطح بالا، به راحتی قابل انتقال اند. دلیل آن این است که سی خیلی از ویژگی های وابسته به نوع کامپیوتر را در توابع کتابخانه ای خود منظور داشته اTop of Form
- ست. بنابراین هر نسخه ازسی با مجموعه ای از توابع کتابخانه ای مخصوص به خود همراه است که بر اساس ویژگی های کامپیوتر میزبان مربوط نوشته شده است. این توابع کتابخانه ای تا حدودی استاندارد است و معمولا هر تابع کتابخانه ای در نسخه های متعدد سی به شکل یکسان در دسترس است.
- سی روش برنامه نویسی ماژولار را پشتیبانی می کند. همچنین از نظر عملگر ها نیز زبانی قوی است که عملگرهای گوناگونی برای دستکاری روی داده ها در سطح، بیت داراست.
- به طور کلی جامعیت ، عمومیت، خوانایی، سادگی ، کارآیی، و پیمانه ای بودن که همگی از مشخصات برنامه ای ایده آل اند در زبان C پیاده سازی می شوند.
ویژگی های فوق موجب شده زبان C یکی از قویترین و محبوب ترین زبان های برنامه سازی دنیا مطرح شود.
اگر قصد یادگیری ICDL دارید میتوانید در دوره تخصصی آموزش ICDL شرکت کنید.
زبان برنامه نویسی ++C:
استراستروپ کار بر روی زبان «c با کلاس» را در سال ۱۹۷۹ آغاز کرد.ایده ساخت این زبان جدید در زمان کار بر روی تز دکترای خود به ذهن استراستروپ خطور نمود. او متوجه شد که سیمولا دارای ویژگیهای مناسب برای ساخت برنامههای بسیار بزرگ است اما برای استفاده عملی بسیار کند است اما BCPL با وجود سرعت بسیار زیاد برای ساخت برنامههای بزرگ بسیار سطح پایین است. زمانی که استراستروپ کار خود را در آزمایشگاههای بل (Bell Labs) آغاز نمود با مشکل تحلیل هسته unix با توجه به محاسبات توزیع شده روبرو شده بود. با یادآوری تجربیات خود در دوران دکترا، او زبان C را با استفاده از ویژگیهای سیمولا گسترش داد. C به این دلیل انتخاب شد که C یک زبان عمومی، سریع، قابل حمل، و بصورت گسترده در حال استفاده بود. علاوه بر C و سیمولا زبانهای دیگری مانند ALGOL 68، ADA، CLU، ML نیز بر ساختار این زبان جدید اثر گذاشت. در ابتداویژگیهای کلاس، کلاسهای مشتق شده، کنترل نوع قوی، توابع درون خطی، و آرگومان پیشفرض از طریق Cfront به C اضافه شد. اولین نسخه تجاری در سال ۱۹۸۵ ارائه شد. در سال ۱۹۸۳ نام زبان از «C با کلاس» به ++C تغییر یافت. ویژگیهای دیگر شامل توابع مجازی، سربارگزاری عملگر و نام تابع، ارجاعات، ثوابت، کنترل حافظه توسط کاربر بصورت آزاد، کنترل نوع بهتر، و توضیحات یک خطی به صورت BCPL با استفاده از «//» نیز به آن اضافه شد. در سال ۱۹۸۵ اولین نسخه زبان برنامهنویسی ++C انتشار یافت و مرجع مهمی برای این زبان فراهم شد در حالی که هیچ استاندارد رسمی وجود نداشت. در سال ۱۹۸۹ ویرایش 20 از زبان ++C ارائه شد. ویژگیهای جدیدی مانند ارثبری چندگانه، کلاسهای انتزاعی، اعضای ایستای توایع، اعضای ثابت تابع، و اعضای حفاظت شده به آن اضافه شد. در سال ۱۹۹۰ «راهنمای مرجع ++C » منتشر شد. این کار بنیان استانداردهای بعدی شد. آخرین ویژگیهای اضافه شده شامل موارد زیر بودند: قالب توابع، استثناها، فضاهای نام، تبدیلات جدید، و یک نوع داده منطقی. در حین تکامل ++C کتابخانه استاندارد نیز بوجود آمد. اولین نسخه کتاب استاندارد شامل کتابخانه جریانات I/O بود که جایگزین printf و scanf شد. در ادامه مهمترین ویژگی اضافه شده Standard Template Library بودهاست.
اهداف به وجود اومدن ++C:
در کتاب «طراحی و تکامل ++C» استراستروپ قوانین مورد استفاده در طراحی ++C را بیان مینماید. دانستن این قوانین به فهمیدن نحوه عملکرد ++C و چرایی آن کمک میکند. جزئیات بیشتر در کتاب قابل دسترسی است:
- ++C طراحی شدهاست تا یک زبان عمومی با کنترل نوع ایستا و همانند C قابل حمل و پربازده باشد.
- ++C طراحی شدهاست تا مستقیما و بصورت جامع از چندین شیوه برنامهنویسی (برنامهنویسی ساختیافته، برنامهنویسی شیگرا، انتزاع داده، و برنامهنویسی جنریک)
- ++C طراحی شدهاست تا به برنامهنویس امکان انتخاب دهد حتی اگر این انتخاب اشتباه باشد.
- ++C طراحی شدهاست تا حداکثر تطابق با C وجود داشته باشد و یک انتقال راحت از C را ممکن سازد.
- ++C از بکاربردن ویژگیهای خاص که مانع از عمومی شدن است خودداری مینماید.
- ++C از ویژگیهایی که بکار برده نمیشوند استفاده نمیکند.
- ++C طراحی شدهاست تا بدون یک محیط پیچیده عمل نماید.
بیشتر یادبگیرید: