困境

追溯到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开发全过程感受及总结的更多相关文章

  1. ASP.NET MVC 快速开发框架之 SqlSugar+SyntacticSugar+JQWidgetsSugar+jqwidgets(转)

    jqwidgets.js: 是一个功能完整的框架,它具有专业的可触摸的jQuery插件.主题.输入验证.拖放插件.数据适配器,内置WAI-ARIA(无障碍网页应用)可访问性.国际化和MVVM模式支持. ...

  2. ASP.NET MVC 快速开发框架之 SqlSugar+SyntacticSugar+JQWidgetsSugar+jqwidgets

    jqwidgets.js: 是一个功能完整的框架,它具有专业的可触摸的jQuery插件.主题.输入验证.拖放插件.数据适配器,内置WAI-ARIA(无障碍网页应用)可访问性.国际化和MVVM模式支持. ...

  3. ASP.NET MVC快速开发框架清新简洁界面设计,有兴趣可以模仿参考

    软件的用户体验很重要,要抓住用户的心,这篇博文分享一下最近一个项目的UI设计. 我做UI设计是从用户的角度出发的,要去揣摩用户的习惯. 大部分用户都是使用windows操作系统,所以我这套软件的风格也 ...

  4. MVC 快速开发框架

    ASP.NET MVC 快速开发框架之 SqlSugar+SyntacticSugar+JQWidgetsSugar+jqwidgets jqwidgets.js: 是一个功能完整的框架,它具有专业的 ...

  5. 【第三篇】ASP.NET MVC快速入门之安全策略(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  6. 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  7. 【第一篇】ASP.NET MVC快速入门之数据库操作(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  8. 【第二篇】ASP.NET MVC快速入门之数据注解(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  9. 【第四篇】ASP.NET MVC快速入门之完整示例(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

随机推荐

  1. 使用SQL计算宝宝每次吃奶的时间间隔

    需求:媳妇儿最近担心宝宝的吃奶时间不够规律,网上说是正常平均3小时喂奶一次,让我记录下每次的吃奶时间,分析下实际是否偏差很大,好在下次去医院复查时反馈给医生. 此外,还要注意有时候哭闹要吃奶,而实际只 ...

  2. 2019沈阳icpc网络赛H德州扑克

    题面:https://nanti.jisuanke.com/t/41408 题意:A,2,3,4,5,6,7,8,9,10,J,Q,K,13张牌,无花色之分,val为1~13. 给n个人名+n个牌,输 ...

  3. 回文自动机(PAM) 入门讲解

    处理回文串,Manacher算法也是很不错,但在有些问题的处理上比较麻烦,比如求本质不同的子串的数量还需要结合后缀数组才能解决.今天的们介绍一种能够方便的解决关于回文串的问题的算法--PAM. 一些功 ...

  4. 2017 CCPC秦皇岛 A题 A Ballon Robot

    The 2017 China Collegiate Programming Contest Qinhuangdao Site is coming! There will be  teams parti ...

  5. ES6语法中的class、extends与super的原理

    class 首先, 在JavaScript中, class类是一种函数 class User {    constructor(name) { this.name = name; }    sayHi ...

  6. 【重温基础】16.JSON对象介绍

    本文是 重温基础 系列文章的第十六篇. 今日感受:静. 系列目录: [复习资料]ES6/ES7/ES8/ES9资料整理(个人整理) [重温基础]1-14篇 [重温基础]15.JS对象介绍 本章节复习的 ...

  7. Vue中使用keep-alive优化网页性能

    用keep-alive包裹路由 当前数据第一次访问时,会被缓存到浏览器缓存当中,若数据无更替,则直接读取缓存中的数据. 使用keep-alive时会存在一个activated的生命周期钩子 只有在la ...

  8. 【Mock MVC】使用学习

    [Mock MVC]使用学习 转载:https://www.cnblogs.com/yangchongxing/p/10658311.html

  9. 搭建react native所遇到的坑

    一.所遇问题 在搭建react native环境中,遇到执行react native  run-android命令出现如下问题 Could not resolve all dependencies f ...

  10. SpringBoot微服务电商项目开发实战 --- 分布式文件系统实现

    SpringBoot分布式开发系列文章已经持续了一段时间了,每一篇都有核心内容讲给大家.比如:分环境部署配置及服务端口号统一配置,子模块版本号管理及第三方jar依赖管理,单点登录实现,接口安全(签名+ ...