搜索到与相关的文章
编程技术

设计模式六大原则(4):接口隔离原则

文章来源:http://blog.csdn.net/zhengzhb/article/details/7296921定义:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。问题由来:类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法。解决方案:将臃肿的接口I拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系。也就是采用接口隔离原则。举例来

系统 2019-08-12 09:29:54 2225

各行各业

知名应用背后的第三方开源项目

InstagramAFNetworking:适用于iOS和OSX的网络框架。Appirater:提醒用户打分。ASIHTTPRequest:简单使用CFNetworkAPI封装进行HTTP网络请求,用Objective-C编写,可应用在MacOSX和iOS开发中。CocoaHTTPServer:用于MacOSX和iOS应用程序的轻量级、可嵌入的HTTP服务器框架。CocoaLumberjack:适用于Mac和iOS的日志框架,集简单、快速、强大以及灵活于

系统 2019-08-12 09:26:41 2225

数据库相关

SQL好习惯:编写支持可搜索的SQL

1概述最近维护系统时,客户经常反馈这样一个内容:要在查询列表上加上一个查询条件。这样的要求一点也不过分,并且看起来工作量也不大,不就是加一个WHERE条件嘛,但是当调试到DAL层时,立刻石化——遇到在SELECT子句中编写子查询的SQL,SELECTSO.order_no,(SELECTSUM(SOD.good_num)FROM[StockOrderDetails]ASSODWHERESOD.order_id=SO.id)ASorder_numFROM[S

系统 2019-08-12 01:54:55 2225

数据库相关

美丽的错误

“善意的谎言、美丽的错误”,这些事情在我们的生活及工作经常都在发生。最近花了三天多的时间学习了EasyJF开源官网的Blog程序源码,振奋人心之处就不说了,看过的都知道。同时也存在很多的错误,这些错误有的是由我不知何时亲自导演,这里就捡一些“美丽”的错误及Bub来说说,为了自己以后不再犯这样错误。技术构架:EasyJWeb+Spring2+JPA视图模板使用:Velocity1、很Cool的循环来自:Blog的圈子显示错误等级★★★★★#foreach($

系统 2019-08-12 01:53:27 2225

各行各业

Opencv246+vs2012生成不依赖编译环境的exe文件

我们都知道,vs2012编译项目有两个版本号:Debug和Release,这里我们在Release下生成exe文件,为什么要在Release以下生成呢,原因是你在Debug模式下生成的exe须要vs2012的一些Debug库文件支持,就是说你在没有vs2012的机子上是无法正常执行的,所以要在Release模式以下编译项目。步骤:1、把project调成Release模式。2、右键项目->属性打开项目属性页面,首先在配置属性->常规页面,假设你是MFC程序

系统 2019-08-12 01:32:42 2225

Python

Docker实践之python应用容器化

一、前言容器使用沙箱机制,互相隔离,优势在于让各个部署在容器的里的应用互不影响,独立运行,提供更高的安全性。本文主要介绍python应用(django)跑在docker容器里,编写dockerfile实现镜像构建自动化以及docker神器compose。二、编写Dockerfile文件官网下载的python镜像比较精简,web应用相关依赖还是需要自己安装的。编写Dockerfile,可以让你构建镜像的时候自动化。实例如下:FROMpython:3.6.4R

系统 2019-09-27 17:56:49 2224

Python

Python基于twisted实现简单的web服务器

本文实例讲述了Python基于twisted实现简单的web服务器,分享给大家供大家参考。具体方法如下:1.新建htm文件夹,在这个文件夹中放入显示的网页文件2.在htm文件夹的同级目录下,建立web.py,web.py的内容为:fromtwisted.web.resourceimportResourcefromtwisted.webimportserverfromtwisted.webimportstaticfromtwisted.internetimp

系统 2019-09-27 17:55:56 2224

Python

python-opencv二值腐蚀、膨胀、开操作,闭操作原理

语义分割任务中,如果预测结果中包含有孤立的噪点、孔洞,则可以使用腐蚀膨胀进行处理,提高分割效果。#定义输入矩阵,结构核importcv2ascvimportnumpyasnpinput_data=np.array([[1,0,0,0,1],[0,1,1,1,0],[0,1,1,1,0],[0,1,1,1,0],[1,0,1,0,1]],dtype=np.uint8)kernel=np.uint8(np.zeros((3,3)))foriinrange(3)

系统 2019-09-27 17:53:59 2224

Python

Python第五次作业

习题1:读入文件pmi_days.csv,完成以下操作:1.统计质量等级对应的天数,例如:优:5天良:3天中度污染:2天2.找出PMI2.5的最大值和最小值,分别指出是哪一天。1importpandasaspd2importnumpyasnp34days_path=open(r"C:\Users\Shinelon\Desktop\pmi_days.csv")5days_df=pd.read_csv(days_path)67#统计质量等级对应的天数8data

系统 2019-09-27 17:53:47 2224

Python

python多线程

python多线程深入理解低级接口基本使用EventSemaphore线程通信高级接口低级接口基本使用join()方法用来阻塞主线程。可以注释掉、看看打印顺序。importthreadingimporttimedeftest(n):time.sleep(1)print(n)t=threading.Thread(target=test,args=(7,))t.start()t.join()#等待子线程执行完毕,才继续执行主线程。print('主线程执行完毕'

系统 2019-09-27 17:53:20 2224