今天和老板吃饭,谈到开发效率的问题。老板提议能否用一些网页设计工具来做ui开发,原因是他见到有的developer花费很多时间在写ui上面。老板认为如果做ui能直接拖拽控件,所见即所得,这样就可以把主要精力花在核心业务上面。老板本身是做业务的,博士出身,但是基本不懂软件开发。估计是平时看我用rose做设计觉得不错,才冒出这样的想法。
首先大概介绍一下我们公司的系统。我们是做制造业的生产管理系统,主要客户是模具制造,机器制造,印刷等行业的公司。我们只有一个产品,销售给不同公司的时候针对客户的一些特殊需求做一些定制。架构上用的是jsp+struts+ejb+oracle。系统复杂程度中等偏上,有四十多个业务模块,persistent object大概有近千个。
在显示层,大量使用了javascript/ajax,css。因为客户对界面user friendly要求很高,所以我们的界面很复杂,不是简单的单个object的crud。我开发了不少ajax-enabled ui controls,例如tree, grid table, split panel, tab panel, modal popup window, auto suggest(注:并非重新发明轮子,只是我做这些的时候ajax刚刚流行,很多现在牛b的框架都还没有出现,出现的也还不是很完善)。为了让其他developer能轻松的使用这些ui控件,我又写一系列的jsp tag。这些jsp tag的主要作用,一是封装了底层的javascript, css细节,二是负责和web层数据绑定,数据交互,以及和后台的xml配置(主要用于描述静态业务数据)绑定,三是自动进行数据验证。
好了,言归正传。我给老板的回答是:
1。基于目前的ui复杂性,90%都不是原生的html控件。如果用一般的网页设计工具,比如dreamweaver,frontpage这种,除了画一些整体的布局以外,似乎没有太大的其他用途。如果用dreamweaver来设计具体的页面,那样就无法使用现成的jsp tag,developer需要花费更多的时间来实现原先tag封装的复杂功能。
2。一些ide,都提供可视化开发jsp的功能。比如说eclipse, netbean, jdevelper。但他们提供的大部分也是原生的html control,复杂一点的会提供内置ajax功能的jsf facelet。但都不能满足我们的需求。
3。如果使用工具开发界面的话,工具必须能供提供扩展性。这样我或许可以用plugin的形式把自己封装过的ui控件加入到工具中,继而以拖拽的方法来“画“界面。否则虽然工具简化了layout的开发,但却大大复杂化了数据绑定,交互等其他方面。
4。有的developer做ui慢,是因为他不求甚解,不做研究,对javascript,css,html不熟。有些已经提供的功能都不知道用。对于这样的人,就算ui简单了,后台逻辑还是能累死他。
想和大家讨论的是:
A。对于企业系统,我很想知道其他公司表现层都是用什么样的开发模式?单靠美工mm可以搞定吗?我们公司根本就没有专门的美工,界面都是developer做的。
B。可视化开发能否真的提高开发效率?还是看起来很美,实际上用处不大?其实我个人总是感觉,可视化编辑器拽出来的代码都很龌龊。
C。有没有符合能符合我需求的可视界面工具?我感觉可以通过为ide开发一些插件来做到这一点,不知道是否可行?
欢迎大家指点,以及拍砖。
分享到:
相关推荐
这样的框架通常包括一系列预设的组件、样式库、布局工具以及交互设计模式,旨在简化前端开发流程,提高开发效率,同时确保应用程序的用户体验(UX)达到高标准。 在描述中提到,“像我们不懂前端的,这个可以有”,...
《移动应用UI设计模式》是一本移动应用UI设计模式参考书,分10大类介绍了70个移动应用设计模式(包括反模式),用400多个屏幕截图和图解帮助读者理解和... 《移动应用UI设计模式》适合移动应用开发人员、UI设计师阅读。
移动应用UI设计模式是移动应用开发和设计领域的重要组成部分,它涵盖了用户界面设计的各个方面,帮助设计师和开发者创建直观、易用且美观的应用程序。《移动应用UI设计模式》这本书基于Theresa Neil的著作,它以...
这是一本移动应用 UI 设计模式参考书,分 10 大类介绍了 70 个移动应用设计模式(包括反模式),用 400 多个屏幕截图和图解帮助读者理解和利用 UI 设计模式,以解决常见的设计难题,同时提供了“即学即用”式的技巧...
本文将详细介绍几种常见的UI设计模式及其应用场景,帮助设计师们更好地理解和运用这些模式。 #### 二、常见UI设计模式详解 ##### 1. 主体/细节(Master/Detail)模式 - **概念**:这是一种典型的分屏设计模式,...
Kendo UI开发教程涵盖了使用Kendo UI这一强大的前端框架开发Web应用的知识。Kendo UI是Telerik公司开发的一个基于HTML5和jQuery的综合UI框架,它支持开发者构建时尚且功能丰富的Web应用程序。本教程将详细探讨Kendo ...
综上所述,"Extjs FineUI开发框架 FineOffice框架 OA源码"是一个完整的Web应用开发案例,展示了如何利用这些工具和技术来构建一个高效的办公自动化系统。开发者可以通过分析和学习这套源码,了解如何在实际项目中...
本篇文章将深入探讨iOS UI开发的基础知识及其实践应用,特别关注UITableView这一重要的UI组件。 #### 二、UITableView简介 UITableView是iOS应用中最常见的UI组件之一,用于展示列表数据。它提供了丰富的功能,如...
总的来说,结合Vue.js的灵活性和华为hilink平台的强大功能,开发者可以构建出高效、美观且具有高度定制性的物联网应用UI。通过深入理解和实践"hi-ui-master"项目,开发者不仅可以掌握前端开发技巧,还能更好地理解...
本资源“安卓Android源码——ui开发类库示例源码.zip”提供了丰富的UI开发示例,帮助开发者更好地理解和应用各种UI类库。下面,我们将详细探讨这些知识点。 1. **Android UI组件**:Android SDK包含了多种内置的UI...
这个基于SwiftUI开发的iOS App,名为“swiftui-app-habits-master”,很可能是用于帮助用户培养习惯或追踪日常行为的应用。本文将深入探讨SwiftUI的核心概念、优势以及如何利用它来开发iOS应用。 首先,SwiftUI 的...
7. MVVM (Model-View-ViewModel)设计模式:在C# UI开发中广泛应用,它分离了业务逻辑和视图,使得开发更易于测试和维护。ViewModel作为桥梁,处理视图和模型之间的交互。 8. 控件库:例如DevExpress、Telerik和...
Java界面UI开发是Java应用程序与用户交互的重要环节,Eclipse SWT (Standard Widget Toolkit) 和 JFace 是其中两个关键的库,用于构建强大的图形用户界面。本资料主要关注这两个库的开发实战精解。 Eclipse SWT 是...
快应用的开发结合了移动互联网的便捷性和原生应用的高性能,提供了一种高效、便捷的开发模式。在这个名为"基于快应用 的多功能、富交互、轻量级的UI组件库.zip"的压缩包中,我们看到的是一个专门针对快应用开发的UI...
以创建项目为例,测试人员可以使用特定的应用程序测试语言编写测试脚本,而开发人员则负责构建能够与UI交互并执行具体操作的固定装置。例如,固定装置可能包含打开项目向导、填写表单字段、点击按钮等操作。 ### ...
在Android应用开发中,UI(用户界面)设计是至关重要的,因为它直接影响到用户的使用体验。...随着技术的不断进步,我们可以期待未来会有更多创新的工具和功能,让Android应用的UI开发更加便捷和高效。
QAPP UI正是为这种快速、便捷的应用模式量身定制的UI解决方案。 **QAPP UI组件库特性** 1. **多功能性**:QAPP UI包含了一系列常用的UI组件,如按钮、表单、导航栏、滑动选择器、列表视图等,覆盖了应用开发中的...
在企业级应用开发中,设计模式是不可或缺的一部分。我们将学习常见的设计模式,如工厂模式、单例模式、观察者模式等,这些模式有助于我们构建可扩展、可维护的软件结构。 接下来,我们将深入探讨Windows Forms和WPF...