- 军军小站|张军博客
搜索到与相关的文章
编程技术

一堂如何提高代码质量的培训课(3)

3)职责驱动设计和领域驱动设计前面我提到,当我们尝试写一些复杂功能的时候,我们把功能分解成一个个相对独立的函数。但是,应当将这些函数分配到哪个类中呢?也就是系统中的所有类都应当拥有哪些函数呢?或者说应当表现出哪些行为呢?答案就在这里:以职责为中心,根据职责分配行为。我们在分析系统时,首先是根据客户需求进行用例分析,然后根据用例绘制领域模式和分析模型,整个系统最主要的类就形成了。通过以上分析形成的类,往往和现实世界的对象是对应的。正因为如此,软件世界的这些类

系统 2019-08-29 21:58:56 1898

编程技术

JSP:自定义标签——开发实例

【实例109】开发带属性的标签:helloTagHaveProp本实例中开发的标签在实例108的helloTag标签上作出改进,开发目标是在helloTag标签上增加两个属性fontSize和fontColor,fontSize用于设置字体大小,fontColor用于设置文字的颜色。(1)第一步:开发标签实现类。helloTagHaveProp.javapackagehello;importjavax.servlet.jsp.JspWriter;impor

系统 2019-08-12 09:29:49 1898

各行各业

zookeeper原理

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。Zookeeper是hadoop的一个子项目,其发展历程无需赘述。在分布式应用中,由于工程师不能很好地使用锁机制,以及基于消息的协调机制不适合在某些应用中使用,因此需要有一种可靠的、可扩展的、分布式的、可配置的协调机制来统一系统的状态。Zookeeper的目的就在于此。本文简单分析zookeeper的工作原

系统 2019-08-12 09:27:35 1898

各行各业

测试Storm的多源头锚定

过程,Spout发送msgid1-10一级Bolt,msgid1的tuple做为基本组合tuple,其他8个和一组合,然后发送给二级Bolt,同时单个msgid对应的tuple都ack一次,msgid1对象tuple,acker将会跟踪8个二级bolt处理情况.二级Bolt,发送ackfail(模拟处理失败)结果:在spoutfail下出现msg1-9都失败的情况.拓扑代码packagestorm.starter;importbacktype.storm.

系统 2019-08-12 09:26:55 1898

Python

跟老齐学Python之有容乃大的list(1)

前面的学习中,我们已经知道了两种python的数据类型:int和str。再强调一下对数据类型的理解,这个世界是由数据组成的,数据可能是数字(注意,别搞混了,数字和数据是有区别的),也可能是文字、或者是声音、视频等。在python中(其它高级语言也类似)把状如2,3这样的数字划分为一个类型,把状如“你好”这样的文字划分一个类型,前者是int类型,后者是str类型(这里就不说翻译的名字了,请看官熟悉用英文的名称,对日后编程大有好处,什么好处呢?谁用谁知道!)。

系统 2019-09-27 17:56:59 1897

Python

Python中的类与类型示例详解

1.经典类与新式类在了解Python的类与类型前,需要对Python的经典类(classicclasses)与新式类(new-styleclasses)有个简单的概念。在Python2.x及以前的版本中,由任意内置类型派生出的类(只要一个内置类型位于类树的某个位置),都属于“新式类”,都会获得所有“新式类”的特性;反之,即不由任意内置类型派生出的类,则称之为“经典类”。“新式类”和“经典类”的区分在Python3.x之后就已经不存在,在Python3.x之

系统 2019-09-27 17:55:45 1897

Python

python实现桌面托盘气泡提示

本文实例为大家分享了python实现桌面托盘气泡提示的具体代码,供大家参考,具体内容如下#-*-encoding:utf-8-*-################################程序名:python桌面托盘气泡#文件名:clsBubble.py#功能:实现桌面托盘气泡提示功能#modify:byadengou2016.1.4#program:python3.4.4#适用:windowsXP-windows10################

系统 2019-09-27 17:54:26 1897

Python

Python 抓取动态网页内容方案详解

用Python实现常规的静态网页抓取时,往往是用urllib2来获取整个HTML页面,然后从HTML文件中逐字查找对应的关键字。如下所示:复制代码代码如下:importurllib2url="http://mm.taobao.com/json/request_top_list.htm?type=0&page=1"up=urllib2.urlopen(url)#打开目标页面,存入变量upcont=up.read()#从up中读入该HTML文件key1='ke

系统 2019-09-27 17:53:24 1897

Python

有了这本Python书后,我和她都哭了....

原文链接:https://edu.csdn.net/bundled/detail/49?utm_source=topic「超级星推官/每周分享」是一个围绕程序员生活、学习相关的推荐栏目。CSDN出品,每周发布,暂定5期。关键词:靠谱!优质!本期内容,我们将抽1人送出由我司程序员奉为“超级神作”的《疯狂Python讲义》1本,并在文章内隐藏了5门好课,敬请关注。2019年,有人说是Python元年,背靠AI和大数据,连续半年拿下TOP1编程语言,这些都给了P

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

Python

Python之装饰器

功能:为已存在的函数或对象添加额外的功能原则:不改变源代码为其添加功能不改变函数的调用方式方法:装饰器=高阶函数+嵌套函数(高阶函数:一个函数可以作为参数传递给另外一个函数,或者,一个函数的返回值是一个函数,即函数的入口地址)函数名作为参数传递给装饰器(@decorator_name)装饰函数返回函数名(函数地址)注意:默认情况下,装饰器会修改名字和文档说明,但是可以使用functools中的@wraps()解决。@wraps接受一个函数来进行装饰,并加入

系统 2019-09-27 17:51:46 1897