انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

نویسنده موضوع: درخواست کمک در مورد انتخاب زبان برنامه نوی  (دفعات بازدید: 8879 بار)

0 کاربر و 4 مهمان درحال مشاهده موضوع.

آفلاین vampire

  • Jr. Member
  • *
  • ارسال: 56
  • جنسیت : پسر
  • Free as in Freedom
    • بهترین مقالات مجلات و جاوا اسکریپت
سلام.من میخوام برنامه نویسی تحت لینوکس رو یاد بگیرم.به نظر شما چی یاد بگیرم بهتره ؟
« آخرین ویرایش: 04 خرداد 1388، 09:52 ق‌ظ توسط vampire »
free as in freedom
_______________________
Only Opensource
Only Linux
Only Ubuntu

آفلاین sct

  • Full Member
  • *
  • ارسال: 167
  • جنسیت : دختر
پاسخ به: درخواست کمک
« پاسخ #1 : 02 خرداد 1388، 02:51 ب‌ظ »
نقل‌قول
سلام.من میخوام برنامه نویسی تحت لینوکس رو یاد بگیرم.به نظر شما چی یاد بگیرم بهتره ؟
چگونه در لینوکس برنامه نویسی کنم یا شروع برنامه نویسی در لینوکس ؟

یکی از رایج ترین پرسش های کاربرانی که به تازگی کار با سیستم عامل گنو لینوکس را آغاز نموده اند همین مواردی که در عنوان این پست آورده شده می باشد که در اکثر موارد یا از سوی کاربران دیگر به علت این پرسش مورد نکوهش قرار خواهند گرفت یا اینکه به جواب مورد نظر خود نخواهند رسید . مشکل این است که مطرح کردن این موضوع بدین گونه اشتباه می باشد . این سوالی کلی است و پاسخی نیز که دریافت خواهید نمود کلی خواهد بود . فرمول کلی برای برنامه نویسی در هر سکویی بدین گونه است زبان برنامه نویسی + ابزاری برای کامپایل برنامه = برنامه شما .
بر همین اساس شما می توانید تحقیق خود را آغاز کنید .
در اولین گام از خود بپرسید با چه زبان های برنامه نویسی آشنا هستم ؟
پاسخ : زبان X , زبان Y , ….. یا هیچ زبان برنامه نویسی بلد نیستم
اگر پاسخ شما مشابه بخش دوم بود (هیچ زبان برنامه نویسی بلد نیستم) احتمالا دوباره یک پرسش اشتباه را مطرح خواهید نمود . بهترین زبان برنامه نویسی چه زبانی است ؟ شما هنوز هیچ گونه تجربه برنامه نویسی ندارید ! پس بجای پرسش بالا باید بگوید ساده ترین زبان برنامه نویسی برای شروع کار من کدام است .
گام دوم :آیا زبان برنامه نویسی که من با آن اشنا هستم بصورت کامل در این سکو پشتیبانی می شود . اگر خیر چه تفاوت هایی در پیاده سازی آن با سکوی که تا کنون من در آن کار می کردم وجود دارد ؟

گام سوم : حال که زبان مورد نظر خود را یافتید باید به دنبال یک کامپایلر برای آن بگردید . پس بپرسید برای کار با زبان X چه کامپایلرهایی در این سکو وجود دارد ؟

