PDA

View Full Version : راهنمایی برای انتخاب یه زبان برنامه نویسی مناسب



BestDay
چهارشنبه 16 مرداد 1392, 03:15 صبح
با سلام
بنده کارشناس مهندسی شیمی - پتروشیمی هستم و تا حدی هم با برنامه نویسی آشنا هستم (2،3 تا زبان سطح پایین)

ولی می بایست یه زبان کامل و با شرایط زیر رو یاد بگیرم (حرفه ای):
1 - زبانی که برنامه هایی برای آندروید بشه باهاش نوشت (آندروید که OpenSource هستش، چه زبان هایی رو میشه براش بکار برد؟)
2 - سرعت بالا در پردازش
3 - عمومیت دستورها (مخصوصاً در ایران) (یعنی اون زبانی که بیشتر رایجه)
4 - اینکه C#‎‎‎‎ فقط در ویندوز کار میکنه، آیا عیب بزرگی هستش و باید بیخیالش شد؟ یا ایرادی نداره؟ (مثلاً برای لینوکس)
5 - دستورات بکارگرفته شده در این زبان، شباهت هایی به دستورات زبان های دیگه داشته باشه.
6 - زبانی که بیشتر نرم افزار ها ازش استفاده کردن. (نرم افزار های تخصصی و عمومی)
7 - زبانی که بعدها حسرتشو نخورم که فلان زبان بهتر از اینه و ای کاش زبان دیگه ای رو یاد می گرفتم...
8 - زبانی که از دستورات روون تری برخوردار باشه (روون تر = زوردتر و سریعتر یاد گرفته میشن)
9 - زبانی که بشه بوسیله اش، در ویندوز تغییراتی داد. (مثلاً در ویندوز 8، نبود دکمه START رو، developer ها با چه زبانی جبران کرده اند؟)
10 - و در نهایت ، موارد تخصصی که بنده از آنها بی خبر هستم و شما اطلاع دارید :لبخندساده:


دلایل یادگیری بنده:
- استفاده در رشته تخصصیم برای Simulate کردن Process
- استفاده در نوشتن برنامه های مورد نیاز خودم در آندروید
- مطمئناً در آینده به دردم میخوره (100%)


ممنون میشم اگر وقت بگذارید و جواب بدین :چشمک:
آخه تا آخر تابستون باید حتماً کلاسشو برم و تمام شه.

با تشکر فراوان

Desaghi
چهارشنبه 16 مرداد 1392, 09:03 صبح
بیشتر اعضای این تالار، تخصصی در رابطه با دلیل اول شما ("استفاده در رشته تخصصیم برای Simulate کردن Process") ندارند.
و در مورد دوم هم بخشی با همین عنوان وجود دارد:
http://barnamenevis.org/forumdisplay.php?187-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-Android&

Jarvis
چهارشنبه 16 مرداد 1392, 09:12 صبح
اگه حوصله دارید برید Qt ++C رو دنبال کنید چون برنامه نویسی Cross-Platform داره و شما چون ++C رو یاد گرفتید بعدا می تونید بین زبان هایی مث #C هم سوئیچ کنید.
اگه هم حوصله ندارید که جاوا .. معمولا برای نوشتن اپلیکیشن های اندروید ، از جاوا استفاده میشه .. ولی همون Qt هم می تونه برای اندروید خروجی تولید کنه.

موفق باشید.

UfnCod3r
چهارشنبه 16 مرداد 1392, 10:26 صبح
++C
:لبخند:

BestDay
چهارشنبه 16 مرداد 1392, 12:12 عصر
ممنونم از توجهتون
این که فرمودین میشه Switch کرد، به چه معنی هست؟
من از زبان C# خوشم اومده (از طریق یکی از دوستان). ولی بین برنامه نویس ها C++ عرف شده.
زبان Qt و جاوا رو نمیشناسم ممنون میشم یکم ازشون بگین. (در حد آشنایی و محیط خروجیشون)

با C++ یا C# نمیشه خروجی آندروید داد؟
برای ویندوز چطور؟

محمد کلهر
چهارشنبه 16 مرداد 1392, 13:19 عصر
جاوا:
http://fa.wikipedia.org/wiki/%D8%AC%D8%A7%D9%88%D8%A7_(%D8%B2%D8%A8%D8%A7%D9%86 _%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9% 86%D9%88%DB%8C%D8%B3%DB%8C)

Qt:
http://fa.wikipedia.org/wiki/%DA%A9%DB%8C%D9%88%D8%AA

Jarvis
چهارشنبه 16 مرداد 1392, 13:34 عصر
این که فرمودین میشه Switch کرد، به چه معنی هست؟

