应用程序启动过程模块化

xingeddx 2018-07-30 09:06:59
假如一个应用程序在启动时需要执行几个基本的操作,比如从数据库下载数据,使用配置文件中的数据初始化某些类的实例以备用,或者其他工作。这些工作都是在执行其他业务功能前的准备工作,我想让这些工作模块化,并且考虑某个过程的执行依赖于另一个过程执行的结果这种情况。
这些过程可以配置,比如要应用程序启动时,需要新引进一个初始化过程,可以通过配置来解决这个问题。
感觉和工作流类型,但又不太像,求高手指点一二。或者有现成的例子,给介绍一下也行。
...全文
148 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
这就象有些人说,”我要把在设计器上鼠标拖拉的结果保存到数据库“,”我要让高级用户在 Excel 上进行大量报表格式、公式、保护、VBA 等设计结果保存到数据库“,我要把程序员开发过程描述为数据库里的一大堆配置过程,我要发布一个超级牛逼的”免编程的”给完全不懂编程的最终用户的信息系统开发工具。

然而现实是,这实际上是劳民伤财,做出来的东西是非常低级的增删改查、千篇一律的简单画面和功能。实际上 html、css、xaml、.design.cs甚至 .cs 文件都是文档,源代码就是文档!如果你纠结于这些文档是写成文本文件方式,还是写成数据库表方式,还是像你一样纠结于是写成所谓配置文件方式,其实都是在纠结皮毛。重点在于它价值真的能在开发稍微复杂的用户100%能自主提 UI 交互需求的系统起决定作用么?依我看,对于一个需要3个月开发的项目来说,这些所谓的工具只能节省最多10天的工作量,而后期配置、满足需求必须打破它所付出的则是基本的时间成本,甚至使得一个3个月计划的项目变成了1年也做不完的项目。这就是工程上的想当然。
  • 打赏
  • 举报
回复
编程不靠想象,当你一但某些代码写了3遍之后你就可以考虑通用化、甚至抽象,使得”只写一遍“而不断复用。然后你就是能够先说出自己的设计代码来提问,分享和分析方式来提问题,而不是总是拿”我猜想、试探有没有“这类方式的问题来求人家给你代码
  • 打赏
  • 举报
回复
哪一个程序不是模块化的?程序都是只写一遍(模式)然后反复调用的,但是大多数程序仍然是根据实际去组装的。你说的"模块化“实际上纠结于很底层的一点点编程概念,而不是复杂1000倍的业务概念,所以这类代码也就没有什么用处。比如说读取数据库到另外一个数据库、比如说 ConfigurationManager 读取配置信息,比如说从一个工程代码调用另外其它工程代码.......这些都是 .net 程序中最低级的编程模式,你说来说去其实是把标题党、简单的编程入门术语重复了一遍——老练地包装成那些刚学编程的小白不太熟悉的貌似业务领域的风格。然而你说的东西都是简单的编程模式,根本就是每一个项目都应该灵活编程的,而教条式地编程反而没有经济效益!
wanghui0380 2018-07-30
  • 打赏
  • 举报
回复
你想多了,只需一个接口就好

接口 Iinit
{
int 启动顺序
list<Iinit> 后置任务
task<bool> init()
}

这就成了,至于你是用配置,还是用mef,还是用ioc,就随意了

111,093

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