کدام زبان برنامه نویسی را انتخاب کنیم؟

  • شروع کننده موضوع
  • #1

hermit2

کاربر فوق‌فعال
ارسال‌ها
148
امتیاز
395
نام مرکز سمپاد
فرزانگان1
شهر
دزفول، اهواز
دانشگاه
علوم پزشکی تهران
رشته دانشگاه
پزشکی
>اشاره : کدام زبان برنامه نویسی را انتخاب کنم؟ از کدام نوع دیتابیس استفاده کنم؟ این ها سؤالات قدیمی و تاحدودی کلیشه ای هستند. با این حال خواندن یکی دو مقاله جالب در اینترنت باعث شد، طرح مجدد این موضوع همیشگی را خالی از فایده ندانم. اصولا هر از گاهی باید این پرسش را مجددا در کلیه سطوح مهندسی نرم افزار، چه در صنعت، چه در رسانه ها و چه در دانشگاه ها مطرح کرد و دلیل آن هم، بسیار ساده است. زبان های برنامه نویسی نیز مانند زبان های گویشی انسان ها پویا هستند و مرتبا متحول می شوند. در این راستا برخی خود را با نیازهای روز تطابق داده و برخی نیز از این تحولات جا می مانند. به همین دلیل لازم است هر چند وقت یک بار این پرسش را مطرح کرده و جدیدترین پاسخ ها را به نقد بگذاریم. برای این که بحث از حالت نظری خارج شود و حالت کاربردی پیدا کند، اجازه می خواهم نظرم را در این مورد به اختصار بیان کنم.برنامه نویسی وب فعلا برنامه نویسی تحت وب داغ ترین سوژه در دنیای برنامه نویسی است. شاید بد نباشد یادآوری کنم که اصولا فلسفه برنامه نویسی تحت وب چه بود که به اینجا رسید. علت محبوبیت و رشد گسترده برنامه نویسی تحت وب، حل شدن مشکل کلاینت بود. در این مدل از برنامه نویسی، برنامه نویس دغدغه چندانی درباره قابل نصب بودن برنامه اش روی پلتفرم های مختلف ندارد زیرا وضعیت تقریبا روشن است. همین که برنامه شما روی یکی دو مرورگر معروف مانند فایرفاکس و اینترنت اکسپلورر جواب بدهد، کافی است. بنابراین در پاسخ به این سؤال که کدام زبان برنامه نویسی وب را انتخاب کنیم، باید گفت زبان هایی که از همه ساده ترند و تغییر و تحولات را به سرعت می پذیرند. در حال حاضر در این زمینه دو فناوری php و asp.net پیشتاز هستند. زبان اسکریپت نویسی php شباهت هایی به زبان c دارد. به همین دلیل سرعت کامپایل شدن آن بالا است و سایت هایی که از این زبان استفاده می کنند اندکی سریع ترند. فناوری asp.net از ویژوال بیسیک دات نت یا سی شارپ استفاده می کند. این دو زبان، به ویژه در جدیدترین نسخه فناوری دات نت در یک حد هستند. اما به نظر من ویژوال بیسیک همچنان جذاب تر و ساده تر به نظر می رسد. سایت هایی که با این دو زبان نوشته می شوند نرم افزارهای قدرتمندی را پدید می آورند که قدرت انعطاف و گستره کارایی آن ها بالاست زیرا هر دو زبان oop هستند. علاوه بر سهولت برنامه نویسی، پشتیبانی از برخی موج های نو مانند ای جکس هم بحث روز است. هم php و هم asp.net وضع خوبی در این زمینه دارند. علاوه بر این، برخی فناوری های روز هم خیلی مهم هستند که وب سرویس یکی از آن هاست. در حال حاضر رقابت شدیدی میان فناوریsoap که از سوی آی بی ام و مایکروسافت و دیگران پشتیبانی می شود و فناوری rest که از سوی یاهو و برخی شرکت های بزرگ دیگر حمایت می شود، وجود دارد. اما وضع بعضی زبان ها مانند جاوا (jsp) و coldfusion در دنیای وب خراب است و برخی زبان ها اخیرا دوباره مورد توجه قرارگرفته اند که از آن جمله می توان به python و ruby اشاره کرد. وضعیت جاوا در وب در این میان جالب توجه است. برخلاف موفقیت چشمگیر جاوا در برنامه نویسی برای سیستم های بزرگ، این زبان به شدت در وب دچار ناکامی است. وب یک دنیای بصری است و به سادگی و ظاهر سیستم ها اهمیت می دهد. به همین دلیل زبان های فاقد ابزارهای ویژوال و قدرتمند که در عین حال ساده نیز هستند در این وادی محکوم به زوالند و این مسئله برای جاوا که در زمینه وارد کردن مفاهیم بصری و پویا به دنیای وب پیشگام بود، ناگوار است، البته این قضیه هیچ ربطی به زبان اسکریپت نویسی «جاوااسکریپت» که با ظهور ای جکس جان تازه ای پیدا کرده، ندارد. برنامه نویسی سیستم های بزرگ اما وضعیت در صنایع و سازمان های بزرگ بسیار متفاوت است. در جاهایی مانند صنایع مالی و بانکی، صنایع پتروشیمی و نفت، صنایع مخابراتی، سازمان های دولتی، صنایع خودروسازی و مانند این ها، هنوز هم جاوا و مشتقاتش حرف اول را می زنند. قدرت جاوا در این حوزه ها به قدری است که حتی می توان - البته با کمی احتیاط - گفت موفقیت سیستم های دیگری مانند اوراکل (که مبتنی بر جاوا است) نیز بی ارتباط با استیلای جاوا بر این محیط ها نیست. کارکردن با جاوا در محیط های بزرگ کار آسانی نیست. اوراکل هم آسان نیست و به طور کلی ورود به این عرصه ها چالش های مختلفی را پیش روی برنامه نویسان و شرکت های نرم افزاری قرار می دهد، به همین دلیل سیستم های مبتنی بر جاوا، گران و پرهزینه و غولآسا هستند. با این حال توجه کنید که منظور از سازمان های بزرگ در اینجا سازمان هایی هستند که از نظر ابعاد، تعداد کلاینت ها و تراکنش ها واقعا بزرگ هستند و منظور ما از آن شأن و منزلت یک سازمان نیست. در واقع شرکت هایی مانند اپراتورهای موبایل یا صنعت نفت در ایران را می توان نمونه هایی از اینگونه سازمان ها محسوب کرد. اما بسیاری از سازمان های دولتی در ایران صرف نظر از اهمیت استراتژیک یا منزلتشان، به دلیل ساختار قدیمی سازمان و مدرنیزه نشدن و مکانیزه نبودن فرآیندهای سازمان یا تنها به این دلیل که بیشتر از چند هزار کاربر ندارند، جزء سازمان های متوسط در این بحث به حساب می آیند.سازمان های متوسط و کوچک شرکت ها و سازمان هایی که کمتر از چند هزار کاربر یا چند صد کلاینت دارند، و آن هایی که خیلی کوچک و در حد مجموعه های ده الی بیست نفره هستند در این خانواده از کاربران سیستم های نرم افزاری قرار می گیرند. برای اغلب این سازمان های کوچک و بزرگ، هنوز هم چند صد هزار تومان هزینه برای توسعه و استقرار سیستم های نرم افزاری، رقم بزرگی به شمار می رود. هم به این دلیل و هم به دلایل فنی، این سازمان ها و شرکت ها باید از فناوری ها و زبان هایی برای توسعه سیستم های نرم افزاری خود استفاده کنند که هزینه کمتری دارند و کارکردن با آن ها ساده تر است. من برای اینگونه مجموعه ها استفاده از زبان سی شارپ و راه حل های مبتنی بر ویندوز (مانند sql server) را توصیه می کنم. سهولت و قدرت کار با دیتابیس، یکی از دلایل اصلی قدرت زبان های دات نتی است. البته به تازگی سیستم عامل، لینوکس هم طرفداران زیادی پیدا کرده است ولی موضوع انتخاب پلتفرم و سیستم عامل متفاوت از انتخاب زبان و فناوری برنامه نویسی است. شاید به همین دلیل، برخی به دنبال پیاده سازی سی شارپ در این محیط های غیرمایکروسافتی هستند. اما به هرحال زبان جاوا در سیستم های غیرمایکروسافتی طرفداران خاص خودش را دارد، ضمن این که تردیدی ندارم که هنوز هم استفاده از زبان ویژوال بیسیک دات نت و api نرم افزارهای آفیس مایکروسافت (مانند اکسس) بهترین گزینه برای شرکت های کوچک و چندنفره است. برنامه نویسی برای موبایل در حوزه برنامه نویسی وب زبان ++c و پس از آن زبان جاوا پیشتاز است. زبان های دات نت نیز که اخیرا به این حوزه راه یافته اند، با فاصله زیادی آن دوتای دیگر را تعقیب می کنند. زبان ++ c زبان غامض و پیچیده ای است و به نظر من به تدریج رو به افول گذاشته است. اما c و ++c زبان سخت افزار هستند و هربار که سخت افزار جدید و ناشناخته ای خلق می شود زبان شماره یک آن c است. به تدریج که آن پلتفرم سخت افزاری جان می گیرد، دوباره زبان های شیءگرا مانند جاوا و سی شارپ دوروبرش قوت می گیرند. ++c زبان اصلی سیستم عامل های سیمبیان و ویندوز موبایل است. زبان جاوا نیز که مستقل از سیستم عامل تلقی می شود، در جایی که سیمبیان یا ویندوز موبایل غایب باشند، حرف اول را می زند. البته چنان که می توان حدس زد، هیچ کس روی سیستم عامل ویندوز موبایل جاوا را جدی نمی گیرد و نگاه ها به سوی سی شارپ است. زبان های دیگرجدا از برخی زبان های برنامه نویسی که در کاربردهای خاصی مانند هوش مصنوعی ممکن است قدرت بیشتری داشته باشند، سایر زبان ها دیگر کهنه به نظر می رسند؛ فرترن و کوبول از آن جمله اند. البته زبان های کار با بانک های اطلاعاتی رابطه ای مانند t-sql و pl/sql موضوع متفاوتی است که در بحث ما نمی گنجد. یک نکته دیگر هم باقی می ماند و آن هم دیدگاه محافل آکادمیک درباره زبان های برنامه نویسی است. بدون تردید زبان جاوا هنوز هم محبوب ترین زبان در محافل آکادمیک است و پس از آن سی شارپ به دلیل شباهتش به جاوا مطرح است. البته در برخی از دانشگاه های ایران هنوز هم ممکن است زبان های قدیمی و فرسوده ای مانند فرترن تدریس شود که اگر چنین باشد جای تأسف است. ولی به نظر من علاقه محافل آکادمیک به این یا آن زبان ممکن است گمراه کننده باشد. آنچه اهمیت دارد کاربرد و کارایی زبان در یک زمینه به خصوص و انعطاف پذیری آن در مقابل تغییراتی است که در صنعت و نیازهای مصرف کنندگان پدید می آید. بقیه مسائل، همگی سلیقه ای هستند و نباید با تعصب با این موضوع برخورد کرد.

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

