lcok-free简易实现】的更多相关文章

.NET里简易实现AOP 前言 在MVC的过滤器章节中对于过滤器的使用就是AOP的一个实现了吧,时常在工作学习中遇到AOP对于它的运用可以说是很熟练了,就是没想过如果自己来实现的话是怎么实现的,性子比较犟硬是没想明白,茶不思饭不想的,主要问题就是卡在了怎么能拦截用户调用,如果可以解决了这个问题AOP的实现也就引刃而解了,为此在网上看了一些文章解决了这个问题,在这里和大家分享一下. AOP概述 AOP的作用就是横切关注点,然后将分离后的关注点已面的形式来呈现,这是概念性的说法,举个列子来说明吧.…
RealProxy基本代理类 RealProxy类提供代理的基本功能.这个类中有一个GetTransparentProxy方法,此方法返回当前代理实例的透明代理.这是我们AOP实现的主要依赖. 新建一个代理类MyProxy继承RealProxy,IIntercept是我们自己实现的拦截器接口,内部只有一个Do方法 private object _target; //当前代理实例 private List<IIntercept> _intercepts; //拦截器 MyProxy(object…
FileProvider构建了一个抽象文件系统,作为它的两个具体实现,PhysicalFileProvider和EmbeddedFileProvider则分别为我们构建了一个物理文件系统和程序集内嵌文件系统.总的来说,它们针对的都是"本地"文件,接下来我们通过自定义FileProvider构建一个"远程"文件系统,我们可以将它视为一个只读的"云盘".由于文件系统的目录结构和文件内容都是通过HTTP请求的方式读取的,所以我们将这个自定义的FileP…
来做个简易的字符识别 ,既然是简易的 那么我们就不能用任何的第三方库 .啥谷歌的 tesseract-ocr, opencv 之类的 那些玩意是叼 至少图像处理 机器视觉这类课题对我这种高中没毕业的人来说是一座高山 对于大多数程序员都应该算难度不小吧. 但是我们这里 这么简陋的功能 还用那些玩意 作为一个程序员的自我修养 你还玩个球.管他代码写得咋个low 效率咋个低 被高手嗤之以鼻也好 其实那些高手也就那样 把你的代码走起来  ,这是一件很好玩的事情. 以前一直觉着这玩意挺神奇 什么OCR o…
1.前言 公司游戏里面有个简单的聊天室,了解了之后才知道是node+websocket做的,想想php也来做个简单的聊天室.于是搜集各种资料看文档.找实例自己也写了个简单的聊天室. http连接分为短连接和长连接.短连接一般可以用ajax实现,长连接就是websocket.短连接实现起来比较简单,但是太过于消耗资源.websocket高效不过兼容存在点问题.websocket是html5的资源 如果想要详细了解websocket长连接的原理请看https://www.zhihu.com/ques…
接触到GO之后,GO的网络支持非常令人喜欢.GO实现了在语法层面上可以保持同步语义,但是却又没有牺牲太多性能,底层一样使用了IO路径复用,比如在LINUX下用了EPOLL,在WINDOWS下用了IOCP. 但是在开发服务端程序的时候,很多都是被动触发的,都是客户端发送来的请求需要处理.天生就是一个event-based的程序.而在GO下,因为并发是作为语言的一部分,goroutine, channel等特性则很容易的使程序员在实现功能时从容的在同步与异步之间进行转换. 因为自己的需要,我针对ev…
.NET里简易实现IoC 前言 在前面的篇幅中对依赖倒置原则和IoC框架的使用只是做了个简单的介绍,并没有很详细的去演示,可能有的朋友还是区分不了依赖倒置.依赖注入.控制反转这几个名词,或许知道的也只是知道依赖倒置是原则,依赖注入.控制反转都是实现的方式,我将在下面对这些个名词做详细的介绍,在篇幅的最后还会自己实现了IoC容器的功能. 依赖倒置原则 我们先来看一段代码,代码1-1 public class Top { public void Execution() { Underly under…
现在网站上越来越多的验证码,使用场景也是越来越多,登陆.注册.上传.下载...等等地方,都有可能大量使用到验证码,那么制作验证码到底有多简单呢?我们一起来看下最简易版的验证码实现过程- 验证码的基本步骤 添加一个控制器 1.在MVC框架中,则需添加一个控制器,代码如下 /// <summary> /// 验证码 /// </summary> public ContentResult CheckCode() { ContentResult cr = new ContentResult…
Angular 和 Vue 在对Angular的学习中,了解到AngularJS 的两个主要缺点: 对于每一次界面时间,Ajax 或者 timeout,都会进行一个脏检查,而每一次脏检查又会在内部循环检查,当界面绑定的model 很多,就会造成严重的性能问题 . Angular 混乱的模块,并不能起到命名空间的作用,因而在大项目中组织模块又是一件头疼的事. 但是 Angular 开发中小型的应用是很棒的,也是将 MVC 引入到前端的开始.定一个目标,两年时间理解 <Build Your Own…
概述 什么是nginx? Nginx (engine x) 是一款轻量级的Web 服务器 .反向代理服务器及电子邮件(IMAP/POP3)代理服务器. 什么是反向代理? 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器. 可参考下图的示例: 安装与使用 安装 nginx官网下载地址 发布版本分为Linux和…