اصطلاحات رایج در طراحی سایت و برنامه نویسی
اصطلاحات برنامه نویسی بسیار استفاده میشود و در این سایت در میان مقالات آمده است. در این مقاله معانی آن شرح داده شده است.
فرانت اند Front-End
فرانت اند همان چیزی است که در بروزر قابل مشاهده است. به فرانت اند client-side هم گفته میشود. کدهای html css js و sass و jQuery و React این بخش را میسازند.
بک اند Back-End
بک اند به کدهایی گفته میشود و پشت صفحه کار میکنند. سرور ساید Server-side هم گفته میشود. nodejs و expressjs که مربوط به مسایل امنیتی وبسایت و پایگاه داده و راه اندازی سرور میشود.
ند جی اس Node.js
یک محیط برنامه نویسی است که از زبان جاوااسکریپت منشا گرفته و جدید است. میتوانید ند جی اس را از سایت رسمی اش دانلود کنید و در ویندوز نصب کنید. در ترمینال با npm به آن دسترسی خواهید داشت.
npm
npm (مخفف Node Package Manager) مدیریت پکیج های ند جی اس را بر عهده دارد. برای نصب پکیج های جدید و حذف پکیج ها یا آپدیت کردن پکیج به کار میرود. اما بخاطر اینکه سرعت کمی دارد معمولا از جایگزین آن yarn استفاده میشود.
لایبرری و فریمورک Library and Framework
لایببری و فریمورک هر دو مجموعه ای از کدهای از پیش نوشته شده به یکی از زبان های برنامه نویسی javascript ، php , python , Ruby و زبان های دیگر است.
تفاوت لایببری با فریمورک این است که معمولا فریمورک ها بزرگتر از لایببری ها هستند. خط کد های بیشتری دارند. فریمورک ها محدودیت هایی در پروژه ایجاد میکنند و چهارچوب هایی تعیین میکنند. اما لایبرری ها به شما اجازه میدهند هر تغییری را که میخواهید اعمال کنید.
زبان پایتون فریمورک های زیادی دارد که برای اهداف مختلفی مانند هوش مصنوعی، پردازش تصویر، اینترنت اشیا و طراحی سایت بوجود آمده اند. از فریمورک های پایتون برای طراحی سایت میتوان به Flask و Django اشاره کرد.
فریمورک Express.js یکی از فریمورک های Node.js است. برای بک اند استفاده میشود.
لایببری ری اکت هم با زبان جاوااسکریپت نوشته شده و در فرانت اند کاربرد دارد.
ری اکت React.js
ری اکت, کدهای از پیش نوشته شده ی جاوااسکریپت است که آماده استفاده میکنیم تا کدنویسی با کمترین کدهای ممکن انجام شود. این کتابخانه در سال ۲۰۱۳ توسط فیسبوک نوشته شد. امروزه طرفداران بسیار دارد.
مرن MERN Stack
کلمه MERN مخفف چهار کلمه Mongo و Node و Express و React است. همانطور که میبینید هم بک اند و هم فرانت اند دارد. بخاطر همین به آن FullStack گویند.
پروژه های SPA
پروژه های کوچک مثل SPA (Single Page Application) وبسایت های تک صفحه ای هستند. معمولا با jQuery توسعه داده میشوند. فریمورک هایی مانند Flask با زبان Python برای این کار مناسب هستند. React.js هم با زبان JavaScript میتواند این پروژه های کوچک را انجام دهد. البته ری اکت در پروژه های بزرگ هم استفاده میشود.
پروژه های CMS
پروژه های بزرگ به دو دسته CMS و BPMS تقسیم میشوند.
یک سیستم مدیریت محتوا مانند وردپرس WordPress که بارها نام آن را شنیده ایم یک CMS (مخفف Content Management System) است.
پروژه های BPMS
اگر بخواهیم یک سیستم اتوماسیون اداری بسازیم کمی بزرگتر از CMS است و BPMS (مخفف Big Project Management System) نام دارد.
در این پروژه های بزرگ مانند بلاگ وردپرس نیست که تنها یک کاربر محتوا بگذارد و در سایت نمایش داده شود. علاوه بر محتوا گذاری باید محتوا قبل از انتشار توسط یک نفر دیگر بررسی شود سپس اگر تایید شد منتشر شود.
مثلا سیستم آگهی شیپور را در نظر بگیرید. وقتی یک نفر آگهی مینویسد قبل از انتشار باید تایید شود. این تایید شدن باعث میشود پروژه از CMS به BPMS تبدیل شود. یعنی کمی بیشتر کدنویسی انجام شود و پروژه خط کد های بیشتری داشته باشد و بزرگتر شود.
باید یک نقش جدید اضافه شود. این نقش نمیتواند مانند مدیر به همه بخش ها دسترسی داشته باشد اما میتواند آگهی ها را رد و تایید کند. بنابراین برنامه نویسی که BPMS کدنویسی میکند، باید کدهایی بنویسد که این نقش جدید (مثلا مدیر-تاییدکننده-محتوا) نه در حد مدیر-ارشد و نه در حد کاربر معمولی (آگهی دهنده) باشد بلکه بیشتر از کاربر و کمتر از مدیر-ارشد در سایت اختیاراتی داشته باشد.