Legend

کاربر خاک‌انجمن‌خورده
ارسال‌ها
2,329
امتیاز
2,204
نام مرکز سمپاد
علامه حلی بدون شماره!
شهر
طهرون
سال فارغ التحصیلی
93
رشته دانشگاه
مهندسی عمران
پاسخ : کدام زبان برنامه نویسی را انتخاب کنیم&

کی این رو که گذاشتی می خونه!!!!؟؟؟

ولی به نظرم ++c از همهی زبان های برنامه نویسی قوی تر و بهتره!!!!!!!!!!
 

dr.eniac

لنگر انداخته
ارسال‌ها
3,641
امتیاز
7,852
نام مرکز سمپاد
شهید بهشتی نیشابور
دانشگاه
علوم‌پزشکی مازندران
رشته دانشگاه
دندان‌پزشکی
پاسخ : کدام زبان برنامه نویسی را انتخاب کنیم&

زبان گرافيكي c#
ولي در كل زبان c++ بهترينه
 

green.programmer

کاربر جدید
ارسال‌ها
2
امتیاز
0
نام مرکز سمپاد
علامه حلی تهران
شهر
تهران
پاسخ : کدام زبان برنامه نویسی را انتخاب کنیم&

c++ به خاطر استفاده از ibrary و برنامه نویسی ساختار یا فته شی گرا ،همچنین توانایی کنترل صنعتی ،به ترین زبونه ولی باید همیشه از کامپایلر های جدید استفاده کنید
امیرD;
 