یعنی اگه خواستید و تصمیم داشتید که #C رو یاد بگیرید ، خیلی راحت تر می تونید سی شارپ رو یاد بگیرید ، چون خیلی از مباحثش به ++C شباهت داره.


زبان Qt و جاوا رو نمیشناسم ممنون میشم یکم ازشون بگین. (در حد آشنایی و محیط خروجیشون)
با C++‎ یا C#‎ نمیشه خروجی آندروید داد؟
برای ویندوز چطور؟
ببینید ، Qt یا به فارسی کیوت ، یک کتابخانه ی به زبان ++C هستش که برای توسعه ی سریع نرم افزارها به زبان ++C بوجود اومده که شما در نرم افزار Qt Creator کدنویسی می کنید و خروجی رو می تونید برای لینوکس - ویندوز - مک - اندروید و ... بگیرید .. به این حالت میگن Cross-Platform یعنی مستقل از سکو .. یعنی کد بنویس و تو هر پلتفرمی میخوای ازش استفاده کن!
شما ++C رو که یاد بگیرید خیلی از زبان های برنامه نویسی براتون آب خوردن میشن .. مثلا همین #C ...

یه سری افراد هستن عجله دارن و ممکنه به #C کاری نداشته باشن .. میرن جاوا کار میکنن ... البته شما هم می تونید ولی اون موقع قدرت ++C رو از دست میدید...

در هر صورت شما دو انتخاب دارید : 1-++C که در اون صورت خیلی دستتون توی برنامه نویسی بازه.. 2-جاوا که البته جاوا هم قدرت بالایی داره .. ولی به پای ++C نمیرسه!

موفق باشید.

omidshaman
چهارشنبه 16 مرداد 1392, 13:38 عصر
1 - زبانی که برنامه هایی برای آندروید بشه باهاش نوشت (آندروید که OpenSource هستش، چه زبان هایی رو میشه براش بکار برد؟)
java-C++‎‎‎ فکر کنم با C#‎‎‎ هم بشه


2 - سرعت بالا در پردازش
C++‎‎‎

4 - اینکه C#‎‎‎‎‎‎ فقط در ویندوز کار میکنه، آیا عیب بزرگی هستش و باید بیخیالش شد؟ یا ایرادی نداره؟ (مثلاً برای لینوکس)
با C#‎ هم میشه توی لینوکس برنامه نوشت ا

5 - دستورات بکارگرفته شده در این زبان، شباهت هایی به دستورات زبان های دیگه داشته باشه.
c-C++‎‎‎-C#‎‎‎- java یک مقداری شبیهن

6 - زبانی که بیشتر نرم افزار ها ازش استفاده کردن. (نرم افزار های تخصصی و عمومی)4
3 - عمومیت دستورها (مخصوصاً در ایران) (یعنی اون زبانی که بیشتر رایجه)
هنوز کسی آمار نگرفته :لبخند:

7 - زبانی که بعدها حسرتشو نخورم که فلان زبان بهتر از اینه و ای کاش زبان دیگه ای رو یاد می گرفتم...
بستگی داره بخوای چکار بکنی ! شما سوال کلی پرسیدی نمیشه از این بیشتر گفت !

8 - زبانی که از دستورات روون تری برخوردار باشه (روون تر = زوردتر و سریعتر یاد گرفته میشن)
بازم بستگی داره ولی جاوا یا C#‎‎‎ از C++‎‎‎ راحت ترن

9 - زبانی که بشه بوسیله اش، در ویندوز تغییراتی داد. (مثلاً در ویندوز 8، نبود دکمه START رو، developer ها با چه زبانی جبران کرده اند؟)
با هر چ که بوده با C#‎‎‎ یا java نبوده ! شما که مهندسی شیمی هستی همچین کاری به دردت نمی خوره آخه!

آخه تا آخر تابستون باید حتماً کلاسشو برم و تمام شه.
تو 3 ماه افیس هم یاد نمیشه گرفت چه بخواد برسه به برنامه نویسی :لبخند:

