`
timerri
  • 浏览: 47074 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

表现层该由谁来做!?

阅读更多
发言要等3天阿,终于等过了阿.....

表现层该由谁来做!?程序员,还是美工,还是会美工的程序员,还是会程序的美工?

现在在java中流行的表现层处理方法,基本分为以下几种:
1.用jsp的tag
2.velocity之类的脚本
3.javascript填充数据

从技术上讲,可能大部分程序员都会习惯第一种方法,众多的框架也在用第一种方法扩展自己的表现层能力。比如struts等等。可是大家用了这个以后有没有一种感觉,那就是页面要改起来太难了,特别是给一般的美工进行修饰的话,美工基本拿那些tag没有办法。所以,最后的整合工作还是落在了程序员的头上。可是要找到一个审美观优秀的程序员,基本跟找到一个会写程序的美工一样难。呵呵,产品的结果就不必多说了,一般只能达到“看得过去”这个档次。

用velocity之类的,也同样有第一个方面的问题,虽然语法较为简单,但是毕竟是一门新的语法。要美工掌握的话,还是需要培训。

用javascript可能就会比较灵活,基本上页面如何变化都能适应,不过问题也是明显的,只要客户端不允许运行javascipt,或者客户端使用怪异的浏览器,表现层就彻底歇菜。

我们现在项目中采用的方法,是仅在jsp中使用el和jstl的部分语法,这样美工很轻松就能掌握,美工也能用所见即所得的工具(frontpage或dreamweaver)直接进行页面编辑。而逻辑部分我们使用了类似struts的action来进行处理(实际上,我们有一个自己的框架,包括orm,rro,json等功能,而且基本不用配置)。这样,美工和程序员只要约定表单内容,工作基本上就可以完全分开,各做各的。最后只需要用美工的页面覆盖程序员自己的测试页面,作一遍整合测试就可以了。

不知道各位在这方面是如何协调专职美工和程序员的工作呢?
分享到:
评论
50 楼 johnnyhg 2007-12-10  
timerri 写道
发言要等3天阿,终于等过了阿.....

表现层该由谁来做!?程序员,还是美工,还是会美工的程序员,还是会程序的美工?

现在在java中流行的表现层处理方法,基本分为以下几种:
1.用jsp的tag
2.velocity之类的脚本
3.javascript填充数据

从技术上讲,可能大部分程序员都会习惯第一种方法,众多的框架也在用第一种方法扩展自己的表现层能力。比如struts等等。可是大家用了这个以后有没有一种感觉,那就是页面要改起来太难了,特别是给一般的美工进行修饰的话,美工基本拿那些tag没有办法。所以,最后的整合工作还是落在了程序员的头上。可是要找到一个审美观优秀的程序员,基本跟找到一个会写程序的美工一样难。呵呵,产品的结果就不必多说了,一般只能达到“看得过去”这个档次。

用velocity之类的,也同样有第一个方面的问题,虽然语法较为简单,但是毕竟是一门新的语法。要美工掌握的话,还是需要培训。

用javascript可能就会比较灵活,基本上页面如何变化都能适应,不过问题也是明显的,只要客户端不允许运行javascipt,或者客户端使用怪异的浏览器,表现层就彻底歇菜。

我们现在项目中采用的方法,是仅在jsp中使用el和jstl的部分语法,这样美工很轻松就能掌握,美工也能用所见即所得的工具(frontpage或dreamweaver)直接进行页面编辑。而逻辑部分我们使用了类似struts的action来进行处理(实际上,我们有一个自己的框架,包括orm,rro,json等功能,而且基本不用配置)。这样,美工和程序员只要约定表单内容,工作基本上就可以完全分开,各做各的。最后只需要用美工的页面覆盖程序员自己的测试页面,作一遍整合测试就可以了。

不知道各位在这方面是如何协调专职美工和程序员的工作呢?

最重要的是要找一个:会写CSS+DIV的美工!这样程序员的工作省了一大半了。
49 楼 kingjzd 2007-12-10  
俺们美工就做个CSS+图片
48 楼 sqhe18 2007-11-17  
我们有专门做ui的程序员。大概的流程是:美工作图片=》ui程序员制作html js等=》后台程序员填上后台的逻辑。
47 楼 zhangpeng8394 2007-11-17  
应该各负其则啊,要是什么都由程序员作了,美工不就失业了
所以美工应该试着把自己的饭碗抢回来[b][size=18][/size]
46 楼 pacer123 2007-11-16  
这个可是不同的公司有不同的要求啊,我们之前做的项目,是前台展现层跟后台的业务逻辑都自己写,除非遇到一些页面上显示不美观的问题才去请教美工让美工调!汗那ing。。。。。
45 楼 tigershuang 2007-11-15  
timerri的想法不错,我们也有这样的问题。

不过真正要实现美工和程序完全分离似乎也没有必要。毕竟用户关注的结果,只要结果好,过程有多麻烦又有谁会在意呢?
44 楼 抛出异常的爱 2007-11-15  
xellos 写道
hyhongyong 写道
美工不需要知道什么表现层,只做好静态页面就行。
什么都会的人,价格也高啊。



什么都会的人,在职位不太分明的公司,的确价格比较高.那些公司喜欢全能型人才.

不过如果去IBM面试,说自己会切页面,精通css,会美术设计,会photoshop处理图片,会做flash,会flex,还会java写程序.人家回问你:你到底会什么.
ME啊
pengjun_lovecoding@hotmail.com 写道
tapestry 写道
美工是搞设计的,从web2.0以来,其实出现了一个新的中间的职业,不知道怎么称呼,也就是会切片,懂css和基本的javascript的,而且切完后用div重新规整代码的,这样的人员真是美工和程序员之间不可或缺的粘合剂呀,有这么个人员,谁都happy,没了他,谁都难受。不过现在看来这个角色还是程序员在当呀。


现在这种让人happy的伙计太少,boss说要品质。于是程序员自己掏腰包买了javascript,Css,div狂肯。之后,boss说伙计你能不能做的精致点... 我现在的写照...

tapestry就是作这个用的。
43 楼 过河卒 2007-11-14  
tapestry 写道
美工是搞设计的,从web2.0以来,其实出现了一个新的中间的职业,不知道怎么称呼,也就是会切片,懂css和基本的javascript的,而且切完后用div重新规整代码的,这样的人员真是美工和程序员之间不可或缺的粘合剂呀,有这么个人员,谁都happy,没了他,谁都难受。不过现在看来这个角色还是程序员在当呀。


现在这种让人happy的伙计太少,boss说要品质。于是程序员自己掏腰包买了javascript,Css,div狂肯。之后,boss说伙计你能不能做的精致点... 我现在的写照...
42 楼 triu 2007-11-14  
realorg 写道
现在很多 平台(一些软件公司的)都将很多功能封装了,很多情况下,后台和业务都可以可视化的定制,而前台允许程序员自由发挥。

这种情况下,都是程序员先将一些元素建立出来,交给美工去美化。


不再在页面中嵌入代码是一种理想的开发模式,相信会很有前途。
41 楼 realorg 2007-11-14  
现在很多 平台(一些软件公司的)都将很多功能封装了,很多情况下,后台和业务都可以可视化的定制,而前台允许程序员自由发挥。

这种情况下,都是程序员先将一些元素建立出来,交给美工去美化。
40 楼 xellos 2007-11-14  
hyhongyong 写道
美工不需要知道什么表现层,只做好静态页面就行。
什么都会的人,价格也高啊。



什么都会的人,在职位不太分明的公司,的确价格比较高.那些公司喜欢全能型人才.

不过如果去IBM面试,说自己会切页面,精通css,会美术设计,会photoshop处理图片,会做flash,会flex,还会java写程序.人家回问你:你到底会什么.
39 楼 bluemeteor 2007-11-14  
如果楼主希望了解在正规,传统的企业开发中表现层的相关概念,请到AJAX板块里面参照JellyMe朋友的一个非常棒的帖子

这里百分之八十的回复让你的帖子更像一个对中国现有软件企业开发模式的调查
38 楼 xellos 2007-11-14  
marcian 写道
我觉得美工(设计)+前端开发(XHTML+CSS+JS)+后台是合理的组合,也是将来的趋势。
PS:我一点都不喜欢使用tag,特别讨厌,有和我一样感觉的人吗?


个人感觉跟你一样,非常不喜欢tag.
但是我是jstl的支持者.
非常厌恶struts等框架又造出的那一套tag.
不过有些tag,比如struts里的表单相关的tag,可以确实带来一些方便的除外.
不过举个例子,struts1.x 里的logic下的所有tag,基本是在重复造轮子.无聊之极.除了增加学习成本,没看到什么好处.循环输出什么的,用jstl就挺好.
我们在某些情况下需要一点统一,不要重复造轮子,不要无故增加学习成本.
37 楼 xellos 2007-11-14  
timerri 写道
或许把UI的制作者叫做美工太偏激了点...虽然我们内部把做界面开发的都称为美工。


我不认为"美工"是个低级的称呼,虽然我们并不这么称呼.

我们公司是互联网公司.有严格的分工.
有 产品 设计 制作 程序 四种职位.
产品就不用多说了,就是策划产品的专员.由他们来提供逻辑,用户流程.
设计是针对页面进行设计的,就是页面长什么样子.他们的结果是出每个页面的jpg图片.
制作 是拿设计的jpg图片,把它们"切页面".切成标准的html 页面的网页制作人员.
程序 就是最后一道步骤了,加入动态的程序.


怎么样,看起来挺完善的吧?

但是世界工作起来却并不那么顺心.尤其编辑跟程序打交道的时候.因为编辑们好象分不清这四种职位.他们知道有问题找程序.

36 楼 triu 2007-11-14  
marcian 写道
我觉得美工(设计)+前端开发(XHTML+CSS+JS)+后台是合理的组合,也是将来的趋势。
PS:我一点都不喜欢使用tag,特别讨厌,有和我一样感觉的人吗?


是的,非常讨厌tag,赞成你的方法,XHTML可以使用XML+XSLT来做,Cocoon就是这么做的,不过Cocoon的Site Map不好管理,所以自己根据Cocoon的原理搞了一个框架,感觉还不错,最近,了解到OSGi,所以想在框架里增加对热部署的实现。
35 楼 marcian 2007-11-10  
我觉得美工(设计)+前端开发(XHTML+CSS+JS)+后台是合理的组合,也是将来的趋势。
PS:我一点都不喜欢使用tag,特别讨厌,有和我一样感觉的人吗?
34 楼 shenfeng_boy 2007-10-31  
   呵呵,我们就不会像上面同仁那么累了,我们的系统是自动生成的JSP页面,有一个专门的JSP模板程序负责生成页面,所需的字段类型从数据库取得,这样生成的页面风格也很统一,不过维护起来很是麻烦,需要熟悉数据库页面配置字段,所以公司没有一个美工,都是程序员来处理页面和功能
33 楼 zhyun29 2007-10-31  
tapestry 写道
美工是搞设计的,从web2.0以来,其实出现了一个新的中间的职业,不知道怎么称呼,也就是会切片,懂css和基本的javascript的,而且切完后用div重新规整代码的,这样的人员真是美工和程序员之间不可或缺的粘合剂呀,有这么个人员,谁都happy,没了他,谁都难受。不过现在看来这个角色还是程序员在当呀。

哈哈,这样的人才我们公司就有一个,程序员太幸福了,幸福的都快被惯坏了,哈哈,大家羡慕吧
32 楼 jimmy_c 2007-10-31  
我们应该算是大公司了,但不是做Web的,UI也不是主要的工作。在这种问题的解决中,有三个类型的角色:
1. 用户接口设计师。根据需求和界面设计经验,“画”出一个要实现的界面。他需要考虑:客户需求;本地化需求;界面风格统一等问题。
2. 程序员。根据1提出的要求,实现界面及功能。多数简单的需求就不用麻烦1来设计了。对于需求变化或比较复杂的界面设计时,可能要请1来帮忙设计。
3. 美工。很少使用。根据2或1的要求,做一些诸如色彩调配,css设计等工作。
31 楼 triu 2007-10-19  
所以一直试图将管理、内容、业务逻辑和样式分开,开始很看重Cocoon,后来发现Site Map相当难管理,就没在项目中用它,直到最近才想到不使用Site Map的方法,就是用功能目录(就像servlet的部署描述,带上参数),解决掉Cocoon管理上的问题,事情就变得比较简单了。

相关推荐

    谷歌重磅:可以优化自己的优化器!手动调参或将成为历史!?.pdf

    ?】 这篇论文的发布在深度学习领域引起了广泛的关注,因为它可能彻底改变我们训练深度学习模型的方式。一直以来,优化器的选择和参数调整是算法工程师在构建模型时的重要任务。从AdaGrad、RMSprop到Adam,各种优化...

    以4%参数量比肩GPT-3!Deepmind 发布检索型 LM,或将成为 LM 发展新趋势!? .pdf

    该模型采用检索增强的方法,降低了模型复杂度,同时保持了高效率。 【标签】: AI技术,自然语言处理,语言模型,模型轻量化,检索增强,Transformer **正文** 在AI技术领域,尤其是自然语言处理(NLP),大模型如...

    什么是三层架构_表现层/业务逻辑层/数据访问层

    这种架构模式将应用程序划分为三个主要部分:表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。 表现层,或用户界面层(UI),是用户与系统交互的地方。这一层负责展示数据,接收用户输入,并处理用户触发的...

    三层架构(表现层、业务逻辑层、数据访问层)

    目录 1三层结构原理 2各层的作用 3区分方法 ? 表示层 ? 业务逻辑层 ? 数据层 4规则 5优缺点 ? 优点 ? 缺点 6与MVC的区别

    )高手写的CS三层构架,给新人参考!.rar.rar

    在C#中,可以使用类库来封装各层的功能,比如使用ASP.NET MVC或WinForms创建表现层,使用Business Components或自定义类实现业务逻辑层,使用ADO.NET或Entity Framework处理数据访问层。 在给定的压缩包文件"高手写...

    java 三层做的固定资产系统!

    三层架构是一种常见的软件设计模式,它将应用程序分为三个主要部分:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。这种架构的优点在于各层之间职责分明,...

    简单的一个三层机构,带数据库哦!

    这个三层架构指的是逻辑上的三个层次:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。在这个简单的实现中,它包含了与数据库的交互,使得数据存储和检索...

    C# sql winform程序,实现登录注册,3层清晰架构。实现加密! dal bll db层!

    4. **3层架构**:3层架构是一种常见的软件设计模式,将应用程序分为三个独立的层次,分别是表现层(UI,即Winform界面)、业务逻辑层(BLL)和数据访问层(DAL)。这种设计提高了代码的可维护性和可扩展性。 - **...

    基于Java日记本系统的毕业设计,表现层使用JSP技术实现,业务逻辑层使用Servlet技术实现,数据访问层使用JDBC技术实现

    表现层使用JSP技术实现,业务逻辑层使用Servlet技术实现,数据访问层使用JDBC技术实现。 最后完成了模块的划分和数据库的设计与实现,并对系统进行了测试。系统划分为日记管理模块、用户管理模块和系统管理模块。日记...

    三层架构及设计模式(抽象工厂实现)

    三层架构实现,把表现层(WebUI)与数据访问层(DAL)分开,使用业务逻辑进行处理(BLL), 避免了把数据信息暴露在表现层, 从而提供了程序的性能,使用业务逻辑处理与表现层进行交互, 把表现层的需求,通过...

    体系结构1-11次作业答案合集.rar

    试列举出计算机系统的抽象表现为哪些? SA思考题3 1、阅读软件架构师应该知道的97件事,选择3件印象最深的并写出感想。 SA思考题4 1、阅读材料“Software Architecture 4+1”,试给出SA中4+1视图的描述。 SA思考题5 ...

    .net高手写的CS三层构架,给新人参考!

    在CS三层架构中,表现层负责接收用户输入,显示数据,并调用业务逻辑层来处理业务规则。它不包含任何业务逻辑或数据库访问代码,这有助于保持界面的简洁和独立性。 2. 业务逻辑层(Business Logic Layer,BLL): ...

    20210321-安信证券-新三板精选层转板研究系列六:如何看精选层公司年报的高送转?.pdf

    新三板精选层转板研究系列六报告中,探讨了新三板精选层公司年报中的高送转现象及其背后的市场和企业需求。本报告深入分析了新三板精选层公司的股本扩张需求、股价对流动性的影响、转板上市条件以及高送转策略对股价...

    Java WEB 表现层技术清单

    个人整理的一套JavaWEB表现层知识点的清单,学些一门语言有个知识导图对入门的人可能减少迷茫学习起来方便一点~ 另外有本人整理的Java Web开发其它知识点清单~请关注~

    JavaWeb三层架构和五层架构介绍

    三层架构是从整个业务应用角度对程序的划分,包括表现层、业务逻辑层和数据访问层。 表现层 表现层是用户看到的界面,作用是接收用户提交的请求数据,反馈程序的响应数据给用户。其目的是提供可交互的操作界面。 ...

    一个jar包,用JSTL 在表现层分页

    本资源提供了一个jar包,它专门用于在表现层实现分页功能,利用JSTL的强大能力来优化用户体验。在网页应用中,分页是常见的功能,尤其是在处理大量数据时,它可以帮助用户逐步浏览,而不是一次性加载所有内容,提高...

    java_web表现层技术

    该资源是java web表现层技术的一个汇总采用思维导图的方式呈现出来使读者一目了然

    ASP.NET三层模式代码生成器!

    在ASP.NET中,这三层通常包括表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。本文将深入探讨这种模式以及如何使用代码生成器来简化开发过程。 首先,表现层是用户与应用程序交互的部分,它负责显示数据和...

    SDO2JSON:一种业务数据模型到表现层模型的转换方法.pdf

    SDO2JSON:一种业务数据模型到表现层模型的...SDO2JSON 是一种业务数据模型到表现层模型的转换方法,该方法可以解决业务层数据模型的变化对表现层的影响问题,并提供了一种灵活的架构来支持企业信息系统的开发和集成。

    Web表现层分离表现与数据方法的探讨

    标题和描述中提到的知识点是关于Web表现层的分离表现与数据方法的探讨,这是一个在Web开发中极为关键的主题,特别是在提升用户体验、增强网站性能和维护性方面。下面,我们将详细解析这一主题的关键概念和技术实践。...

Global site tag (gtag.js) - Google Analytics