PDA

View Full Version : حرفه ای: با تجربه ها کدام را پیشنهاد می کنید ؟ (C ، C++ ، java ، C# ، vcpp.net , etc)



abolfazl-z
یک شنبه 08 دی 1392, 21:45 عصر
سلام دوستان

دوستان عزیز برنامه نویس

من خودم برنامه نویس PHP هستم.(به دلیل اینکه بتونم توی دنیای اینترنت پاسخگو خودم باشم)

خدا شاهده میرم کتاب خانه برای دانشگاه کتاب بگیرم، هی این کتاب رو نگاه می کنم ، هی اون کتاب رو نگاه می کنم، اصلا گیجم چیرو انتخاب کنم !

دوستان من مشکلی توی یادگیری ندارم (زبان اسمبلی ام 20 شد :بامزه:) ولی می خوام وقتی برنامه نویسی کنم قدرت رو احساس کنم، یعنی اینطوری میگم که آقا نشه باهاش کم بیارم.

یکی دو سال vb کار کردم، خوب اول noob بودیم هیچی از زبان ها رو نمیدونستیم، بعدا دیگه دیگه ...

زبانی باشه که اگر اسم اش رو بردم هیچ کی نیاد بگه +++++felan :لبخند:

من بیشتر دوست دارم آقای خودم باشم توی برنامه نویسی هم همینطور !

خودم زبان مدنظرم C هست که منشا همه زبان هاست. (شیطونه میگه برم B یاد بگیرم:بامزه:)

حالا دوستان چه زبانی برتر هست ؟ (+ ی کامپایلر خوب)

بهنامک‍‍
دوشنبه 09 دی 1392, 00:14 صبح
تورو خدا آخه اینم شد سوال؟!
خداوکیلی اگه تا حالا تو عمرت فقط ۱۰۰ خط کد نوشته باشی به همچین سوالی میخندی.
به خدا به زور حوصله م گرفت بیام این سه خطم بنویسم

abolfazl-z
دوشنبه 09 دی 1392, 09:20 صبح
تورو خدا آخه اینم شد سوال؟!
خداوکیلی اگه تا حالا تو عمرت فقط ۱۰۰ خط کد نوشته باشی به همچین سوالی میخندی.
به خدا به زور حوصله م گرفت بیام این سه خطم بنویسم

عزیز شما که بی تجربه هستید چرا می نویسی ! کسی اجبارت نکرده !

یعنی یک آدم با تجربه نیست ؟ :متفکر:

aidinMC
دوشنبه 09 دی 1392, 09:23 صبح
شما اگه میخوای حرفی واسه گفتن داشته باشی فقط c++
قدرتی که این زبان داره هیچ زبانی نداره ^_^

abolfazl-z
دوشنبه 09 دی 1392, 09:54 صبح
شما اگه میخوای حرفی واسه گفتن داشته باشی فقط C++‎
قدرتی که این زبان داره هیچ زبانی نداره ^_^

مرسی از پاسختون.

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

و میتونین حرفتون رو با دلیل بیان کنید.

omidshaman
دوشنبه 09 دی 1392, 10:19 صبح
من زبان های برنامه نویسی تحت ویندوز رو برای گرفتن پروژه نمی خواهم و من ان ها را برای انجام نیاز های خودم می خواهم یاد بگیرم.
نیازی که شما دارین چیه ؟

abolfazl-z
دوشنبه 09 دی 1392, 10:47 صبح
نیازی که شما دارین چیه ؟

آها . چه عجب یکی یک سوال خوبی کرد.

دوست عزیز من ممکنه به همه چی نیاز داشته باشم. کار با فایل یا سخت افزار و یا یک سوکت یا حافظه و یک چیزایی دیگه که بعدا ممکنه توی زندگی ام رخ بدهد. در کل نشه این همه یاد میگیری بعد می فهمی که این زبان از این ویژگی پشتیبانی نمی کند و باید اون زبان رو یاد بگیری. اینجا آدم کلافه میشه ! (منظورم عدم پشتیبانی OOP در C نیست!)

asdasd123123
دوشنبه 09 دی 1392, 11:49 صبح
چرا سی پلاس پلاس؟: (اکثر زبان ها مثلا سی شارپ (تحریف شده و البته ساده و کم کاربرد تر شده ی سی توسط ماکروسافت) و جاوا (سی به سرقت رفته توسط سان که گند زده توش شده جاوا) بعضی از این ویژگی ها رو دارن ولی همشو ندارن) (منظورم از سرقت و تحریف فقط گرامر زبان بود خود زبان ها متفاوتند. گفتم به کسی بر نخوره.)
- چون شی گراست. (در ضمن شما می تونید برنامه های غیر oo هم بنویسید که این یه مزیته. ولی سی شارپ و جاوا نمیشه.)
- چون کرس پلتفرمه. (شما می تونید سورس رو بدون تغییر در هر سیستم عاملی کامپایل کنید تا فایل اجرایی برای اون سیستم عامل ایجاد شه.)
- چون native هست. (جاوا و سی شارپ این طور نیستند. به خاطر همین از جاوا و سی شارپ سریع تره. از طرفی کد شما واقعا کد شماست نه اون چیزی که رانتایم دلش بخواد.)
- چون تنها زبانی هست که برای نوشتن سیستم عامل، مفسر، کامپایلر، شبیه ساز و درایور نویسی و ارتباط با سخت افزار و ... مناسبه.
- کتابخونه های قدرتمندی و متن باز زیادی برای سی نوشته شدن. در واقع شما می تونید با سی همه کار بکنید.
واقعا؟:
- اگه شک دارید یه نگاهی به پروژه های بزرگی که همه با سی نوشته شدن بندازید. (غیر از OpenStack (http://en.wikipedia.org/wiki/OpenStack) که با پایتون نوشته شده تقریبا همه ی پروژه های بزرگ با سی نوشته شده مثلا لینوکس (http://en.wikipedia.org/wiki/Linux) (و اینجا (http://en.wikipedia.org/wiki/Linux_kernel)) ، کی وی ام (http://en.wikipedia.org/wiki/Kernel-based_Virtual_Machine)، ان اس (http://en.wikipedia.org/wiki/Ns_%28simulator%29)، آپاچی (http://en.wikipedia.org/wiki/Apache_HTTP_Server)، گوگل کروم (http://en.wikipedia.org/wiki/Chromium_%28web_browser%29)، فایرفاکس (http://en.wikipedia.org/wiki/Mozilla_Firefox)، اندروید (http://en.wikipedia.org/wiki/Android_%28operating_system%29) (برای اندروید بیشتر از سی استفاده شده تا جاوا و هسته اش هم کاملا با سی هست ولی متاسفانه بعضی ها فکر می کنن که اندروید رو با جاوا نوشتن. اینجا رو ببینید (http://www.ohloh.net/p/android)) و ... )
برای gui سی پلاس پلاس چه کنم؟: (سوال شما در آینده)
- qt رو توصیه می کنم.

hamedlll
دوشنبه 09 دی 1392, 14:32 عصر
پایتون و c/c++

aidinMC
دوشنبه 09 دی 1392, 15:38 عصر
با تشکر ویژه از دوست عزیزمون asdasd123123 که دلایل خیلی خوب و کاملی آورد.
ممنون
دلایل منم همیناست ...

چرا سی پلاس پلاس؟: (اکثر زبان ها مثلا سی شارپ (تحریف شده و البته ساده و کم کاربرد تر شده ی سی توسط ماکروسافت) و جاوا (سی به سرقت رفته توسط سان که گند زده توش شده جاوا) بعضی از این ویژگی ها رو دارن ولی همشو ندارن) (منظورم از سرقت و تحریف فقط گرامر زبان بود خود زبان ها متفاوتند. گفتم به کسی بر نخوره.)
- چون شی گراست. (در ضمن شما می تونید برنامه های غیر oo هم بنویسید که این یه مزیته. ولی سی شارپ و جاوا نمیشه.)
- چون کرس پلتفرمه. (شما می تونید سورس رو بدون تغییر در هر سیستم عاملی کامپایل کنید تا فایل اجرایی برای اون سیستم عامل ایجاد شه.)
- چون native هست. (جاوا و سی شارپ این طور نیستند. به خاطر همین از جاوا و سی شارپ سریع تره. از طرفی کد شما واقعا کد شماست نه اون چیزی که رانتایم دلش بخواد.)
- چون تنها زبانی هست که برای نوشتن سیستم عامل، مفسر، کامپایلر، شبیه ساز و درایور نویسی و ارتباط با سخت افزار و ... مناسبه.
- کتابخونه های قدرتمندی و متن باز زیادی برای سی نوشته شدن. در واقع شما می تونید با سی همه کار بکنید.
واقعا؟:
- اگه شک دارید یه نگاهی به پروژه های بزرگی که همه با سی نوشته شدن بندازید. (غیر از OpenStack (http://en.wikipedia.org/wiki/OpenStack) که با پایتون نوشته شده تقریبا همه ی پروژه های بزرگ با سی نوشته شده مثلا لینوکس (http://en.wikipedia.org/wiki/Linux) (و اینجا (http://en.wikipedia.org/wiki/Linux_kernel)) ، کی وی ام (http://en.wikipedia.org/wiki/Kernel-based_Virtual_Machine)، ان اس (http://en.wikipedia.org/wiki/Ns_%28simulator%29)، آپاچی (http://en.wikipedia.org/wiki/Apache_HTTP_Server)، گوگل کروم (http://en.wikipedia.org/wiki/Chromium_%28web_browser%29)، فایرفاکس (http://en.wikipedia.org/wiki/Mozilla_Firefox)، اندروید (http://en.wikipedia.org/wiki/Android_%28operating_system%29) (برای اندروید بیشتر از سی استفاده شده تا جاوا و هسته اش هم کاملا با سی هست ولی متاسفانه بعضی ها فکر می کنن که اندروید رو با جاوا نوشتن. اینجا رو ببینید (http://www.ohloh.net/p/android) و اینجا هم سورس اندروید برای دور زدن تحریم گوگل (http://code.ohloh.net/project?pid=&ipid=306234&fp=306234&mp&projSelected=true&filterChecked)) و ... )
برای gui سی پلاس پلاس چه کنم؟: (سوال شما در آینده)
- qt رو توصیه می کنم.

abolfazl-z
دوشنبه 09 دی 1392, 16:52 عصر
از تمامی دوستان متشکرم .(بخصوص asdasd123123 (http://barnamenevis.org/member.php?308051-asdasd123123))
خوب من زبانی که برای خودم انتخاب کردم C است.

میشه با C برنامه ای مستقل از سیستم عامل نوشت ؟ (یعنی همان تحت بوت)

aidinMC
دوشنبه 09 دی 1392, 17:31 عصر
از تمامی دوستان متشکرم .(بخصوص asdasd123123 (http://barnamenevis.org/member.php?308051-asdasd123123))
خوب من زبانی که برای خودم انتخاب کردم C است.

میشه با C برنامه ای مستقل از سیستم عامل نوشت ؟ (یعنی همان تحت بوت)

خوده سیستم عامل رو با سی و سی پلاس پلاس نوشتن ، اونوقت شما میپرسی مستقل از سیستم عامل میشه نوشت ؟! :))
بله میشه

abolfazl-z
دوشنبه 09 دی 1392, 17:39 عصر
خوده سیستم عامل رو با سی و سی پلاس پلاس نوشتن ، اونوقت شما میپرسی مستقل از سیستم عامل میشه نوشت ؟! :))

نه من بد مطرح کردم :D

منظور از میشه یعنی اینکه آموزش اش بصورت حرفه ای وجود دارد ؟

کامبیز اسدزاده
پنج شنبه 12 دی 1392, 10:36 صبح
دقت کنید C به تنهایی کاربرد آنچنانی نداره و در کنارش C++ باید یاد بگیرید برای اینکه بتونید ادعای برنامه نویس بودن بکنید در دنیای نرم افزار باید زبان C/C++ رو یاد بگیرید و اگه میخواهید بهتر ادعا کنید زبان PHP رو هم در کنار C++ یاد بگیرید این دو تا باهم مثل ابر اسلحه ای میشه که هیچ چیزی جلودارشون نیست.

موفق باشید.

asdasd123123
شنبه 05 بهمن 1392, 15:20 عصر
دقت کنید C به تنهایی کاربرد آنچنانی نداره و ... برای اینکه بتونید ادعای برنامه نویس بودن بکنید
این قسمتش درست نیست. c هم زمان خودش خدا بوده هم الان تو پروژه های سیستمی استفاده میشه.

کامبیز اسدزاده
شنبه 05 بهمن 1392, 17:09 عصر
این قسمتش درست نیست. c هم زمان خودش خدا بوده هم الان تو پروژه های سیستمی استفاده میشه.
چرا درست نیست ؟ خودتون که میدونید و دارید میگید یه زمانی و در زمان خودش ! در کل زبان C یک زبان پایه هست ولی شئی گرا نیست که شما بتونید هر برنامه ای رو باهاش پیاده کنید از زبان C بیشتر روی برنامه های سطح پایینتر استفاده میشه که تقریبا نزدیک به اسمبلی هست ! با رشد فناوری و سبک نرم افزار نویسی دیگه مسلما زبان هایی مثل C به تنهایی جوابگوی نیاز نخواهد بود.

ayub_coder
شنبه 05 بهمن 1392, 18:08 عصر
معمولا این طور سوالهای هیچ جوابی نداره. هر کسی بنا به تخصصی که داره جواب میده...
هر زبانی برای منظور خاصی طراحی شده. اگر سی ++ خدای زبان ها بود و دیگر نیاز به یادگیری زبان دیگری نبود مطمئن باشید زبان های برنامه نویسی دیگر بوجود نمی آمدند.
هر کدام از اینها برای منظور خاصی استفاده میشن.
مثلا کسی نمیاد با سی++ کدهای وب سایت شخصیش رو بنویسه...
یا کسی نمیاد با php نرم افزار دسکتاپ تولید کنه
برای تولید سریع نرم افزارهای سریع که بشه با بانک اطلاعاتی و ابزارهای گزارشگیری کار کرد دات نت بهترین گزینه است
یا برای ساخت نرم افزارهای قابل حمل و یا سازمان مقیاس جاوا گزینه ی مناسبیه.

بستگی به موقعیت و نیاز شما نوع زبان هم فرق داره.. شما باید یک زبان مثل سی++ رو به صورت حرفه ای یاد بگیرید و بقیه ی زبان ها رو هم در کنارش داشته باشید.. تا بتونید در مواقع نیاز کارتون رو راه بندازید.

در کل یادگیری یک زبان پایه مثل سی/سی++ در یادگیری سایر زبانها خیلی تاثیر داره.. یادگیری اصول مهمه. بقیه سینتکس و استفاده از توابع کتابخانه ایه.

در کل اگه بخوای دنبال یک زبان خوب باشی باید سالیان سال وقتت رو هدر بدی. پس یکی رو انتخاب کن و باهاش برو جلو.

asdasd123123
شنبه 05 بهمن 1392, 18:20 عصر
من چی گفتم: c هم زمان خودش خدا بوده و ...
.
آهان تازه ++ رو دیدم. سی پلاس پلاس الان هم خداست. همین php رو هم با سی نوشتن. (و بسیاری از زبان های تفسیری: منظور مفسر یا موتور زبانه) هیچ زبانی جامع تر و کامل تر از سی نیست. و موضوع به وجود اومدن یه زبان جدید همیشه به دلیل این نیست که زبان قبلی ناکارا بوده. مثلا سی شارپ که بعد از سی پلاس پلاس اومده انصافا کاراتره؟! (حتی در موارد خاصی که عرض کردید C++‎‎ از لحاظ کارایی برتری داره)
.
مثلا کسی نمیاد با سی وب بزنه :: با وجود php بله چون خیلی راحت تر میشه ولی بعضی ها این کار رو کردن ها :: google با سی و پایتون نوشته شده :: فکر می کنید چرا؟!
.
در نهایت: تنها زبانی که میشه باهاش همه کار رو با حداکثر کارایی انجام داد سی پلاس پلاس است. غیر از اینه؟؟؟ هیچ زبان دیگری این چنین هست آیا؟؟؟

کامبیز اسدزاده
شنبه 05 بهمن 1392, 19:09 عصر
.
در نهایت: تنها زبانی که میشه باهاش همه کار رو با حداکثر کارایی انجام داد سی پلاس پلاس است. غیر از اینه؟؟؟ هیچ زبان دیگری این چنین هست آیا؟؟؟

ببینید این که زبان C++‎‎ خیلی قدرتمند هستش و انعطاف پذیری داره و میشه گفت یه زبان پایه ای هست که میشه هر کاری باهاش کرد شکی نیست ! ولی بر اساس نیاز و هدف برنامه نویس خودش انتخاب میکنه که با چه زبانی کارش رو راه بندازه , مثلا من خودم برای یه مشتری که وقت نداره و 2..3 روزه پروژش رو میخواد و اصلا کارایی مهم نیست براش میتونم از C#‎‎ استفاده کنم یا از زبان های دیگه مثل دلفی و ...


ذاتا از نظر من برنامه هایی با C++‎‎ نوشته میشن که واقعا کیفیت , سرعت و کارایی و همه فاکتور های مثبت در برنامه مهم باشه در این صورت خب چی چیزی بهتر از C++‎‎؟ میشه همه کار ها رو با همین VB.NET هم انجام داد ولی هر چیزی جای خودشو داره و بر اساس سلیقه برنامه نویس و هدف از پروژه مشخص میشه.

یا مثلا توی وب هرچند من C#‎‎ رو قشنگ بلدم ولی هیچوقت با C#‎‎ سیستم های تحت وب و وب سایت رو نمینویسم و همیشه از PHP استفاده کردم چرا ؟ چون PHP گرفته شده از یه زبان اصل و نسب داری مثل C++‎‎ هست و کارائی و سرعتی که داره خیلی بهتره پس این برنامه نویس هست که مشخص میکنه با چه چیزی برنامه رو بنویسه حالا من اینطور تشخصی میدم و از PHP استفاده میکنم در حالی که خودم تجربه تولید صفحات وب رو با استفاده از همین C++‎‎ هم دارم ! ولی خوب بهترین انتخاب برای دسکتاپ و نرم افزار های موبایلی و دسکتاپی زبان هایی مثل C/C++‎‎ / C#‎‎ / Java هستند و برای وب هم من توصیه میکنم حتما PHP رو در نظر بگیرید.

و در نهایت من خودم شخصا برنامه هایی که برای اهداف خودم تولید میکنم رو با C/C++‎‎ مینویسم و در وب هم از PHP استفاده میکنم ولی مشتری هست میاد میگه فلان برنامه رو میخوام خب این وسط مشتری چه میفهمه C#‎‎ چیه C++‎‎ چیه ؟ اصلا چه میفهمه Performance بالا چیه ؟ یه native بودن یا managed بودن چیه ؟ به نظرتون میفهمه ؟ حتی اگه مشتری متخصص هم باشه براش مهم نیست خروجی میخواد از شما ولی ما که برنامه مینویسیم باید بر اساس نیاز مشتری تشخیص بدیم چه زبانی برای محصول مشتری بهتر جواب مید ! پس در این حالت اشکالی هم نداره از C#‎‎ استفاده کنید و خیلی راحت محصولی رو که مشتری نیاز داره فراهم و در اختیارش بزارید.

GENERAL IRAJ
شنبه 05 بهمن 1392, 21:56 عصر
دوست عزیزمون جناب abolfazl-z (http://barnamenevis.org/member.php?241514-abolfazl-z) میگن که:


دوست عزیز من ممکنه به همه چی نیاز داشته باشم. کار با فایل یا سخت افزار و یا یک سوکت یا حافظه و یک چیزایی دیگه که بعدا ممکنه توی زندگی ام رخ بدهد. در کل نشه این همه یاد میگیری بعد می فهمی که این زبان از این ویژگی پشتیبانی نمی کند و باید اون زبان رو یاد بگیری. اینجا آدم کلافه میشه ! (منظورم عدم پشتیبانی OOP در C نیست!)

تصور کنید شما می خواهی در عین حال:
مکانیک باشی ، پزشک همه کاره باشی ، خلبان باشی ، آشپز باشی ، مهندس باشی ، وکیل باشی و.....
که به خیلی چیزای دیگه می شه اشاره کرد.
اگه واقعاً میخواهی برنامه نویسی یاد بگیری یک زبان رو ادامه بده و در اون خبره شو
بر فرض شما 10 تا زبان رو یاد گرفتی ، ولی اگر در هیچ کدوم آنها تخصص کافی نداشته باشی یعنی هیچی بلد نیستی.
ولی اگر یک زبان رو به طور کامل یادبگیری و در اون زبان ادعای مسلط بودن بکنی اونوقت حرفی برای گفتن داری
به شما برای این سوال حق می دهم ، زیرا دقیقاً یکی از دغدغه های ذهنی من همین بود .
امیدوارم هرکجا هستید موفق باشید