مروری بر طراحی و توسعه وب
در این مطلب، مروری بر دو حوزه بسیار مرتبط و حیاتی یعنی طراحی وب و توسعه وب ارائه میشود.
طراحی وب (Web Design)
طراحی وب، حوزهای است که شامل مهارتها و رشتههای گوناگونی در زمینه تولید و نگهداری وبسایتها میشود. جنبههای مختلف طراحی وب عبارتند از:
- طراحی گرافیک وب
- طراحی رابط کاربری (Interface Design)
- تألیف محتوا، شامل کدنویسی استاندارد و نرمافزارهای اختصاصی
- طراحی تجربه کاربری (User Experience Design)
- بهینهسازی موتورهای جستجو (SEO)
اغلب، تیمهای متعددی بر روی جنبههای مختلف فرآیند طراحی کار میکنند، هرچند برخی طراحان ممکن است تمامی این مسئولیتها را بر عهده بگیرند. اصطلاح «طراحی وب» معمولاً به فرآیند طراحی بخش فرانتاند (سمت کاربر) یک وبسایت، از جمله نوشتن کد مارکآپ، اشاره دارد. طراحی وب تا حدی با مهندسی وب در دامنه وسیعتر توسعه وب همپوشانی دارد.
از طراحان وب انتظار میرود که با اصول قابلیت استفاده (Usability) آشنا باشند و اگر نقش آنها شامل ایجاد مارکآپ است، باید از آخرین دستورالعملهای دسترسپذیری وب (Web Accessibility) نیز مطلع باشند.
توسعه وب (Web Development)
توسعه وب به کارهایی اطلاق میشود که در فرآیند ساخت یک وبسایت برای اینترنت (World Wide Web) یا یک اینترانت (شبکه خصوصی) انجام میشود. توسعه وب میتواند از ساخت یک صفحه استاتیک ساده متنی تا برنامههای پیچیده تحت وب (وب اپلیکیشنها)، کسبوکارهای الکترونیکی و خدمات شبکههای اجتماعی متغیر باشد.
فهرست جامعتری از وظایفی که توسعه وب معمولاً شامل میشود، میتواند شامل موارد زیر باشد:
- مهندسی وب
- طراحی وب
- توسعه محتوای وب
- مدیریت ارتباط با مشتری
- اسکریپتنویسی سمت کاربر و سمت سرور
- پیکربندی امنیتی وب سرور و شبکه
- توسعه تجارت الکترونیک
در میان متخصصان وب، «توسعه وب» معمولاً به جنبههای غیرطراحی اصلی ساخت وبسایتها، یعنی نوشتن مارکآپ و کدنویسی، اشاره دارد. توسعه وب ممکن است از سیستمهای مدیریت محتوا (CMS) برای تسهیل تغییرات محتوا و در دسترس قرار دادن آنها با مهارتهای فنی پایه استفاده کند.
برای سازمانها و کسبوکارهای بزرگ، تیمهای توسعه وب میتوانند شامل صدها نفر (توسعهدهندگان وب) باشند و از روشهای استانداردی مانند متدولوژیهای Agile در حین توسعه وبسایتها پیروی کنند. سازمانهای کوچکتر ممکن است فقط به یک توسعهدهنده دائمی یا قراردادی نیاز داشته باشند، یا این وظیفه به موقعیتهای شغلی مرتبط مانند طراح گرافیک یا تکنسین سیستمهای اطلاعاتی محول شود. توسعه وب میتواند تلاشی مشترک بین بخشهای مختلف باشد تا دامنه یک بخش مشخص.
تخصصهای توسعه وب
سه نوع تخصص در توسعه وب وجود دارد:
- توسعهدهنده فرانتاند (Front-end Developer): مسئول رفتار و ظواهر بصری که در مرورگر کاربر اجرا میشوند.
- توسعهدهنده بکاند (Back-end Developer): با سرورها سروکار دارد.
- توسعهدهنده فولاستک (Full-stack Developer): مسئول هر دو بخش فرانتاند و بکاند است.
در حال حاضر، تقاضا برای توسعهدهندگان React و Node.JS در سراسر جهان بسیار بالا است.
طراحی وب
- طراحی گرافیک
- تایپوگرافی
- چیدمان صفحه
- طراحی تجربه کاربری (UX Design)
- طراحی رابط کاربری (UI Design)
تکنیکهای طراحی وب
- طراحی وب واکنشگرا (Responsive Web Design - RWD)
- طراحی وب تطبیقی (Adaptive Web Design - AWD)
- بهبود تدریجی (Progressive Enhancement)
- طراحی وب بدون جدول (Tableless Web Design)
نرمافزارهای طراحی وب
- Adobe Photoshop
- Adobe Illustrator
- Adobe XD
- Figma
- Sketch
- Affinity Designer
- Inkscape
توسعه وب
توسعه فرانتاند وب
فرانتاند وب، شیوهای است که دادهها را از طریق استفاده از HTML، CSS و JavaScript به یک رابط گرافیکی تبدیل میکند تا کاربران بتوانند با آن دادهها تعامل داشته باشند.
- HTML (HyperText Markup Language)
- CSS (Cascading Style Sheets)
- چارچوبهای CSS (CSS Frameworks)
- JavaScript
- مدیران بسته برای JavaScript (مانند npm)
اسکریپتنویسی سمت سرور (Server-side Scripting)
این بخش شامل توسعه بکاند وب نیز میشود و زبانها و تکنولوژیهای متنوعی را در بر میگیرد:
- ActiveVFP
- ASP / ASP.NET
- ColdFusion Markup Language
- Go
- Google Apps Script
- Hack / PHP
- Haskell (مانند Yesod)
- Java (مانند JSP)
- JavaScript یا TypeScript (مانند Node.js)
- Lasso
- Lua
- NodeJS
- Parser
- Perl (از طریق CGI.pm)
- PHP
- Progress WebSpeed
- Python (مانند Pyramid, Flask, Django)
- R (مانند rApache)
- React (JSX, TSX)
- Ruby (مانند Ruby on Rails)
- SMX
- Tcl
- WebDNA
توسعه فولاستک وب
فولاستک وب، شامل توسعه هر دو بخش فرانتاند و بکاند (سمت سرور) میشود.
چارچوبهای وب (Web Frameworks)
- انواع معماریهای چارچوب: Model–view–controller (MVC), Three-tier architecture
نرمافزارهای توسعه وب
- Atom
- IntelliJ IDEA
- Sublime Text
- Visual Studio Code
مباحث مرتبط
جستارهای مرتبط شامل مباحثی چون طرح کلی کامپیوترها، محاسبات، فناوری اطلاعات، علوم کامپیوتر، هوش مصنوعی، رمزنگاری، اینترنت، گوگل، نرمافزار، انواع نرمافزار، نرمافزار آزاد، موتورهای جستجو، توسعه نرمافزار، مهندسی نرمافزار، طراحی و توسعه وب، و برنامهنویسی کامپیوتر است.
زبانهای برنامهنویسی مانند C++، Perl و مهندسی کامپیوتر نیز در این دسته قرار میگیرند.