在我们实际业务开发中,从头开发一个应用系统,不管是基于BS的前端项目,还是基于WinForm的CS应用系统,都是由容易到复杂,逐步演化的一个开发过程。如果我们基于一定基础上,并配合一些配套的开发工具,那么这个应用系统的开发就会变得容易很多,毕竟现在每一个应用系统都是要求要五脏俱全的系统,不仅要长得漂亮,还要有内涵。对于一个基于CS模式的Winform应用系统,开发起来相对比较容易一些,依赖的东西的边界比较清晰一些,因此大多数可以使用独立、模块化的方式来开发系统。

点击获取DevExpress Winformv21.2正式版

Winform的应用系统的模块化场景

我们开发一个系统的时候,往往需要对各种资源进行各种处理,如硬件API接口(摄像头、读卡器、采集器等)、数据库访问(SQLServer、Oracle、Mysql、SQLite、PostgreSQL、MongoDB)、文件读写支持(XML、JSON、文本文件、图片等)、缓存处理(MemoCache、Redis等),以及第三方的一些接口支持(如微信支付、支付宝、抖音等),当然还有自己业务内部的接口支持,涉及的范围很大也很广,不过我们一般来说,一个系统的主要业务还是对数据库的存取进行处理,因此诞生了很多基于数据库业务的基础模块,如基于通用字典读取和设置的字典模块、权限管理模块等,这些应用模块,基本上是各个业务系统都需用到的,不同的系统,他们的规则和显示方式可能有所差异。

如下是一个基础WinForm框架支持的一些模块图示。

如通用字典管理着整个系统的各种下拉列表或者参考信息。

权限管理模块则定义好整个组织机构、用户、角色、权限分配、菜单资源定义、字段权限、数据权限、黑白名单等配置信息。

权限模块中,是相对复杂一点的模块,其中还需要管理各级组织机构的信息。

权限管理系统模块,可以单独调用登陆后进行展示,也可以通过界面整合的方式,无缝的整合到应用系统中去,作为一个整体应用对待使用。

而工作流模块则管理着日常流程表单的处理。

业务模块则是基于我们某个业务范畴开发的一个独立模块,可能应用到了很多通用的模块,这个也是模块化的精髓。

如下是整合以上一些基础模块的CRM客户关系管理系统的内容,也可以简单的把CRM当成一个复杂一点的业务应用模块。

模块化类似小孩子搭积木的方式构建一个所要的形状,虽然软件和建筑在这方面肯定更加复杂化,但是模块化系统是大势所趋,也是简化开发、易于维护、提高系统健壮性的重要举措。

随着应用模块的不断开发,有一个好的组织架构,纵向统一管理模块中各个局部分层,会更加方便,因此引入了一个框架的设计模式,以便更好统一各个分层的管理。

WinForm开发架构如下所示。

一般框架都支持常见的关系型数据库,并提供他们对应的支持切换。

另外,一方面,我们可以收集Winform开发中常常涉及到的界面控件使用,类库使用,常规组件使用等一系列的代码片段、难点疑点进行整合管理,整理一个综合的案例提供各种各样的开发测试案例代码,用来辅助开发学习了解。

以及一些杂项的内容收集。

力求在各个方面能够快速辅助系统的开发。

Winform的应用系统开发

在我们实际不断的迭代开发中,往往会不断的累积出各个完善的应用模块出来,不过这个过程开发,可以基于我们的配套开发工具进行快速的开发,由于各个模块是基于相同的架构分层,以及对整套系统的一个固定的开发模式,我们可以采用代码生成工具来根据数据库信息,生成对应分层的项目代码,并把它们之间的关系处理好,生成一个完整的解决方案,生成即可编译通过的完善项目模块。

对于Winform界面来说,有时候,我们需要精细化的定义各种界面部分的内容,因此工具提供配置进行定义,然后再生成。

如在代码生成工具里面,设置主从表的界面生成如下所示。

有了系统框架的通用基础模块支持,以及基于固定架构的代码生成工具辅助开发,事半功倍,而且开发的系统模块更加统一和稳定,并且内置的支持多种数据库的接入, 基本上能够覆盖大多数应用系统的需要。

DevExpress WinForm | 下载试用

DevExpress WinForm拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!

本文转载自:博客园 - 伍华聪


DevExpress技术交流群6:600715373      欢迎一起进群讨论

更多DevExpress线上公开课、中文教程资讯请上中文网获取

