Web开发经常把角色划分为界面开发人员(Designer)和程序设计人员(Developer)。我倒觉得两种角色由同一人担当开发效率更高。
1.
Designer和Developer的交流成本太高。页面代码中充斥着静态HTML和服务器脚本,服务器脚本让HTML难以理解,经常让Designer很头疼,不得不反复与Developer交流。
2.
Designer善于撰写HTML,但是不善于Clean Code和Refactoring。这就导致了最后形成的View层的HTML代码重复冗长,难以维护。现实是,Web开发的大部分工作量在表示层,难以理解,让人恶心的HTML大大增加了Web开发的成本。HTML代码也是代码,垃圾代码永远是项目的绊脚石。
3.
一些HTML可以用DSL代替,DSL的撰写更应当由Developer来承担。XML格式的标签语言创建的初衷就是给机器读的,不是给人读的。称XML更容易让人理解的人绝对有病,每次我看见嵌套的XML标签时都想吐。自HTML创生以来,各大IDE厂商都试图减轻XML格式对人的负担,可惜都失败了,甚至会生成更加垃圾的HTML。易读易改的代码才是王道。于是一些HTML的DSL比如HAML,ActiveForm诞生了。这些DSL的设计目的就是撰写表示层代码更加容易,无论对Developer还是Designer。
并非Designer完全没有用武之地,Designer只要负责绘制效果图和一些Logo图片,也许还要有修改CSS的能力,然后由Developer实现HTML。只要严格按照Web标准开发,表示层可以清晰的划分为:Structure(HTML),Presentation(CSS),Behavior(JavaScript)。大部分的显示效果完全可以由CSS来实现,根本不用动HTML。
问题是这种Developer需要比较全面地精通Web开发,难以聘用到。话又说回来,招不到精英就不要开公司,回家种田算了。If
you hire a sucker, you are a sucker.
分享到:
相关推荐
在Web开发中,项目的成功很大程度上依赖于团队成员的角色划分与责任明确。一般而言,开发团队可大致分为以下角色: - **项目负责人(项目经理)**:负责项目的整体协调、时间管理、资源分配以及与客户和其他利益...
在 Web 项目开发中,角色划分是非常重要的一步。开发团队一般可以划分为三种角色:项目经理、程序员和美工。项目经理负责项目的人事协调、时间进度等安排,以及处理一些与项目相关的其他事情。程序员主要负责项目的...
【WEB开发技术经验】在构建Web应用程序的过程中,遵循一套共同的开发规范和技术约定至关重要,这有助于确保团队协作的高效性和项目质量的提升。以下是一些关键的开发流程、角色分配、工具选择和技术规则。 首先,**...
其次,"工具"在WEB开发中扮演着重要角色。例如,代码编辑器如Visual Studio Code、Sublime Text或Atom,它们提供了代码高亮、自动补全和版本控制等功能,极大地提高了开发效率。版本控制系统如Git,用于追踪代码的...
Web开发涉及多种技术和工具,选择合适的开发工具至关重要。常见的开发环境包括: - **操作系统**:Windows、Linux - **服务器软件**:IIS、Apache - **后端技术栈**:Java (J2EE)、.NET、PHP、Python (Django/Flask...
3. **权限管理和安全**:如何实现用户角色划分,保护敏感数据,防止未授权访问。 4. **数据交互与API**:设计和使用RESTful API,实现系统内部以及与其他系统之间的数据交换。 5. **用户体验**:关注页面布局、...
理解如何在项目中划分模型、视图和控制器的角色,有助于组织代码和提高可维护性。 3. **JDBC与数据库交互**:Java数据库连接(JDBC)是Java访问数据库的标准API。学习者将学习如何加载驱动,建立数据库连接,执行...
在Web开发领域,MVC(Model-View-Controller)架构...总之,MVC三层架构在Web开发中扮演着至关重要的角色,通过合理划分职责,提高了开发效率和软件质量。理解和熟练掌握这一模式,对于提升Web开发技能具有深远意义。
首先,项目的角色划分至关重要。通常,开发团队由项目负责人(项目经理)、程序员和美工构成。项目经理负责整体协调,包括人力资源分配、时间规划和非技术问题的解决。程序员则负责需求分析、设计、编码、测试和部署...
一、项目角色划分 项目通常包括三个核心角色:项目经理、程序员和美工。项目经理负责整体协调,包括人力资源、时间管理和问题解决。程序员则承担需求分析、编程、测试等工作,而美工则专注于视觉设计和用户体验。...
【Web开发流程】是关于如何有序、高效地进行Web项目开发的一种系统方法。Web开发的特点在于其分散性和交互性,因此需要遵循特定的开发规范和技术约定,以确保团队协作和项目质量。 首先,**项目的角色划分**至关...
在探讨MVC模式在Java Web开发中的应用和实现时,首先需要了解MVC模式的基本概念及其在软件开发中的重要性。MVC设计模式是一种将软件应用程序划分为三个主要组件——模型(Model)、视图(View)和控制器(Controller...
基于Rails的敏捷Web开发,就是在Rails框架基础上实施敏捷开发策略,缩短开发周期,快速响应变化。 在敏捷Web开发中,有几个核心概念需要掌握: 1. Scrum框架:敏捷开发中最常用的框架之一,它通过规定一系列的角色...
UAP-WEB6.3的核心在于实现了一个轻量级的Web开发环境,它基于纯Web技术,支持丰富的UI组件和统一的渲染引擎框架,结合MVC框架、流程引擎、缓存机制等,提供了从开发到部署的全角色集成开发工具。接下来,我们将深入...
在《WEB前端开发十日谈》中,作者可能会深入讨论“科班秀才”的角色,即那些接受过传统计算机科学教育的前端开发者,他们在面对Web前端的新挑战时如何调整自我定位,如何平衡理论知识与实际应用,以及如何在快速变化...
- 角色管理:讲解了如何实现用户角色划分,以及基于角色的权限控制。 9. **第九章:创建Web控件(重复)** - 控件开发续:进一步探讨自定义控件的高级特性和功能。 10. **第十章:全球化和本地化** - 多语言...
这个框架以其双向数据绑定、模块化结构、依赖注入等特性,极大地简化了Web应用的开发流程,尤其适合构建下一代动态和交互性强的Web应用。本资源提供了2013年的"用AngularJS开发下一代Web应用"的中英双版本电子书,...
总的来说,基于Python的Flask框架实现后台权限管理系统是一个综合性的任务,涵盖了Web开发的多个方面,包括前端交互、后端逻辑、数据库操作以及安全性。通过熟练掌握Flask和相关的扩展库,可以构建出高效、稳定的...