سه شنبه 16 تیر 1394 | به روز شده: 4 دقیقه قبل

HAMSHAHRIONLINE

The online version of the Iranian daily Hamshahri
ISSN 1735-6393
دوشنبه 7 اسفند 1391 - 22:53:57 | کد مطلب: 203062 چاپ

آشنایی با زبان‌های برنامه نویسی تحت وب

میز آنلاین > میهمان - میلاد شکرخواه:
اسامی زبان‌های برنامه نویسی و نیز کارکردهای این زبان‌ها برای افرادی که اطلاعات چندانی از روند ایجاد یک صفحه اینترنتی ندارند واقعا گیج کننده است.

از سوی دیگر؛ رشد روز افزون وبگاه‌ها با کارکردهای گوناگون و همین طور شکل‌گیری ایده‌های نو در فضای وب باعث شده که زبان‌های برنامه نویسی تحت وب به سرعت پیشرفت کنند و به این ترتیب باز هم بر پیچیدگی‌های موجود بیفزایند.

هدف این مطلب، کاستن از این پیچیدگی‌ها و ارائه یک طبقه بندی کلی از برخی از این زبان‌هاست.

ماهیت زبان‌های برنامه نویسی وب مانند دیگر زبان‌های برنامه نویسی است با این تفاوت که در سمت سرور تفسیر می‌شوند و در مرورگرها خروجی آن به نمایش در می‌آید.

در این مطلب چند زبان پرطرفدار وب معرفی می‌شود.

توسعه وب سایت دارای دو رویکرد کلی تحت عناوین طراحی وب (Web design) و برنامه نویسی وب (Web programming) است که هر یک دارای زبان‌های متعددی برای ساخت یک وبگاه هستند. با توجه به این دو گرایش؛ دسته بندی دقیق‌تری را می‌توان در جدول زیر ارائه کرد:

  • برنامه نویسی سمت کاربر (Client side):

اغلب طراحان صفحات اینترنتی بر روی برنامه نویسی سمت کاربر تمرکز دارند. 

برنامه نویسی سمت کاربر (Client side)
توضیحات

 

 

 

 

 

HTML

(Hypertext markup language)

 

  • این زبان در سال 1989 توسط تیم برنرزلی خالق وب برای انتشار داده‌ها معرفی شد.
  • ساختار و پیکره‌بندی یک صفحه اینترنتی بر پایه عناصر HTML است که این عناصر در نزد توسعه دهندگان وب همان تگ‌ها هستند. شکل کلی یک تگ HTML بدین گونه است <body>:
  • کلیه اطلاعاتی که قرار است برای کاربر نمایش داده شود باید در بین این تگ‌ها قرار گیرد.
  • در واقع می توان گفت HTML یک زبان برنامه نویسی نیست بلکه زبانی برای نشانه گذاری عناصر صفحات است.
  • در حال حاضر آخرین نسخه این زبان نسل پنجم آن است که در سال 2008 معرفی شد ولی هنوز به تایید کنسرسیوم جهانی وب (W3C) نرسیده و توسعه آن هم هنوز نهایی نشده است. مشاهده یک نمونه صفحه HTML
  • بسیاری از کارشناسان وب معتقدند کد نویسی در HTML5 شکل جدیدتری از خود را نمایان خواهد کرد، به گونه ای که تمام عناصرصفحه‌ها معنا دارتر شده و رفته‌ رفته تبدیل به زبانی برای تولید اپلیکیشن‌ها خواهد شد.
  • اهمیت دستیابی به HTML5 آن قدر زیاد بود که استیو جابز رئیس شرکت اپل در سال 2010 طی نامه‌ای سرگشاده خبر از ظهور HTML5 و نابودی فلش داد.  مشاهده صفحات HTML5

 

 

Css

Cascading style sheets

  • شیوه نامه آبشاری توسط تیمی از کنسرسیوم جهانی وب با رهبری دو تن از افراد با نام‌های برت‌باس (Bert Bos)  و هیکن لای (Hakon Lie) آغاز به کار کرد به طوریکه اولین نسخه آن  در سال 1960 منتشر شد و قادر بود تغییراتی را بر روی فونت‌های‌ صفحات و رنگ آن‌ها وهمچنین رنگ پس زمینه ایجاد کند. در واقع باید گفت این شیوه نامه آبشاری که در سال 1980 با هدف منسجم کردن اطلاعات اسناد وب توسعه داده شد؛ زبانی برای شکل دادن و آرایش عناصر مختلف صفحات وب است.
  • سپس نسخه دوم css در سال 1998 منتشر شد و در حال حاضر آخرین نسخه آن (css3) همچنان در حال توسعه است. Css وHtml را می‌توان دو یار جدانشدنی از هم نامید زیرا مکمل یکدیگرهستند. به طور معمول هر وب‌سایتی حداقل دارای یک فایل شیوه نامه (استایل) است. مشاهده صفحاتی که با استایل‌ها دچار تغییرات شده اند.

 

 

 