توجه کنید بسیاری از افراد ( افرادی که معمولا در ویندوز برنامه نویسی می نمودند ) در این مرحله پرسشی اشتباه مطرح می کنند و آن پرسش این است : از چه IDE برای کار با زبان X در سکوی مورد نظر می توانم استفاده نمایم ؟ به عنوان مثال اگر زبان مورد نظر شما C یا C++ باشد و سکوی مورد نظر لینوکس با طرح این پرسش با لیست بزرگی از نام های مختلف رو به رو خواهید شد که بیشتر مورد سردرگمی شما خواهد بود تا کمک ! . برای کار با هر یک از این زبان های نام برده شما می توانید از gcc یا g++ استفاده نمایید . به عنوان مثال برای کامپایل برنامه ای با نام x.c کافی است دستور یک خطی زیر را در خط فرمان وارد کنید
gcc x.c -o test
که خروجی برنامه ای با نام test خواهد بود . حال اگر شما از یک IDE استفاده می نمودید در آن محیط با منوها و گزینه های فراوانی رو به رو می شدید و با توجه به این که تقریبا هیچ یک از این IDE ها در لینوکس راهنمای فارسی برای کار ندارند موجب سردرگمی شما خواهد شد . در حالی که یادگیری این یک خط فرمان در برابر آن قابل مقایسه نیست . البته برنامه هایی چون gcc یا g++ نیز دارای راهنما های چندین صفحه ای می باشند ولی در آغاز کار شما نیازی نیست تمامی گزینه های آنها را یاد بگیرید . کامپایل یک برنامه ساده در آغاز کار برای شما انگیزه زیادی ایجاد خواهد نمود حتی اگر آن برنامه یک hello word ساده باشد .به این نکته نیز توجه داشته باشید تمامی این IDE های مختلف در نهایت همین دستور شما را در پس زمینه اجرا خواهند نمود و تنها یک رابط گرافیکی زیبا می باشند چه بسا اگر شما در کار خود پیشرفت نمایید در مراحل بعدی در برنامه های بزرگ و پیچیده باید خودتان فرمان کامپایل را در این برنامه ها تنظیم نمایید (در مورد سایر زبان ها نیز موارد گفته شده صادق است ). پس در ابتدا به کار با یک ویرایشگر متنی ساده راضی باشید .
گام چهارم : چه IDE برای کار خود انتخاب نمایم ؟ IDE ها یا محیط های مجتمع برنامه نویسی نقش بسیار مهمی در روند برنامه نویسی به ویژه از لحاظ سرعت کار دارا هستند . پس اکنون که شما روش کامپایل و اجرای برنامه خود را آموخته اید برای تسریع کار خود می توانید به دنبال یک IDE مناسب نیازهای خود بگردید .

گام پنجم : تمام شد ! اکنون شما می توانید در سکوی مورد نظر خود به راحتی برنامه بنویسید .
توجه : بسیاری از این پرسش های مطرح شده در این بخش بارها و بارها توسط افراد مختلف مطرح شده . پس حتما پیش از پرسیدن این سوالات در مورد آنها جستجو کنید .
---
منبع:
http://gtk.ir/?p=56

آفلاین Saman.S

  • Sr. Member
  • *
  • ارسال: 322
  • جنسیت : پسر
پاسخ به: درخواست کمک
« پاسخ #2 : 02 خرداد 1388، 02:53 ب‌ظ »
قبلا با زبونی کار می کردید؟ یا اولین زبونتونه؟
اگه کلا اولین زبونتونه که می گن پایتون خیلی خوبه(البته خودم با بیسیک تو ویندوز شروع کردم. خیلی سادس و برای شروع عالی بود)
و اگه قبلا تو ویندوز زبون دیگه ای بلد بودید بگید. به احتمال زیاد می تونید توی لینوکس همون رو ادامه بدید.

آفلاین vampire

  • Jr. Member
  • *
  • ارسال: 56
  • جنسیت : پسر
  • Free as in Freedom
    • بهترین مقالات مجلات و جاوا اسکریپت
پاسخ به: درخواست کمک
« پاسخ #3 : 03 خرداد 1388، 06:43 ب‌ظ »
قبلا با زبونی کار می کردید؟ یا اولین زبونتونه؟
اگه کلا اولین زبونتونه که می گن پایتون خیلی خوبه(البته خودم با بیسیک تو ویندوز شروع کردم. خیلی سادس و برای شروع عالی بود)
و اگه قبلا تو ویندوز زبون دیگه ای بلد بودید بگید. به احتمال زیاد می تونید توی لینوکس همون رو ادامه بدید.
سلام.راستش من قبلا" ویژوال بیسیک کار کردم و الانم میکنم ولی بیشتر دوست دارم واسه لینوکس بنویسم تا ویندوز.
free as in freedom
_______________________
Only Opensource
Only Linux
Only Ubuntu

