开发大型管理类软件项目时,经常会遇到庞大的菜单项的管理,例如我们现在开发的项目里,菜单项大概有400-500个以上,我们经常会需要:

1。要增加一个菜单项
2。要删除一个菜单项
3。要修改一个菜单项的名称
4。经常要菜单项的先后顺序要改变
5。菜单项要移动到其他菜单下的子菜单里
6。导出数据给客户看菜单的布局等
7。某些菜单是公开,所有用户都可以访问。
8。停用暂时某些菜单项,过段时间再开放。

虽然这些工作不是天天发生,但是自己维护数据库,看密密麻麻的一大堆数据,真的是会眼花缭乱,当只有50个以内的菜单新项,你通过直接维护数据里的数据,想怎么弄就可以怎么弄是可以的,但是数据有500个以上的数据,你想怎么折腾就像怎么折腾就很困难了,想随心所欲修改数据,维护数据就变得蛮困难了。

我们经常也会发现,某些菜单是公开的,就是所有的用户都可以访问的,有些菜单是有相应权限的人才可以访问,有些菜单也需要临时停用,可能开发好了,才启用,也不能是删除了,再恢复过来也很折腾,所以有一个类似是否生效的功能。

下图是密密麻麻的数据库里的数据,大概有500多条记录,顺序也是很乱的,因为菜单也不是一次性能成行的,不断的修改、增加、减少、移动最后才形成了500多个菜单项,你把这些数据想按理想化的维护,是很痛苦的事情了。

下图是我的后台C\S管理工具,我所有的应用程序都用这个一个后台进行统一配置管理设定权限等,可以开发不同的B\S的项目,原因是C\S的开发效率高,调试也方便,还有集成了系统报警信息的提醒功能等,还有简易的内部即时通讯工具。

后台管理工具里集成了一个简易的即时通讯工具、有报警消息即时提醒功能,也可以显示用户的在线状态,这个功能模块也很稳定,测试了很多次,在网络不稳定时,网络带宽很低时,也不会出现错误,程序都进行了优化,功能比较稳定成熟。
这个后台管理工具特别适合在公司内部使用,是按公司的组织机构显示用户,想找哪个部门的谁,沟通什么事情等很方便。

这个是我的菜单管理工具,我一般习惯性的叫“模块管理”,总觉得说是菜单管理有把范围限定得太小的感觉,可以对模块的顺序调整,不是自己手工输入排序码的那种,那种太笨了,不友善,我不喜欢,我觉得菜单的顺序不能调整,那会搞死人的,还是由按钮来控制排序顺序是很方便的,当然能支持拖动是最理想的,我技术能力还没能打到那个境界。

下面解图是编辑状态时的效果,按ESC就可以退出,我很重视键盘操作,这些常用的功能,一定要注意,不是非要点关闭,点退出才能退出窗体,那太笨重了,我的窗体也一般支持回车换行的功能,因为毕竟是是国产软件,应该符合大部分用户的习惯比较好,我们都习惯了回车换行。

这个是右键快捷菜单功能项目,这个还是蛮有必要的,操作起来会更简便一些,当然我的程序一般都支持拖动功能,树型机构上的数据都支持拖动功能。

模块配置功能就是让系统里的哪些模块生效,那些模块停用的功能设置部分。

下图是在B\S项目中的运行效果图

也没有什么过多的管理思想,就是把一个菜单模块表维护好,想怎么折腾就怎么折腾,这个模块涉及到的表也很少,如下图
我有自己配套的代码生成器,可以快速生成设计好的模型的相关代码,这样写程序也更快捷一些。

此功能模块的难点:
1。数据量比较庞大时,软件的运行速度一定要快,不能太慢。
2。数据的灵活排序问题解决。
3。移动菜单项时的逻辑判断。
4。树型机构的导航功能的窗体的代码的量很大,需要相应的页面操作逻辑处理的代码比较多。
5。即时通讯工具又跟其他很多模块集成在一起,运行又很稳定,一般菜鸟也是搞不定的。
6。开发一个稳定的即时通讯小软件,也是不是那么容易的,需要熟练的C\S开发经验。
7。模块管理是一个独立的部分,又需要受权限控制等的约束,这些都需要写得又合理又清晰。

我的观点:
我们什么都会,但是需要什么,想要什么都需要花时间去在去弄,别人弄的都不放心,别人写的程序质量不行,要么运行不稳定,要么效率不高,要么数据库设计得不合理,要么功能定位不正确,要么某些细节处理得不好,用起来不方便,要么就是界面态丑陋,代码太乱不好维护。

若真的是一个很菜的功能,或者是很一般的东西,我也不敢叫卖,我有时候会想,我做了10年开发,我什么东西可以为别人服务?我能做什么?我天天做开发,当然是我软件开发中遇到的问题,解决的问题,有提供给别人帮助的可能性,有变成产品化软件的希望,虽然大家没有消费工具类软件,消费组件类软件的习惯,大家的产品也不能得到别人的信任的情况下,我还是需要继续走这条不归路,一直努力,早晚会得到大家的认可的。别的我也不懂行,也干不了,只能把这条道走到黑了。

欢迎大家指点批评。

转载于:https://www.cnblogs.com/jirigala/archive/2009/09/02/1558749.html