Javascript

  • زبان جاوا اسکریپت توسط برندان ایچ (Brendan Eich) در پروژه مرورگر نت اسکیپ (Netscape) توسعه پیدا کرد و برای اولین بار درنسخه بتای نت اسکیپ 2 عرضه شد. زبان جاوا اسکریپت در ابتدا تحت عنوان لایو اسکریپت (Livescript) معرفی شد و بعدها به جاوا اسکریپت تغییرنام یافت.
  • پویایی صفحات یا به نوعی رویدادهایی (Events) که در صفحات بوجود می آیند برپایه این زبان است. جاوااسکریپت از خانواده زبان‌های اسکریپتی است و قادر است در بین عناصر صفحه قرار بگیرد و عناصر مورد نظر را تحت کنترل خود درآورد. تمام مرورگرها وب امکان فعال و غیرفعال کردن زبان جاوا اسکریپت را برای کاربران خود دارند که این امکان به طور پیش فرض فعال است.
  • بعنوان مثال کلیک بر روی دکمه تایید یک فرم ثبت نام و نمایش یک پیغام خطا در یک باکس می‌تواند به کمک زبان جاوا اسکریپت ایجاد شود. در اغلب وبگاه‌ها برای اعتبارسنجی اولیه فرم‌ها از این زبان کمک می‌گیرند. مشاهده یک رویداد جاوا اسکریپتی






jQuery

  • زبان جی‌کوئری یکی از فریم ورک‌های محبوب، پرطرفدار و کم حجم جاوا اسکریپت است که در طی چندسال اخیر به یکی از پرطرفدارترین زبان‌های برنامه نویسی سمت کاربر تبدیل شده است.
  • خالق این زبان جان رسیگ  (John Resig) یکی از توسعه دهندگان ابزارهای جاوا اسکریپت در مرورگر فایرفاکس است که در سال 2006 این زبان را معرفی کرد.
  • زبان جی‌کوئری کاملا رایگان است و تحت دو پروانه GPL و MIT توسعه می‌یابد. جی‌کوئری برای کنترل عناصر صفحات وب دارای توابع بسیار زیاد و همچنین پلاگین‌های متعدد و پرکاربرد است. به عنوان نمونه پیشنهاداتی که در موتور جستجوگر گوگل در ضمن جستجو به کاربران داده می‌شود از زبان جی‌کوئری استفاده شده است. مشاهده یک رویداد جی‌کوئری

باید افزود که رابط کاربری (User Interface) به کمک زبان‌های فوق خلق می‌شود و پوسته اغلب صفحات وب سایت‌ها بر پایه همین زبان‌ها استوار است و در نهایت کدهایی که به کمک این زبان‌ها تولید می‌شود توسط مرورگرها تفسیر شده و سپس خروجی آن‌ها برای کاربران به نمایش درمی‌آید.

  • برنامه نویسی سمت سرور (Server side):

پیش از بحث درباره برنامه نویسی سمت سرور، ابتدا باید با سه مفاهیم زیر آشنا شویم.

  • هاست (میزبانی وب): به فضایی اطلاق می‌شود که تمام فایل‌های وبگاه ما بر روی آن قرار دارد.
  • سرور: کامپیوتری است که کاربران در صورت اتصال به اینترنت می‌توانند به اطلاعات روی آن دسترسی پیدا کنند.
  • وب سرور: یک نرم افزار کامپیوتری است که درخواست‌های کاربران را از طریق پروتکل‌هایی نظیر Http را که بوسیله مرورگر ارسال می‌شود را دریافت می‌کند، صفحه درخواستی را یافت می‌کند و در نهایت صفحه‌ وب یافته شده را از طریق شبکه به مرورگر درخواست کننده می‌فرستد.

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

اگر بخواهیم با بیانی ساده کارکرد زبان‌های سمت سرور را تشریح کنیم باید بگوییم وبگاه‌هایی که صفحاتی پویا دارند و دائما در حال تغییر و تولید محتوا در صفحات هستند نیاز دارند این درخواست‌های خود را در قالب یک زبان به سرورانتقال دهند. به کمک این زبان‌ها سیستم‌های مدیریت محتوا به عنوان یک نرم افزار تحت وب تولید می‌شوند تا بتوانند این درخواست‌ها را برای گردانندگان وبگاه‌ها مدیریت کنند.

