MVC + EFCore 项目实战 - 数仓管理系统1

项目背景及需求说明

这是一个数据管理"工具类"的系统,计划有三个核心功能:

1、通过界面配置相关连接字符串,查询数据库的表数据。

2、配置相关模板,生成数据库表。

可以界面填报或通过Excel导入导出填报表数据。

3、通过界面配置导出数据库表结构(数据字典)。

 

通过以上功能,在数据分析、可视化项目中,更方便的进行数据管理。

 

课程计划

项目需要用到的基础知识之前已有文章做介绍,如下:

(共20篇,其中1~10是基础知识介绍,11~20是专题知识介绍)

  • MVC+EF Core 完整教程20--MVC+EF Core 完整教程20--tag helper详解 @20190813
  • MVC+EF Core 完整教程19--最简方法读取json配置:自定义configuration读取配置文件  @20190729
  • MVC+EF Core 完整教程18--升级分布视图至 View Component  @20190724
  • MVC5+EF6 完整教程17--升级到EFCore2.0  @20170821
  • MVC5+EF6 完整教程16--控制器详解  @20170503
  • MVC5+EF6 完整教程15--使用DI进行解耦  @20170406
  • MVC5+EF6 入门完整教程14--动态生成面包屑  @20160811
  • MVC5+EF6 入门完整教程13--动态生成多级菜单  @20160530
  • MVC5+EF6 入门完整教程12--灵活控制Action权限  @20160504
  • 浅入浅出Lambda表达式   @20151201
  • MVC5+EF6 入门完整教程11--细说MVC中仓储模式的应用  @20150914
  • MVC5+EF6 入门完整教程10:多对多关联表更新&使用原生SQL @20150521
  • MVC5+EF6 入门完整教程9:多表数据加载 @20150212
  • MVC5+EF6 入门完整教程8 :不丢失数据进行数据库结构升级  @20141215
  • MVC5+EF6 入门完整教程7 :排序过滤分页  @20141201
  • MVC5+EF6 入门完整教程6 :分部视图(Partial View)  @20141117
  • MVC5+EF6 入门完整教程5 :UI的一些改造  @20141113
  • MVC5+EF6 入门完整教程4 :EF基本的CRUD  @20141104
  • MVC5+EF6 入门完整教程3 :EF完整开发流程  @20141027
  • MVC5+EF6 入门完整教程2 :从前端UI开始  @20141021
  • MVC5+EF6 入门完整教程1 :从0开始

 

项目实战部分实际是系列文章的续集,考虑到编号太长了,我们重新开始编号。

 

之前的文章,由于种种原因(工作是项目制的, 经常需要管理多个项目进度,工作太忙没时间写),周期拉的太长,耽误了大家学习,

现在经常还有园友加QQ群问问题和查看源码(也很少有时间回答,大部分问题都是园友们互助),实在抱歉。

 

考虑到这些问题,实战部分的教程,准备每晚固定投入两小时,暑假期间完成初版,整个周期压缩在一个半月到两个月之间。

以开发速度为第一优先级, 围绕三个功能边设计边开发,快速迭代完成第一版本。

 

文章更新时间为每周的周二和周五(如遇节假日顺延)。

 

课程学习方法建议

加拿大畅销书作家麦尔坎·葛拉威尔在《异数》一书中指出:"人们眼中的天才之所以卓越非凡,并非天资超人一等,而是付出了持续不断的努力。

只要经过1万小时的锤炼,任何人都能从平凡变成超凡。"他将此称为"一万小时定律"。

 

这里我要强调的并非是练习时间,而是练习方法。按每天三小时算,一万小时大概需要10年不间断的练习。如何缩短一万小时?

答案是 "刻意练习"(deliberate practice)。

 

首次提出"刻意练习"这个概念的是佛罗里达大学心理学家 K. Anders Ericsson。

这套练习方法的核心假设是,专家级水平是逐渐地练出来的,而有效进步的关键在于找到一系列的小任务让受训者按顺序完成。

这些小任务必须是受训者正好不会做,但是又正好可以学习掌握的。

完成这种练习要求受训者思想高度集中。

 

"刻意练习"的理论目前已经被广泛接受,我们总结一下它的特点。

 

1、只在"学习区"练习 

练习的精髓是要持续地做自己做不好的事。 

心理学家把人的知识和技能分为嵌套的三个圆形区域:

最内一层是"舒适区",是我们已经熟练掌握的各种技能;

最外一层是"恐慌区",是我们暂时无法学会的技能;

二者中间则是"学习区"。

只有在学习区里面练习,一个人才可能进步。

有效的练习任务必须精确的在受训者的"学习区"内进行,具有高度的针对性。

因此我们首先必须发现自己的学习区,找到我们最需要改进的地方。 

只在学习区练习,是一个非常强的要求。一旦已经学会了某个东西,就不应该继续在上面花时间,应该立即转入下一个难度。

 

2、大量重复训练

从不会到会,秘诀是重复。

比如MBA课程的一个典型特点就是把不常见的高难度事件(商业决策)重复化。

在商学院里一个学生每周可能要面对20个真实发生过的商业案例,学生们首先自己研究怎么决策,提出解决方案,最后老师给出实际的结果并作点评。

学习商业决策的最好办法不是观察老板每个月做两次决策,而是自己每周做20次模拟的决策。

疫情放假期间,我上了一些音乐学习的网课,在音乐训练中,比较强调"分块"练习。

首先你要把整个动作或者整首曲子过一遍,看专家是怎么做的。然后把它分解为很多小块,一块一块地学习掌握。

 

3、持续获得有效的反馈 

要学会自己给自己当教练。

优秀的学习者都有很强的自学能力,对他们而言,老师最重要的作用是提供即时的反馈。

优秀的学习者会以一个旁观者的角度观察自己,每天都有非常具体的小目标,对自己的错误极其敏感,并不断寻求改进。 

 

4、精神高度集中 

请高效率的学习,不要磨洋工。刻意练习没有"寓教于乐"这个概念,完全投入的状态是很累的。

曾经有个著名小提琴家说过,如果你是练习手指,你可以练一整天;可是如果你是练习脑子,你每天能练两个小时就不错了。

 

 

总结

1、这是一个非常实用的数据管理工具类软件,初版完成后你可以方便的去使用和扩展功能。

2、计划每周更新两次(周二和周五,节假日顺延),初版大约两个月完成。

3、人生苦短。不断迭代你的学习方法,刻意练习。

 

欢迎大家多交流,祝学习进步 :)

 

你可能感兴趣的:(MVC + EFCore 项目实战 - 数仓管理系统1)