`

软件开发中,如何避免重复造轮子

阅读更多

 

从进行到软件开发这个行业现在已经有几年了,在整理出这个套开发框架之前自己做了不少重复造轮子的事。每次有新的项目总是要耗费不少时间在UI、权限和系统通用模块上面,自己累得要死,老板还骂没效率。为了能提高开发效率,同时也多拿拿奖金、多存点私房钱,我就着手做了一套以权限管理为主的快速开发框架。不求功能在所有项目中都得到使用,至少要大大提高开发效率。


 

一、需求分析

根据《那些年我们一起做过的项目》中各类客户对权限模块和通用模块以及UI的要求,我明确了这个系统中要实现的东西。

1、单位组织多级树型显示,各级部门从属关系一目了然操作便捷

2、用户所有的权限最终分配给用户,如果按用户去分配权限会把系统管理员给累死,系统中先建立角色,角色中再分配权限,在角色的成员中加入用户。当然会有一些用户的权限大同小异,如果不想在系统中创建太多角色可以给用户分配权限。用户最终的权限取角色权限和用户权限的集合。

3、角色一组权限的集合。

4、模块也可以称之为菜单,可以是系统中的页面,也可以是其它系统的页面地址统一纳入到同一套权限系统中维护。

5、按钮

6、权限权限分配模式:

(1)角色权限分配,权限分配的便捷性。

(2)用户权限分配,权限分配的灵活性。

 权限控制类型:

(1)模块权限 采购员有采购模块权限和库存查看模块权限。

(2)按钮权限 采购员能点击新增按钮新增采购单,采购经理能点击审核按钮审核采购单。

(3)数据权限 每个业务员只能看到属于自己的客户资料。

(4)字段权限 会计可以看到库存报表中的所有字段,仓库管理员不能看到报表中的金额字段。

(5)文件权限  采购部的文件只有总经理和采购部成员有权限

7、日志登陆日志、操作日志、系统异常日志

8、数据库管理在前端页面查看数据库信息,数据库备份

9、访问控制

10、动态接口这里说的接口是与其它系统或设备的通信接口,一般以Webservice、WCF、Webapi的形式提供。在系统中对外只暴露一个接口。增加接口、修改接口都不用修改程序。

11、UI前端框架:采用bootstrap,Jquery UI,功能强大扩展灵活,不用担心版权问题。

多种风格界面:经典版、风尚版、炫飞版、飞扬版

12、系统参数

13、自主代码生成器

二、用户体验UI设计

     UI对于一个软件来说就像女人那张脸,别人最先看到的就是你的脸。人再好,脸长得丑肯定还是要经常过光棍节。一套程序UI漂亮程序的档次自然也就上去了。无图无真相,下面给出一些主要界面,详细实现也会在后面的博客中给出。

经典版


 

风尚版


 

炫飞版


 

飞扬版


 

三、单位组织

1、公司管理


 

2、部门管理


 

3、岗位管理


 

4、用户管理


 

5、角色管理


 

6.数据授权代码图


 

 

 

 

 

 

一路走来数个年头,感谢快速开发平台的支持者与使用者,大家可以通过下面的地址了解详情。

官方网站:www.learun.cn

官方免费体验地址:http://www.learun.cn/Home/VerificationForm

分享到:
评论

相关推荐

    重复造轮子,表单验证

    在IT行业中,"重复造轮子,表单验证"是一个常见的议题,特别是在软件开发中。当我们谈论表单验证时,通常是指在用户提交数据到服务器之前,在客户端(通常是Web浏览器)进行的数据验证过程。这个过程确保了用户输入...

    这个主要就是为了一般管理系统重复避免造轮子,不需要在关注权限 页面等,新增功能只需要新增form界面并完成自己的业务

    winform通用开发框架 这个主要就是为了一般管理系统重复避免造轮子,不需要在关注权限 页面等,新增功能只需要新增form界面并完成自己的业务,在系统配置即可。 个人主页有基于该框架开发的简易进销存软件和喷码软件

    国家标准-软件开发规范.rar(开发软件人员的必备)

    3. 代码复用:合理利用已有的代码库,避免重复造轮子。 4. 单元测试:编写单元测试用例,验证代码功能的正确性。 四、测试阶段 1. 单元测试:针对每一个函数或模块进行独立测试。 2. 集成测试:将各个模块组合,...

    软件开发文档模板 规范标准

    在软件开发过程中,文档起着至关重要的作用,它不仅是团队沟通的桥梁,也是项目管理和质量保证的基石。...通过使用这些模板,开发者可以避免重复造轮子,集中精力于核心功能的开发,同时保证文档的质量和一致性。

    再谈开源项目:如何选择、使用以及二次开发?.pdf

    在软件开发领域中,开源项目的出现让开发者可以快速地构建项目,避免重复造轮子。但是,选择和使用开源项目并不是一件简单的事情。架构师需要聪明地选择和使用开源项目,避免踩坑和带来问题。 首先,架构师需要聚焦...

    26部文学经典的经典结束语[参考].pdf

    马尔克斯的《百年孤独》则警示我们,历史的重复与独特性并存,软件开发中也需要避免重复造轮子,同时创新求变,打造独一无二的产品。 《茶花女》的小仲马揭示了故事的独特价值,软件开发中每个项目都有其特定背景和...

    用RTOS做嵌入式开发的优势介绍.docx

    在裸机开发中,软件的可重用性差,因为裸机的代码会过多的依赖于底层硬件,重复造轮子的过程也就不可避免。使用 RTOS 可以解决这个问题,因为 RTOS 可以提供统一的抽象接口层,方便了可重用组件的积累,提高开发效率...

    软件复用PPT学习教案.pptx

    在信息化社会,软件开发面临的挑战之一就是如何有效地利用已有的软件资源,避免重复造轮子。本篇PPT学习教案详细阐述了软件复用的概念、重要性、困难以及实施方法。 软件复用的重要性在于它能够加速开发过程,降低...

    软件设计模式的非软件例子归纳.pdf

    软件设计模式是面向对象编程领域中的重要概念,它源自建筑学家Christopher Alexander的理论,强调了在特定场景下可重用的通用解决...在实践中,这些模式可以帮助开发者避免重复造轮子,减少错误,同时提升代码质量。

    软件构件技术综述

    通过构件的复用,开发团队可以专注于业务逻辑,而不是重复造轮子。同时,构件技术也有助于形成开放的软件生态系统,促进不同组织间的合作与创新。 总之,软件构件技术是软件工程领域的一个重要趋势,它整合了媒体...

    21丨理论七:重复的代码就一定违背DRY吗?如何提高代码的复用性?1

    4. **函数库**和**框架**:提供通用的函数或工具,避免重复造轮子。 5. **设计模式**:利用如工厂模式、策略模式、装饰器模式等设计模式,解决常见问题,提高代码复用性。 6. **代码生成**:使用代码生成工具自动...

    敏捷软件架构、开发方法与开放源码最佳实践

    其次,开源社区提供的活跃支持和资源可以帮助开发者解决问题,避免重复造轮子。此外,开源软件通常具有良好的扩展性和兼容性,便于与其他系统集成。 #### 结论 综上所述,敏捷软件架构、开发方法与开放源码最佳...

    基于HLFramework开源框架下开发的一套通用的企业微信管理营销系统

    插拔式的插件开发模式,致力于开发者的二开需求,避免重复造轮子。加上HLFramework框架本身自带的多种应用软件,形成一个完全的SAAS微应用集群闭环生态。可用于电商、金融、零售、餐饮服装、教育培训、销售等服务...

    QT 完整项目框架 源码分享

    方便以后遇到新项目可以直接拿来用,避免重复造轮子了. 程序功能列表 1.登录界面 2.加载界面 3.26键中英文键盘 4.QSS样式表 5.日志管理 6.冻结个别列的TableWidget 7.自定义TableWidget 8.系统时间设置 9.时间选择...

    程序员的思维修炼

    了解并掌握各种设计模式可以帮助开发人员避免在设计时重复造轮子,同时也能提高代码的可读性和可维护性。设计模式的应用还能让软件架构更加灵活,适应不断变化的需求。 6. 进行持续学习和实践:软件开发是一个快速...

    编程规则惯例约定

    - **可重用性要求**:鼓励编写可重用的组件和函数,避免重复造轮子,以提高开发效率。 3. **文件组织** - **文件内容**:每个文件应专注于单一功能,避免过大的文件。Java源文件通常包含一个类或一个接口,避免多...

    计算机设计大赛参赛文档

    竞品分析涉及到对市场上类似社团管理工具的研究,包括它们的优点和不足,以帮助开发者明确自身产品的定位,找出差异化优势,避免重复造轮子。 二、概要分析 2.1 系统分析 系统分析主要讨论项目的可行性,包括技术、...

    2022年浪潮软件技术培训之设计模式(共20张PPT).pptx

    设计模式提供了解决这些问题的标准模板,使得开发者可以在遇到类似问题时,能够快速有效地进行设计决策,避免重复造轮子。 设计模式的概念最早由建筑师Christopher Alexander提出,他观察到建筑领域中有重复出现的...

    软件工程阶段性报告可行性分析

    通过参考这些模板和素材,我们可以快速理解和掌握可行性分析的核心要素,避免重复造轮子,提升项目管理的专业性。 总结,软件工程的可行性分析在第四周至关重要,它不仅关乎项目能否启动,也直接影响项目的成功率。...

    第四部分软件及多媒体.pptx

    第四部分的讲解主要聚焦在软件和多媒体领域,其中特别强调了计算机系统中软件的重要性和分类。...在实际工作中,开发者应充分利用系统软件提供的功能,避免重复造轮子,同时不断提升自己的编程和系统设计能力。

Global site tag (gtag.js) - Google Analytics