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

设计模式笔记6:工厂方法模式

1.1定义简单工厂增加计算功能需要增加case语句修改工厂类。违背了开放封闭原则。工厂方法模式:定义一个创建对象的接口,让子类决定实例化哪一个类。1.2类图工厂模式:抽象出一个工厂父类,每一个功能做为一个子工厂。这时候要增加一个计算功能,要在计算类增加一个功能类,并且增加对应的工厂类。这样避免了改变工厂类,而是通过扩展的方法来新增功能。设计模式笔记6:工厂方法模式

系统 2019-08-12 01:33:02 2658

操作系统

进程上下文

要理解进程上下文,先看上下文的英文单词——context,context是上下文/环境/来龙去脉的意思,对进程而言,就是进程执行时的环境,那么环境又是个啥?环境指该进程的状态,包括寄存器变量,进程打开的文件,内存信息等。知道了进程上下文,进一步阐释上下文切换。LINUX完全注释中的一段话:当一个进程在执行时,CPU的所有寄存器中的值、进程的状态以及堆栈中的内容被称为该进程的上下文。当内核需要切换到另一个进程时,它需要保存当前进程的所有状态,即保存当前进程的

系统 2019-08-12 01:32:40 2658

各行各业

Thrift 使用方法

第一篇blog,欢迎大家批评指正。一前言Thrift是facebook技术核心框架之一,不同开发语言开发的服务可以通过该框架实现通信。Thrift通过接口定义语言(interfacedefinitionlanguage,IDL)来定义数据类型和服务,Thrift接口定义文件由Thrift代码编译器生成thrift目标语言的代码(目前支持C++,Java,Python,PHP,Ruby,Erlang,Perl,Haskell,C#,Cocoa,Smallta

系统 2019-08-12 01:32:25 2658

Python

python二维码操作:对QRCode和MyQR入门详解

python是所有编程语言中模块最丰富的生活中常见的二维码功能在使用python第三方库来生成十分容易三个大矩形是定位图案,用于标记二维码的大小。这三个定位图案有白边,通过这三个矩形就可以标识一个二维码了。QRCode生成这个二维码只用一行importqrcodeqrcode.make("不睡觉干嘛呢").get_image().show()#设置URL必须添加http://安装导入QRCodepipinstallqrcode#方法多,体量小安装导入MyQ

系统 2019-09-27 17:57:04 2657

Python

python环境链接Oracle数据库

首先要查看自己安装的python版本:(base)C:\Users\yspmm>pythonPython3.7.0(default,Jun282018,08:04:48)[MSCv.191264bit(AMD64)]::Anaconda,Inc.onwin32Type"help","copyright","credits"or"license"formoreinformation.连接Oracle需要安装cx_Oracle和oracle客户端,根据版本和系

系统 2019-09-27 17:46:39 2657

编程技术

屏蔽vim快捷键

http://galeki.is-programmer.com/posts/21499.html==============================/helloworld\cvim不分大小写查找==============================虽然号称使用Vim多年,但是实际上一直没有仔细研究过,平常用的也就是Vim的基本快捷键而已,虽然经常写Rails代码,但是除了自己定义了一个在erb文件中输入<%=%>代码的快捷键之外,就没有任何其

系统 2019-08-29 23:39:05 2657

编程技术

变量的声明和作用域——VB

一、声明变量变量在使用前,必须在代码中进行声明,即创建该变量。在使用变量之前,首先需要声明变量。就是说,必须事先告诉编译器在程序中使用了哪些变量,及这些变量的数据类型以及变量的长度。这是因为在编译程序执行代码之前编译器需要知道如何给语句变量开辟存储区,这样可以优化程序的执行。声明变量有两种方式:隐式声明、显式声明。隐式声明:变量可以不经声明直接使用,此时VB给该变量赋予缺省的类型和值。这种方式比较简单方便,在程序代码中可以随时命名并使用变量,但不易检查。显

系统 2019-08-29 22:36:49 2657

Android

【Android Developers Training】 44. 控制你应

注:本文翻译自Google官方的AndroidDevelopersTraining文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好。原文链接:http://developer.android.com/training/managing-audio/volume-playback.html一个良好的用户体验是一种可预测的。如果你的应用播放多媒体,那么很重要的一点就是你的用户可以通过他们设备上的(蓝牙耳机,耳机等等)硬件或软件音量控制方法,

系统 2019-08-12 01:55:13 2657

数据库相关

SQL 判断两个时间段是否有交叉

费话不说,直接上代码SQL代码:ViewCodeIFEXISTS(SELECT*FROMsys.objectsWHEREobject_id=OBJECT_ID(N'[dbo].[fun_GetTimeSlotDays]'))DROPFUNCTION[dbo].fun_GetTimeSlotDaysGO--=============================================--Author:--Createdat

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

SqlServer

MSSQL 一个循环插入的列子

今天在群里看到有人提问怎么实现如下图的功能,很明显,如果我们手工插的话,费时费力,那何不来个循环判断插入了,这使我想起了while语句说做就做于是写出了下面的代码:createtablerq(dtdatetime,wbvarchar(5))declare@dtdatetimedeclare@nintset@dt='2011-12-1'set@n=0while@n<10begin-----看情况修改10这个数据insertintorqselectdatead

系统 2019-08-12 01:54:01 2657