چگونه برنامه نویس وب شویم !؟
میخواهم برنامهنویس وب شوم، از کجا باید شروع کنم؟
سؤال بالا، سوالی است که اکثر افراد هنگام شروع به یادگیری مباحث برنامه نویسی وب، با آن مواجه میشوند. اما به راستی، اگر بخواهیم برنامه نویسی وب را آغاز کنیم، باید از چه زبانی شروع کنیم؟ چه نکاتی باید رعایت شوند؟ ابتدا نیاز است تا چند مفهوم کاربردی را در زمینه برنامه نویسی وب، بررسی کنیم.
در کل 2 نوع وبسایت داریم، وبسایتهای استاتیک یا ایستا و وبسایتهای داینامیک یا پویا.
وبسایتهای استاتیک یا ایستا
وبسایتهای ایستا یا استاتیک، به وبسایتهایی گفته میشود که محتوا ثابت است و به منظور اضافه کردن محتوای جدید، میبایست مجدداً کدنویسی کرد. مثلاً شما یک وبسایت با 5 صفحه دارید و به منظور اضافه کردن صفحه جدید، باید مجدداً کدنویسی کنید و سایر صفحات را نیز به منظور دسترسی به این صفحه ویرایش کرده و پیوند به این صفحه جدید را ایجاد کنید. به چنین وبسایتهایی، وبسایت ایستا گفته میشود.
وبسایتهای داینامیک یا پویا
وبسایتهای پویا، در مقابل وبسایتهای ایستا قرار دارند و کار با این نوع وبسایتها، به مراتب آسانتر و همینطور بهتر است. در وبسایتهای پویا، شما یک بار کدنویسی هسته را انجام میدهید و سپس به آسانی میتوانید مطالب را منتشر کنید. به طور مثال، اگر با سرویسهای بلاگدهی کار کرده و آشنایی داشته باشید، میتوانید سایتی طراحی کنید که با استفاده از پنل مدیریت، دادهها را دریافت کرده و به صورت پویا در سایت نمایش دهد و در صورت انتشار مطلب و محتوای جدید، احتیاجی به کدنویسی نباشد.
HTML — اولین زبان برنامه نویسی وب
HTML که سرواژه عبارت Hypertext Markup Language است، یک زبان نشانهگذاری محسوب میشود که به منظور ایجاد ساختار و قالب صفحه وب مورد استفاده قرار میگیرد. به کمک HTML میتوانید مشخص کنید که در صفحه وب خود چند بخش دارید و محتوای هر بخش را مشخص کنید. زبان HTML، جزء لاینفک برنامه نویسی وب است و شما هر سایتی که بخواهید طراحی کنید، به هر زبانی که باشد، باید با استفاده از HTML ساختار اولیه سایت خود را آماده کرده و سپس با استفاده از سایر زبانها، کدنویسی دیگر بخشها را انجام دهید. به طور مثال، میخواهید مشخص کنید که سایت شما 4 قسمت با عناوین سربرگ، ستون کناری، کادر محتوا و پاصفحه داشته باشد. باید در ابتدای کار با استفاده از HTML این قسمت را ایجاد و تعریف کنید و سپس با استفاده از سایر زبانها، کدنویسیهای سایر بخشها را انجام دهید.
CSS — زبان مخصوص استایلدهی
هنگامی که زبان HTML ارائه شده، صرفاً به منظور نمایش متن و عکس ارائه شده بود و انتظار نمیرفت تا سایتهای کنونی را بتوان با آن طراحی کرد. همانطور که گفتیم، زبان HTML صرفاً ساختار سایت را طراحی میکند. یعنی شما فقط میتوانید مشخص کنید که سایتتان چه اسکلتی دارد؛ اما نمیتوانید مشخص کنید که این اسکلتبندی، به چه شکلی باشد. به منظور بهبود سایتهای طراحی شده و همینطور شکلدهی به وبسایتها و رفع نواقص زبان HMTL، زبان CSS ارائه شد. CSS که مخفف Cascade Style Sheets است، یکی دیگر از زبانهای نشانهگذاری تحت وب است که به کاربر این امکان را میدهد تا مشخص کند که در صفحه وب طراحی شده، هر کدام از اجزای سایت، چه شکل و ابعادی داشته باشند. در واقع، زبان CSS به منظور تکمیل طراحی رابط کاربری وبسایت ارائه شده است.
جاوا اسکریپت — نخستین زبان اسکریپتنویسی تحت وب
بعد از ارائه زبانهای HTML و CSS، نیاز شدیدی به یک زبان احساس میشد تا به کاربر این امکان را دهد که بتواند در سمت کاربر بازدیدکننده، برنامهنویسی خاصی انجام دهد. زبان HTML صرفاً به منظور طراحی ساختار سایت مورد استفاده قرار میگیرد؛ اما به منظور انجام برخی امور، مانند اعتبارسنجی فرمها، برقراری ارتباط با سرور و انجام برخی امور سمت کاربر و مواردی از این دست، زبان HTML قدرت کافی را ندارد. به منظور برطرف کردن این مشکل، در سال 1995، زبان برنامهنویسی livescript که بعدها به جاوا اسکریپت تغییر نام داد، ارائه شد. متأسفانه اشتباهی که بیشتر کاربران میکنند، این است که این زبان برنامهنویسی را با جاوا اشتباه میگیرند و این برداشت را دارند که این زبان، از مشتقات زبان جاوا است، در صورتی که اینطور نیست.
به کمک زبان جاوا اسکریپت شما میتوانید در وبسایت خود روی قسمتهای دیگر وبسایت کنترل داشته و عملکرد بخشهای مختلف وبسایت را کنترل کرده و یا حالات و شرایط خاصی را پیادهسازی کنید. در کنار اهمیتی که جاوا اسکریپت دارد، کتابخانههای آن نیز بسیار مهم هستند. تکنولوژی Ajax نیز بر پایه جاوا اسکریپت پیادهسازی شده است. همچنین، جاوا اسکریپت دارای کتابخانههایی است که هر کدام میتوانند در قسمتهای مختلفی، کاربرد داشته باشند به طور مثال jQuery یا AngularJS هر کدام پلتفرمهای کاملی برای طراحی صفحههای وب محسوب میشوند.
jQuery — یکی از مهمترین کتابخانههای جاوا اسکریپت
jQuery یکی از کتابخانههای جاوا اسکریپت است که به منظور تسهیل کدنویسی به زبان جاوا اسکریپت، مورد استفاده قرار میگیرد. در جاوا اسکریپت به منظور انجام برخی امور، نیاز بود تا حجم بالایی از کدها نوشته و پیادهسازی شود. این کار علاوه بر اینکه حجم صفحات را بالا میبرد، باعث افزایش زمان کدنویسی نیز میشد و مشکلات فراوانی را در بر داشت. در jQuery یک سری از این مباحث کدنویسی شده و آماده هستند و به منظور دسترسی به این قطعه کدها و انجام آن امور، به جای نوشتن حجم بالای کدهای جاوا اسکریپت، کافی است تا با استفاده از قوانین و قواعد تعیین شده برای jQuery، همان کار را با چند خط کد انجام دهید. این کار مزایای زیادی دارد که از مهمترین آنها، صرفهجویی در زمان است. در کنار تمام این مزایا، jQuery شامل لیست کاملی از توابع مربوط به کارهای گرافیکی است و به شما این امکان را میدهد تا جلوههای زیبایی را در وبسایت خود پیادهسازی کنید.
نکته: اگر شما با استفاده از زبانهای معرفی شده در بالا، سایتی را طراحی کنید، سایت شما سایتی ایستا خواهد بود که محتوا و تمامی صفحات آن ثابت هستند و اگر بخواهید صفحهای جدید و یا بخش جدید به صفحات اضافه کنید، باید کدنویسی تمام صفحات را تغییر دهید. در ادامه زبانهای برنامهنویسی مناسب برای طراحی سایتهای پویا را معرفی میکنیم. اما قبل از بررسی توضیحات سایتها پویا، اجازه دهید تا کمی در مورد لایههای برنامهنویسی صحبت کنیم.
لایههای برنامه نویسی وب
میتوان گفت که برنامهنویسی در دو لایه کلی انجام میشود. لایه فِرانتاِند (Front-End) که برنامهنویسی انجام شده در این بخش، مربوط به رابط کاربری است و لایه بکاند (Back-End) که برنامهنویسی انجام شده در این بخش، مربوط به پشت صحنه است و کاربر به صورت مستقیم آن را حس نمیکند؛ اما نتیجه اجرای کدهای نوشته شده در بکاند، به کاربر نمایش داده میشود. به بیان دقیقتر، فرانتاند جایی است که کاربر در آنجا کاری را باید انجام دهد. به طور مثال، فرمی را پر میکند، این اطلاعات از طریق فرانتاند به بکاند ارسال شده و در بکاند پردازش میشوند و نتیجه پردازش به فرانتاند بازگشت داده شده و در قالب مشخص شده، به کاربر نمایش داده میشود.
زبانهایی که در بالا معرفی شدند، مربوط به کدنویسی قسمت Front-End بودند؛ اما به منظور کدنویسی در Back-End، چند زبان وجود دارند که از مهمترین آنها، PHP و ASP.Net هستند. همچنین به منظور طراحی سایتهای پویا، باید از زبانهای برنامهنویسی PHP و Asp.NET و جاوا و پایتون استفاده کرد که در پست های بعدی معرفی خواهند شد .
نویسنده : father phury