ارسال‌ها
3,101
امتیاز
12,185
نام مرکز سمپاد
.
شهر
.
سال فارغ التحصیلی
2000
رشته دانشگاه
فیزیک
پاسخ : کدام زبان برنامه نویسی را انتخاب کنیم&

به نقل از green.programmer :
c++ به خاطر استفاده از ibrary و برنامه نویسی ساختار یا فته شی گرا ،همچنین توانایی کنترل صنعتی ،به ترین زبونه ولی باید همیشه از کامپایلر های جدید استفاده کنید
امیرD;
جاوا هم شی گرا هست و ویژگی های c++ رو داره به جز صنعتی بودن (البته بیشتر c صنعتیه) ولی بسیار کارآمد برای مدیریت شبکه های کامپیوتری و مدیریت اطلاعات در مقیاس ها بسیار بزرگ. نمونش پایگاه داده ی oracle که بهترین هماهنگی رو با جاوا داره.
 

Simorgh

کاربر فعال
ارسال‌ها
51
امتیاز
6
نام مرکز سمپاد
علامه حلی 3
شهر
تهران
پاسخ : کدام زبان برنامه نویسی را انتخاب کنیم&

بستگی به سن شخص هم داره. یه آدم کلاس چهارم ابتدایی مطمئنا نمیتونه بره C++ یاد بگیره مگر این که نابغه باشه.
 