آفلاین Saman.S

  • Sr. Member
  • *
  • ارسال: 322
  • جنسیت : پسر
پاسخ به: درخواست کمک
« پاسخ #4 : 03 خرداد 1388، 07:20 ب‌ظ »
زبون های لینوکس و ویندوز با هم خیلی فرق ندارن. شما می تونید به زبون های C,C++,C#,Java,VB.NET,Python و بسیاری از زبون های دیگه توی لینوکس برنامه بنویسید.
به نظر من حتما زبان ++C رو یاد بگیرید چون هم خودش قویه و هم سینتکسی مشابه زبون های قوی تر مثل Java و #C داره.
اگه می خواین زبون برنامه نویسیتون محیطهای برنامه نویسی قوی داشته باشه که امکاناتی مثل طراحی ویژوال داشته باشه, می تونید با زبان های C و C++ و #C و Java کار کنید(برای بقیه زبون ها اطلاعی ندارم)

آفلاین vampire

  • Jr. Member
  • *
  • ارسال: 56
  • جنسیت : پسر
  • Free as in Freedom
    • بهترین مقالات مجلات و جاوا اسکریپت
پاسخ به: درخواست کمک
« پاسخ #5 : 03 خرداد 1388، 07:26 ب‌ظ »
زبون های لینوکس و ویندوز با هم خیلی فرق ندارن. شما می تونید به زبون های C,C++,C#,Java,VB.NET,Python و بسیاری از زبون های دیگه توی لینوکس برنامه بنویسید.
به نظر من حتما زبان ++C رو یاد بگیرید چون هم خودش قویه و هم سینتکسی مشابه زبون های قوی تر مثل Java و #C داره.
اگه می خواین زبون برنامه نویسیتون محیطهای برنامه نویسی قوی داشته باشه که امکاناتی مثل طراحی ویژوال داشته باشه, می تونید با زبان های C و C++ و #C و Java کار کنید(برای بقیه زبون ها اطلاعی ندارم)

آموزش برنامه نویسی برای C++ دارید ؟
البته تحت لینوکس (ترجیحا" فارسی ولی کلا" انگلیسی هم بود اشکال نداره )
« آخرین ویرایش: 03 خرداد 1388، 07:30 ب‌ظ توسط vampire »
free as in freedom
_______________________
Only Opensource
Only Linux
Only Ubuntu

آفلاین ناربه

  • ناظر انجمن
  • *
  • ارسال: 2033
  • جنسیت : پسر
پاسخ به: درخواست کمک
« پاسخ #6 : 03 خرداد 1388، 09:49 ب‌ظ »
لطفا برای تاپیکتون عنوان مناسب انتخاب کنید.
ممنون

آفلاین moshen212

  • Sr. Member
  • *
  • ارسال: 344
  • جنسیت : پسر
