برنامهنویسی وب به طور عمومی شامل دو بخش است.
در بخش بک اند برنامهنویسی برای ارتباط با پایگاه داده، وبسرویسها، محاسبات اصلی، کنترل دسترسی و سایر بخشهای زیرساختی قابل انجام هستند.
در بخش فرانتاند برنامهنویسی رابط کاربر و برخی محاسبات قابل انجام هستند.
کدام فعالیتها باید در بک اند و کدام بخشها در فرانت اند انجام میشوند ؟
هرچند مرز دقیقی برای تعیین اینکه کدام فعالیتهای مربوط به طراحی سایت یا نرمافزار وب باید در سمت کاربر و کدامیک باید در سمت پشت صحنه سرور به انجام برسند وجود ندارد و این موضوع به ابزارهای مورد استفادهی برنامهنویس و سلیقهی او بستگی دارد ولی بخشهای زیر باید در سمت سرور باشند و در مورد بقیهی موارد گزینههای قابل انتخاب وجود دارند.
- ذخیرهسازی پایدار اطلاعات
- نگهداری اطلاعاتی که کاربران نباید آن را مشاهده کنند
- ذخیرهسازی اطلاعات حجیم
- انجام محاسبات سنگین و طولانی
- ذخیرهسازی اطلاعات مشترک میان کاربران
فعالیتهایی که خارج از موارد فوق باشند ممکن است بسته به نیاز در سمت کاربر یا در سمت سرور به انجام برسند.
برنامهنویس فول استک یا Full Stack کیست ؟
برنامهنویسی که مهارت و تجربهی کافی برای پیادهسازی یک سایت به طور کامل را دارا باشد و بتواند به زبانهای سمت سرور و زبانهای سمت کلاینت برنامهنویسی کند، برنامهنویس فول استک نام دارد.
برخی از برنامهنویسان ممکن است تنها بتوانند به یک زبان سمت سرور مثل php یا پایتون برنامهنویسی کنند و برخی دیگر ممکن است فقط توانایی نوشتن برنامه به زبان جاوااسکریپت را داشته باشند.
برنامهنویس فول استک بهتر است یا فرانتاند یا بکاند
یک برنامهنویس فول استک اگر زمان کافی برای کسب مهارت در هر دو زمینه را صرف کرده باشد، دید بهتری به یک برنامهی تحت وب پیدا میکند. هرچند در ظاهر فرانتاند و بکاند دو گروه متفاوت از فعالیتها را شامل میشوند ولی قسمتهایی از هر دو گروه به گروه دیگر ارتباط مستقیم دارند.
مثلا یک برنامهنویس فرانتاند که با محدودیتهای پایگاه داده آشنایی دارد، بهتر میتواند کدهای خود را بهینهسازی کند تا درخواستهای ارسال شده را بتوان در زمینهی کارایی بهبود داد. یا یک برنامهنویس بکاند که با اصول سئو آشنایی دارد، میتواند کدهایی بنویسد که خروجی آن با اصول سئو هماهنگ باشد.
چه مدت زمان نیاز است تا به مهارت در برنامهنویسی فول استک برسیم ؟
برای تبدیل شدن به یک برنامهنویس فول استک لازم است تا مراحل را پله به پله جلو برویم. بهتر است ابتدا از برنامهنویسی فرانتاند شروع کنیم و پس از کسب مهارت به برنامهنویسی بکاند بپردازیم.
کسب مهارت در هر کدام از این رشتهها و در نهایت کسب مهارت در هر دو رشته در کنار هم حداقل به یک سال زمان نیاز دارد. لازم به گفتن نیست که برنامهنویسی دنیایی بی پایان است و هر چه تجربهی بیشتری در برنامهنویسی کسب کنید، برنامههای بهتری مینویسید که کارایی بیشتری دارند و احتمال بروز خطا و مشکلات امنیتی در آن کاهش پیدا میکند.