后端
刘鸿宇..
用代码改变世界
展开
-
如何提高页面的显示速度?方法有哪些?
首先要找出问题所在,是服务器端运行的速度慢还是服务器端到客户端的下载慢还是页面在浏览器的加载速度慢如果是服务器端运行速度慢,则找是数据库的原因还是算法的问题,如果是数据库的问题则尝试添加索引、优化SQL语句,如果是算法的问题,则优化算法。如果对于一些不经常改动的页面可以使用静态页技术,对于一些数据不需要及时更新的而且取数据的过程非常耗时可以使用缓存。页面中的内容可以按需加载(比如说可以像verycd网站的评论那样当用户需要看的时候再加载其内容),可以在图片需要显示的时候再进行加载。如果是服务器端到客原创 2021-01-06 13:45:52 · 256 阅读 · 0 评论 -
介绍几个使用过的开源的项目
BootstrapVue.jsReact.jsAngularNode.jsEchartslog4netSignalRAutoMapper.NET Core原创 2021-01-06 13:43:39 · 49 阅读 · 0 评论 -
Service层和DTO层的作用
Service层主要提供的几个作用:1、将业务逻辑层进行封装,对外提供业务服务调用。2、通过外观模式,屏蔽业务逻辑内部方法。3、降低业务逻辑层与UI层的依赖,业务逻辑接口或实现的变化不会影像UI层。4、降低UI层调用的请求次数及数据往返。DTO层主要提供的作用:在上面的结构中,我们说了Service层的作用,目前还少加入了一层,DTO(数据传输对象层),该层负责屏蔽后端的实体层,将UI层需要的数据进行重新的定义和封装,在实际的业务场景下,后端实现或存储的数据远比用户需要的数据要庞大和复杂,所以前转载 2021-01-04 21:30:53 · 1214 阅读 · 0 评论 -
C#中的接口和类有什么异同?
不同点:不能直接实例化接口。接口不包含方法的实现。接口可以多继承,类只能单继承。类定义可在不同的源文件之间进行拆分相同点:接口、类和结构都可以从多个接口继承。接口类似于抽象基类:继承接口的任何非抽象类型都必须实现接口的所有成员。接口和类都可以包含事件、索引器、方法和属性...原创 2020-12-30 09:06:50 · 56 阅读 · 0 评论 -
在.net中类(class)与结构 (struct)的异同?
Class可以被实例化,属于引用类型,是分配在内存的堆上的。类是引用传递的Struct 属于值类型,是分配在内存的栈上的。结构体是复制传递的。原创 2020-12-30 09:05:20 · 78 阅读 · 0 评论 -
const与readonly的区别
const 关键字用于修改字段或局部变量的声明。它指定字段或局部变量的值不能被修改。常数声明引入给定类型的一个或多个常数。 const 数据成员的声明式必须包含初值,且初值必须是一个常量表达式。因为它是在编译时就需要完全评估。 const 成员可以使用另一个 const 成员来初始化,前提是两者之间没有循环依赖。readonly 在运行期评估赋值,使我们得以在确保“只读访问”的前提下,把 object 的初始化动作推迟到运行期进行。readonly 关键字与 const 关键字不同: const 字段只原创 2020-12-30 09:04:20 · 101 阅读 · 0 评论 -
是否可以从一个 static方法内部发出对非 static方法的调用?
不可以因为非 static 方法是要与对象关联在一起的,必须创建一个对象后,才可以在该对象上进行方 法调用,而 static 方法调用时不需要创建对象,可以直接调用也就是说,当一个 static 方法被调用时,可能还没有创建任何实例对象,如果从一个 static 方法中发出对非 static 方法的调用,那个非 static 方法是关 联到哪个对象上的呢?这个逻辑无法成立,所以,一个 static 方法内部不能发出对非 static 方法的调用。...原创 2020-12-30 09:03:28 · 192 阅读 · 0 评论 -
能用foreach遍历访问的对象的要求
需要实现 IEnumerable 接口或声明 GetEnumerator 方法的类型。原创 2020-12-30 09:02:07 · 279 阅读 · 0 评论 -
using键字有什么用?什么是IDisposable?
using 可以声明 namespace 的引入,还可以实现非托管资源的释放,实现了 IDisposiable 的类在 using 中创建using 结束后会自动调用该对象的 Dispose 方法,释放资源。原创 2020-12-30 09:01:22 · 124 阅读 · 0 评论 -
GC是什么?为什么要有 GC?
GC是什么?为什么要有 GC?1.GC是垃圾收集器。程序员不用担心内存管理,因为垃圾收集器会自动进行管理。2.GC只能处理托管内存资源的释放,对于非托管资源则不能使用 GC 进行回收,必须由程序员手工回收,一个例子就是 FileStream 或者 SqlConnection 需要程序员调用 Dispose 进行资源的回收。3.要请求垃圾收集,可以调用下面的方法:GC.Collection()一般不需要手动调用 GC.Collection()。...原创 2020-12-24 19:24:18 · 1605 阅读 · 1 评论 -
StringBuilder和String 的区别?
StringBuilder和String 的区别?1.String 在进行运算时(如赋值、拼接等)会产生一个新的实例,而 StringBuilder 则不 会。所以在大量字符串拼接或频繁对某一字符串进行操作时最好使用 StringBuilder,不要使用String2.如果要操作一个不断增长的字符串,尽量不用 String 类,改用 StringBuilder 类。3. 两个类的工 作原理不同:String 类是一种传统的修改字符串的方式,它确实可以完成把一个字符串添加到 另一个字符串上的工作没错,但原创 2020-12-24 19:22:52 · 796 阅读 · 1 评论