برنامه نویسی وب سایت داینامیک و ایستاتیک

توسعه وب سایت دارای دو رویکرد کلی تحت عناوین طراحی وب و برنامه نویسی وب است که هریک دارای زبان های متعددی برای ساخت یک وب می باشد
اغلب طراحان صفحات اینترنتی بر روی برنامه نویسی سمت کاربر تمرکز دارند:
Html: این زبان در سال ۱۹۸۹۹ توسط تیم برنزلی خالق وب برای انتشار داده ها معرفی شد.ساختار و پیکره بندی یک صفحه اینترنتی برپایه عناصر html است که این عناصر در نزد توسعه دهندگان وب همان تگ ها هستند شکل کلی یک تگ html بدین گونه است. کلیه اطلاعاتی که قرار است برای کاربر نمایش داده شود باید در بین این تگ ها قرار گیرد.در واقع می توان گفت html یک زبان برنامه نویسی نیست بلکه زبانی برای نشانه گذاری عناصر صفحات است.در حال حاضر آخرین نسخه این زبان نسل پنجم آن است که در سال ۲۰۰۸ معرفی شد ولی هنوز به تایید کنسرسیوم جهانی وب نرسیده و توسعه آن هم هنوز نهایی نشده است.
بسیاری از کارشناسان وب معتقدند کدنویسی درhtml5 شکل جدیدتری از خود را نمایان خواهد کرد به گونه ای که تمام عناصر صفحه ها معنا دارتر شده و رفته رفته  تبدیل  به زبانی برای تولید اپلیکشین ها خواهد شد.اهمیت دستیابی به html5 آن قدر زیاد بود که استیو جابز رئیس شرکت اپل در سال ۲۰۱۰ طی نامه ای سرگشاده خبر از ظهور  html5 و نابودی فلش داد.

زبان های برنامه نویسی
Css : شیوه نامه آبشاری توسط تیمی از کنسرسیوم جهانی وب با رهبری دوتن از افراد با نام های برت باس و هیکن لای آغاز به کار کرد به طوریکه اولین نسخه ان در سال ۱۹۶۰ منتشر شد و قادر بود تغییراتی رابرروی فونت های صفحات و رنگ آن ها و همچنین رنگ پس زمینه ایجاد کند در واقع باید گفت این شیوه نامه آبشاری که درسال ۱۹۸۰باهدف منسجم کردن اطلاعات اسناد وب توسعه داده شد . زبانی برای شکل دادن و آرایش عناصر مختلف صفحات وب است.
سپس نسخه دوم cssدر سال ۱۹۹۸ منتشر شد و درحال حاضر آخرین نسخه آن همچنان درحال توسعه است.htmlوcss را می توان دو یار جدانشدنی ازهم نامید زیرا مکمل یکدیگر هستند به طور معمول هر وب سایتی حداقل دارای یک فایل شیوه نامه استایل است .
Javascript : زبان جاوا اسکریپت توسط برند ایچ در پروژه مرورگر نت اسکیپ توسعه پیدا کرد و برای اولین بار در نسخه بتای نت اسکیپ ۲ عرضه شد. زبان جاوا اسکریپ در ابتدا تحت عنوان لایو اسکریپ معرفی شد و بعدها به جاوا اسکریپ تغییر نام یافت.پویایی صفحات یا به نوعی رویدادهایی  که در صفحات بوجود می آیند برپایه این زبان است. جاوااسکریپت از خانواده زبان های اسکریپتی است و قادر است در بین عناصر صفحه قرار بگیرد و عناصر مورد نظر را تحت کنترل خود در آورد تمام مرورگرها وب امکان فعال و غیر فعال کردن زبان جاوا اسکریپ ایجاد شود در اغلب وبگاه ها برای اعتبار سنجی اولیه فرم ها ازاین زبان کمک می گیرند.
Jquery: فریمورک جی کوئری یکی از فریم ورک های محبوب پرطرفدار و کم حجم جاوا اسکریپ در مرورگر فایرفاکس است که درسال ۲۰۰۶ این زبان را معرفی کرد.
زبان جی کوئری کاملا رایگان است و تحت دو پروانه gpl و mtl توسعه می یابد جی کوئری برای کنترل عناصر صفحات وب دارای توابع بسیار زیاد و همچنین پلاگین های متعدد و پرکاربرد است .

کد های برنامه نویسی سایت

برنامه نویسی سمت سرور

