توسعه وب
به هرگونه فعالیتی که به توسعه یک وبگاه بر روی وب جهانگستر یا یک شبکه اینترانت منجر شود، توسعه وب میگویند.
توسعه وب میتواند موارد زیر را شامل شود:
- توسعه تجارت الکترونیک
- طراحی وب
- توسعه محتوای وب
- برنامهنویسی کاربر سو/کارپرداز
- پیکرهبندی کارپرداز وب
- توسعه سمت کاربر وب
درمیان توسعهدهندگان حرفهای وب، «توسعه وب» معمولاً فقط به جنبههای غیر گرافیکی ساخت وبگاهها مانند برنامهنویسی و نشانهگذاری وب نسبت داده میشود. توسعه وب میتواند از توسعه سادهترین برگههای ایستا (به انگلیسی Static Pages) با محتوای متن ساده تا پیچیدهترین نرمافزارهای مبتنی بر وب، تجارتهای الکترونیکی یا خدمات شبکههای اجتماعی شامل شود.
برای سازمانها و تجارتهای بزرگتر، گروههای توسعه وب میتوانند شامل صدها نفر توسعهدهنده وب شوند. سازمانهای کوچکتر ممکن است تنها به یک مدیر دائمی یا قراردادی وب نیاز داشته باشند یا این وظیفه را به یک توسعهدهنده یا یک کاردان سامانههای اطلاعاتی واگذار کنند. توسعه وب میتواند تلاش و همیاری جمعی چندین گروه توسعهدهنده باشد که برای این کار انتخاب شدهاند.
توسعه وب به عنوان یک صنعت
از اواسط دهه 90 میلادی، توسعه وب به یکی از صنایع پررونق در جهان تبدیل شد. در سال 1995 میلادی تنها کمتر از 1000 شرکت توسعه وب در ایالات متحده آمریکا وجود داشتند این در حالی است که در سال 2005 میلادی این تعداد به بیش از 30000 شرکت رسید. انتظار میرود گستره صنعت توسعه وب در سال 2010، بیست درصد افزایش داشته باشد. رشد این صنعت تحت تأثیر شرکتهای بزرگی است که میخواهند محصولات و خدمات خود را به مشتریها بفروشند و تجارت خود را به وسیله وب خودکار کنند.
علاوه بر این، هزینه توسعه پایگاههای وب و میزبانی آنها در طول این دوران به شکل شگفتانگیزی کاهش یافتهاست. امروزه به جای هزینه کردن دهها هزار دلار، یک توسعه دهنده وب میتواند یک وبگاه ساده را با کمتر از 500 دلار توسعه دهد که میزان این مبلغ بستگی به پیچیدگی و مقدار محتوای آن دارد.
سکوها و ابزارهای توسعه وب
سکوها (Platforms) و ابزارهای توسعه وب بسیار پراهمیت هستند. برای انتشار رایگان و کمک به توسعه وب، سامانههای ترکیبی زیادی به وجود آمدهاند. یکی از محبوبترین سامانههای ترکیبی برای توسعه وب LAMP است که مخفف چهار واژه Linux (سیستمعامل متنباز)، Apache (کارساز وب)، MySQL (فناوری و سامانه مدیریت پایگاه داده) و PHP (یکی از زبان های برنامهنویسی طراحی سایت) است.
سامانه ترکیبی LAMP معمولاً با هزینه کمی برای توسعه وب قابل استفاده است. LAMP، یکی از عواملی است که محبوبیت توسعه وب در جهان را افزایش داده است. عامل دیگر در توسعه وب، «نرمافزارهای توسعه وب» هستند که استفاده از آنها بسیار آسان است. به شکل تقریبی هر کسی میتواند در مدت زمان کوتاهی با استفاده از این نوع نرمافزارها یک وبگاه طراحی کند. در هنگام استفاده از نرمافزارهای توسعه وب، نیازی به دانستن «زبان نشانهگذاری ابرمتن» (HTML) یا دیگر زبانهای برنامهنویسی وب نیست اما برای تولید آثار حرفهای تر، مقولههای مذکور توصیه میشود.
نسل آینده ابزارهای توسعه وب برای تولید وب به عنوان راهی در جهت اجرای نرمافزارهای کاربردی به شکل برخط از پیشرفتهای نیرومندی در فناوریهای Microsoft .NET و LAMP استفاده میکنند. همینک توسعهدهندگان وب به تولید انواعی از نرمافزارهای کاربردی که به شکل خدمات وب ارائه میشوند، کمک میکنند تا بتوانند آنان را مانند نرمافزارهای کاربردی رومیزی رایانه، تجاری کنند.
تغییر روش ارتباطات با استفاده از توسعه وب
به جای اجرای کدهای قابل اجرا بر روی یک رایانه محلی، کاربران از نرمافزارهای کاربردی برخطی برای تولید محتوای جدید بهره میگیرند. این موضوع روشهای نوینی را در ارتباطات به وجود آوردهاست و اجازه داده است تا مجال و فرصتهای بیشتری برای تمرکززدایی اطلاعات و توزیع رسانهها ایجاد گردد.
نمونههای زیادی وجود دارند که تغییرات در روش ارتباطات و تجارت را با استفاده از صنعت توسعه وب، نشان میدهند. وبگاههای حراجی مانند eBay، روش مصرف مصرفکنندگان و پرداخت برای خدمات و کالاها را تغییر دادهاند. فروشندههای واسطه مانند Amazon.com و Buy.com، روشهای خرید و تجربه کسب سود را برای مصرف کنندگان زیادی تغییر دادهاند.
یک نمونه بسیار خوب دیگر برای تغییر روش ارتباطات با استفاده از توسعه وب، «وبنوشت» (به انگلیسی Blog) است. نرمافزارهای کاربردی وب مانند مووبل تایپ و وردپرس، به راحتی محیطهای وبنویسی کاملی را برای وبگاههای شخصی ایجاد کردهاند. سامانههای متنباز مدیریت محتوا مانند Typo3، Xoops، Joomla! و Drupal، با بهرهگیری از حالتهای نوینی از ارتباطات، توسعه وب را گسترش دادهاند.
قسمتهای مختلف توسعه وب
توسعه وب از قسمتهای مختلفی تشکیل میشود که عبارتند از:
توسعه سمت کاربر وب
توسعه سمت سرویس دهنده
پایگاه داده
برخی از فناوریها و کتابخانه در حوزه پایگاه داده عبارتاند از:
- Apache Derby
- DB2
- Firebird
- Microsoft SQL Server
- MySQL
- Oracle
- PostgreSQL
- SQLite
ملاحظات امنیتی
توسعه وب، ملاحظات امنیتی را با خود به همراه دارد. مانند بررسی خطا هنگام ورود دادهها بر روی یک فرم، پالایه کردن اطلاعات خروجی و رمزگذاری. اقدامات خرابکارانهٔ مانند «تزریق اسکیوال» که میتواند به وسیله کاربرانی که قصد شرارت دارند، اجرا شود. برخی از اسناد وب ممکن است به شیوهای طراحی شوند که کاربران بدخواه بتوانند دسترسی غیرمجاز به اسناد داشته باشند و برای گردآوری اطلاعاتی مانند نشانیهای پست الکترونیک، گذرواژهها و هر نوع محتوای حفاظت شده مانند شمارههای کارت اعتباری تلاش کنند.
برخی از این ملاحظات امنیتی به محیط سرویس دهنده بستگی دارد که رایانه را برای کار با زبانهای برنامهنویسی مانند PHP، Ruby، Python، Perl یا ASP آماده میکنند. بنابراین لازم است که توسعهدهنده وب، سرویس دهنده مناسبی را برای کار خود انتخاب نماید. با این حال آزمایش دقیق نرمافزارهای کاربردی وب پیش از انتشار عمومی، از نفوذهای امنیتی جلوگیری میکند.
نگهداری یک سرویس دهنده وب دور از نفوذهای بدون مجوز، اغلب «محدود کردن درگاه سرویس دهنده» نامیده میشود. بسیاری از فناوریها هنگامی به اجرا در میآیند، که اطلاعات به شکل امن از مکانی به مکان دیگر انتقال داده میشود. برای نمونه مجوزهای رمزگذاری متعلق به «لایه حفره امنیتی» (به انگلیسی Secure Socket Layer - SSL) که به واسطه اسناد معتبر منتشر میشوند، از کلاهبرداریهای اینترنتی جلوگیری میکند. بسیاری از توسعهدهندگان وب اغلب هنگام انتقال و ذخیره اطلاعات حساس، شکلهای متفاوتی از رمزگذاری را بکار میبرند.
درک اولیه مفاهیم امنیتی فناوری اطلاعات اغلب بخشی از دانش یک توسعهدهنده وب است. به خاطر حفرههای امنیتی نو در نرمافزارهای کاربردی وب که پس از آزمایش و اجرای آنها، پیدا میشوند، بهروزرسانیهای وصلههای امنیتی به شکل مستمر برای این نرمافزارها منتشر میشود. توسعهدهندگان وب اغلب برای به روز نگه داشتن نرمافزارهای وب، تلاش میکنند وصلههای امنیتی مطابق با وضعیت امنیتی جدید کشف و منتشر کنند.
نمودار خطی تاریخچه توسعه وب