تماس درباره   صفحه اصلی
  برنامه نويسی مبتنی بر وب > Web Programming  
 
 

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


برنامه نويسی مبتنی بر وب به دو قسمت تقسيم می شود سمت کاربر و سمت سرور. ابزارها و سکوهای متعددی برای پياده سازی هر دو قسمت وجود دارد.

برنامه تحت وب
مدل Client/Server
تعامل کاربر و سرور
سکوها و ابزارهای توسعه وب


برنامه تحت وب

برنامه کاربردی وب (Web Application) يک نمونه از برنامه های کاربردی اینترنتی است. برنامه کاربردی اينترنتی برنامه ای است که از اينترنت به هر نحوی استفاده می کند. يک برنامه وب محتوا را روی اينترنت از ماشين سرور به کامپیوتر کاربر ارسال می کنند. کاربر می تواند را از طريق يک مرورگر وب آنرا مشاهده کند.

منظور ازبرنامه نويسی مبتنی بر وب نوشتن، نشانه گذاری و کدنويسی مربوط به طراحی صفحات وب است که شامل محتوای وب، اسکريپت های سمت کاربر و سمت سرور و امنيت شبکه می شود.

برنامه نويسی مبتنی بر وب معمولاً به جنبه‌های غیرگرافیکی صفحات وب می پردازد که می ‌تواند از ايجاد يک صفحه وب ایستا با محتوای متن ساده تا پیچیده‌ترین برنامه وب، تجارت‌های الکترونیکی یا شبکه‌های اجتماعی را دربربگيرد.

برنامه نويسی مبتنی بر وب به دو بخش تقسيم می شود:

• برنامه نويسی سمت کاربر
• برنامه نويسی سمت سرور

در سمت کاربر بيشتر نياز است داده هایی که کاربر وارد می کند گردآوری شود همچنين اطمينان حاصل شود که افزونه های لازم برای ارائه يک واسط کاربری گرافيکی وجود دارد. برای کدنويسی سمت کاربر از JavaScript استفاده می شود. HTML5 و CSS3 وظايف ديگر سمت کاربر مانند طراحی و قالب بندی را انجام می دهند.

برنامه‌نویسی سمت سرور عملکرد سيستم‌های زیرین را پوشش می‌دهد. مانند دسترسی و بازيابی داده از پايگاه داده، امنيت و کارائی. بعضی ابزارهایی که برای اين منظور استفاده می شوند عبارتند از ASP، PHP، Java و MySQL.

کدهای سمت کاربر بر روی کامپيوتر کاربر در يک مرورگر وب ذخيره و اجرا می شود درحاليکه کدهای سمت سرور قابل دسترس کاربر قرار نمی گيرد بلکه بر روی وب سرور اجرا شده صفحه مناسب توليد برای کامپيوتر کاربر ارسال می شود.

برنامه نويسی وب متمايز از برنامه نويسی صرف است زيرا به دانشی درباره برنامه های کاربردی، اسکريپت نويسی سمت کاربر و سمت سرور و تکنولوژی پايگاه داده نياز دارد.


مدل Client/Server

برنامه های وب از معماری Client/Server استفاده می کنند. برنامه روی يک سرور مستقر می شود و به درخواست هائی که از جانب کاربرهای روی اينترنت می آيد پاسخ می دهد.

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

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

در طرف کاربر يک مرورگر ميزبان برنامه وب می شود. برنامه به فرم تگ های HTML توسط مرورگر تفسير و نمايش داده می شود.

Client/Server Web Programming Model

برنامه وب به شما امکان انجام کارهائی را می دهد که توسط وب سايت های ايستا امکان پذير نمی باشد نظير:

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


تعامل کاربر و سرور

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

بخاطر داشته باشيد که وب ناپايدار (stateless) است يعنی بعد از اينکه سرور يک صفحه را ارسال کرد کاربر را فراموش می کند. بنابراين اگر صفحه بعدی توسط همان کاربر درخواست شود درست مانند يک کاربر جديد برخورد می کند. بنابراين قضاوت مستدلی درباره اين که چه صفحه ای را آخرين بار برای چه کسب فرستاده ندارد و نمی تواند صفحه ای را با استفاده از مسير نسبی صفحه قبل آماده کند. بنابراين حتی اگر صفحه شما لينک نسبی نظير <A HREF="Download.asp">Next Page</A> داشته باشيد مرورگر URL کامل صفحه بعدی را با استفاده از مسير و دامنه صفحه جاری به طور خودکارمی سازد. توسط تگ <BASE> در بخش head صفحه می توان پايه کليه لينک ها را تعيين کرد.

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

در پاسخ درخواست کاربر سرور خودش را با نوع و نسخه نرم افزار به کلاينت می شناساند.


سکوها و ابزارهای توسعه وب

سکوها (Platforms) و ابزارهای برنامه نويسی وب بسیار پراهمیت هستند. اگرچه توسط نرم افزارهایی نظير WebDev، Adobe Dreamweaver و Microsoft Frontpage هر کسی می‌تواند در مدت زمان کوتاهی بدون نيازی به دانستن HTML يا زبان های برنامه نويسی وب يک سايت وب طراحی کند. اما برای تولید برنامه های حرفه‌ای تر ابزارهای قویتری توصیه می‌شود.

برای انتشار رایگان و کمک به توسعه وب، سيستم های ترکیبی زیادی برای برنامه نويسی وب بوجود آمده‌اند. یکی از محبوب‌ترین آنها LAMP (Linux, Apache, MySQL, PHP) است که معمولاً با هزینه کمی در دسترس قرار می گيرند بعلاوه استفاده از آنها بسيار آسان است.

برخی از برنامه نويسان ترجیح می‌دهند از سامانه ترکیبی LAPR (Linux/Apache/PostgreSQL/Ruby on Rails) برای توسعه وب استفاده کنند.

از جمله تکنولوژی هایی که در سمت کاربر استفاده می شوند می توان به موارد زير اشاره کرد:

• Ajax (Asynchronous JavaScript)
• Flash
• JavaScript (اصطلاحا EMCAScript هم ناميده می شود)
• iQuery
• HTML5 و CSS3

در سمت سرور هم تکتولوژی های متعددی وجود دارد:

• ASP
• ColdFusion
• Java ( مثل JavaServlet، JSP يا WebObject)
• Node.js
• Perl
• PHP
• Ruby
• .NET

کمتر پيش می‌آید پایگاه داده ای به غیر از MySQL در توسعه وب استفاده شود. در زیر نمونه‌های دیگری پایگاه‌های داده مورد استفاده در وب ذکر شده است.

• Apache Derby
• IBM DB2
• Microsoft SQL Server
• Oracle
• PostgreSQL
• SQLite
• Sybase


 

 


 

صفحه اصلی| PDF| درباره| تماس