انواع برنامه‌نویسی

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

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

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

با آموزش برنامه‌نویسی فرانت‌اند می‌توانید یاد بگیرید که چگونه یک رابط کاربری را پیاده‌سازی کنید. این که چه گزینه‌هایی پیش روی کاربر قرار دهید و به طور کلی، چگونه همه‌ی رفتار کاربر را در سایت کنترل کنید. یا حتی چگونه او را ترغیب کنید که کار خاصی برای شما انجام دهد. تجربه‌ای که کاربر از تعامل و گشت و گذار در وبسایت شما به دست خواهد آورد، تا حد زیادی مربوط به کارهایی است که در برنامه‌نویسی فرانت‌اند انجام داده‌اید. برای همین، کسی که می‌خواهد این مسیر برنامه‌نویسی را برای خودش انتخاب کند، بهتر است که با مبانی UI و UX، یا «طراحی رابط کاربری» و «طراحی تجربه مشتری»، آشنایی مناسبی داشته باشد.

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

زبان‌های برنامه‌نویسی که برای هر کدام از این انواع برنامه‌نویسی به کار می‌رود، با یکدیگر تفاوت دارد. در سمت فرانت‌اند، استفاده از زبان‌هایی مانند جاوااسکریپت، و ابزارهایی مانند CSS اهمیت زیادی دارد. از طرف دیگر، در برنامه‌نویسی سمت سرور، استفاده از زبان‌هایی که می‌توان با آن‌ها پایگاه داده مدیریت کرد، اهمیت بیشتری دارد. زبان‌هایی مانند C#، جاوا یا پایتون، از زبان‌های محبوب بک‌اند محسوب می‌شوند. همچنین کسی که در برنامه‌نویسی بک‌اند کار می‌کند، باید زبان‌های مربوط به مدیریت پایگاه داده، مانند SQL‌ را نیز بلد باشد.