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

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

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


ارائه ۲۴٫۱۰ اوبونتو منتشر شد 🎉

نویسنده موضوع: Ruby یا Python  (دفعات بازدید: 9734 بار)

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

آفلاین ahmed

  • High Hero Member
  • *
  • ارسال: 1069
  • جنسیت : پسر
    • یادداشت‌های یک دوست‌دار نرم‌افزارهای آزاد
Ruby یا Python
« : 22 فروردین 1387، 08:11 ب‌ظ »
حدود دو سال پیش در یک مجله دیدم که زبان برنامه نویسی ruby به عنوان بهترین زبان برنامه نویسی اپن سورس شی گرا انتخاب شده است.حالا من دوتا سوال دارم:
1- ruby بهتر است یا python ؟
2- شی گرا یعنی چه؟

آفلاین ناربه

  • ناظر انجمن
  • *
  • ارسال: 2033
  • جنسیت : پسر
پاسخ به: Ruby یا Python
« پاسخ #1 : 22 فروردین 1387، 09:42 ب‌ظ »
در مورد سوال دوم بايد بگم كه برنامه نويسي شي گرا يعني شما در محيط گرافيكي برنامه نويسي ميكنيد. مثل VB ولي C# شي گرا نيست. يا Python.

http://shirazfun.parsiblog.com/446981.htm

lomion

  • مهمان
پاسخ به: Ruby یا Python
« پاسخ #2 : 22 فروردین 1387، 10:25 ب‌ظ »
شی گرا به این معنی هست که شما دریافتی که دنیا رو به شکل اشیا می بینید. مثلا وقتی خودمون در مورد یه چیزی مثل یه خودرو صحبت می کنیم، چه مسایلی در ذهن ما میاد:۱) یه موجودیت که به صورت کلی به نام خودرو میشناسیم ۲) یک سری ويژگیهای این خودرو مثل مدل، شماره بدنه، رنگ، پلاک و ... ۳) یک سری کارایی که خودرو انجام میده مثل حرکت، پیچیدن و... شی گرایی این نوع نگاه رو به دنبای کامپیوتر و برنامه نویسی آورده. به این سه بخش به ترتیب می گن: هویت، صفات و اعمال.

پایتون و روبی هر دو شی گرا هستن. اما روبی از نظر شی گرایی قویتر از پایتون هست. (مفاهیمی رو توی شی گرایی داره که هیچ زبان دیگه‌ای نداره.)
اما تفاوت در عمل وجود داره:
زبان پایتون به نسبت، به شکل عمومی، ساده تر از روبی هست (گرچه من چون شی گرایی رو دوست دارم، روبی به نظر من ساده تره و باهاش راحتتر کنار میام.اما روبی زبان جدیدتری هست. روبی از زبان پایتون و پرل (و فکر کنم یه زبان دیگه) گرفته شده پس خیلی از قدرتهای پایتون به روبی به ارث رسیده.
طبیعتا، پایتون یک زبان خیلی ریشه دار تره تا روبی. و این یعنی کلی کتابخونه داریم که برای پایتون وجود داره، اما برای روبی هنوز نوشته نشده و این یکی از بزرگترین ضعفهای موجود زبان روبی هست.
از این نظر یه جایی دیدم می گفتن که پایتون خیلی Productive Oriented هست: یعنی به بیان ساده، جون میده برای سریع رسیدن به نتیجه و درست کردن یه برنامه که خوب کارکنه! و این رو میشه یه حسن برای پایتون دونست. اما از سمت دیگه می‌گن که پایتون به دلیل ساختار ضعیفتر شی گرا، برای برنامه‌های بزرگ دردسر سازه. ولی روبی از این نظر بهتر و تجاری تر هست.

اما هر زبان به درد یه کاری بهتر می خوره. مثلا پایتون برای نوشتن برنامه توی گنو/لینوکس عالیه و روبی برای نوشتن برنامه‌های وبی. (البته هر کدوم رو برای کارای دیگه هم بکار می برن...)

آفلاین مرتضی علیرضایی

  • Full Member
  • *
  • ارسال: 214
  • جنسیت : پسر
    • ALIREZAEI.ir
پاسخ به: Ruby یا Python
« پاسخ #3 : 22 فروردین 1387، 10:56 ب‌ظ »
اگر واقعا می خواهید قدرت شی گرایی را حس کنید از رابی استفاده کنید. در این زبان همه چیز شی هست حتی اعداد عضوی از کلاسها هستند. حتی توابع هم مثل یک شی عمل می کنند. آخر شی گرایی....!

آفلاین علیرضا طالقانی

  • High Hero Member
  • *
  • ارسال: 2373
  • جنسیت : پسر
  • القدس لنا، والنصر لنا!
    • Take it easy
پاسخ به: Ruby یا Python
« پاسخ #4 : 23 فروردین 1387، 12:39 ق‌ظ »
ی چند خطی هم من سر تون رو درد بیارم!   رابی یعنی زندگی  ;)
اول اینکه مثل جاوا نیست!‌
به این دلیل که جاوا در پشت کار ی زبان خطی هستیش و کدی شما می نویسی به زبان ساختاری تبدیل و بعد اجرا میشه! ولی رابی نه!
یعنی از اساس به صورت شی گرا طراحی شده و نگته ی جالب اش اینه که از ی برنامه ی خطی بنویسی! خودش اون رو برای به شی تبدیل می کنه  و بعدش اجرا!  ;)  می فهمه بچم

مزایا! سرعت بالا! عدم نیاز به ماشین مجازی و نتیجه اینکه به همه سیستم دسترسی داری ! حتما می دونی که جاوا به دلیل محصور شدن در ماشین مجازی ش که نمیشه الحمدالله باهاش خراب کاری کرد.

از مزایایی عدم نیاز به ماشین مجازی میشه ب سرعت بالای رابی اشاره کرد و البته رابی نیاز با کامپایل هم پیش از اجرا نداره! یعنی Runtime  هستش! موقع اجرا ! خوانده و اجرا میشه!
نتیجه این موهبت کد نویسی به شکل چیزی مثل PHP میشه !‌یعنی هر لحظ که سورس کد ات رو اجرا کنی !‌نتیجه رو خواهی دید.
خلاصه !‌رابی یعنی زندگی!  ساختار بندی شی اش خیلی خوبه! گرامر خیلی ساده تر در مقایسه با چیزی متل جاوا  ! والبته چون زیاد پیتون بلد نیستم با اون مقایسه نمی کنم.
رابی از سال ۹۰ یا ۹۵ هم روش کار شده ! ب قولی جاوای ژاپنی هاست! شاید هم چینی ها! (زیاد حافظه خوبی ندارم)‌ ولی تا سال ۲۰۰۶ هم تائیده ی ریاضی نگرفته بود!
این هم تائییده ی ای ی که می گه اگه شما با این زبان برنامه ای بنویسي! نتیجه ی کار همونی ی که شما انتظار داری‌! مثلا وفت برنامه بگی پرتقال می خوام! ناسزا بهت نمی گه!  ;) مگر خودت بهش یاد داده باشی که بگه!

ی کار توپی هم بر روی رابی شه به اسم  Ruby On Rails که اگه هدف ات وب باشه! اینو باید پیگیری کنی!!!  ی کلام ! هلو برو تو گلو !‌  جدول ( Table On a Mysql serber ) رو بهش میدی!  با ی خط دستور صفحات لیست ،‌ وارد کردن دیتا ،‌ویرایش و خلاصه همه چی شو میسازه!‌بر اساس MVC کار می کنه یعنی همون طراح (‌مدل-رابط-کنترل گر)  تقریبا غیر قابل نفود!  عمده ی خطا های کدنویسی رو هم به جهت ساختار و اسکلت برنامه نویسی ایش! مانع میشه!
شرمند دیگه من خیلی دوست دارم مثل سید مهدی ی گل ام مطلب بنویسم!‌ولی پای بر جای بزرگان نهاد! سخت است :)
.ShayneIsTheOneWhoIsAlwaysAlone
terminal@world-server:~$ sudo aptitude remove --purge Israel

آفلاین ابراهیم

  • High Hero Member
  • *
  • ارسال: 1295
  • جنسیت : پسر
  • راه‌رو گر صد هنر دارد توکل بایدش
    • سلام!
پاسخ به: Ruby یا Python
« پاسخ #5 : 26 فروردین 1387، 12:42 ق‌ظ »
اگر واقعا می خواهید قدرت شی گرایی را حس کنید از رابی استفاده کنید. در این زبان همه چیز شی هست حتی اعداد عضوی از کلاسها هستند. حتی توابع هم مثل یک شی عمل می کنند. آخر شی گرایی....!
تا جایی که می‌دونم Python هم این خصوصیات رو داره.
ما زنده به آنیم که آرام نگیریم     ...     موجیم که آسودگی ما عدم ماست

lomion

  • مهمان
پاسخ به: Ruby یا Python
« پاسخ #6 : 26 فروردین 1387، 08:03 ق‌ظ »
درسته اما Python تا جایی که می دونم Pure Object-Oriented نیست. و از این جهت هست که با همه چیز راحت کنار میاد ;)

آفلاین مرتضی علیرضایی

  • Full Member
  • *
  • ارسال: 214
  • جنسیت : پسر
    • ALIREZAEI.ir