php

برنامه نویسی سمت سرور (Server side)

توضیحات





ASP.NET

  • این کلمه مخفف Active server page  یا صفحات فعال تحت سرور است که نسخه اولیه این زبان تحت فریم ورک دات نت در سال 2002 توسط کمپانی مایکروسافت برای تولید صفحات پویا معرفی شد و در حال حاضر به یکی از پرقدرت‌ترین زبان‌ها برای تولید اپلیکیشن‌های وب مبدل شده است. اپلیکیشن‌های نوشته شده با این زبان در سرورهای ویندوز قابل اجرا هستند و معمولا بانک اطلاعاتی آنها همان Sql Server  معروف است. آخرین نگارش  ASP.NET نسخه چهارم این زبان است که در آن توجه زیادی برروی معماری سه لایه یا MVC داشته است.





PHP

  • واژه PHP بر گرفته از Hypertext Preprocessor می باشد که یک زبان منبع باز و قابل توسعه می باشد و در سال 1994 بوسیله راموس لردوف (Rasmus Lerdorf) کانادایی به وجود آمد. برنامه‌های نوشته شده با این زبان اسکریپتی تحت لینوکس اجرا می‌شود. ناگفته نماند که برنامه‌های نوشته شده با این زبان قابلیت اجرا تحت ویندوز را هم دارا هستند. نام بانک اطلاعاتی این زبان Mysql است و آخرین نگارش این زبان نسخه پنجم آن است که نسبت به نسخه‌های پیشین خود توجه بیشتری روی معماری سه لایه داشته است.




Ruby

  • طراحی و توسعه زبان رابی به اواسط دهه 1990 بازمی گردد. منتشر کننده این زبان فردی به نام یوکیهیرو ماتز ماتسوموتو (Yukihiro Matz Matsumoto) بود. نسخه‌های متعددی از این زبان  طی سال های متوالی توسعه یافت و نسخه پایدار آن در سال 2006 منتشر شد. از محبوب‌ترین فریم ورک‌هایی که در چندسال اخیر برپایه این زبان توسعه یافته می توان Ruby on rails را نام برد که با شعار"کشف بن بست شکنانه برای کاهش موانع ورود به برنامه‌نویسی" شهرت دارد. الگوی طراحی برنامه‌های این فریم‌ورک برپایه MVC است.












Java

  • در ابتدا باید توجه داشت که زبان جاوا و جاوا اسکریپت دو زبان کاملا مجزا ازهم هستند. جاوا یکی از محبوب‌ترین زبان‌ها تا سال 2012 بود. این زبان توسط جیمز گاسلینگ (James Gosling) و تحت لیسانس شرکت سان در سال 1995 خلق شد. جاوا قابلیت پیاده سازی بر روی تمام پلتفرم‌های استاندارد را دارد.

تکنولوژی‌های جاوا را می توان به سه گروه تقسیم کرد :

  • جاوا برای موبایل‌ اپلیکیشن‌ها (J2ME): این تکنولوژی بیشتر با نام J2ME یا Java 2 Mobility Editionشناخته شده است و بیشتر برای مقابله با محدودیت‌های ساخت برنامه‌های کاربردی در دستگاه‌های کوچک مورد استفاده قرارمی‌گیرد و همچنین دارای کتابخانه‌های بسیاری برای توسعه اپلیکیشن است، مانند اپلیکیشن‌های تلفن همراه.
  • نگارش استاندارد جاوا (J2SE): عنوانی که برای این تکنولوژی رواج یافته J2SE است و مخفف عبارت Java 2 platform standard edition می‌باشد. به کمک این تکنولوژی می‌توان طیف وسیعی از برنامه های کاربردی - اعم از بازی‌های گرافیکی تا اپلیکیشن‌های مرتبط با پایگاه‌های داده - را تولید کرد. همچنین در کتابخانه‌های آن کلیه‌API ها و کلاس‌های مورد نیاز وجود دارد.
  • نگارش سازمانی جاوا (JEE): نام این پلتفرم جاوا Java enterprise edition است. این تکنولوژی در توسعه برنامه‌های بسیار بزرگ و سازمانی مورد استفاده قرار‌می‌گیرد، برنامه نویسان این نسخه از جاوا قادرخواهند بود برنامه‌های عظیمی برای شبکه‌ها و حتی سرورها تولید کنند.
در همین زمینه:
انتخاب سردبیر

تیم مظلومی‌ کامل می‌شود

