ادامه مطلب

تاریخ ایجاد: چهارشنبه 23 بهمن 1391 تعداد بازدید: 3139 تعداد نظرات ارسالی: 0 نویسنده: host
بهترین زبان برنامه‌نویسی کدام است؟

اشاره:

 كدام زبانبرنامه‌نویسی را انتخاب كنم؟ از كدام نوع پايگاه داده استفاده كنيم؟ سؤالات قدیمیو تا حدودی كلیشه‌ای هستند. با این حال خواندن یكی دو مقاله جالب از اینترنت باعثشد، طرح مجدد این موضوع همیشگی را خالی از فایده ندانيم. اصولاً هر از گاهی بایداین پرسش را مجدداً در كلیه سطوح مهندسی نرم‌افزار، چه در صنعت، چه در رسانه‌ها وچه در دانشگاه‌ها مطرح كرد و دلیل آنهم، بسیار ساده است. زبان‌های برنامه‌نویسینیز مانند زبان‌های گویشی انسان‌ها پویا هستند و مرتباً متحول می‌شوند. در اینراستا برخی خود را با نیازهای روز تطابق داده و برخی نیز از این تحولات جا می‌مانند.به همین دلیل لازم است هر چند وقت یكبار این پرسش را مطرح نموده و جدیدترین پاسخ‌هارا به نقد بگذاریم. برای اینكه بحث از حالت نظری خارج شود و حالت كاربردی پیداكند، اجازه می‌خواهم نظرم را در این مورد به اختصار بیان كنم.

 

 برنامه‌نویسی تحت وب‌

 فعلاً برنامه‌نویسیتحت وب داغ‌ترین سوژه در دنیای برنامه‌نویسی است. شاید بد نباشد یادآوری كنم كهاصولاً فلسفه برنامه‌نویسی تحت وب چه بود كه به اینجا رسید. علت محبوبیت و رشدگسترده برنامه‌نویسی تحت وب، حل شدن مشكل كلاینت بود. در این مدل از برنامه‌نویسی،برنامه‌نویس دغدغه چندانی درباره قابل نصب بودن برنامه‌اش روی پلتفرم‌های مختلفندارد زیرا وضعیت تقریباً روشن است. همین كه برنامه شما روی یكی دو مرورگر معروفمانند فایرفاكس و اینترنت اكسپلورر جواب بدهد، كافی است. بنابراین در پاسخ به اینسؤال كه كدام زبان برنامه‌نویسی تحت وب را انتخاب كنیم، باید گفت زبان‌هایی كه ازهمه ساده‌ترند و تغییر و تحولات را به سرعت می‌پذیرند. در حال حاضر در این زمینهدو فناوری PHP و ASP.NET پیشتازهستند. زبان اسكریپت‌نویسی PHP شباهت‌هایی به زبان C دارد. بههمین دلیل سرعت كامپایل شدن آن بالا است و سایت‌هایی كه از این زبان استفاده می‌كننداندكی سریع‌ترند. فناوری ASP.NET از ویژوال بیسیك دات‌نت یا سی‌شارپ استفادهمی‌كند. این دو زبان، به ویژه در جدیدترین نسخه فناوری دات‌نت در یك حد هستند.سایت‌هایی كه با این دو زبان نوشته می‌شوند نرم‌افزارهای قدرتمندی را پدید می‌آورندكه قدرت انعطاف و گستره  كارایی آن‌ها بالاست زیرا هر دو زبان شئ­گرا (OOP) هستند.علاوه بر سهولت برنامه‌نویسی، پشتیبانی از برخی موج‌های نو مانندAJAX  همبحث روز است. هم زبان PHP و هم ASP.NET وضعيت خوبیدر این زمینه دارند. علاوه بر این، برخی فناوری‌های روز هم خیلی مهم هستند كه وب‌سرویسیكی از آن‌هاست. در حال حاضر رقابت شدیدی میان فناوریSOAP  كه ازسوی آی بی‌ام و مایكروسافت و دیگران پشتیبانی می‌شود و فناوری REST كه از سوییاهو و برخی شركت‌های بزرگ دیگر حمایت می‌شود، وجود دارد.

 اما وضع بعضیزبان‌ها مانند جاوا (JSP) و ColdFusion در دنیای وبخراب است و برخی زبان‌ها اخیراً دوباره مورد توجه قرارگرفته‌اند كه از آن جمله می‌توانبه Python و Ruby اشاره كرد.وضعیت جاوا در وب در این میان جالب توجه است. برخلاف موفقیت چشمگیر جاوا در برنامه‌نویسیبرای سیستم‌های بزرگ، این زبان به شدت در وب دچار ناكامی است. وب یك دنیای بصریاست و به سادگی و ظاهر سیستم‌ها اهمیت می‌دهد.

 