سلام
نقل‌قول
سلام.راستش من قبلا" ویژوال بیسیک کار کردم و الانم میکنم ولی بیشتر دوست دارم واسه لینوکس بنویسم تا ویندوز.
عزیز شرایط شما دقیقا مثل گذشته ی من هست . منم قبلا وی بی کار می کردم و وقتی با اوبونتو آشنا شدم علاقه پیدا کردم که برای اوبونتو برنامه بنویسم یک کارهایی هم انجام دادم
اگر نظر من رو بخواید بهترین زبان برای شما Python هست چون هم یاد گیریش با سرعت و به راحتی انجام میشه و هم بسیار قوی هست از طرفی بسیار هم گسترده هست چون در همه جا کاربرد داره و بسیار هم قابل حمل هستش.
با وجود بچه های گل سایت pylearn.com دیگه نیازی هم نخواهید داشت که برید دنبال ترجمه ی متون انگلیسی و در صورتی که مشکلی هم داشتید می تونید همین جا یا در انجمن pylearn.com مطرح کنید مطمئن باشید جواب می گیرید.
اگر تا حالا اسمش رو نشنیدید نگران این هم نباشید چون با وجود این که تا مدتی قبل نا شناخته بود برای خیلیها مخصوصا ایرانیها ولی الان به سرعت داره خودش رو بالا می کشه و آینده ی رو شنی خواهد داشت از طرفی کاربر براش تفاوتی نداره که برنامه به چه زبانی نوشته شده اون کار خوب رو می خواد که انشاا..  شما هم کار خوب تحویل خواهید داد
پایتون یا اژدهای خفته !!!؟

آفلاین vampire

  • Jr. Member
  • *
  • ارسال: 56
  • جنسیت : پسر
  • Free as in Freedom
    • بهترین مقالات مجلات و جاوا اسکریپت
ممنون راستش من یه آشنایی قبلی با پایتون داشتم زبان خیلی کامل و خوبیه.
 \\:D/ \\:D/
free as in freedom
_______________________
Only Opensource
Only Linux
Only Ubuntu

آفلاین farbod69

  • Newbie
  • *
  • ارسال: 9
پایتون زبان فوق العاده ایه اما اگه واقعا می خواهید برنامه نویس حرفه ای بشید C++ حرف اول و اخرو می زنه سینتکس اکثر زبان ها شبیهشه و قدرت فوق العاده ای در مدیریت حافظه و ارتباط با خود سیستم عامل داره و چون قابل درکه تمام ماشین هاست به قول برنامه نویس ها یک بار میکویسید و برای سیستم عامل های مختلف کامپایل می کنید با استفاده از کانپایلر خودشون
java  هم فوق العاده قویه و memory managment رو اتوماتیک انجام میده ولی برای شروع پیشنهاد نمی کنم اگه c++ بلد باشین در عرض دو روز java رو یاد میگیرید فقط باید توابع و کتابخانه هاشو بشناسین اگر هم به C# الاقه دارین بازم همون رو می گم اول C++ بعد اون هر چند c# برای رقابت با java ایجاد شد و در رقابت java واقعا قوی تره به هر حال می تونین با نسب mono که همون فریم ورک دات نت برای لینوکسه و نصب mono developer که IDE هستش با C# برنامه بنویسید که حتی GUI هم داشته باشه که میتنی بر GTK# هست حالا تصمیم با خودتونه اما به هر حال در اکثر دانشگاه های جهان و ایران برنامه نویسی رو با c++ شروع می کنن

آفلاین moshen212

  • Sr. Member
  • *
  • ارسال: 344
  • جنسیت : پسر
