带着问题阅读开源项目,才是最有效的

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 -

觉得好看 点个在看👇

以上是关于带着问题阅读开源项目,才是最有效的的主要内容,如果未能解决你的问题,请参考以下文章

太牛逼了,28k star ,java 入门到成神就靠这些开源项目了!

如何研究一个开源项目

如何研究一个开源项目

淘宝开源代码质量检测工具!

什么样的大数据平台架构,才是最适合你的?

实际上,CentOS的变化才是开源企业运营的正确方式