@
movistar 我 11 楼那些话,前半部分和后半部分是对应的。厨师对食材、调料、工艺等等细节的把控对应于前端程序员对视图元素、样式、动画、事件等等细节的处理,后端程序员自然是无暇管这些的。
后端程序员的更像是大学食堂(注意我这里说的是食堂这个整体,而不是食堂的厨师),解决的是饭菜的批量生产以及供应的问题,你大学生爱吃不吃,总有吃不起外卖和上不了餐馆的穷学生,以及只想解决温饱问题而对口味没啥追求的同学们,解决的是“吞吐、延迟”一类的问题;前端程序员就好比餐馆的大厨,解决的是对口味要求比较高的客户的饮食需求,不能满足客户需求的话,客户下次就不回来了。
“工程”和“工艺”是两个差异非常大的概念。
工程可以细分为何多具体的工作,不同的角色负责不同的工作,比如一个楼盘开发,开发商老总、包工头、建筑设计师、泥瓦匠、水电工,各自需要处理的细节问题不一样,仅讨论造房子的技术问题这件事,前两个角色是没有任何工艺要求的,他们只需要关心工程进度,而建筑设计师的设计水平、泥瓦匠和水电工的施工水平,就是工艺问题。
所以一个需要展现视图的软件项目的理想的开发流程应该是这样,产品经理(或者类似的知识面覆盖 UI、前端、后端等多个领域的角色)提供完整的功能设计、数据模型设计等文档,然后由设计师与前端程序员、前端程序员与后端程序员约束各自协作过程中需要依赖的相关规范,最后由设计师输出设计稿、前端程序员完成前端开发(如果是 web 项目,就是输出静态资源,如果是 app 项目,就是输出 app 客户端代码),后端则负责完成 server 端的业务系统,最后是集成、部署、运维等相关工作。
你 98 楼阐述观点最大的问题就是,对前端开发和后端开发采用“双标准”,说来说去可以总结为一句话“后端必须严谨,前端可以将就”。
后端与用户之间隔着一个前端,设计师与用户之间隔着一个前端,后端再快、再安全、再高科技,设计稿再惊艳、再完美,也解决不了用户觉得软件界面丑、操作起来别扭等等问题。
没有意识到这个问题人一如既往的骗着自己,意识到问题但不想正面去解决这个问题的人,也只是依赖一些库、框架来“隔靴搔痒”……