Navid_Nabavi

کاربر نیمه‌فعال
ارسال‌ها
5
امتیاز
0
نام مرکز سمپاد
علامه امینی
شهر
میانه
مدال المپیاد
برکزیده استانی مسابقات کارگاه رایانه
پاسخ : کدام زبان برنامه نویسی را انتخاب کنیم؟

c++ یا C# . بستگی به استفاده داره.
 

robo94

عــلــــی (مهندس سابق)
ارسال‌ها
781
امتیاز
1,702
نام مرکز سمپاد
دبيرستان شهيد اژه اى
شهر
اصفهان/تهران
سال فارغ التحصیلی
91
دانشگاه
تـــهـــران (دانشکده فنـے )
رشته دانشگاه
مهندسی بــرق
پاسخ : کدام زبان برنامه نویسی را انتخاب کنیم؟

برو با همون C++ (+ هاشو بذار اونور!) شروع کن بعدشم برو C# (اینم مثه همون!) بخون بلکه تو پردازش تصویر به دردت بخوره! (:|
 

سعید الوند

کاربر فوق‌حرفه‌ای
ارسال‌ها
751
امتیاز
2,901
نام مرکز سمپاد
علامه حلی همدان
شهر
همدان
دانشگاه
امیرکبیر - دانشگاه تهران
رشته دانشگاه
مهندسی کامپیوتر
پاسخ : کدام زبان برنامه نویسی را انتخاب کنیم؟

جاوا نه تنها تقریبا همه امکانات ++c رو داره (حتی syntax های جاوا هم بسیار شبیهه به ++c) بلکه خیلی وسیع تر هم روش کار شده و از جون مرغ تا شیر آدمیزاد هر چی بخوای یه پکیج براش نوشتن علاوه بر این شی گرا کار کردن همچنین پردازش موازی جاوا خیلی راحت تره. فکر میکنم بزرگترین برتری ++c به جاوا سرعت بیشتر اجرای برنامه هاش باشه.
 

sjazayeri

کاربر حرفه‌ای
ارسال‌ها
472
امتیاز
590
نام مرکز سمپاد
شهید دستغیب ۱
شهر
شیراز
مدال المپیاد
برنز کامپیوتر
پاسخ : کدام زبان برنامه نویسی را انتخاب کنیم؟

اول بگم اینکه چه زبان برنامه نویسی ای باید انتخاب کرد به نظر من در وهله اول بستگی به این داره که میخواین چیکار کنین
کسی درایور یا نرم افزاری که باید سرعت زیادی داشته باشه رو با C# یا Java نمینویسه
کسی هم یه برنامه ساده که نهایت کارش اتصال به دیتابیس هست رو با C++ نمینویسه.(در جایی که عوامل دیگه دخالت نداشته باشند)


من برای اینگونه مجموعه ها استفاده از زبان سی شارپ و راه حل های مبتنی بر ویندوز (مانند sql server) را توصیه می کنم.
به نظر من اینکه یه نفر اول کلی پول ویندوز بده بعد پول ویژوال استودیو بعد هم پول MS SQL server کار اشتباهی هست.
اینکارو میشه رو لینوکس با جاوا(یا حتی زبان های دیگه) و My SQL/ PostgreSQL انجام داد.

c و ++c زبان سخت افزار هستند
توی برنامه نویسی غیر سخت افزار هم(در مورد برنامه های با کاربرد وسیع) میشه گفت C++ حرف اولو میزنه
به برنامه های روی سیستم خودتون دقت کنید:
مرورگر(فایرفاکس کروم اینترنت اکسپلورر و ..) با C++ نوشته شدن
آفیس
نرم افزار های امنیتی(فایروال آنتی ویروس و ...)
بازی ها

زبان گرافيكي c#
ولي در كل زبان c++ بهترينه
زبان گرافیکی منظورتون چیه؟
در زمینه مسائلی مثل ساختن پنجره و کنترل ها سی شارپ بهتر از سی پلاس پلاس هست(هرچند تو این موارد منم خودم python + pyGTK رو ترجیح میدم)
در زمینه های پیچیده تر هم( مثلا بازی و ...) طبعا C++ بهتره


از لحاظ syntax من خودم python رو بهتر از بقیه میدونم.
 
بالا