به همین دلیلزبان‌های فاقد ابزارهای ویژوال و قدرتمند كه در عین حال ساده نیز هستند در اینراستا محكوم به زوالند و این مسئله برای جاوا كه در زمینه وارد كردن مفاهیم بصری وپویا به دنیای وب پیشگام بود، ناگوار است، البته این قضیه هیچ ربطی به زباناسكریپت‌نویسی «جاوااسكریپت» كه با ظهور ای‌جكس جان تازه‌ای پیدا كرده، ندارد. امابه نظر من ویژوال بیسیك همچنان جذاب‌تر و ساده‌تر به نظر می‌رسد

 

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

 اما وضعیت درصنایع و سازمان‌های بزرگ بسیار متفاوت است. در جاهایی مانند صنایع مالی و بانكی،صنایع پتروشیمی و نفت، صنایع مخابراتی، سازمان‌های دولتی، صنایع خودروسازی و ماننداین‌ها، هنوز هم جاوا و مشتقاتش حرف اول را می‌زنند. قدرت جاوا در این حوزه‌ها بهقدری است كه حتی می‌توان- البته با كمی احتیاط - گفت موفقیت سیستم‌های دیگری ماننداوراكل (كه مبتنی بر جاوا است) نیز بی ارتباط با جاوا بر این محیط‌ها نیست. كاركردن با جاوا در محیط‌های بزرگ كار آسانی نیست. اوراكل هم آسان نیست وبطور كلی ورود به این عرصه‌ها چالش‌های مختلفی را پیش روی برنامه‌نویسان و شركت‌هاینرم‌افزاری قرار می‌دهد، به همین دلیل سیستم‌های مبتنی بر جاوا، گران و پرهزینه وغولآسا هستند. با این حال توجه كنید كه منظور از سازمان‌های بزرگ در اینجا سازمان‌هاییهستند كه از نظر ابعاد، تعداد كلاینت‌ها و تراكنش‌ها واقعاً بزرگ هستند و منظور مااز آن شأن و منزلت یك سازمان نیست. شركت‌هایی مانند اپراتورهای موبایل یا صنعت نفتدر ایران را می‌توان نمونه‌هایی از اینگونه سازمان‌ها محسوب كرد. اما بسیاری ازسازمان‌های دولتی در ایران صرف ‌نظر از اهمیت استراتژیك یا منزلتشان، به دلیلساختار قدیمی سازمان و مدرنیزه نشدن و مكانیزه نبودن فرآیندهای سازمان یا تنها بهاین دلیل كه بیشتر از چند هزار كاربر ندارند، جزء سازمان‌های متوسط در این بحث بهحساب می‌آیند.

 

 سازمان‌های متوسط و كوچك‌

 شركت‌ها وسازمان‌هایی كه كمتر از چند هزار كاربر یا چند صد كلاینت دارند، و آن‌هایی كه خیلیكوچك و در حد مجموعه‌های ده الی بیست نفره هستند در این خانواده از كاربران سیستم‌هاینرم‌افزاری قرار می‌گیرند. برای اغلب این سازمان‌های كوچك و بزرگ، هنوز هم چند صدهزار تومان هزینه برای توسعه و استقرار سیستم‌های نرم‌افزاری، رقم بزرگی به شمارمی‌رود. هم به این دلیل و هم به دلایل فنی، این سازمان‌ها و شركت‌ها باید ازفناوری‌ها و زبان‌هایی برای توسعه سیستم‌های نرم‌افزاری خود استفاده كنند كه هزینهكمتری دارند و كاركردن با آن‌ها ساده‌تر است. من برای اینگونه مجموعه‌ها استفادهاز زبان سی‌شارپ و راه‌حل‌های مبتنی بر ویندوز (مانند SQL Server) را توصیهمی‌كنم. سهولت و قدرت كار با پايگاه داده، یكی از دلایل اصلی قدرت زبان‌های دات‌نتیاست. البته به تازگی سیستم‌عامل، لینوكس هم طرفداران زیادی پیدا كرده است ولیموضوع انتخاب پلتفرم و سیستم‌عامل متفاوت از انتخاب زبان و فناوری برنامه‌نویسیاست. شاید به همین دلیل، برخی به دنبال پیاده‌سازی سی‌شارپ در این محیط‌هایغیرمایكروسافتی هستند. اما به هرحال زبان جاوا در سیستم‌های غیرمایكروسافتیطرفداران خاص خودش را دارد، ضمن این‌كه تردیدی ندارم كه هنوز هم استفاده از زبانویژوال بیسیك دات‌نت و API نرم‌افزارهای آفیس مایكروسافت (مانند اكسس)بهترین گزینه برای شركت‌های كوچك و چندنفره است.

 

 برنامه‌نویسی برای موبایل‌

 در حوزهبرنامه‌نویسی وب زبان ++C و پس از آن زبان‌ جاوا پیشتاز است. زبان‌هایدات‌نت نیز كه اخیراً به این حوزه راه یافته‌اند، با فاصله زیادی آن دوتای دیگر راتعقیب می‌كنند. زبان ++‌C زبان غامض و پیچیده‌ای است و به نظر من بهتدریج رو به افول گذاشته است. اما C و ++C زبان سخت‌افزارهستند و هربار كه سخت‌افزار جدید و ناشناخته‌ای خلق می‌شود زبان شماره یك آن C است. به‌تدریجكه آن پلتفرم سخت‌افزاری جان می‌گیرد، دوباره زبان‌های شیءگرا مانند جاوا و سی‌شارپدوروبرش قوت می‌گیرند. ++C ‌زبان اصلی سیستم‌‌عامل‌های سیمبیان وویندوز موبایل است. زبان جاوا نیز كه مستقل از سیستم‌عامل تلقی می‌شود، در جایی كهسیمبیان یا ویندوز موبایل غایب باشند، حرف اول را می‌زند. البته چنان‌كه می‌توانحدس زد، هیچ كس روی سیستم‌عامل ویندوز موبایل جاوا را جدی نمی‌گیرد و نگاه‌ها بهسوی سی شارپ است.

 

 زبان‌های دیگر

 جدا از برخی زبان‌هایبرنامه‌نویسی كه در كاربردهای خاصی مانند هوش مصنوعی ممكن است قدرت بیشتری داشتهباشند، سایر زبان‌ها دیگر كهنه به نظر می‌رسند؛ فرترن و كوبول از آن جمله‌اند.البته زبان‌های كار با پايگاه داده رابطه‌ای مانند T-SQL و PL/SQL موضوعمتفاوتی است كه در بحث ما نمی‌گنجد. یك نكته دیگر هم باقی می‌ماند و آن هم دیدگاهمحافل آكادمیك درباره زبان‌های برنامه‌نویسی است. بدون تردید زبان جاوا هنوز هممحبوب‌ترین زبان در محافل آكادمیك است و پس از آن سی شارپ به دلیل شباهتش به جاوامطرح است. البته در برخی از دانشگاه‌های ایران هنوز هم ممكن است زبان‌های قدیمی وفرسوده‌ای مانند فرترن تدریس شود كه اگر چنین باشد جای تأسف است. ولی به نظر منعلاقه محافل آكادمیك به این یا آن زبان ممكن است گمراه‌كننده باشد. آنچه اهمیتدارد كاربرد و كارایی زبان در یك زمینه به‌خصوص و انعطاف‌پذیری آن در مقابلتغییراتی است كه در صنعت و نیازهای مصرف‌كنندگان پدید می‌آید. بقیه مسائل، همگیسلیقه‌ای هستند و نباید با تعصب با این موضوع برخورد كرد.

 

منبع:ماهنامه شبکه



print



rating
  نظرات

نظری وجود ندارد.

نام
ایمیل
وب سایت
عنوان
نظر
کد CAPTCHA
وارد نمودن کد