کدام زبان برنامه نویسی برای طرحی سایت مناسب است؟

رتبه این آیتم
رتبه 4 در 1 رای از 1 تا 5

این روزها، بازار زبان های سمت سرور بسیار شلوغه. Perl, ASP,JSP, Cold Fusion و خیلیای دیگه. در واقع انتخاب زیاد است. یک تازه وارد از کجا باید بدونه که چه چیزی رو یاد بگیره و چه چیزی رو استفاده کنه؟ انتخاب پلت فرم و برنامه ی تحت وب پایگاه داده شبیه به انتخاب ویرایشگر HTML نیست. شما نمی تونید ده تا از این برنامه ها رو دانلود کرده و در یک بعدظهر که بیکارید شروع به تست آنها کنید. بعضی از این زبان ها، برای یک توسعه دهنده ی تازه کار، چندین ماه طول میکشه تا از آنها سر در بیاره و بتونه استفاده کنه. مگر اینکه شما یک سال مرخصی بگیرید و تعداد زیادی کتاب تهیه کنید و شروع به مطالعه کنید، البته باز هم به راهنمایی احتیاج پیدا می کنید!

در این مقاله، من سعی می کنم گزینه های مهم در دنیای اینترنت رو تا حدی بررسی کنم. برای هر کدوم، نکات مثبت، نکات منفی، هزینه و انعطاف آن را توضیح می دهم. همچنین توسعه دهنده ی هرکدوم از این تکنولوژی ها را توضیح می دهم. خیلی کوتاه، به نابغه و مبتکر پشت این برنامه ها نیز، اشاره می کنم. اگر هر کدوم از این توضیحات با شرایط شما شباهت داشت، می تونه یک نشانه ی خوبی باشه که شما تکنولوژی مناسب خودتون رو پیدا کردید.

امروزه انتخاب زبان سمت سرور یکی از بحث های داغ در اینترنت است. درست مثل ویرایشگرHTML، هر کسی سلیقه ی خاص خودش رو برای انتخاب زبان برنامه نویسی داره، و خب صد البته دلایلی هم واسه انتخابش داره. با این حال، ماهیت توسعه ی سمت سرور_اینجا بحث تطابق با مرورگر مورد بحث نیست_ این امکان رو ایجاد می کنه که دو تکنولوژی متفاوت با روش های متفاوت، می تونن یک مشکل یکسان رو حل کنند و به موفقیت یکسانی هم برسند! به همین دلیل، این مقاله در مورد بهترین انتخاب در زبان های برنامه نویسی نیست، بلکه می خواهم بگم که کدوم انتخاب برای شما بهترین هست. حتی اگر بعد از خواندن این مقاله، موفق به تصمیم گیری نشدید و یا حتی متوجه شدید که انتخاب اشتباهی داشته اید، حداقل در مورد موقعیت خودتون مقداری ایده و دانش به دست آوردید.

CGI/Perl

Perl قبل از شبکه ی جهانی وب World Wide Web وجود داشت. نسخه 1 آن در دسامبر 1987 منتشر شد، یعنی ده سال قبلتر از باقی زبانها. اگر شما تازه کار باشید، تعجب کردید که چطور ممکنه که یک زبان توسعه دهنده ی وب سرور ساید، قبل از خود وب وجود داشته باشه. باید بدونید که پرل به عنوان زبان توسعه ی وب اختراع نشده بود. در حقیقت پرل، یک زبان برنامه نویسی چندمنظوره ست که برای تغییر در متن به کار میرود. پرل برای اعمال تغییرات در متن با منابع متفاوت و ترکیب آنها باهم عالی ست.

با گذشت 15 سال از زمان ایجاد آن، پرل به وسیله ی ماژول ها گسترش پیدا کرده است. اهداف مختلفی پشت این گسترش و تطابق وجود داشته. یکی از این اهداف، تولید محتوای داینامیک از طریق Common Gateway interface(CGI) هست که به وسیله ی اکثر وب سرورها پشتیبانی می شود. در صورت نیاز، برنامه های CGI توانایی نوشته شدن به زبان های C/C++ را دارند. پرل برای کنترل متن راحت است. امروزه پرل با ماژول CGI.pm آمده. اکثر جزئیات ابتدایی مثل ارسال فرم HTML در کنترل، برای شما کنترل می شود. به عنوان آخرین مزیت، شبکه ی بایگانی جامع پرل، یک منبع متمرکز برای اضافه کردن ماژول، نمونه های برنامه نویسی، و در بعضی موارد گسترش برنامه های وب، آماده کرده.

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

مزایا:

یک زبان بالغ با قدمتی بالای ده سال، که در مقایسه با دیگر زبان های سمت سرور، شما کمتر دچار اشکال می شوید.

رایگان است.

اکثر وب هاست های خوب، زبان پرل رو پشتیبانی می کنند، بنابراین نیاز نیست که هزینه ی اضافی بابت هاست پرداخت کنید.

شبکه وسیعی از توسعه دهندگان اختصاص داده شده به پرل، در سراسر جهان در اختیار شما هستند. آنها جوابگوی سوال های شما در گروه های بحث پرل و لیست های پستی خواهند بود. همچنین آرشیو CPAN مثال های زیادی برای کار با پرل دارد.

نقاط ضعف:

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

زبان پرل برای آسان ترین چیزها نیز 5 روش متفاوت داره، و یادگیری اون رو مشکل میکنه. این باعث بدنامی پرل شده. همچنین توسعه دهندگان پرل به این معروف شده اند که به دنبال کوتاه ترین راه برای برنامه نوشتن هستن. شگفت زده می شوید وقتی می بینید که یک برنامه ی نمونه رو فقط تو سه خط نوشتن.

پرل برای پلت فرم Unix بهینه سازی شده، بنابراین اگر انتظار دارید که بر روی سرور ویندوز کار کنه، بهتره انتخاب دیگری داشته باشید.

پرل نرم افزار منبع باز است، به این معنی ست که پشتیبان رسمی برای اون وجود نداره. با وجود جامعه ی بزرگی که برای حمایت از شما در دسترس هست، اما اگر مشکلی پیش بیاد، شما فقط می تونید روی خودتون حساب کنید.

توسعه دهنده:

اکثر توسعه دهندگان وب که هنوز با پرل کار می کنند، تمایل به یونیکس دارند و همچنین کاربران نیز از پرل، در قسمت های مختلف سیستم شون استفاده می کنند. پرل برای آنها وسیله ای است که می تونند فرمان "هرجایی برو، هرکاری انجام بده" رو بدهند، که خب همیشه میشه روی آن حساب کرد. اگر شما توسعه دهنده بی تجربه ای هستید و وظیفه دارید که سایتی که به زبان پرل نوشته شده رو حفظ کنید، پس به سراغ کتابهای خوب بروید و دانش خودتون رو بالا ببرید.

ASP

قبل از اینکه شروع کنیم، اجازه بدهید که بگم Microsoft Active Server Pages(ASP) یک زبان نیست. ASP یک چارچوبی ست که اجازه میدهد شما یکی از زبانهای برنامه نویسی رو با هم ترکیب کنید ( VBScript و JavaScript محبوبترین انتخاب ها هستند). این کار رو هم با یک مجموعه ی قابل ارتقا از اجزای نرم افزار انجام میدهد. قدرت ASP در توانایی ترکیب زبان های برنامه نویسی ساده مثل VBScript و JavaScript، است.

ASP برای همه ی اهداف کاربردی، میتونه مثل یک زبان عمل کنه. خیلی راحت می تونید بین VBScript و JavaScript انتخاب داشته باشید که از کدوم استفاده کنید. از آنجایی که اکثر کدهای نمونه در VBScript نوشته شده است، انتخاب شما از قبل گرفته شده است. بنابراین، ASP به عنوان زبانی کاربرد دارد که سایت های داینامیکی که به زبان VBScript نوشته شده است را گسترش دهد. یادگیری ASP بسیار آسونه، و برای گسترش وب سرور ساید قدرتمنده.

ASP با سیستم عامل ویندوز و وب سرور internet information services لینک داده شده. اگر در حال راه اندازی وب سرور خودتون هستید، شما باید بر روی کپی سرور 2000 ویندوز سرمایه گذاری کنید. و آگاه باشید اگر برای وب هاستینگ هزینه ای می پردازید، در اصل برای سرور مبتنی بر ویندوز هزینه پرداخت می کنید. نسخه هایی از ASPوجود دارد که بر روی سرور Apache تحت نظر لینوکس، کار میکنه.

اگر تمام چیزی که برای برنامه تون احتیاج دارید، اتصال پایگاه داده، موتور جستجو، سرویس کنترل ایمیل، و پردازش فرم های اساسی است، ASP برای شما انتخاب مناسبی ست. هر عملکرد غیر رایج دیگری، نیاز به نصب شدن بر روی سرور دارد. کمپانی های زیادی وجود دارند که اجزای مورد استفاده ی ASP برای فایل PDF، تعامل با سرورهای FTP، کنترل فایل های باینری و خیلی چیزهای دیگه را تولید می کنند. متاسفانه این عناصر هزینه بر هستند.

با همه ی اینها، ASP توسط Microsoft به خوبی پشتیبانی می شود. شبکه ی گسترش مایکروسافت یک سری مقالات تکنیکی غنی و منابع مرجع رو برای توسعه دهندگان ASP آماده کرده، و اگر مشکلی در توسعه ی خود داشتید، پرسنل پشتیبانی مایکروسافت آن را بررسی می کنند. هر زمان که به مشکلی برخوردید و نیاز داشتید که به سوالتون پاسخ داده شود، مطمئن باشید که کسی برای پاسخگویی به شما وجود دارد.

مزایا:

یادگیری اون آسونه، اگرچه باید برنامه نویسی بلد باشید.

ساخته شده برای سرور ویندوز 2000_ نیازی به نصب شدن نداره

دارا بودن پشتیبانی حرفه ای

نقاط ضعف:

رایگان نیست.( مگر اینکه از سرور ویندوز استفاده می کنید)

عملکرد خاصی که نیاز داره شما عناصری را خریداری کنید، یا خودتون آنها رو درC/C++ یا Visual Basic گسترش دهید.

اگر شما از C-style (C/C++، Java، Perl، PHP، و غیره) استفاده می کنید، ممکن است که درک VBScript کمی سخت باشه.

توسعه دهنده:

اگر شما قبلا با VBScript یاVisual Basic کار کرده باشید، این پلت فرم مناسب شما است. همچنین ASP برای افراد ناآشنا با برنامه نویسی نیز مناسب است. (البته اگر شما کلا از برنامه نویسی متنفر هستید، Cold Fusionرا چک کنید). اگر کار با ویندوز برای شما راحته و می تونید از پس هزینه ی اون بربیاید، یا اگر شرکتی که براش کار می کنید به دنبال پشتیبانی مایکروسافت هستش، ASP بهترین انتخاب برای یادگیری ست.

Cold Fusion:

برای طراح وبی که تا به حال برنامه نویسی نکرده، انتخاب پلت فرم گسترش وب سرور ساید خیلی ترسناکه. هر طرف که نگاه می کنید با زبان های برنامه نویسی مواجه می شوید که ممکن است دچار سردرد بشید. Cold Fusionطراحی متفاوتی داره و در اصل به وسیله ی Allaire در سال 1995 منتشر شد و اخیرا به وسیله یMacromedia فروخته می شود. به جای برنامه نویسی، Cold Fusion تعدادی تگ برای یادگیری داره. بله تگ ها، درست مثل تگ های HTML

اجازه بدید یک مثال از انتشار اطلاعات ذخیره شده در پایگاه داده در وب داشته باشیم. برای اکثریت زبان های سرور ساید، شما باید یک کدی رو به صفحه وب اضافه کنید تا حالت HTML را تغییر دهید، به پایگاه داده وصل شوید، درخواست نمایش بدهید، و ...تا نتیجه بر روی صفحه وب نمایش داده شود. در Cold Fusion تمامی این کارها با دو تگ انجام می شود، تگ که خاصیت ها به query ، نام می دهند و نشان می دهد که چه اطلاعاتی از کدام پایگاه داده بازیابی می شود. و دیگری تگ که اجازه میدهد از HTML استفاده کنید.

برای یک برنامه نویس با تجربه، این تگ محور بودن ، ممکن است محدود کننده باشد، اما با وجود 300 تگ در آخرین نسخه ی آن، و توانایی اضافه کردن تگ به زبان هایی مثل C/C++ یا جاوا، Cold Fusion دیگه محدود کننده نیست. Cold Fusion 5 شامل تگ هایی ست که به صورت خودکار گراف هایی از داده های پایگاه داده تولید می کند، امکان جستجو رو در وب سایت فراهم می کند، حتی فرم های HTML با کدهای جاوااسکریپ تولید می کند.

Cold Fusion هم مثل ASP ، نیاز به هزینه مالی دارد. اما بر خلاف ASP، Cold Fusion بر اساس پلت فرم ویندوز نیست.

مزایا:

یادگیری اون خیلی آسونه- نیازی به برنامه نویسی نداره

قدرتمند و انعطاف پذیره( آخرین نسخه ی اون به خوبی پشتیبانی میشه)

پشتیبانی حرفه ای از Macromedia

Cross platform هست

نقاط ضعف:

گران بودن

بعضی از برنامه نویسان ممکن است تگ محور بودن اون رو دوست نداشته باشند.

توسعه دهنده:

طراحان وبی که با HTML راحتند اما به یک زبان سرور ساید نیاز دارند، حتما از Cold Fusion لذت می برند. چون نیازی به برنامه نویسی نیز ندارد. برای اکثر توسعه دهندگان، یادگیری Cold Fusion مثل یادگیری تعدادی تگ جدید است.

PHP

PHP طرفداران زیادی در بین برنامه نویسان دارد. چون هم نحوه ی نوشتار آشنایی داره و هم کتابخانه ش کامل هست. و خب رایگان نیز هست.

