معرفي زبان برنامه نويسي Ruby on rails
جمعه 16 مرداد 1388 2:40 AM
Ruby on rails
زبان جديد است كه به طور مخفف
RoR
و يا فقط
Rails
مي گويند
.
اين زبان در واقع در برگرفته از يك زبان جديد به نام
Ruby
است
. Ruby
امكانات برنامه نويسي تحت وب ندارد و به همين دليل
Ruby on rails
از روي اين زبان و براي كار بر روي وب تهيه شده است
.
اين زبان به صورت اپن سورس و بر اساس يك تكنولوژي و يا ساختار
Model-view-Controller
به وجود آمده است
.
اين ساختار داراي فلسفه خاصي است
.
با اين صورت كه برنامه بايد با كمترين كد و به ساده ترين شكل ممكن و در زمان اندك نوشته شود
.
اين فلسفه به نوعي آرزوي برنامه نويسان زبان هاي قبل از آن بوده است
.
اين برنامه از نظر نگاه افراد حرفه اي تر خوب نبوده و نمي توان از آن در پروژه هاي بزرگ استفاده كرد و هنوز به حد كافي رشد نكرده است
.
پنج دليل براي اثبات اين موضوع
:
1)
در صدر اخبار بودن
اين زبان يك زبان جديد است كه كاملاً رشد نيافته است
.
بسياري از افراد مي خواهند از آن استفاده نمايند اما به خاطر جديد بودن فقط در مجلات مختلف در مورد آن و ويژگي هاي آن بحث شده است
.
اما اگر يك زبان در صدر اخبار محلات تخصصي باشد ، باز هم دليل نمي شود كه در همه جا و در همه پروژه اي بتوان از آن به خوبي استفاده كرد
.
2)
جديد بودن
همانطور كه در بالا اشاره شد ، اين زبان جديد است
.
هنوز به طور كامل در همه موارد جواب پس نداده است
.
در ماه جولاي
2004
اين زبان معرفي شده است
.
شما مي توانيد اين موضوع را با
PHP
كه اولين معرفي آن در سال
1994
مي باشد مقايسه كنيد
.
در اين مقايسه معلوم مي شود كه
PHP
بيشتر در موارد خاص جواب داده است و افراد بيشتري از آن استفاده مي كنند
.
اين موضوع در پروژه هاي بزرگ بيشتر به چشم مي خورد
. PHP
به اندازه قدمت وب قدمت دارد
.
3)
پشتيباني كمتر از
IIS
بسياري از مردم حتي در حسرت استفاده از
PHP
، اين كار را در سرورهاي ويندوز و وب سرور
IIS
انجام مي دهند
ROR
پشتيباني كمتري در اين زمينه دارد و به خوبي نمي تواند با
ISS
كار كند
.
حتي با وجود مقالات زيادي در مورد چگونگي استفاده از
ROR
در
IIS
به علت پيچيدگي نسبي كار تعداد افراد كمتري جذب آن مي شوند
.
4)
نوع كدها
به اين كد كه در واقع برنامه فاكتوريل مي باشد توجه كنيد
:
اين نحوه نگارش نشان مي دهد كه براي كدهاي كوچك طراحي شده است
.
در يك پروژه بزرگ اگر همه كدها به نحوه ي نگارش نوشته شوند ، شما نمي توانيد در زمان بروز خطا به درستي منبع خطا را پيدا كنيد
.
Def fact(n)
If n == 0
1
Else
n * fact(n-1)
end
end
5)
هيچ سايت بزرگي با اين زبان نوشته نشده
اين سوال خود يك دليل مهم است
.
فعلاً كه هيچ سايتي بزرگي توسط اين زبان به وجود نيامده است
.
شايد با رشد سريعي كه اين زبان دارد ، در آينده نزديك بتوانيم اين نوع سايتها را ببينيم
.
اما امروز به نظر نمي رسد اين زبان به حدي رسيده باشد كه قابليت اين كار را داشته باشد
.