حتما تاکنون نام زبانهای برنامهنویسی زیادی را شنیدهاید. شاید هم خودتان جزو برنامهنویسان حرفهای یا تازهکاری هستید که در کدنویسی دستی بر آتش دارید. اما آیا تاکنون به این موضوع فکر کردهاید که کدام زبانبرنامهنویسی پیچیدهتر است؟
شاید در دنیای امروز جاوا اسکریپت خیلی کاربرد داشته باشد ولی در بسیاری مواقع این زبان هم از همان رویه گذشته تقلید میکند. زبانهایی چون کوبول، سی، سی پلاسپلاس، سیشارپ، جاوا و پایتون در واقع زبانهای رویهای هستند. جاوا اسکرپیت هم از این قاعده مستثنی نیست ولی این زبان یک تفاوت مهم دارد. جاوا اسکریپت با مشکل پیچیدگی کدنویسی روبرو است.
اما سوال اصلی اینجا است که چرا زبانی چون جاوا اسکریپت با مشخصاتی مشابه دیگر زبانها که مشکل پیچیدگی کدنویسی دارد، تا این اندازه محبوب شده و عملکرد فوقالعادهای دارد؟ پاسخ در موقتی بودن آن است. جاوا اسکریپت در تاریخچه توسعهی نرم افزاری در جایگاه خاصی قرار گرفته که ناگهان از یک زبان برنامه نویسی متوسط به یک زبان برنامهنویسی برای توسعه نرمافزاری سطح بالا تبدیل شده است. جاوا اسکریپت این جایگاه را مدیون انقلاب در دنیای موبایل و ابزارهای قابل حمل است.
اخیرا توسعهدهندگان حرفهای فرصت کافی برای مجادله و برطرف کردن مشکلات با طراحان گرانقیمت را ندارند و به همین دلیل معمولا منابع مورد نیاز به سختی در اختیار آنها قرار میگیرد. متاسفانه زمانی برای پاکسازی روابط وجود ندارد و حتی مدیران با توجه به اینکه نوآوریهای بیشتری نیاز دارند، در این بخش زمانی را صرف نمیکنند.
نکتهی مبهم جایی است که برنامهنویسان جاوا اسکریپت به این نتیجه میرسند که هنوز در اواخر سال ۲۰۰۰ میلادی قرار دارند و این موضوع در بررسیهای آماری بیشتر به چشم میخورد. وبسایت Seerene که در زمینهی ارائهی نتایج تحلیلی و آماری فعالیت میکند، با بررسی بیش از ۴۰۰ میلیارد خط از کدهای نوشته شده برای شناسایی و ارائهی تصویری درست از زبانهای برنامهنویسی، نتایجی را به صورت اینفوگرافیک منتشر کرده که باعث میشود ذهن برنامهنویسان بیش از پیش درگیر شود.
در ادامه میتوانیم با بررسی اینفوگرافیک ارائه شده ببینیم پیچیدهترین، ناکارامدترین و گیجکنندهترین زبانهای برنامهنویسی کدامها هستند.
کدام زبان برنامه نویسی بهتر است
شما اگر قصد برنامه نویسی دادرید بد نیست که نمودار های زیر را ببینید
همانطور که میدانید جاوا موفق به دریافت جایزه زبان برنامه نویسی سال توسط TIOBE شد. دلیل دریافت این جایزه، بیشترین و بزرگترین افزایش محبوبیت در طول یک سال بوده است. (بیش از 5.94 درصد افزایش)
پس از جاوا نیز زبانهای برنامه نویسی نظیر ویژوال بیسیک.نت (1.51درصد) و پایتون (1.24درصد) بیشترین افزایش در محبوبیت را کسب کرده اند.
اما در نگاه اول به نظر کمی عجیب میرسد که چگونه یک زبان برنامه نویسی قدیمی مانند جاوا به این جایزه رسیده است. به خصوص اگر شما از این قضیه مطلع باشید که برای بار نخست جاوا حدوداً 10سال پیش این جایزه را به دست آورده بود.
دلیل آن میتواند وجود اندروید و توسعه نرم افزارهای اندرویدی با قدرت گرفت از جاوا باشد. با ادغام چند زبان مدرن نظیر لامبادا و استریمز با خود، آینده روشنی را برای این زبان برنامه نویسی قدیمی رقم زده است و به نظر نمیرسد که به همین زودیها از محبوبیت این زبان برنامه نویسی پیشرفته کاسته شود.
اما یکی دیگر از دلایل این پیشرفت جاوا میتواند نزول شدید زبان برنامه نویسی C باشد. اپل در سال گذشته عنوان کرد که دیگر قصد دارد برای توسعه سیستم عامل خود، به جای زبان برنامه نویسی شی گرای C از زبان برنامه نویسی اختصاصی خود یعنی سوئیفت استفاده نماید. این امر موجب شد تا زبان شی گرای C با یک نزولی شدید( 5.88- درصد) مواجه شود و به رده دوم از محبوب ترین زبانهای برنامه نویسی دنیا سقوط کند.
بنابر این میتوان انتظار داشت که در سال جدید میلادی، زبانهای برنامه نویسی جاوا، پی اچ پی( با نسخه جدید خود)، جاوا اسکریپت و سوئیفت در بین 10 زبان برنامه نویسی برتر سال 2016 جای بگیرند
در اینفوگرافیک زیر مقایسه کاملی بین زبان های برنامه نویسی شده است و همین طور ارتباط آن ها با فیلم ارباب حلقه ها اشاره شده است
عملگرها نمادهایی هستند که برای انجام اعمال خاصی مورداستفاده قرارمیگیرند. عملگرها در زبان C از تنوع زیادی برخوردارند . در C چهار دسته عملگر به نامهای
( محاسباتی ، رابطه ای ، منطقی و دستکاری بیت ها ) وجود دارند که آنها را بررسی می کنیم .
عملگرهای محاسباتی
ردیف | عملگر | نام |
۱ | – | تفریق و منهای یکانی | x-y
2 | + | جمع | x+y
3 | * | ضرب | x*y
4 | / | تقسیم | x/y
5 | % | باقیمانده تقسیم | x%y
6 | — | کاهش یک واحد | x– یا –x
7 | ++ | افزایش یک واحد | x++ یا ++
در این زبان اندازه و محدوده ای که هر نوع داده اختیار می کند بستگی به نوع پردازشگر (Processor) و نحوه پیاده سازی کامپایلر دارد. شناسه هایی ( متغیر برچسب ، اسامی توابع و … ) که از نوع char باشند برای ذخیره کردن مقادیری که توسط کاراکترهای اسکی تعریف شده اند به کار می روند.
شناسه هایی از نوع int برای ذخیره کردن مقادیر صحیح ، و از نوع float و double برای ذخیره کردن اطلاعات عددی اعشاری به کار میروند که محدوده آنها توسط تعداد ارقام و دقت آنها مشخص میشود.
نوع void در مورد توابع به کار می رود . نوعهای داده اصلی ( به جز void ) می توانند با عباراتی مثل signed ، long ، unsigned و short ترکیب شده و نوع های دیگری را به وجود آورند .
با توجه به جدول زیر انواع داده و اندازه ی تقریبی آن و بازه ی قابل قبول برای هر نوع داده ای را مشاهده میکنید .
| اندازه تقریبی به بیت | بازه قابل قبول | نوع
| ۸ | -۱۲۷ تا ۱۲۷ | char
| 8 | -127 تا ۱۲۷ | unsigned char
| 8 | 0 تا ۲۵۵ | signed char
| 8 | -127 تا ۱۲۷ | int
| 16 | -32767 تا ۳۲۷۶۷ | unsigned int
| 16 | 0 تا ۶۵۵۲۵ | signed int
| 16 | -32767 تا ۳۲۷۶۷| short int
| 16 | 0 تا ۶۵۵۲۵ | short int
| 16 | -32767 تا ۳۲۷۶۷ | short int signed |
| 32 | -2147483647 تا ۲۱۴۷۴۸۳۶۴۷ | long int |
| 32 | 6 رقم دقت | float |
| 64 | 10 رقم دقت | double |
| 128 | 10 رقم دقت | long double |
این زبان تکامل یافته زبان BCPL میباشد که طراح آن مارتین ریچاردز است ، و زبان BCPL از زبان B که طراح آن کن تامپسون می باشد ، نتیجه شده است.
زبان C معمولا یک زبان میانی نامیده می شود . این بدان معنی نیست که آموزش این زبان مشکل است ، یا قدرت آن از زبان های برنامه سازی مثل پاسکال و بیسیک کمتر است و یا این که مشکلاتی مشابه زبان اسمبلی برای برنامه نویس ایجاد می کند.علت میانی بودن زبان C این است که عناصر زبان های سطح بالا را با خصیصه تابعی زبان اسمبلی درهم آمیخته است.
آموزش زبان های مختلف برنامه نویسی از سطح مبتدی و پایه تا سطح پیشرفته ی آن است و از آنجا که زبان C و ++C جزو زبان های پایه و بنیادین برنامه نویسی هستند قصد داریم تا به عنوان اولین آموزش برنامه نویسی این دو زبان را که تقریبا به هم نزدیک هستند را شروع به آموزش کنیم و در طی جلساتی این زبان ها را به شما دوستان عزیز بیاموزیم . امیدوارم که برای دوستان علاقه مند به برنامه نویسی مفید واقع بشه و با نظرات و همراهی شما تا پایان بتوانیم دوره ی خوبی را برگزار کرده باشیم .
صفحه قبل 1 صفحه بعد