(15) 常用管理类软件需求征集 -- 通用菜单模块管理相关推荐

  1. 3天搞定的小型B/S内部管理类软件定制开发项目【软件开发实战10步骤详解】

    十一休假,杭州西湖边逛了一圈只能用人山人海来形容,浙大紫金港校区也逛了一圈风景如画,建设得真不错很棒,假期就去了这2个地方,然后在家里陪老婆.看孩子.洗尿布.打了几局星际争霸,在网上接了一个B/S架构 ...

  2. 内部管理类软件基础架构思想(思路图解 + 配套免费视频)

    两三年前就想把这个读取配置文件的,进行一次彻底得改造,一直没精力或者能力还不到位,说实话整体编写代码的能力不够的原因应该是占主要成分,由于这两三年,一直想把这个做好,所以想了很久了,思路成熟时,就一口 ...

  3. 工具类软件操作手册_定位于营销管理软件,以服务汽修服务工厂店和社区店为主,敏煜科技:“BtoBtoC”是未来汽修软件的主流商用模式...

    作者 | 吴小平 来源 | 汽车服务世界(ID:asworld168) 欢迎供稿 | 吴骏:13116718090(同微信) 敏煜科技成立于2018年10月26日,公司研发的敏煜汽修小程序系统拥有自主 ...

  4. 管理类软件设计“渔”之演化

    中国软件行业发展了这么多年,管理类软件的设计主线上大致经历了三大阶段. 第一代"管钱.物"为主: 大家都知道,中国第一代管理类软件主要是以"管钱.物"为主的各类 ...

  5. 管理类联考可以用计算机吗,管理类联考

    基本信息 中文名 管理类联考 外文名 无 定    义 管理类专业硕士入学统一考试专业数量 七个专业学位 考试科目 管理类综合能力.英语二 起始时间 1997年 管理类联考相关概念 编辑 语音 1.& ...

  6. 短信聊天软件需求征集

    *********短信聊天软件功能需求征集************* 前段时间在网上搜S60的短信聊天软件,想像以前palm上进行聊天.可是发现虽然有一些软件有这功能,但总是和以前palm上有差距. ...

  7. 自我管理类书籍推荐以及如何进行自我管理

    在职场中,管理不仅是管别人,更需要管好自己. 如何进行自我管理?首先,我想推荐给大家的是<自我管理必读12篇>这本经典自我管理类书籍.其实在市场上你能找到的关于自我管理的书籍并不在少数,而 ...

  8. 宿舍管理查询软件 C语言 中文摘要,宿舍管理查询软件 课程设计报告.doc

    宿舍管理查询软件 课程设计报告 课 程 设 计 课程设计名称: 宿舍管理查询软件 专 业 班 级 : 计科0604 学 生 姓 名 : 胡方俊 学 号 :20064140414 指 导 教 师 : 白 ...

  9. spss典型相关分析_SPSS做典型相关分析,新版本软件已经有独立菜单模块可完成...

    在旧版SPSS软件中如果要做典型相关分析,我们需要用简单的语法语句调取自带的宏程序,输出的结果以文本为主,没有成体系的表格,结果解读也相对繁琐.相对较新的一些SPSS版本,已经基于Python内置了一 ...

  10. 【开发管理类软件必备知识视频教程之二】登录窗体后台注意事项

    通宵制作,走火入魔通用权限管理视频讲解(娱乐大家.给生活加点儿料) 第二次录视频希望大家能谅解.通宵折腾折腾出了5部视频,都上传好了,给大家分享一下,不足之处请大家指点. C# ASP.NET走火入魔 ...

最新文章

  1. Django博客系统(推荐文章数据展示)
  2. Wireshark分析器分析数据流过程
  3. LoadRunner的Socket脚本关联小技巧
  4. vue和java实现页面增删改_SpringBoot-Vue实现增删改查及分页小DEMO
  5. Bootstrap3 模态对话框的选项
  6. 访问控制列表(二)配置命令
  7. 项目成功的关键是在投资最少的时候找出错误
  8. 问题 B: 编写函数:Swap (I) (Append Code)
  9. python控制arduino模拟端口_用Python控制Arduino实现Blink
  10. 当前操作系统缺少黑体等字体_第十一章 枚举、结构体、联合体
  11. js php后端 安全,前端JS RSA加密,PHP后端解密实现密码安全传输
  12. html支持bmp格式,bmp和jpg的区别是什么?
  13. 品质生活最前端 ACCESS品牌管理集团协同VTN会员商城打响品质购物节
  14. 软件调试修炼之道之——山重水复疑无路
  15. 软工+C(9): 助教指南
  16. 谷歌变坏了?Chrome 已成众矢之的:15 篇前端热文回看
  17. Apache + Tomcat + JK 集群
  18. 在Visual Studio项目中根据系统平台自动引用32或64位的DLL
  19. new bing聊天机器人免翻命令行使用--大佬逆向工程api
  20. 衡水中学计算机老师,衡水中学的老师到底有多拼,看看这“八项规定”就知道了!...

热门文章

  1. 【Android命令行】jarsigner参数详解
  2. bootstrap基础样式学习(二)——栅格
  3. C++第八周学习小结
  4. Unity编辑器扩展之RequireComponent等详解
  5. [转]关于Win32 Console的计时器
  6. 用C#(asp.net)写出登录验证码!
  7. Java学习笔记-枚举类
  8. MySQL学习之——锁(行锁、表锁、页锁、乐观锁、悲观锁等)
  9. MVVM开发模式MVVM Light Toolkit
  10. 关于Linux的目次结构及干系分区成绩