ممنونم از توجهتون
این که فرمودین میشه Switch کرد، به چه معنی هست؟
من از زبان C#‎‎‎‎‎‎‎ خوشم اومده (از طریق یکی از دوستان). ولی بین برنامه نویس ها C++‎‎‎‎‎‎‎ عرف شده.
زبان Qt و جاوا رو نمیشناسم ممنون میشم یکم ازشون بگین. (در حد آشنایی و محیط خروجیشون)
با C++‎‎‎‎‎‎‎ یا C#‎‎‎‎‎‎‎ نمیشه خروجی آندروید داد؟
برای ویندوز چطور؟
منظورشون این بود می تونین مثلا c++ رو یاد بگیرین بعدا جاوا رو هم یاد بگیرین
Qt زبان نیست framework (http://stackoverflow.com/questions/2964140/what-is-a-framework-what-does-it-do-why-do-we-need-a-framework) ه
برای اشنایی می تونین به wikipedia مراجعه کنین !
از C++‎‎‎‎ برای نوشتن برنامه هایی که نیاز به performance بالایی دارن برای اندروید استفاده میشه بوسیله ndk (بازی پردازش تصویر و...)
همچنین با Qt و C++‎‎‎‎ هم میتونین برای اندروید برنامه بنویسین!
اگر برنامت زیاد نیاز به سرعت پردازش بالا توی اندروید نداره جاوا یاد بگیر

BestDay
پنج شنبه 17 مرداد 1392, 04:31 صبح
WOW
فقط باید گفت WOW
واقعاً ممنونم .از همگی و از شما که وقت گذاشتین و اینطوری آیتم آیتم راهنماییم کردین جداً ممنونم :چشمک: به عنوان تشکر میخوام یه آهنگ Offer بدهم بهت:
Artist: Metallica ///// Album: 1988 - ...And Justice for All ///// Track: To Live Is To Die (تقریباً 10 دقیقه هست ولی جداً سرحالت میاره . 4 بار سبک آهنگ عوض میشه)

خدمتتون عرض کنم که بنده فرای اینکه مهندس شیمی هستم و به موسیقی اصیل (غیر رپ=NonRap) علاقه مندم، به ویندوز و آندروید و هرچیکه بشه بهش نرم افزار رو ربط داد علاقه دارم (منظورم Developing در این هاست، یعنی تغییرات و شخصی سازی) . اگر برنامه نویسی بلد بشم یه جورایی خیالم راحت میشه از ارضای کنجکاویم. علاقه زیادی دارم.
(از مهندس شیمی بودنم هم راضی هستم و به دنبال Developing در این رشته هستم. در کنار کنجکاویم در ویندوز و آندروید)

به این خاطر به دنبال یادگیری زبان برنامه نویسی هستم. یک زبان برنامه نویسی با اون شرایط.

Result: در نهایت میشه گفت من با C++‎‎‎‎‎ به هدفم میرسم. چون میشه C#‎‎‎‎‎ و جاوا و Qt رو در ادامه یاد بگیرم.(با اینکه بنده فقط میخوام یه زبان رو حرفه ای کار کنم).

حال چند سوال:

- سخت بودن C++‎‎‎‎‎ نسبت به بقیه مشکل ساز نمیشه؟
- آیا نیاز هست برای به هدفم رسیدنم، بعد از C++‎‎‎‎‎ زبان های دیگه رو یاد بگیرم؟مثلاً C++‎ رو یاد بگیرم که بعد بتونم C#‎ رو ... . یا همین C++‎‎‎‎‎ کامل ارضام میکنه؟ و نیازی به C#‎ نمیشه؟
- اینکه گفتید برای تغییرات در ویندوز ، زبانش C#‎‎‎‎‎ یقیناً نبوده، پس C++‎‎‎‎‎ چطور؟
- بین C#‎‎‎‎‎ و C++‎‎‎‎‎ کدوم پیشنهاد میدین؟ (جاوا احساس میکنم کامل ارضام نکنه. اینطور نیست؟)

باز هم تشکر دارم از عزیزانی که به بنده لطف دارند

عیدتان پیشاپیش مبارک :تشویق:

sina_oonline
پنج شنبه 17 مرداد 1392, 04:56 صبح
سلام
ببینید اگر شما یک زبان برنامه نویسی را به صورت کامل و خوب یاد بگیرید انگار همه زبان ها ( یا بیشتر زبان ها) را یاد گرفته اید مثلا یادگیری جاوا برای کسی که c++ فول باشه نهایتا شاید یک هفته تا ده روز طول بکشه
برنامه نویسی هم فرآیند طولانی هست تا آخر تابستان شما نهایتا سینتکس یک زبان را بتونید یاد بگیرید اما آنچه که میتونه به شما قدرت بده تمرین و انجام پروژه ها هست که کار زمان بری هستش
نتیجه بحث اینه که پیشنهاد من به هر کسی که می خواد برنامه نویسیو یاد بگیره و واقعا توش حرفه ای بشه اینه که از c و c++ شروع کنه.

omidshaman
پنج شنبه 17 مرداد 1392, 14:33 عصر
- اینکه گفتید برای تغییرات در ویندوز ، زبانش C#‎‎‎‎‎‎‎‎ یقیناً نبوده، پس C++‎‎‎‎‎‎‎‎ چطور؟
به احتمال خیلی زیاد با توابع native در win32 (http://en.wikipedia.org/wiki/Win32)نوشته شده .

Result: در نهایت میشه گفت من با C++‎‎‎‎‎‎‎‎ به هدفم میرسم. چون میشه C#‎‎‎‎‎‎‎‎ و جاوا و Qt رو در ادامه یاد بگیرم.(با اینکه بنده فقط میخوام یه زبان رو حرفه ای کار کنم).
البته بازم باید بگم که Qt زبان نیست شما توی Qt با C++‎‎ کد مینویسین.

- بین C#‎‎‎‎‎‎‎‎ و C++‎‎‎‎‎‎‎‎ کدوم پیشنهاد میدین؟ (جاوا احساس میکنم کامل ارضام نکنه. اینطور نیست؟)
بین C#‎‎و جاوا هم اگر قرار باشه من انتخاب کنم جاوا رو انتخاب می کنم!
http://bestteneverything.com/top-ten-most-popular-programming-languages-2013/
http://www.sitepoint.com/best-programming-language-of-2013/
http://blog.xitclub.com/articles/top-10-most-important-to-learn-programming-languages.html
http://www.infoworld.com/t/javascript/javascript-claws-back-top-10-programming-languages-220459
http://benchmarksgame.alioth.debian.org/u32/which-programs-are-fastest.php
زبان هایی که توی دانشگا های دنیا درس داده میشه http://stackoverflow.hewgill.com/questions/644/099.html
به نظر من هم برای شروع C++‎‎ یاد بگیر یاد گرفتن جاوا هم بعد از C++‎‎ تو درک خیلی از بحث های شی گرایی بهت کمک می کنه ...
برای نوشتن برنامه تو اندروید هم راه منطقیش همون استفاده از جاواست !

BestDay
پنج شنبه 17 مرداد 1392, 21:22 عصر
ممنونم ازتون

1- فول شدن C++‎ برای بنده فکر نمیکنم امکان داشته باشه (رشته ام مهندسی شیمی هست). با این فرض که C++‎ رو فول نشم، پس زبان های دیگه رو نمیتونم سریع یاد بگیرم؟

2- جاهایی مطرح شده که اگر به دنبال زبانی هستید که در کمترین زمان ممکنه، به صورت درآمد زا در این دوران، با بهترین کیفیت، داشته باشید پس C#‎ . ولی اگر به دنبال یادگیری اساسی هستید پس C++‎ . آیا درسته؟

3- در مورد Qt ، آیا خروجی های این برنامه (با زبان C++‎) برای آندروید و یا لینوکس جواب میدهد؟

4- راستی زبان هایی که در Linux میشه استفاده کرد چی هستن؟

5- دستور Print در Visual Basic 6 ، در زبان های C#‎ و C++‎ چی هست؟ C++‎ که فکر کنم Cout << هست درسته؟

با تشکر

matrix-program
پنج شنبه 17 مرداد 1392, 23:21 عصر
در مورد سوالاتتون 1- هیچ کس نمیتونه ادعا کنه که یه زبان رو کامل کامل بلده و فول شده 2-بله سی شارپ! ولی انتظار حرفه ای شدن نداشته باشین 3-qt یک فریم ورک cross platform هست و برای مواردی که گفتین هم خروجی میده نه این که خروجی هاش رو آندروید جواب بده 4-php , html , css البته اینا زبان های وب اند 5-cout تو برنامه های کنسول

matrix-program
پنج شنبه 17 مرداد 1392, 23:23 عصر
موردی که یادم رفت بگم اینکه سوالاتتون رو تو جای مناسب مطرح کنید این جا بخش ارتباط با مدیرانه!!

BestDay
جمعه 18 مرداد 1392, 02:00 صبح
آقا ممنون و ببخشید که در مکان درست کامنت نذاشتم. (ممنونم از مدیران که لطف کردند)

3 سوال نهایی می پرسم و دیگه پایان سوالات.

1- زبان برنامه MATLAB و زبان Visual Basic 6 به کدام یکی نزدیکه؟ C++ یا C# ؟
2- میزان سختی در C++‎ به چه اندازه هست؟ آیا ممکن هست در میان کار، از سختی این زبان خسته شم و رو بیارم به C#‎ ؟ یا سختی در C++‎ شیرین است؟
3- بعد از یادگیری C++‎ به صورت نیمه متوسط (فهمیدن داستان برنامه نویسی و نوشتن برنامه های Loop دار پیچیده و یک مقدار بیشتر) ، چقدر زمان نیاز هست که C#‎ رو یاد بگیرم؟

با تشکر

p30online
جمعه 18 مرداد 1392, 02:54 صبح
زبان برنامه نویسی MATLAB به سی پلاس پلاس نزدیکتره وقسمتهایی GUI( رابط رافیکی کاربر) هم داره و خیلی زبان برنامه نویسی خوبی است و ویژوال هم دیگه به سی شارپ نزدیکتره.