پاسخ به: Ruby یا Python
« پاسخ #7 : 26 فروردین 1387، 04:55 ب‌ظ »

من زمان دقیانوس یک نیمچه تحقیقی در مورد رابی کرده بودم...!
فایل odt اون را می زارم شاید به درد کسی خورد. البته ممکنه جاهایی را اشتباه ترجمه یا برداشت کرده باشم شما به بزرگی خودتون ببخشید...

آفلاین علیرضا طالقانی

  • High Hero Member
  • *
  • ارسال: 2373
  • جنسیت : پسر
  • القدس لنا، والنصر لنا!
    • Take it easy
پاسخ به: Ruby یا Python
« پاسخ #8 : 26 فروردین 1387، 05:41 ب‌ظ »
نقل‌قول
من زمان دقیانوس یک نیمچه تحقیقی در مورد رابی کرده بودم...!
دست شما هم دردنکنه!
کامل نخوندم اش ولی به نظرم خیلی هم خوب بود :)‌ میسی میسی
.ShayneIsTheOneWhoIsAlwaysAlone
terminal@world-server:~$ sudo aptitude remove --purge Israel

آفلاین Sajjad Baroodkoo

  • Badjoker
  • گروه راهبران
  • *
  • ارسال: 625
  • جنسیت : پسر
  • Linux means FREEDOM
    • Deviant Art Gallery
پاسخ به: Ruby یا Python
« پاسخ #9 : 27 فروردین 1387، 12:22 ق‌ظ »
شی گرا به این معنی هست که شما دریافتی که دنیا رو به شکل اشیا می بینید. مثلا وقتی خودمون در مورد یه چیزی مثل یه خودرو صحبت می کنیم، چه مسایلی در ذهن ما میاد:۱) یه موجودیت که به صورت کلی به نام خودرو میشناسیم ۲) یک سری ويژگیهای این خودرو مثل مدل، شماره بدنه، رنگ، پلاک و ... ۳) یک سری کارایی که خودرو انجام میده مثل حرکت، پیچیدن و... شی گرایی این نوع نگاه رو به دنبای کامپیوتر و برنامه نویسی آورده. به این سه بخش به ترتیب می گن: هویت، صفات و اعمال.

پایتون و روبی هر دو شی گرا هستن. اما روبی از نظر شی گرایی قویتر از پایتون هست. (مفاهیمی رو توی شی گرایی داره که هیچ زبان دیگه‌ای نداره.)
اما تفاوت در عمل وجود داره:
زبان پایتون به نسبت، به شکل عمومی، ساده تر از روبی هست (گرچه من چون شی گرایی رو دوست دارم، روبی به نظر من ساده تره و باهاش راحتتر کنار میام.اما روبی زبان جدیدتری هست. روبی از زبان پایتون و پرل (و فکر کنم یه زبان دیگه) گرفته شده پس خیلی از قدرتهای پایتون به روبی به ارث رسیده.
طبیعتا، پایتون یک زبان خیلی ریشه دار تره تا روبی. و این یعنی کلی کتابخونه داریم که برای پایتون وجود داره، اما برای روبی هنوز نوشته نشده و این یکی از بزرگترین ضعفهای موجود زبان روبی هست.
از این نظر یه جایی دیدم می گفتن که پایتون خیلی Productive Oriented هست: یعنی به بیان ساده، جون میده برای سریع رسیدن به نتیجه و درست کردن یه برنامه که خوب کارکنه! و این رو میشه یه حسن برای پایتون دونست. اما از سمت دیگه می‌گن که پایتون به دلیل ساختار ضعیفتر شی گرا، برای برنامه‌های بزرگ دردسر سازه. ولی روبی از این نظر بهتر و تجاری تر هست.

اما هر زبان به درد یه کاری بهتر می خوره. مثلا پایتون برای نوشتن برنامه توی گنو/لینوکس عالیه و روبی برای نوشتن برنامه‌های وبی. (البته هر کدوم رو برای کارای دیگه هم بکار می برن...)


علی جان می شه منبع این تعرف جدیدت رو از شی گرایی بهمون بدی ؟ ](*,) ](*,) ](*,) ](*,)
حلقه ایرانیان اوبونتویی در فیسبوک [facebook.com/ubuntu.ir]

lomion

  • مهمان
پاسخ به: Ruby یا Python
« پاسخ #10 : 28 فروردین 1387، 09:08 ق‌ظ »
یادم نمیاد کجا دیدمش. ولی این رو خیلی خوب یادمه که تعریف مفهوم شی گرایی هست، اونم غیر رسمی. توی تعریف رسمیش مفاهیم دیگه‌ای هم هست مثل ارث‌بری و Encaplsulation و...