سلام
نقل‌قول
ایتون زبان فوق العاده ایه اما اگه واقعا می خواهید برنامه نویس حرفه ای بشید C++ حرف اول و اخرو می زنه سینتکس اکثر زبان ها شبیهشه و قدرت فوق العاده ای در مدیریت حافظه و ارتباط با خود سیستم عامل داره و چون قابل درکه تمام ماشین هاست به قول برنامه نویس ها یک بار میکویسید و برای سیستم عامل های مختلف کامپایل می کنید با استفاده از کانپایلر خودشون
java  هم فوق العاده قویه و memory managment رو اتوماتیک انجام میده ولی برای شروع پیشنهاد نمی کنم اگه c++ بلد باشین در عرض دو روز java رو یاد میگیرید فقط باید توابع و کتابخانه هاشو بشناسین اگر هم به C# الاقه دارین بازم همون رو می گم اول C++ بعد اون هر چند c# برای رقابت با java ایجاد شد و در رقابت java واقعا قوی تره به هر حال می تونین با نسب mono که همون فریم ورک دات نت برای لینوکسه و نصب mono developer که IDE هستش با C# برنامه بنویسید که حتی GUI هم داشته باشه که میتنی بر GTK# هست حالا تصمیم با خودتونه اما به هر حال در اکثر دانشگاه های جهان و ایران برنامه نویسی رو با c++ شروع می کنن
از توضیحاتی که دادید ممنون ولی با قسمتی که گفتید اگه می خواید برنامه نویس حرفه ای بشید C++  حرف اول رو می زنه موافق نیستم . راستش من با این که برنامه نویسی حرفه ای رو محدود به یک زبان خاص کنیم مخالفم و چیزی که الآن در مورد زبانهای برنامه نویسی صدق می کنه این هست که هر کدوم یک نقطه ی عطفی دارن که ممکن هست در دیگری نباشه االبته بجز زبانهای Visual studio چون همه ی زبانها یکپارچه شدن .
اما در مورد پایتون چند تا از قابلیتهایی که در مورد C++ و java و C# گفتید در مورد پایتون هم صدق می کنه مثلا پایتون هم بسیار قابل حمل هست و مدیریت حافظه ای بسیار خوبی هم داره شاید در این مورد شگفت آور هم باشه البته اگر منظورتون آدرس دهی مستقیم به حافظه هست در پایتون نیست اما بهترین قابلیت هایی که من در پایتون احساس کردم و  هستن :
۱ - کد ایجاد شده بسیار خوانا و بسادگی قابل درک هست به همین دلیل میشه به سرعت کدهای مثلا یک برنامه ی اپن سورس به این زبان رو درک کرد .
۲ - سرعت انجام کار نسبت به خیلی از زبانهای دیگه بالاتر هست چون واسه هر کاری یک راه کوتاه تر و در عین حال مطمپن تر داره .
۳ - در بسیاری از عرصه ها کاربرد داره شما می تونید ازش در برنامه نویسی دسکتاپ یا اینترنت و یا گوشی موبایل و یا حتی روباتیک ازش استفاده کنید .
به مثال زیر که یک کد زبان c++ و یک کد زبان Python هست توجه کنید :
if ( ( x > 0 ) and ( x  < 10 ) )
    cout << "Hello world"
if 0 < x < 10 :
   print "Hello world"
در کد بالا هر چند که کوچک هست ولی موارد ۱ و ۲ درش دیده میشه .
موفق باشید .
« آخرین ویرایش: 20 تیر 1388، 01:01 ب‌ظ توسط moshen212 »

آفلاین مصطفی بزاز

  • Jr. Member
  • *
  • ارسال: 88
  • جنسیت : پسر
اشكالزدايي ++C خيلي سخت تره. در ضمن يه خوبي java اينه كه IDE هاي خيلي قوي تري داره. كافيه Intellij رو مقايسه كني با هر IDE براي ++C .
در مورد Python هم كه توضيح داده شد. البته فكر نمي كنم IDE هاش مثل جاوا باشه.
Mint Gloria x86 ( +Windows XP x86)
Intel E7300 @ 2.66
ATI 3650HD 512MB
2x2GB DDR2 800
ASUS P5QL Pro

آفلاین moshen212

  • Sr. Member
  • *
  • ارسال: 344
  • جنسیت : پسر
سلام
نقل‌قول
اشكالزدايي ++C خيلي سخت تره. در ضمن يه خوبي java اينه كه IDE هاي خيلي قوي تري داره. كافيه Intellij رو مقايسه كني با هر IDE براي ++C .
در مورد Python هم كه توضيح داده شد. البته فكر نمي كنم IDE هاش مثل جاوا باشه.
بله , کاملا موافقم با این مسئله که شاید IDE خوبی تا حالا واسه python ساخته نشده ولی واسه ی یک کسی که به IDE اهمیت میده Eclipse + pydev به نظر خوب میاد .