پیش از بحث درباره برنامه نویسی سمت سرور ابتدا باید با سه مفاهیم زیر آشنا شویم :
هاست : به فضایی اطلاق می شود که تمام فایل های وبگاه ما بر روی آن قرار دارد.
سرور: کامپیوتری است که کاربران در صورت اتصال به اینترنت می توانند به اطلاعات روی آن دسترسی پیدا کنند.
وب سرور: یک نرم افزار کامپیوتری است که درخواست های کاربران را از طریق پروتکل هایی نظیر httpp را که بوسیله مرورگر ارسال می شود را دریافت می کند صفحه درخواستی را یافت می کند و در نهایت صفحه وب یافته شده را ازطریق شبکه به مرورگر درخواست کننده می فرستد.
اغلب صفحات اینترنتی در دوران کودکی وب به شکل استاتیک بودند و برای تغییری کوچک در آنها نیاز به مشقت فراوانی بود رفته رفته با حضور وب ۲ و گسترده شدن جامعه کاربران محتوا در وب صفحات اینترنتی بیش از پیش احتیاج به پویایی داشت و دیگر آن شیوه های سنتی پاسخ گوی نیازهای گردانندگان وبگاه نبود.
اگر بخواهیم با بیانی ساده کارکرد زبان های سمت سرور را تشریح کنیم باید بگوییم وبگاه هایی که صفحاتی پویا دارند و دائما در حال تغییر و تولید محتوا در صفحات هستند نیاز دارند این درخواست های خود را در قالب یک زبان به سرور انتقال دهند به کمک این زبان ها سیستم های مدیریت محتوا به عنوان یک نرم افزار تحت وب تولید می شوند تا بتوانند این درخواست ها را برای گردانندگان وبگاه ها مدیریت کنند.

برنامه نویسی وب سایت
برنامه نویسی سمت سرور:
Asp.net:این کلمه مخفف active sever page یا صفحات فعال تحت سرور است که نسخه اولیه این زبان تحت فریم ورک دات نت در سال ۲۰۰۲ توسط کمپانی  مایکرو سافت برای تولید صفحات پویا معرفی شد و در حال حاضر به یکی از پرقدرترین زبان ها برای تولید اپلیکشین های وب مبدل شده است. اپلیکیشن های نوشته شده  بااین زبان در سرور های ویندوز قابل اجرا است و معمولا بانک اطلاعاتی آنها همان sql server معروف است. آخرین نگارش asp.net نسخه چهارم این زبان است که در آن توجه زیادی برروی معماری سه لایه یاmvc داشته است.
Php:واژه php برگرفته ازhypertext preprocessor می باشد که یک زبان منبع باز و قابل توسعه می باشد و درسال ۱۹۹۴ بوسیله راموس لردوف کانادایی به وجود آمد . برنامه های نوشته شده بااین اسکریپتی تحت لینوکس اجرا می شود ناگفته نماند که برنامه های نوشته شده بااین زبان قابلیت اجرا تحت ویندوز را هم دارا هستند نام بانک اطلاعاتی این زبان mysql است و آخرین نگارش این زبان نسخه پنجم آن است که نسبت به نسخه های پیشین خود توجه بیشتری روی معماری سه لایه داشته است.
Ruby:طراحی و توسعه زبان رابی به اواسط دهه ۱۹۹۰ بازمی گردد. منتشر کننده این زبان فردی به نام یوکیهیرو ماتز ماتسوموتو بود . نسخه های متعددی ازاین زبان طی سال های متوالی توسعه یافت و نسخه پایدار آن در سال ۲۰۰۶ منتشر شد از محبوب ترین فریم ورک هایی که درچندسال اخیر برپایه این زبان توسعه یافته می توان ruby on rails را نام برد که باشعار کشف بن بست شکنانه برای کاهش موانع ورود به برنامه نویسی شهرت دارد . الگوی طراحی برنامه های این فریم وروک برپایه mvcاست.
Java: درابتدا باید توجه داشت که زبان جاوا و جاوا اسکریپ دو زبان کاملا مجزا ازهم هستند جاوا یکی از محبوب ترین زبان ها تا سال ۲۰۱۲بود . این زبان تحت لیسانس شرکت سان درسال ۱۹۹۵ خلق شد جاوا قابلیت پیاده سازی برروی تمام پلتفرم های استاندارد را دارد.
تکنولوژی جاوا را می توان به سه گروه تقسیم کرد:
جاوا برای موبایل اپلیکیشن ها: این تکنولوژی بیشتر بانام j2me یا java 2mobility شناخته شده است و بیشتر برای مقابله با محدودیت های ساخت برنامه های کاربردی در دستگاه های کوچک مورد استفاده قرار می گیرد و همچنین دارای کتابخانه های بسیاری برای توسعه اپلیکیشن است مانند اپلیکیشن های تفلن همراه.
نگارش استاندارد جاوا : عنوانی که برای این تکنولوژی رواج یافته j2se است و مخفف عبارت java2platform standard edition می باشد به کمک این تکنولوژی  در توسعه برنامه های بسیار بزرگ و سازمانی مورد استفاده قرار می گیرد برنامه نویسان این نسخه از جاوا قادر خواهند بود برنامه های عظیمی برای شبکه ها و حتی سرور ها تولید کنند.

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

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

