楼主非科班生,工作四五年了只注重于代码实现,没有很深入学习过一些基础概念,面试的时候框架,业务说的不错,但是一提基础知识就死,请各位不吝赐教,怎么在短时间内恶补.net 基础知识,应付面试
ps:感觉面试好几次每家的侧重点都不一样,感觉基础知识像茫茫大海,每次都被几个知识点问住。这种情况是需要大量刷题吗![]() | 1 tikazyq 2021-03-04 14:30:16 +08:00 |
![]() | 2 Itoktsnhc 2021-03-04 14:30:28 +08:00 刷题主要刷算法+数据结构,其他的看 CLR via c#、c# in depth 但是最新 core 这两本都没有涉及。 语言相关文档参照 https://docs.microsoft.com/en-us/dotnet/csharp/ 对应的目录 自己查漏补缺了 另外就是更细节的方向比如 ef 、asp.net core |
![]() | 3 drunkdog OP |
![]() | 4 qW7bo2FbzbC0 2021-03-04 15:05:36 +08:00 1,存储过程和 c#无关 2,不需要保存状态的时候用静态方法不错,或者用静态属性保存只读值 |
5 across 2021-03-04 15:10:01 +08:00 我感觉 CLR via c# 这本书对入门到提高帮助更大。 |
![]() | 6 wmsljsgd 2021-03-04 15:17:40 +08:00 老.net 来瞎扯几句 基础知识光看书其实提高并不大 更多的需要在实际使用中 使用完了去研究一下原理 然后遇到困惑的再去搜索查找相关书籍 再吸收归纳总结 比如用的一些框架 ABP NOP 之类的 可以去看看他的源码 平时用到的一些库 比如 DI Aop ORM 相关的 都可以看看核心原理 慢慢积 |
7 forgottencoast 2021-03-05 00:34:46 +08:00 你存储过程用过吗? 你平时都在存储过程里面写什么? 比如说,你在跟踪一个 Bug,跟到数据库操作部分的代码,发现它调用的时存储过程。 这不就中断了吗,只能转到数据库那边去看了吗? 还有很多问题的,如果存储过程里面包含了业务,会造成了业务逻辑处理分散在多个地方,不利于维护。 有些公司有专职的 DBA,存储过程还自己改不了。 这些都不是恶补的问题,而是你平时工作的时候没有多思考。 如果想提高的话,每写一行代码,每做一件事情,都要想想为什么要这样做,有没有更好的办法。 混日子就随意了。 你的问题是思考的太少,思考太少看书帮助也不大,平时多思考,带着很多疑惑看书效果最佳。 |
![]() | 8 drunkdog OP @forgottencoast 说的对,你一说我就想起用存储过程的时候脑子里闪过业务都写存储过程里了,后面咋调试啊,但是后面代码完成了也确实没继续想,导致面试的时候就懵了 |
![]() | 9 ddup 2021-03-05 10:02:18 +08:00 ![]() CLR via c# 这本书不错。 |
10 faceRollingKB 2021-03-05 10:08:19 +08:00 ![]() 用存储过程最常见的场景就是你需要用到大量的基础数据做计算,拉到内存里又明显的耗时又浪费资源,这时候就要用存储过程 静态、非静态本质上要看数据的生命周期,例如伴随整个程序生命周期不怎么需要改动的就用静态,如果要实时更新的数据就去库里面取,如果要更新但又不是很频繁的,就用缓存,管理好同步问题就行 |
11 faceRollingKB 2021-03-05 10:10:26 +08:00 缓存这块我描述的有问题,场景有很多 |
12 faceRollingKB 2021-03-05 10:23:17 +08:00 早上脑子有点混乱,要不要用静态看的是数据结构,如果这条数据跟某个实体有关,那就是实体的一部分,反之如果所有实体共享某个数据,就用静态;至于缓存、实时这些概念就按生命周期这个思路去思考一下吧,感觉很主观,说多了也没啥意义 |
13 downstairs 2021-03-17 13:36:48 +08:00 |