WinForm应用实战开发指南 - 快速开发一个WinForm应用系统相关推荐

  1. 快速开发平台快速开发程序

    快速开发平台快速开发程序 1.数据字典如下图: 2.界面设计器代码如下 1 <object name="" assembly="System.Windows.For ...

  2. 易开发是一款帮助开发人员快速开发的工具,功能包括界面分析,页面信息,加固脱壳,支持 Android9.0

    DeveloperHelper 项目地址:WrBug/DeveloperHelper  简介:?易开发是一款帮助开发人员快速开发的工具,功能包括界面分析,页面信息,加固脱壳,支持 Android9.0 ...

  3. 【FastAPI 03】FastAPI快速搭建一个博客系统

    标题:FastAPI快速搭建一个博客系统 大家好,我是Kuls. 这是<小白学FastAPI>系列的第三篇文章. 今天我们主要讲的是FastAPI快速搭建一个博客系统. 这里可能有些小伙伴 ...

  4. 十、小程序实战 (IVX 快速开发教程)

    十.小程序实战 使用小程序完成一个二手信息站点与 WebApp 实现流程类型,只是部分内容使用了微信小程序特有的组件,例如微信登录与 WebApp 略有差别,其它逻辑实现较为类似.我们先制作页面,之后 ...

  5. SpringBoot中业务层标准开发和快速开发(大全)

    可以对照数据层开发学习: http://t.csdn.cn/dE36W 一.业务层标准开发 首先要说明一下,Service层接口定义和数据层接口定义有较大的区别 selectByUserNameAnd ...

  6. Linux开发:快速开发游戏的9个关键!

    1.限定规模 很容易想要去做一个规模宏大的冒险游戏或者可以比拟你最喜欢的游戏的东西.如果你有一些经验,追求超乎游戏 Jam 活动的东西可能很酷,但不要高估自己拥有的时间.我欣赏游戏 Jam 活动的一点 ...

  7. 如何用天纵快速开发平台快速开发办公系统

    谈到开发软件,很多人的第一感觉就是这是一个高技术的活,不懂程序的话肯定连想都不敢去想.其实随着各种创新开发工具的出现,软件开发不再是只有软件工程师才能做的活了,没有学过编程的人完全可以在短时间快速开发 ...

  8. Unity3D游戏开发之快速打造流行的关卡系统

    各位朋友,大家好,欢迎大家关注我的博客,我是秦元培,我的博客地址是blog.csdn.net/qinyuanpei. 今天想和大家分享的是目前在移动平台上较为流行的关卡系统,关卡系统通常是单机手机游戏 ...

  9. OpenCV4.5.4 DNN人脸识别模块使用介绍--如何快速搭建一个人脸识别系统

    点击下方卡片,关注"OpenCV与AI深度学习" 视觉/图像重磅干货,第一时间送达 导读 本文主要介绍OpenCV4.5.4中人脸识别模块的使用和简易人脸识别系统的搭建,供大家参考 ...

  10. 小程序用什么开发?快速开发一个自己的微信小程序教程

    一.写在前面 1.为什么要学小程序开发? 对于前端开发而言,微信小程序因为其简单快速.开发成本低.用户流量巨大等特点,也就成了前端开发工程师必会的一个技能. 2.开发准备: (1)有人开玩笑说,会vu ...

最新文章

  1. R包animalcules-一键式交互探索微生物组数据
  2. 无盘服务器2个dhcp,无盘 dhcp 服务器配置
  3. C# 创建、部署和调用WebService的示例
  4. MySQL发展史重大事件
  5. c#winform pictureBox使用url加载图片
  6. Varchar的最大长度
  7. bzoj2111,P2606-[ZJOI2010]排列计数【Lucas,组合计数,dp】
  8. Leetcode 系列 | 反转链表
  9. Spring-Data-Redis存储对象(redisTemplate)
  10. 循环赛日程安排(构造、分治)
  11. 【keil5】安装及注册
  12. 山东大学软件学院计算机组成原理课程设计实验二
  13. CSS边框图片border-image属性
  14. 无限循环小数与分数的对应关系证明
  15. python读取xlsm文件_在保留VBA宏的同时使用熊猫读取和更新XLSM文件中的图纸 - python...
  16. 箱形图的优缺点,python绘制箱形图
  17. C++ 实验3-2本月有几天?
  18. java获取长度_获取java长度
  19. Spring AOP 切面@Around注解的具体使用
  20. 关于解决Photoshop CS5打开后出现已停止工作强制退出的问题

热门文章

  1. 学计算机的学后感,计算机学习心得体会(通用10篇)
  2. VTM1.0代码阅读:xCheckRDCostMerge2Nx2N函数
  3. SQL Server 启动错误 系统找不到指定的文件/路径
  4. 计算机维修工具大全,电脑硬件维修测试工具大全(附送各类PC检修资源)
  5. 诺基亚N9——刷机教程——为双系统做铺垫
  6. N9(Meego系统)删除自带软件方法------笔者亲测,可行,无副作用
  7. Android应用程序开发以及背后的设计思想深度剖析(2)
  8. 嵌入式USB转RS232九针串口线驱动,及串口软件secureCRT的使用
  9. python代理池搭建
  10. MySQL基础教程5-数据库基础回顾