ASP.NET MVC快速开发框架FastExecutor开发全过程感受及总结
困境
追溯到2018年5月份,是个炎热的夏天,毕业后1年7个月我提出了离职,原因是受不了原来公司过度的封装框架感觉一年多毫无进步与实施天天轰炸般的电话,偶然间出去面试了一次发现自己知识真的是比较局限,决定换个环境提升自己,5月份出去面试屡屡碰壁,还好在老同事的介绍下进了个相关行业的公司,尽管还是一样的框架一样的味道,但是还是下定决心不管工作再忙都要不断的提升自己,哪怕每天进步一点点,我相信老天不会辜负有心人,可能今天你的付出不会立刻得到回报,但总会在未来的某一天,收获悄然而至。
挣脱
下定决心学习后的第一个问题就是,我该学什么,从哪个方面入手,往大了说框架,算法,前端,往小了说图像,工具,消息推送等等,经历了一段时间的迷茫我还是决定从一个平常开发过程中自己觉得麻烦的问题入手——DB层工具,第一家公司使用的DB层是微软企业库,漫天的SQL的语句真的是痛不欲生,一个项目下来,DB类都有个小2万行出头,所以决定在微软企业库的基础上封装一个通用操作工具,就这样有了目标之后,先按照自己的想法做了一版,查找了很多资料,不断的重构优化,学习了解网上看到感觉有兴趣或者自己从来没有听说过的技术,就这样算是对自我学习有了一个入门。相信大家也有过这样的经历,想去学一项技术或者一个框架,文档教程都很齐全,但就是学不下去,我觉得可能给自己定一个目标做出一个东西会学习来更加迅速和快乐,有需求才会有产出,通过DB操作工具的造轮子,我逐渐了解了自定义的Attribute,反射,Emit,IOC,事务的传递等等平常一带而过看到却没有静下心来去真正自己理解一下的知识点,项目大家有兴趣可以去看一下https://gitee.com/grassprogramming/FastORM。
自由
有了学习的兴趣之后后续恰好了解到了Vue,觉得挺便捷的,于是决定从平时使用的模态窗口入手造了一个轮子,反反复复修改测试,又完成了一个自己小作品。2018.10月份朋友介绍了个小程序的小项目做着玩,就去研究了下springboot的使用和微信开发,算是增加了自己的知识面,中间又通过Java把自己写的DB操作工具翻译了一遍,收获良多。后面觉得公司既然能封装框架那自己试试看说不定也能做到呢,后续就接触到了ASP.NET MVC,AutoFac,Redis,EntityFrameWork,ElementUI等等涉及到的技术框架,于是开始了FastExecutor编写。
收获
FastExecutor是一款适用于小型项目(后台管理类)的快速开发框架,做到了页面数据分离,但是没有使用前后端分离,因为感觉Vue的单页应用形式对于小型项目增加了部署与开发的复杂程度。框架主要包含以下几个模块
组织架构:部门管理,人员管理
权限管理:模块管理,角色管理
数据管理:快速开发平台(在线建表,生成代码),附件库的分离
常用功能:字典项,系统参数,系统日志监控
可视化定制功能:首页元件管理,定时任务可视化配置集成
框架主要技术涉及到ASP.NET MVC,自定义DB操作类,自定义IOC容器,ElementUI,Redis的全局Token认证与基于Redis订阅发布的自定义消息组件等等,在实际的开发过程中,模仿现有开源框架的一些的功能加入到自己的框架中来,我觉得是最好的学习方式。
代码地址:https://gitee.com/grassprogramming/FastExecutor
演示地址:http://demo.fastdo.club/FastExecutor admin/1
说明文档:http://doc.fastdo.club/FastExecutorBook/#/
未来
FastExecutor框架算是对自己一年多学习成果的一个总结,完成了自己一直想做的一些事,但是这并不是终点,后续会开始.NetCore的学习,对框架进行一个技术重构和功能补充,未来希望将工作流集成到框架中,做到可视化配置和流转,最后送上自己很喜欢的一句话:种一颗树最好的时间是十年前,其次是现在,祝好!
ASP.NET MVC快速开发框架FastExecutor开发全过程感受及总结的更多相关文章
- ASP.NET MVC 快速开发框架之 SqlSugar+SyntacticSugar+JQWidgetsSugar+jqwidgets(转)
jqwidgets.js: 是一个功能完整的框架,它具有专业的可触摸的jQuery插件.主题.输入验证.拖放插件.数据适配器,内置WAI-ARIA(无障碍网页应用)可访问性.国际化和MVVM模式支持. ...
- ASP.NET MVC 快速开发框架之 SqlSugar+SyntacticSugar+JQWidgetsSugar+jqwidgets
jqwidgets.js: 是一个功能完整的框架,它具有专业的可触摸的jQuery插件.主题.输入验证.拖放插件.数据适配器,内置WAI-ARIA(无障碍网页应用)可访问性.国际化和MVVM模式支持. ...
- ASP.NET MVC快速开发框架清新简洁界面设计,有兴趣可以模仿参考
软件的用户体验很重要,要抓住用户的心,这篇博文分享一下最近一个项目的UI设计. 我做UI设计是从用户的角度出发的,要去揣摩用户的习惯. 大部分用户都是使用windows操作系统,所以我这套软件的风格也 ...
- MVC 快速开发框架
ASP.NET MVC 快速开发框架之 SqlSugar+SyntacticSugar+JQWidgetsSugar+jqwidgets jqwidgets.js: 是一个功能完整的框架,它具有专业的 ...
- 【第三篇】ASP.NET MVC快速入门之安全策略(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 【第一篇】ASP.NET MVC快速入门之数据库操作(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 【第二篇】ASP.NET MVC快速入门之数据注解(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 【第四篇】ASP.NET MVC快速入门之完整示例(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
随机推荐
- GROUP_CONCAT在组合商品中的使用
表:combined_product_item -------------------------pid sku quality-------------------------1 sku1 11 s ...
- mac终端基本命令
一 基本命令 1.列出文件 ls 参数 目录名 参数 -w 显示中文,-l 详细信息, -a 包括隐藏文件 例: 看看驱动目录下有什么:ls /System/Library/Extensions 2. ...
- 自然语言处理(NLP) - 数学基础(1) - 排列组合
正如我在<自然语言处理(NLP) - 数学基础(1) - 总述>一文中所提到的NLP所关联的概率论(Probability Theory)知识点是如此的多, 饭只能一口一口地吃了, 我们先 ...
- 菜鸟系列docker——docker网络(8)
Docker网络 Docker在容器内部运行应用,这些应用之间的交互依赖于大量不同的网络,这意味着Docker需要强大的网络功能. Docker 网络从覆盖范围可分为单个 host 上的容器网络和跨多 ...
- 几个非常适合练手的python爬虫项目,总有一个能搞定!
前言本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理.作者:Python玩家 注意:如果你平时学Python有问题找不到人解答,可以 ...
- 【JS】297-[译]正确使用 sort() 方法
点击上方"前端自习课"关注,学习起来~ 英文原文:[<Usar correctamente el método sort()>]文章地址:查看阅读原文.注意:内容有做精 ...
- Web基础了解版01-html-css
HTML 网页构成 摘要 说明 结构(HTML) HTML是网页内容的载体.内容就是网页制作者放在页面上想要让用户浏览的信息,可以包含文字.图片.视频等. 表现(CSS) CSS样式是表现.就像网页的 ...
- Kubernetes 应用部署实战
Kubernetes 应用部署实战 2018-08-08 19:44:56 wuxiangping2017 阅读数 3084 收藏 更多 分类专栏: linux运维与架构师 简介 伙计们,请搬好 ...
- 利用用阿里云API实现DDNS
前言 之前动态域名解析是用的是腾达路由器上集成的第三方动态解析服务花生壳,解析费用一年40元.后来觉得域名前缀不好,想换掉,花生壳需要重新购买新的域名解析费用,增加1条或者2条动态解析无所谓,万一以后 ...
- CCF-CSP题解 201512-4 送货
求字典序最小欧拉路. 似乎不能用\(Fluery\)算法(\(O(E^2)\)).\(Fluery\)算法的思路是:延申的边尽可能不是除去已走过边的图的桥(割).每走一步都要判断是否是割,应当会超时. ...