در تپش این هفته، ماجرای فریب و تعرض در پوشش عرفانهای دروغین و رمالی را بررسی کردیم
حتی در خود روبی نیز بسترهای زیادی چون Merb، Camping، Nitro/Og و Ramaze وجود دارند. در ضمن فراموش نکنیم که بزرگترین زبان برنامهنویسی دنیای وب، PHP را که بسترهایی چون Cake، Zoop و Biscuit را دارد.
در حقیقت، اگر عبارت "Web framework" را در گوگل جستجو کنید، قطعا فهرستی به ما خواهد داد که انتهای آن مشخص نیست.
در میان تمام این هرج و مرجها، نبایستی زبان قدرتمند اسکریپتنویسی پایتون را فراموش کرد. پایتون زبان بزرگی است و در میان بسیاری از رقبا در سال 2008 بهعنوان زبان محبوب اسکریپت نویسی از سوی خوانندگان مجله LJ برگزیده شد.
بنابراین، آشنایی با بسترهای کدی که در این زبان برنامهنویسی وجود دارد، میتواند بهبرنامهنویسان کمک کند تا برنامههای محکمتر و منعطفتری بنویسند.
جانگو
جانگو4 پس از توسعه یک وب سایت خبری بهوجود آمد و بهنظر میرسد بستری پرکاربرد، قابل انعطاف و محکم باشد. پایلونز5 از طرف دیگر، بهنظر میرسد تحت تاثیر مستقیم روبیآنریلز باشد و هدفش رسیدن به بهترین نتایج ممکن در میان دیگر بسترهای پایتون باشد. پایلونز بستری سبک است و برای سرعت ساخته شده است. توربوگیرز6 یک فرابستر است و روی ابزارهای دیگری چون SQLOBject و یا فناوری میانافزار Cherrypy نصب میشود، سیستم قالببندی آن ساده است و از کتابخانه ایجکس MochiKit پشتیبانی میکند.
معماری هر سه این بسترها بهصورت مدل–نمایشگر–کنترلکننده (MVC) است و اخیرا در فناوری وب، به ستون اصلی بدل شده است.
نصب
اگر در لینوکس کار میکنید، در بستههای از پیش تنظیم شده توزیع خود میتواند هر سه این بسترها را بیابید. هر چند در زمان نوشتن این مقاله، چیزی که در کتابخانه لینوکس قرارگرفته قدیمیتر از نسخهای است که تیم توسعه هر بستر ارائه کرده است.
از اینرو پیشنهاد میشود بهطور مستقیم بسترها را دانلود کنید. یادتان باشد که اگر بخواهید با دیتابیسی چون MySQL کار کنید، باید حتما پکیج python-mysqldb را از کتابخانه استاندارد لینوکس نصب کنید.برای نصب جانگو کافی است آخرین نسخه جانگو را از وبسایتش بگیرید و سپس دستور زیر را در لینوکس وارد کنید:
.tar.gz1.0tar -zxvf Django-
1.0 cd Django-
sudo python setup.py install
برای نصب پایتون کار زیر را بکنید:
0.9.6.2easy_install Pylons==
برای توربوگیرز فایل tgsetup.py را از وبسایت توربوگیرز دانلود کنید و دستور زیر را در خط فرمان بزنید:
sudo python tgsetup.py
و همین بود! از این به بعد میتوانید هر فریمورک را بهطور جداگانه بررسی کنید.
جانگو
بازی کردن با جانگو ساده است، با کدهای نمونه آن بازی میکنید و یکی دو صفحهای مقاله مرتبط میخوانید. تمام اینها که تمام شد، جانگو بستری است برای کار کردن، و مطمئن باشید که بعد از مدتی، حتما شگفتزده خواهید شد که یک سری از کارها چقدر ساده انجام میشود. درست به محض اینکه فایل سورس تغییر یافت، وب سرور بهطور خودکار تمام امور را انجام میدهد و تغییرات بهسرعت برای آزمایش مشاهده میشوند.
پایلونز
وقتی پایلونز را با موفقیت نصب کنید، مستقیما میتوانید بروید بهسراغ مستندسازی آنلاین آن و کار خود را شروع کنید. میتوان گفت درست یک لحظه بعد، متوجه میشوید که ماژول پروفایلر برای اجرای پایلونز ضروری است، برای همین با کمک دستور زیر، این مشکل را رفع میکنید:
sudo apt-get install
python-profiler
بهکمک راهنماهای خود وبسایت میتوانید از پس یک پروژه »سلام دنیا!« بر بیایید. قبل از اینکه به سراغ کد بروید، راهنماهای وبسایت پایلونز بهشما کمک میکنند به فرمت EGG7 در پایتون،بسته نرمافزاری بسازید که خود نقطه قوتی است. خود پایلونز هنگام ایجاد یک پروژه جدید، زیرساختهای لازم برای ایجاد بسته EGG را ایجاد میکند. اگر به فایلهایی که هنگام ایجاد پروژه ساخته میشوند، نگاهی بیندازیم، متوجه میشویم که پایلونز قطعا از روبیآنریلز الهام گرفته است (که البته هیچ اشکالی ندارد.)
از آنجایی که پایلونز بسیار شبیه به روبیآنریلز است، بنابراین ایجاد برنامه با آن، اگر قبلا با روبیآنریلز کار کرده باشید یا با ساختار آن آشنایی داشته باشید،ابدا دشوار نخواهد بود.
سیستم مسیردهی پایلونز تقریبا یک کپی از روبی است. اما سیستم قالببندی آن بر مبنای فناوری Mako است. ماکو درست مثل جانگو قواعدی شبیه به قواعد پایتون دارد.
توربوگیرز
توربوگیرز در واقع برای اتصال یک کلکسیون از ابزارهای توسعه وب بهوجود آمده است و تقریبا مثل پایلونز عمل میکند. یکی از نکات جالب این است که توربوگیرز 2 قرار است روی فناوری دیگری بهنام پایلونز بنشیند! جامعه توربوگیرز قول داده است که در سطح بالاتر و مفیدتری کار کنند و این همان ایده فرابستر است.
راهنمای رسمی این بستر، یک ویکی 20دقیقهای است که میتوانید هم به صورت تصویری و هم به صورت نوشتاری آن را مطالعه کنید. توربوگیرز هم همانند پایلونز، فایلهای لازم برای ایجاد بسته EGG را میسازد. اما برخلاف آن، هدف اصلی راهنمای آن، استفاده از دیتابیس است.
اما یکی از مشکلات توربوگیرز، اتکای آن به آخرین فناوریهاست و بهعنوان مثال،باید حتما نسخه 1/10/0 SQLObject روی سیستم نصب باشد،در صورتی که خود سیستم، نسخه 1/9/0 را که پایدار است، توصیه میکند.
مطالعه بیشتر
بهعلاوه مستندسازیهای آنلاین هر یک از بسترهای توسعه کد پایتون، کتابهای زیادی هم بهرشته تحریر در آمدهاند. ضمن آنکه میتوانید پس از شروع به یادگیری یکی از این بسترها، از فرومها و جوامعی که در آنها فعالیت میکنند، سوالات زیادی بپرسید و مهارت لازم را کسب کنید.
برنامهنویسان پایتون که گمان میکنند تنها گزینه برای انتخاب، روبیآنریلز است،بهتر است با مطالعه این مطلب نظر خود را عوض کنند.
پایتون فضای خوبی برای توسعه وب در اختیار برنامهنویس میگذارد و صد البته که فقط برنامهنویسان پایتون این بسترها را دنبال نخواهند کرد. هر یک از این سه بستری که گفتیم، جای پای خود را در فضای توسعه وب محکم کردهاند و واقعا در هنگام شروع پروژه، انتخاب یکی از این سه دشوار بهنظر میرسد.
منابع
http://www.turbogears.org
http://djangoproject.com
http://pylonshq.com
http://www.makotemplates.org
پانوشتها
RubyOnRails.1
Perl.2
Framework.3
Django.4
Pylons.5
TurboGears.6
7. EGG فرمتی است مشابه Zip که در آن میتوان اطلاعات اضافهای نسبت به پروژه قرار داد تا جهت اجرای آن توسط مفسر نیازی به نصب نباشد. در واقع، Egg برای پایتون، مشابه Jar برای جاوا است.
در تپش این هفته، ماجرای فریب و تعرض در پوشش عرفانهای دروغین و رمالی را بررسی کردیم
گزارش «جامجم» درباره دستاوردهای زبان فارسی در گفتوگو با برخی از چهرههای ادب معاصر
معاون وزیر بهداشت: