در ابتدا بهتر است به معرفی برنامه نویسی سمت کاربر و سمت سرور بپردازیم؛ چرا که برنامه نویسی برای طراحی سایت به طور کلی در دو دسته تقسیم بندی می شود.
- برنامه نویسی سمت سرور (Server Side Programming)
- برنامه نویسی سمت کاربر (Client Side Programming)
سرور Server
سرور در واقع مسئول ارائه صفحات وب براساس نیاز و خواسته مشتری در اینترنت می باشد.که این کار می تواند هم به صورت استاتیک (ثابت) و هم به صورت داینامیک (پویا) انجام شود.
کاربر Client
بخش کاربر قسمتی است که صفحات را از سرور درخواست می کند و آن را به کاربر نهایی نمایش می دهد.به طور کلی برنامه و نرم افزارهای سمت کاربر، مرورگرهای وب (Web browser )می باشند.
-برنامه نویسی سمت سرور
امروزه در مبحث برنامه نویسی تحت وب، اکثر شرکت ها و طراحان در این حوزه فعالیت می کنند.برنامه نویسی سمت سرور یک تفاوت عمده با برنامه نویسی سمت کاربر دارد و آن اینست که در برنامه نویسی سمت سرور تمرکز بیشتر بر روی کارکردهای پشت صحنه و ارتباطات سایت با بانک های اطلاعاتی و داده هاست اما برنامه نویسی سمت کاربر…
در این بین زبان های ASP.NET, Python, C#, Java در زمره این نوع برنامه نویسی می باشند و در صدر این زبان ها، زبان قدرتمند PHP می باشد.
-برنامه نویسی سمت کاربر
در این بخش بیشتر، وب دیزاینرها (طراحان صفحات) روی این حوزه تسلط دارند، یعنی تقریبا برخلاف برنامه نویسی سمت کاربر این بخش بر روی فاکتورهای ظاهری تمرکز دارد.شناخته شده ترین این زبان ها، زبان های HTML و CSS می باشند که البته در ادامه مقاله زبان های بیشتری را مورد بررسی قرار می دهیم.اگر بخواهیم به طور ساده بیان کنیم ساختار و سازمان دهی کلی صفحات سایت با HTML و جزئیات آن مانند نوع نوشته، فونت، رنگ ها و از این دست صفات توسطCSS مشخص می شود؛ به عبارتی HTML بنا و پی صفحه سایت را می ریزد و سپس CSS بر روی آن سوار شده و جزئیات بیشتری را تعیین می کند.
مورد دیگری که می توانیم به آن اشاره کنیم زبان JAVA Script می باشد.عملکردهایی مانند عکس العمل به فشار کلید یا کنترل حرکت ماوس و کارایی های تعاملی وبسایت از Java Script استفاده می شود.این زبان تنها توسط مرورگر اجرا می شود.
مکانیزم سمت سرور و سمت کاربر:
- کاربر در ابتدا مرورگر خود را باز می کند.
- سپس شروع به جستجو در موتورهای جستجو می کند یا آدرس سایتی را وارد می کند. برای مثالArvinKaren.Com را در مرورگر خود وارد می کند.
- بخش کاربری (Client) این درخواست را به منظور دسترسی کاربران به صفحات سایت، به سرور تحویل می دهد.
- سرور درخواست بخش کلاینت را تایید می کند و پاسخ را به همان بخش کاربری برمی گرداند.
- کلاینت هم منبع یا همان سورس صفحه را دریافت و ترجمه می کند.
استفاده ها و عملکردهای سمت سرور
- ورودی کاربر را پردازش می کند.
- نمایش صفحات درخواست شده
- ساختار برنامه های وب
- تعامل با سرورها و فضاهای ذخیره سازی (Storages)
- تعامل با پایگاه های داده
- رمزگذاری داده ها به HTML
- انجام عملیات هایی در پایگاه داده مانند پاک کردن، پاکسازی.
زبان های برنامه نویسی سمت سرور
- PHP
- ASP.NET
- C++
- Java و JSP
- Python
- Ruby و …
استفاده و عملکردهای سمت کاربر
- ایجاد صفحات وب تعاملی
- پویاسازی اجزای سایت
- تعامل با ذخیره سازی و حافظه های موقت
- به عنوان یک رابط کاربری میان کاربر سایت و سرور فعالیت می کند.
- ارسال درخواست به سمت سرور
- بازیابی اطلاعات از سرور
- تعامل با ذخیره سازی های محلی
- فراهم سازی دسترسی از راه دور
زبان های برنامه نویسی سمت کاربر
- Java Script
- VBScript
- HTML (ساختار)
- CSS (طراحی)
- AJAX
- JQuery و …
حال نوبت آن است که مهمترین زبان ها را بررسی کنیم و ببینیم که کدام یک از این زبانها برای طراحی سایت بهترین انتخاب می باشند.ابتدا هم از زبان HTML و CSS شروع می کنیم که زبان های پایه توسعه وبسایت می باشند.
HTML
HTML طرح و پوسته خام یک وبسایت است.
المان های صفحه مانند عناوین، سرفصل ها، متن و پیوندها به HTML مربوط می شوند.این زبان نشانه گذاری استاندارد یکی از هسته های اصلی در اینترنت می باشد و می توان ستون فقرات تمام صفحات وب نامید.
HTML5 آخرین نسخه از HTML می باشد که منتشر شده است و یک زبان داینامیک محسوب می شود؛ این به این معنی می باشد که به وسیله آن می توان سایت های زیبا با کدنویسی کم ایجاد کرد.
CSS
CSS یک زبان است که کاربران می توانند به وسیله آن سبک و فرمت صفحات و برگه های وبسایت را مشخص کنند.اگرCSS با HTML همراه شود به برنامه نویس اجازه می دهد تا صفحاتی با فرمت و ظاهرهای مختلف را در یک سایت تعریف کند.رنگ، لایه ها و فونت ها در یک فایل مشخص نگهداری می شوند که از کد هسته صفحه وب جدا می باشد.
این دو زبان، ساختار اولیه و اطلاعات سبک را برای ساخت یک صفحه استاتیک ارائه می دهند (صفحه استاتیک صفحه ایست که برای همه بازدیدکنندگان با هر دستگاه و مرورگری به یک شکل نمایش داده خواهد داده شد).در حال حاضر بسیاری از صفحات وب به صورت پویا(داینامیک) طراحی می شوند، بسیاری از کاربران سایت، امروزه از سایت های استاتیک استقبال نمی کنند.برای اینکه صفحات پیچیده تری ایجاد کنید، باید از اسکریپت های سمت سرور و سمت کلاینت پیشرفته تری استفاده کرد.
Java Script (جاوا اسکریپت)
جاوا اسکریپت زبان برنامه نویسی است که انیمیشن، بازی ها، برنامه ها، تعاملات و دیگر موارد تعاملی را برای سایت به ارمغان خواهد آورد و سایت را زنده تر جلوه خواهد داد.بعد از HTML و CSS ، جاوا اسکریپت بیشترین استفاده را در بین اسکریپت های سمت کاربر دارد.
برخی از نرم افزارهای جاوا اسکریپت حتی می توانند بدون ارتباط با وب سرور اجرا شوند، این به این معنی است که این کدها و سایت هایی که از این زبان استفاده می کنند، توانایی کار کردن بدون حتی اتصال به اینترنت را دارند.
PHP
چیزی بالغ بر ۷۵ درصد وب سرورها از PHP استفاده می کنند.پی اچ پی یک زبان برنامه نویسی همه جانبه برای سرور می باشد.عمده اهمیت و مزیت PHP متن باز بودن یا اصطلاحا Open Source بودن آن می باشد؛ که همچنین این زبان برنامه نویسی در سطح اینترنت جامعه بزرگی برای پشتیبانی و پاسخ به سوالات و اشکالات را دارا می باشد.PHP با سیستم عامل های مختلف سازگار می باشد.شرکت طراحی سایت آروین کارن از این زبان توانا جهت طراحی وبسایت های حرفه ای و قدرتمند استفاده می کند.
این زبان گسترده در سال ۲۰۰۴ متولد شد و درحال حاضر بالای ۲۰۰ میلیون وبسایت در سطح دنیا توسط PHP طراحی و ساخته شده اند.وبسایت هایی همانند FaceBook و WordPress از این پلتفرم استفاده می کنند.PHP یک زبان اسکریپتی است که معمولا توسط یک تفسیرگر، ترجمه و تفسیر می گردد.به همین علت، این زبان برای برنامه نویسی سمت سرور مناسب است، چرا که کارها و وظایف سرور که بارها و بارها انجام می شود را به راحتی پوشش می دهد و آنها را انجام می دهد.
چند نکته دیگر در مورد این زبان در ادامه بیان می کنیم:
- PHP همانطور که گفتیم یک زبان متن باز است و یک زبان نمونه سازی سریع محسوب می شود.
- این زبان همانطور که بر روی سیستم عامل ویندوز سازگار است، بر روی سیستم عامل یونیکس هم سازگاری دارد.
- صنایعی که اغلب از PHP استفاده می کنند بیشتر در کسب و کارهای استارت آپی، صنایع تبلیغاتی، سازمان های کوچک نرم افزاری، و همچنین آژانس ها و شرکت های چند رسانه ای هستند.
- زبان PHP را می توان به طور مستقیم در HTML جایگذاری و ترکیب کرد.
Java جاوا
جاوا زبان برنامه نویسی سمت سروری است که برای وبسایت های با مقیاس بزرگ که ترافیک بالایی دارند استفاده می شود.وب سایت های معتبری همچون آمازونAmazon و فروشگاه اپلApple App Store فریم ورک هایی برپایه جاوا دارند.
یکی از دلایل محبوبیت نزد سایت های با ترافیک بالا و استفاده آنها از این زبان برنامه نویسی اینست که این زبان در آزمایش های اولیه از نظر سرعت از زبانهای دیگر سریع تر می باشد.این ویژگی باعث می شود تا نرم افزارهای کاربردی که بر روی سرور قرار دارند برای سایت های با مقیاس بزرگ سریع تر اجرا می شود.
Python
پایتون یک زبان برنامه نویسی سطح بالا و قدرتمند که تاکید خود را بر روی قابل خواندن بودن کدها گذاشته است.این برای توسعه دهندگان وب به این معنی است که آنها با خطوط کمتری از کدها نسبت به سایر زبان های محبوب سروکار دارند.
پایتون این کار را از طریق یک کتابخانه بزرگ استاندارد انجام می دهد که این کتابخانه کدهای واقعی را کوتاه و ساده نگه می دارد.این کتابخانه فایلی است که کدهای عملگرای از پیش نوشته شده را شامل می شود، که توسط افراد جامعه برای تکامل پایتون ارائه شده است و می توان آن ها را دانلود کرد و زمانی که به آن ها نیاز است از این کتابخانه ها استفاده کرد.مانند جاوا، پایتون هم برای وب سرورهایی که حجم بالای ترافیک دارند طراحی می شود.Yahoo Maps یک نمونه از سایت هایی است که از پایتون استفاده می کند.
Ruby
Ruby هم از نظری شبیه به پایتون است، از این جهت که این زبان هم برای تاکید بر کوتاهی، سادگی،انعطاف پذیری، سازگاری و مختصر بودن برنامه نویسی به وجود آمد.
Ruby در زبان یا نحوه دستورزبان آن متفاوت است.در پایتون فقط یک راه درست برای نوشتن برنامه وجود دارد که بسیار سریع و کارآمد می باشد.اما در Ruby راه های مختلفی برای اهداف و کارهای یکسان وجود دارد که به یک نتیجه ختم می شوند و برخی از آن ها می توانند از بقیه سریع تر باشند.
Ruby on Rails که نام کامل این زبان است یک فریم ورک بسیار رایج و متن باز است که به توسعه دهندگان وب این امکان را می دهد تا سایت هایی پویا، پرسرعت و کارآمد ایجاد کنند.این زبان هم مانند جاوا اغلب اوقات برای سرورهای وبی که حجم ترافیک زیادی دارند کاربرد دارد.توئیتر یکی از سایت هایی است که از Ruby بهره می برد.
C++
این زبان در سال ۱۹۷۹ توسط Bjarne Stroustrup گسترش داده شد و پس از مدتی تکمیل گشت و در سال ۱۹۸۳ تغییر نام داد.از آنجا که C++ یک زبان شئ گرا است، از ۴اصول شئ گرایی شامل پلی مورفیسم(چند ریختی)، کپسوله سازی، وراثت و پنهان کردن اطلاعات پیروی می کند.
C++ از خیلی جهات شبیه به زبان C می باشد، یعنی در واقع شکل تکامل یافته C است.این زبان جزئیات تکنیکی زیادی دارد.برای یادگیری زبان C نباید در جزئیات آن غرق شد چرا که تعداد این جزئیات بسیار زیاد است و می تواند گیج کننده و ملال آور باشد و توصیه می شود بیشتر به مفاهیم زبان C++ توجه شود.
C#
زبان پرکاربرد بعدی زبان محبوب C# می باشد.سی شارپ زبان برنامه نویسی چند الگویی می باشد.این زبان شامل انواع الگوهای ضروری، توابع، برنامه نویسی شئ گرا و جزء گرا منظم است.
زبان C# زبانی چند منظوره است که برای نوشتن نرم افزارهایی با پلتفرم مایکروسافت و ویندوز به کار می رود.
jQuery
خالق زبان jQuery یکی از توسعه دهندگان ابزارهای جاوا اسکریپت در مرورگر فایرفاکس است که جان رسیگ (John Resig ) نام دارد.این زبان در سال ۲۰۰۶ متولد شد.
زبان جی کوئری یکی از محبوب ترین فریم ورک های جاوا اسکریپت می باشد که حجم کمی هم دارد و در سال های اخیر طرفداران زیادی در برنامه نویسی سمت کاربر پیدا کرده است.
زبان جی کوئری هم مانند بسیاری از زبان های دیگر رایگان می باشد.این زبان برای کنترل اجزای مختلف صفحات وب، توابع و افزونه و پلاگین های کاربردی و فراوانی را دارد.
ASP.NET
این کلمه ایجاز شده عبارت Active Server Page به معنی صفحه فعال تحت سرور می باشد که برای اولین بار در سال ۲۰۰۲ و تحت فریم ورک .NET توسط مایکروسافت معرفی شد.این زبان برای ساخت صفحات سایت و برنامه نویسی سمت سرور پا به عرصه گذاشت و توانست به یکی از قدرتمندترین زبان ها برای تولید اپلیکیشن های تحت وب تبدیل شود.اپلیکیشن ها و صفحاتی که با این زبان ایجاد می شوند در سرورهای ویندوز قابل اجرا می باشند.
Ajax
Ajax مخفف عبارت “Asynchronous JavaScript and XML ” می باشد و به معنی “ترکیب نامتقارن XML و جاوا اسکریپت” می باشد و تلفظ آن به صورت “ای جکس” خوانده می شود.ذات صفحات وب و پروتوکول HTTP به این صورت است که زمانی که ما در حال وب گردی و بازکردن صفحات هستیم،به ازای هرکاری که انجام می دهیم و هر فعل و انفعال میان ما و وبسایت، کل صفحه از ابتدا بارگزاری می شود، اما ای جکس این اتفاق را با جهشی چشم گیر رو به رو کرده است.این تغییر از این قرار است که به وسیله ای جکس زمانی که در سایت کنش و واکنشی انجام می شود، از ابتدا کل صفحه بارگزاری نشده و فقط قسمتی که قرار است اطلاعات جدیدی را برای ما نمایش دهد تغییر می کند و باقی کارها در پشت صحنه سایت انجام می شود.
برای مثال زمانی که شما در سایتی روی پخش فیلم کلیک می کنید، کل سایت از ابتدا سفید شده و دوباره بارگزاری می شود، اما با Ajax فقط بخشی که مربوط به پخش فیلم است تغییر می کند و دوباره بارگزاری میشود که بدیهی است سرعت وبسایت به شدت افزایش پیدا می کند.
در واقع ای جکس را نمی توان یک زبان برنامه نویسی نامید بلکه یک متد و ترکیبی از جاوا اسکریپت و XML می باشد.برای مثال سرویس Google Map از این فناوری بهره گرفته است.
بهترین زبان را برای طراحی و توسعه وب انتخاب کنیم
این موارد فقط گوشه کوچکی بود از زبان های توسعه وب که امروزه در صنایع به کار گرفته می شود؛ اما طبیعی است که صاحبان وبسایت ها نمی توانند از همه آنها استفاده کنند.
برای وبسایت خود باید یک هدف روشن و واضح مشخص کنید؛ در نهایت ویژگی ها و کارکردهایی که برای سایت نیاز دارید به شما برای انتخاب زبان مناسب، راه را نشان می دهند.عواملی مانند نوع پایگاه داده ای که استفاده می کنید، پلتفرم سرور، نرم افزار سرور، بودجه و عملکرد سمت کاربر، همه و همه برای انتخاب درست زبان بسیار مهم هستند و در هنگام انتخاب باید مورد توجه قرار بگیرند.پس نمی توان گفت که کدام زبان برای طراحی سایت از همه مناسب تر است و باید به خواسته ها و داشته هایمان توجه داشته باشیم.اما در حال حاظر زبان PHP رایج ترین زبان در بین طراحان و توسعه دهندگان وب می باشد.
- ۹۶/۰۹/۲۶