محمود مولایی: نخستین اردوی آماده‌سازی استقلال امروز در شرایطی برگزار می‌شود که سرمربی آبی‌ها همچنان در فکر جذب بازیکن است.

ادامه ماجرای دایی و ملوان

سخنگوی هیأت مدیره ملوان درباره قرارداد دایی می‌گوید: با او به توافق ضمنی دست یافته‌ایم اما هنوز درباره جزئیات قرارداد و درخواست‌های علی دایی به توافق نرسیده‌ایم.»

مه‌لقا جام‌بزرگ هم طلایی شد

همشهری آنلاین: سومین روز از مسابقات تیراندازی دانشجویان جهان در حالی برگزار شد که مه‌لقا جام‌بزرگ در تفنگ ۵۰ متر درازکش زنان به مدال طلا دست یافت.

پیاده‌ها وارد خطوط بی‌آرتی نشوند

یکی از مشکلات خطوط اتوبوس‌های تندرو عبور و مرور عابران پیاده در مسیرهای بی‌آرتی است.

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

مدیرکل امور بانوان شهرداری تهران در تشریح جزئیات برنامه‌های ویژه تابستان از برپایی جشن‌های روز ملی دختران، تورهای تهرانگردی در ۳۵۴محله و برگزاری هزار برنامه و کارگاه آموزشی ویژه کودکان خبر داد.

ایثارگران بدانند؛ اجرای قانون جامع از توهم تا واقعیت(۸)

مسئولانی که از اجرای قانون جامع می‌گویند معلوم نیست از کدام قانون صحبت می‌کنند.

از آنفلوآنزای مرغی نترسیم

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

زندان همیشه بهترین تنبیه نیست

مهدیه تقوی‌راد: با تصویب هیأت وزیران در شهریور سال۹۳ آیین‌نامه اجرایی ماده۷۹ قانون مجازات اسلامی موسوم به مجازات‌های جایگزین حبس اجرایی شد.

سرعت غیرمجاز همچنان دلیل اول تصادفات جاده‌ای

رئیس اداره پیشگیری از حوادث مرکز مدیریت و حوادث فوریت‌های پزشکی وزارت بهداشت با اعلام اینکه سرعت غیرمجاز همچنان مهم‌ترین دلیل وقوع تصادفات جاده‌ای است، گفت: به ندرت تنها یک عامل در ‌وقوع تصادف مؤثر است و اغلب مجموعه‌ای از عوامل در ‌بروز حوادث ترافیکی نقش دارند.

واکنش مسجد جامعی به مزایده خانه معین‌التجار

همشهری‌آنلاین: عضو شورای اسلامی شهر تهران، با اعلام این که طرح خرید و بازسازی خانه معین‌التجار در مرحله اول با طرح یک فوریت تصویب شد، از عدم ثبت این خانه توسط میراث فرهنگی انتقاد کرد.

همایش رمضان در آیینه اقوام ایرانی برگزار شد

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

چراغ سبز وزارت علوم به دانشگاه آزاد

علی‌اصغر محمدی: مشکل رشته‌های بدون مجوز دانشگاه آزاد با وجود وعده‌های مسئولان هنوز حل نشده است.

گلایه معلولان ازحذف قانون استخدام در نهادهای دولتی

مدیرعامل انجمن دفاع از حقوق معلولان از حذف قانون ۳درصدی استخدام معلولان در دستگاه‌ها و نهادهای دولتی خبر داد و گفت: درحالی‌که این قانون از سال ۱۳۶۸تصویب شده اما متأسفانه در جریان بازنگری «لایحه جامع حمایت از حقوق افراد دارای معلولیت» توسط دولت، این قانون حذف شده که به هیچ وجه برای معلولان و فعالان این حوزه قابل‌قبول نیست.

نخستین جلسه بررسی مجدد پرونده بورسیه‌ها شنبه برگزار می‌شود

نخستین جلسه کمیته بررسی مجدد پرونده بورسیه‌ها شنبه هفته آینده برگزار می‌شود.

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

نایب‌رئیس کمیسیون اجتماعی مجلس عدم‌اجرای قانون همسان‌سازی‌ حقوق بازنشستگان را اجحافی در حق این افراد دانست و گفت: در اصلاح قانون خدمات کشوری افزایش حقوق و مستمری‌ها درنظر گرفته می‌شود.

جزئیات سفر زائران به حج تمتع امسال

رئیس سازمان حج و زیارت از ابلاغ دستورالعمل صدور روادید حجاج اعزامی سال‌جاری به دفاتر حج سراسر کشور خبر داد و گفت: ایران جزو نخستین کشورهایی است که ویزای حجاج آن به‌صورت الکترونیک صادر می‌شود.