بعضی ها لقب "قاتل Perl" رو به اون دادند. برای توسعه دهندگان وب، PHP تمام کارهای Perl رو انجام میدهد، و حتی آسان تر و سریع تر از آن نیز هست. بر خلاف پرل که همیشه به CGI نیاز داره تا بتواند درخواست صفحه رو کنترل کند، PHP با وب سرور ادغام شده و کارآمد تر است.

PHP زبان فوق العاده توانایی ست، و نیازی به نصب ماژول ندارد. خودش به تنهایی از پس همه چیز بر میاد. در حقیقت تنها نقطه ضعف اون اینه که گسترش آن، کمی سخت است.

PHP رایگان بوده و cross platform و نرم افزار منبع باز نیز هست. اون با همه ی وب سرور ها ادغام می شود. بزرگترین مزیت PHPرایگان بودن آن است، چون توسعه دهندگان می تونند یک سرور لینوکس_محور، راه اندازی کنند و حتی یک ریال هم پرداخت نکنند. و خب نکته ی منفی که در این میان وجود دارد اینه که هیچ پشتیبان رسمی برای اون وجود ندارد. اگرچه PHP یک تکنولوژی جدید و پیشرفته ست، اما همچنان اشکالاتی در نسخه آخر آن نیز دیده می شود. اجازه ندهید این ایرادگیری ها جلوی یادگیری شما رو بگیرد. PHPدارای جامعه ی کاربری فعالی ست.

مزایا:

یادگیری آن آسان بوده، مخصوصا برای توسعه دهندگانی که تجربه ی C/C++، جاوا، یا پرل دارند.

اجتماع کاربری پویا و فعال؛ که شما را در یادگیری راهنمایی می کنند.

همه چیز در این زبان امکان پذیر است

رایگان است

cross- platform

نقاط ضعف:

این زبان برای برنامه نویسان مناسب بوده، ولی متاسفانه برای افرادی که به زبان برنامه نویسی آشنایی ندارند، کمی سخت است.

توسعه دهنده:

توسعه دهندگانی که محدودیت مالی دارند، و از زبان های برنامه نویسی ساده لذت می برند( مثل جاوا اسکریپت) هر طور شده PHPرو یاد می گیرند. PHP با استفاده از کدهای آسانی که داره، قدرت زیادی به شما می دهد، اما ممکن است برای برنامه های high end مناسب نباشد.

جاوا

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

جاوا به شعار "یک بار نوشته میشه، و همه جا اجرا میشه" مشهور است، و در واقع جاوا بر روی تمام سرورهای وب و سیستم عامل های بزرگ اجرا می شود. فروشنده های مختلف، plug-inهایی را تولید می کنند که وب سرورهایی مثل Apache و IIS می تونند بر روی برنامه های وب جاوا، اجرا شوند.

مزایا:

بسیار قدرتمند و مقیاس پذیر و قابل انعطاف است.

Cross-platform

اکثر پلاگین های سرور جاوا رایگان هستند.

نقاط ضعف:

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

بعضی از پلاگین های جاوا رایگان نیستند.

توسعه دهنده:

این زبان برای توسعه دهندگانی که یک زبان مافوق قدرتمند، انعطاف پذیر، و مقیاس پذیر برای برنامه های وب می خواهند، و سختی راه و زمان برای شان اهمیت ندارد، عالی ست.

خلاصه:

در این مقاله ما به مقایسه ی زبان های سرور ساید پرداختیم:

Perl: یک زبان کامل، cross-platform که فهمیدن آن سخت است.

ASP: قدرتمند، ویندور محور

Cold Fusion: قدرتمند، تگ محور بوده و برای افراد ناآشنا به برنامه نویسی مناسب است.

PHP: cross-platform، منبع باز است.

Java: نهایت قدرت و انعطاف پذیری، مناسب برای برنامه نویسان جدی

امیدوارم این مقاله کمک کافی به شما کرده باشد.


نویسنده این مقاله می باشد که از سال 1381 تا کنون در زمینه طراحی و بهینه سازی وب سایت فعالیت دارد.

شبکه اجتماعی های نویسنده اینستاگرام و لینکدین. پروفایل شرکت در گوگل پلاس

به اشتراک گذاری مطلب در

به اشتراک گذاری در فیس بوک به اشتراک گذاری در گوگل پلاس به اشتراک گذاری در توئیتر به اشتراک گذاری در لینکدین

1 نظر

  • لينک نظر سیداحمد  شیرزاد یکشنبه, 13 فروردين 1396 01:17 پست شده توسط سیداحمد شیرزاد

    میخواهم یک سایت جور کنم

يک نظر بدهيد

موارد ستاره دار الزامی هستند

info [ at ] joomir.com
تهران، سعادت آباد، سرو غربی، کوچه آریا، پلاک 4، واحد 7
22083926 - 22085386 - 22082258
طراحی سایت دارکوب | هاست دارکوب | دارکوب نام و علامت تجاری ثبت شده این مجموعه می باشد