Util应用框架概述

应用框架概述

框架是一种可复用的基础代码库,如果它只解决纯技术问题,可以认为是技术框架,如果它与你的业务相关,则可认为是业务框架,或称为应用框架。

.Net提供的基础类库是最基础的技术框架,它提供了进行.Net开发所需要的基础API,这些API都比较原始。

完全使用原始API进行项目开发,会导致高昂的学习成本,更多的Bug,难以维护的重复代码,低效的开发进度。

为了完成某项特定的技术需求,比如写日志,你可以使用原始API进行简单实现,并在多个地方复制粘贴进行调用。

这很快会让你厌烦,除了冗余代码以外,你发现还需要经常扩展日志操作的功能,于是你想把日志操作封装成库来调用。

一些前辈已经做了这些基础工作,并且他们的工作已经在全球大范围的使用,非常成熟,并且持续维护。

这些能够解决特定技术问题的类库可以统称为第三方技术框架,在项目上使用第三方技术框架是项目成功的必要保障。

从此,你不再为如何实现某项技术问题而烦恼,也不需要为持续扩展的技术需求而疲于奔命,更多的精力被用在业务上,这才是你应该干的事。

对于你的项目,每当碰到某种技术障碍时,你会四处打听有没有某个第三方技术框架解决了你的问题,找到以后,通过调试一些Demo代码,简单的用起来了。

每当需要这个功能的时候,你会从以前的代码复制粘贴,由于第三方技术框架已经高度封装,所以冗余代码不是特别显著,你没有理会它。

如果你的团队并不经常沟通,处理同一问题的过程将在团队中反复发生,这将导致对于某个问题的技术实现不一致,并且付出高昂的学习成本。

当调用代码被大量的复制粘贴后,如果发现调用代码有Bug,或需要增加一些健壮性,你才意识到虽然第三方技术框架已经比较完善,但对它的调用依然有封装的必要。

另一方面,无论是.Net基础框架,还是第三方技术框架,它们包含大量的代码和功能,但常用的可能不到百分之一,需要将最常用的那些功能找出来并进行封装,这样可以极大的降低学习成本。

你开始封装一些经常需要操作的代码,这些代码可能是用.Net原始Api封装的,也可能是封装了第三方技术框架的调用,这些封装好的代码被称为公共操作类,也叫工具类。

对于最基础的CRUD和业务代码的结构,你发现也可以抽取出来,形成分层架构基类。

你的项目可能需要在网页上进行开发,采用原始的Html,Css,Js技术,将面临界面美观,浏览器兼容性,开发效率低下等问题。

一些第三方前端技术框架提供了相关的解决方案,比如Angular,Ng Zorro等。将第三方UI框架集成并封装起来,能够显著提升开发效率。

如果在项目中,你需要实现支付等业务功能,你可以对这些第三方业务接口进行封装。

对于常规的项目,总是需要一些通用模块,比如权限,将它作为后续项目的起点是一个好主意。

当这些基础代码被高度封装后,常规的CRUD代码变得非常简洁,但你还是需要复制这些基础结构,通过反复整理,可以得到一个代码模板,通过代码生成工具将基础的CRUD代码生成出来,可以大幅提升生产力。

这个持续封装过程演变为一套项目开发模式,支持这套模式的所有基础代码库,即为应用框架。

应用框架为你项目的所有方面提供支持,你需要不断的完善它。由于应用框架需要解决你项目上的所有问题,所以没有绝对通用和包罗万象的应用框架,你必须在这些应用框架之上进行扩展。

Util应用框架的由来

Util是我在.Net开发生涯中不断积累而成的一套应用框架,最初的名字叫CommonUtilities,这是一个基本由工具类构成的类库。

随着经验和水平的上升,根据自己的习惯,逐步实现了经典图书中某些概念,并吸收了一些流行应用框架的部分代码。

Util应用框架的最新代码经过完全重写,提升了模块化程度,抛弃了一些历史包袱,代码也更加精练。

Util应用框架的作者: 何镇汐

Util应用框架的主要作者为何镇汐。

Util应用框架的开源协议: MIT

这是最宽松的开源协议,意味着可以以任何方式使用该代码。

Util应用框架的主要贡献者

汪总 胡兴业

这里只列出了主要贡献者,还有很多开发人员以不同形式对Util做出了宝贵贡献。

Util应用框架的目标: 让开发更简单

Util应用框架让你的团队迅速进入业务开发状态,并在开发过程中持续提供帮助。

Util应用框架的特点: 简单易用

Util应用框架的设计理念是追求Api简单化,尽量少的配置,不用精确记忆Api,有个模糊印象即可使用。

Util应用框架的学习成本相对较低,对于有.Net基础的开发人员,进行常规业务开发,通常在3天内上手。

Util应用框架开发流程

搜集 - 整理 - 集成 - 封装

每当发现无法满足项目需求时,扩展框架的时刻来临。

从头造轮子是下策,所以总是先四处搜集相关资料。对于简单的需求,可能只需要找到一些代码片断即可。对于更专业的问题,需要寻求第三方技术框架的帮助。

找到解决方案并调试通过后,需要对代码进行整理,以符合我们的编程风格。

通常以Nuget包或Npm包的方式进行集成,为了降低学习成本,需要仔细考虑如何封装才能让调用者最省力。

任何有技术含量的工作,均由第三方技术框架完成,Util应用框架仅对技术框架选型并集成封装。

Util应用框架只是很薄的一层外观,为复杂的技术框架提供一个简易视图。

这导致更健壮的实现和更易用的API。

Util应用框架的使用方式

使用Util应用框架有几种不同的方式。

最灵活的方式是将Util应用框架的代码复制到你自己的应用框架中,然后可以随意修改它们来满足项目需求。

不过这种方式的代价也很大,很难合并Util的任何更新,你需要自行维护相当大的代码库。

由于Util应用框架的体积在不断增长,维护这些代码库可能给你带来不小的负担。

另一种可行的方式是将Util应用框架作为你的基础库,使用Nuget引入它们,基础的工作让Util应用框架帮你完成,你只需要扩展自己业务领域相关的功能。

这种方式的限制也很明显,Util提供的功能可能无法满足你的要求。

解决这个问题的关键是与Util开发团队保持沟通,将你的需求告诉我们。

对于通用功能,我们会尽量满足,这样会让更多的开发者受益,对于定制需求,我们也会为你提供扩展点,方便你能自行扩展。

参考应用框架

很明显,闭门造车不可取。

Util应用框架大部分依赖以Nuget方式引入,极少部分需要修改源码,则以复制源码方式使用。

另外,.Net应用框架还有很多优秀的开源项目,从中学习和吸取养分是Util成长的关键。

Util应用框架主要参考了以下开源项目,从中吸收架构和代码,并以Util风格进行整理。

Util应用框架交流群: 24791014

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值