3)职责驱动设计和领域驱动设计前面我提到,当我们尝试写一些复杂功能的时候,我们把功能分解成一个个相对独立的函数。但是,应当将这些函数分配到哪个类中呢?也就是系统中的所有类都应当拥有哪些函数呢?或者说应当表现出哪些行为呢?答案就在这里:以职责为中心,根据职责分配行为。我们在分析系统时,首先是根据客户需求进行用例分析,然后根据用例绘制领域模式和分析模型,整个系统最主要的类就形成了。通过以上分析形成的类,往往和现实世界的对象是对应的。正因为如此,软件世界的这些类
系统 2019-08-29 21:58:56 1846
本人在试图编写自己的android的service的过程中可谓历尽艰难险阻。目前大业未成,但源码却中道蹦阻,今又重新下载代码,排除吾个人之原因。但此时还是想分享一下本人在编写的过程中遇到的问题,以慰过去,一展来者。虚拟机问题
系统 2019-08-12 09:30:14 1846
平台搭建好了,现在做一个简单的例子在一个文本框里输入字符后点复制后在另一个文本框里显示。如图:代码:
系统 2019-08-12 09:29:33 1846
一基本概念1并行和并发1并行,parallel同时做某些事,可以互不干扰的同一时刻做几件事如高速公路上的车道,同一时刻,可以有多个互不干扰的车运行在同一时刻,每条车道上可能同时有车辆在跑,是同时发生的概念2并发,concurrency也是同时做某事,但强调的是同一时段做了几件事。并行是可以解决并发问题的。2并发的解决1队列,缓冲区队列:排队就是队列,先进先出,解决了资源使用的问题。缓冲区:排程的队列,其实就是一个缓冲地带,就是缓冲区优先队列:对比较重要的事
系统 2019-09-27 17:57:11 1845
filter被称为高阶函数是有道理的。filter(self,/,*args,**kwargs)Docstring:filter(functionorNone,iterable)-->filterobjectReturnaniteratoryieldingthoseitemsofiterableforwhichfunction(item)istrue.IffunctionisNone,returntheitemsthataretrue.从Doc的简单描述可
系统 2019-09-27 17:56:08 1845
python支持可变参数:可以使用*args、**kwargs实现*args是可变的positionalarguments列表,是一个tuple。**kwargs是可变的keywordarguments列表,是一个dict。*args必须位于**kwargs之前,因为positionalarguments必须位于keywordarguments之前。*args、**kwargs的使用:函数定义:是一个将参数pack的过程函数调用:将参数unpack例子:d
系统 2019-09-27 17:55:35 1845
这是我使用python写的第一个类(也算是学习面向对象语言以来正式写的第一个解耦的类),记录下改进的过程。分析需求最初,因为使用time模块显示日期时,每次都要设置时间字符串的格式,挺麻烦,但还是忍了。后来,在处理多线程任务时需要实现定时控制的功能,更麻烦,终于决定自己做一个解决这些问题的通用代码(虽然网上有现成的模块,但亲手编写这部分代码正好能锻炼一下我的面向对象编程)。分析框架刚开始,我计划做一个模仿时钟的抽象类,让它独立运行在一个线程中,让它提供显示
系统 2019-09-27 17:54:34 1845
用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 1845
实验目的:用socket模拟一个微型的web服务器,当py脚本run起后,实微型webserver架起了,然后用本地浏览器访问127.0.0.1:8080(webserver的ip_port)时web服务器就会将网页内容传给浏览器,实现网页浏览.sw+sys:python3.7.2+windows1064bit本地准备的server端网页为下载的hao123主页(我已上载并上传,点击这里)通过这个实验让我学到了:1.当get请求一个主页时,要完整的显示一个
系统 2019-09-27 17:53:23 1845
#0.PyCharm常用快捷键#1.查看使用库源码PyCharm主程序员在Stackoverflow上答道经常听人说,多看源码。源码不仅能帮我们搞清楚运行机制,还能学习优秀的库或者框架的最佳实践。调用库时,你可以在你好奇的几乎任何地方点击Command+B,就可以很方便的跳转到源码里的类,方法,函数,变量的定义。#2.让你的代码PEP8写Python代码时,你会严格遵守pep8规范么?还是要遵守的,不然代码传到github或者知乎上被人怼就不好了。但是如果
系统 2019-09-27 17:53:10 1845