摘要:
朋友指着自己写的代码问:你看我的代码写的怎么样,有没有问题,哪里需要修改? 以最宽松的标准讲,只要代码没有逻辑错误,没有严重性能问题,就没有问题,但我知道,他问得不是这些,而是问代码有没有可以更进一步优化的可能,我看他的代码做了清晰的分层,提取了基类,使用了模板模式,总体上算是不错了。 问题来了,究 阅读全文
摘要:
时间一晃而过,大学毕业转眼间已经工作9年了,总结一下自己这些年来感受。 与程序打交道的人生,是简单的人生 一次做规划局的项目,规划局的职员很是钦佩地说:“你们真了不起,在电脑上敲敲键盘就能做出软件来。”, 规划局领导说:“跟电脑打交道是最简单的,难的是跟人打交道。”。 领导的话很有深意,一语道破了本 阅读全文
摘要:
using()的本质是C#中的语法糖。
using()语句编译后生成 try{...} finally{...} 语句,进而确保资源释放。
using()是程序中使用非托管资源的最佳方式。 阅读全文
摘要:
经典的设计模式,为我们指明了解决问题的思路和方向,结合新的框架及语言特性,可以得到更好的解决方案。 阅读全文
摘要:
业务的复杂性是我们无法控制的,面对一个复杂的问题,如何将其拆解成多个相对简单的问题,降低系统复杂性,从而减少对开发人员自身水平的依赖,减少开发人员工作强度,提升业务代码质量,是一个优秀的技术人能力的体现。
更高的代码质量和更快的开发效率,是我们一直追求的目标。
更好的复用,更简单的维护,更清晰的结构,是我们应该遵循的原则。 阅读全文
摘要:
现象: 一个主外键关联查询的场景,原本主键为”2105191446220001115“的数据,通过关联查询,查询出了”2105191446220001115“,”2105191446220001116“,”2105191446220001117“三条数据, 一时间超出了自己的认知范围,数据库本身是不 阅读全文
摘要:
git源码管理 阅读全文
摘要:
问题背景: 我习惯使用VisualStudio做开发,VS具有其他IDE开发工具无法比肩的优秀表现,最近做AngularJS项目,顺其自然的采用了VS,但代码缩进却困扰了我很长时间。 正常代码缩进是4个空格,但做这个项目时却是2个空格,为保持与原有代码风格一致,不得不手动调节缩进。 尝试: 通常VS 阅读全文
摘要:
上一篇,一个简单的单例模式,引起了不少人关注,确实没想到。首先,重申一下,这只是作为自己的一个面试记录,以及思考过程,主要是意识到自己之前在对待静态变量上的一个错误(静态类,或者带静态构造函数,静态字段,静态方法的类,并不会在项目启动时就实例化,涉及到对象创建,内存分配,需要好好思考),再有,自己的 阅读全文
摘要:
去面试(对,又去面试) 问:单例模式了解吧,来,拿纸和笔写一下单例模式。 我心想,这TM不是瞧不起人吗?我编程十年,能不知道单例模式。 答:(.net 平台下)单例模式有两种写法: 第一种:饥饿模式,关键点,static readonly public static readonly Singlet 阅读全文
摘要:
优化数据访问和I/O操作 数据交互以及远程服务通常是程序中最慢的部分,高效的读写数据对性能尤其重要。 建议操作: 异步方式调用所有数据访问API。 不要获取非必须的数据,近返回当前Http 请求需要的数据。 在数据过期是可接受的情况下,可以考虑缓存频繁访问的数据(从数据库中读取或远程服务返回的数据) 阅读全文
摘要:
减少分配大对象 ASP.NET Core中,垃圾回收器会自动分配及回收内存。这意味着开发人员不需要关心内存是何时,如何释放的,但清理内存需要占用CUP时间,因此开发人员应尽量减少在“热代码路径”上分配对象。垃圾回收在处理大对象(>85KB)时,代价很大。大对象存储在大对象堆中,需要一个Full GC 阅读全文