مقایسه و انتخاب دو زبان و تکنولوژی خاص یعنی PHP و ASP.NET  بین کاربران توسعه دهنده نرم افزار بسیار شایع است و با طی شدن زمان تقریبا هر گروه بیشتر براساس سیاست شرکت هایی که در آن کار میکنند یکی از این تکنولوژی ها را به عنوان ابزار اصلی توسعه نرم افزار و سایتها انتخاب کرده است.
زبان PHP با هدف نوشتن اسکریپتهای وب نوشته شد. در واقع هدف از پیچیدگیهای Perl و نوشتن CGI با زبانهایی مثل C بود. این زبان بندرت پیشرفت کرد و بخصوص Open Source بودن آن باعث شد تسریع این حرکت شد. در مرحله اول تعداد دستورات و توابع این زبان گسترش پیدا کرد نیز براحتی کارهای نسبت پیچیده ای (مثل کار با سوکتها یا تصاویر) با توابع این زبان قابل اجراست.همچنین از لحاظ معماری این زبان با پشتیبانی از شی گرایی پیشرفت مهم دیگری داشته است. پی اچ پی به طور کلی یکی از زبان های معمول برای نوشتن اسکریپت های اجرایی در محیط یونیکس ، لینوکس (هرچند که در ویندوز نیز به خوبی اجرا می شود) و کار با نرم افزار مدیریت بانک اطلاعات MySQL است. ASP.NET  نیز نسل جدیدی از ASP کلاسیک در بستر دات نت است و از این جهت پیشرفت بسیار زیادی نسبت به ASP کلاسیک شاهد هستیم.با ASP.NET و با وجود کتابخانه غنی توابع و کلاسهای دات نت تقریبا هر کاری در وب امکان پذیر است. اگر چه مایکروسافت در معماری دات نت هدف اجرا در پلاتفرمها و سیستم عاملهای مختلف را مد نظر داشته است اما حداقل تاکنون میتوان دات نت را یک ابزار توسعه در سیستم عامل ویندوز دانست. البته پروژه هایی برای شبیه سازی و انتقال دات نت به محیط لینوکس نیز وجود دارد که مهمترین آنها پروژه Mono است که پیشرفت قابل توجهی داشته است.انتظار می رود در آینده نزدیک ASP.NET در هر سیستم عامل و پلاتفرمی قابل اجرا باشد.

برنامه نویسی asp.net
پی اچ پی با هدف اولیه سادگی برای استفاده و یادگیری نوشته شده است و تاکنون نیز هدف را منظور کرده است بنابراین میتوان به سادگی گفت که یادگیری و استفاده از PHP ساده تر از ASP.NET حتی با وجود زبانی با سینتکس ساده VB.NET است.استفاده از ASP.NET نیازمند آشنایی با مفهوم اولیه شی گرایی و همچنین پیچیدگیهای خاص دات نت (مثل رویدادهای اجرای صفحات به جای اجرای خطی) است. در واقع یادگیری و استفاده از ASP کلاسیک ساده تر از ASP.NET و قابل قیاس با یادگیری PHP است.
طراحان وب سایت به دلیل سادگی استفاده و یادگیری PHP آنرا فرا میگیرند و برنامه نویسان حرفه ای و مهندسان نرم افزار هم علاقه بیشتر به دات نت و JAVA دارند.همچنین یک نکته قابل توجه در PHP وجود هزاران خط کد و اسکریپت آماده به زبان PHP است که تقریبا در هر زمینه ای وجود دارند (از کارهای ساده با بانک اطلاعاتی تا کار با تصاویر،سوکتها، وب سرویسها، XML و …)  البته کم کم در مورد دات نت نیز این قضیه در حال اتفاق است و سایتهایی که کدهای نمونه یا نرم افزارهای آماده با سورس ارائه میکنند در حال افزایش هستند.

پروژه های انجام شده