带着问题阅读开源项目,才是最有效的
Posted dotNET跨平台
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了带着问题阅读开源项目,才是最有效的相关的知识,希望对你有一定的参考价值。
我一直认为带着问题去阅读一个开源项目,这才是最有效率的,有目标、有针对性的阅读,才不会导致自己迷茫。
平常我拿到一本书都会先了解下其背景,大概了解下这本书主要讲解的内容,由此会产生一些自己的感兴趣的问题,带着疑问去阅读书籍,前期可能是跳跃式的阅读,后期才把一本书完整阅读,特别是技术书籍,更是需要长期重复阅读。阅读开源项目的源代码,也是同样的方式,带着问题阅读才是最高效的。
所以此文,结合我在.Net编程学习小圈子 ,编写的专栏《EF Code源码解析》系列文章,列举下我都带着哪些问题,去阅读源代码。
1、EF开源项目如何编译、使用?
《EF Core源码解析 - 编译与使用示例》此文详细介绍了,怎么从Github下载EF源代码,并且怎么编译,以及如何引用编译后的dll,并使用Sqlite完成数据库的插入、查询、删除、更新操作。
学习目标:学习如何下载开源项目、编译、以及使用。
2、EF代码规范,微软官方代码规范是怎么样?
大家都知道代码规范是非常重要的,代码规范可以有效的提高工作效率、减少bug产生等优点,所以《EF Core源码解析 - 代码规范》此文,着重介绍了EF开源项目遵守的代码规范,供大家参与。
学习目标:学习官方规范,可以结合自己实际项目开发,进行思考。
3、EF批量操作为什么性能不好?
平常我们看网络文档,大家都会告诉你,EF批量操作性能不是很好,《EF Core源码解析 - 批量操作分析》此文带你通过源码带你了解,EF批量操作与单条记录操作有什么区别!
学习目标:了解EF批量操作的原理。
4、DbContext无参数构造函数为什么声明为protected?
DbContext有两个构造函数,一个有参数,一个无参数,为什么要这样设计呢?《EF Core源码解析 - DbContext之设计》此文详细介绍了,这样设计的用途,以及好处。
主要目标:学习优秀代码的设计,以及这样代码设计有什么目标。
5、EF支持多数据库是如何设计的?
我们都知道EF是支持多数据库的,《EF Core源码解析 - 多数据库支持》此文通过源码分析,介绍了EF作为一个通用库,是如何支持多数据库的,以及代码如何设计。
学习目标:学习EF多数据库的设计思路。
6、EF事件如何使用?
EF完成一次数据库的操作,涉及到执行之前、执行成功、执行失败等事件,《EF Core源码解析 - SaveChanges保存事件》此文介绍了EF事件的设计、以及我们该如何使用。
学习目标:学习EF事件的设计、以及委托的使用。
7、如何打印EF日志?
在我们日常项目开发中,经常需要调试以及查看EF最终生成SQL语句,《EF Core源码解析 - 日志记录》此文介绍了EF日志是如何设计的,如何使用、以及如何对日志级别过滤打印。
学习目标:了解EF日志的设计,以及日志的过滤打印。
8、EF日志如何格式打印?
EF每一个步骤都进行日志打印,从执行开始、数据库连接、执行、关闭、成功或失败等一系列步骤,都有日志打印。此时会产生一个问题,就是日志过多,在实际项目中可能用不到,可能只需跟踪部分事件的日志。
《EF Core源码解析 - 日志过滤》此文介绍了如何,通过更改日志的级别、取消日志等方法,打印我们所需的日志;以及日志如何格式化、减少日志内容等。
学习目标:学习日志如何过滤打印、以及日志格式化。
以上,就是我目前阅读EF源代码,研究的问题;接下去还会继续研究,并编写一些EF的使用示例,欢迎大家继续关注!
- End -
觉得好看 点个在看👇
以上是关于带着问题阅读开源项目,才是最有效的的主要内容,如果未能解决你的问题,请参考以下文章