3)职责驱动设计和领域驱动设计前面我提到,当我们尝试写一些复杂功能的时候,我们把功能分解成一个个相对独立的函数。但是,应当将这些函数分配到哪个类中呢?也就是系统中的所有类都应当拥有哪些函数呢?或者说应当表现出哪些行为呢?答案就在这里:以职责为中心,根据职责分配行为。我们在分析系统时,首先是根据客户需求进行用例分析,然后根据用例绘制领域模式和分析模型,整个系统最主要的类就形成了。通过以上分析形成的类,往往和现实世界的对象是对应的。正因为如此,软件世界的这些类
系统 2019-08-29 21:58:56 1962
暴雪公司有个经典的字符串的hash公式先提一个简单的问题,假如有一个庞大的字符串数组,然后给你一个单独的字符串,让你从这个数组中查找是否有这个字符串并找到它,你会怎么做?有一个方法最简单,老老实实从头查到尾,一个一个比较,直到找到为止,我想只要学过程序设计的人都能把这样一个程序作出来,但要是有程序员把这样的程序交给用户,我只能用无语来评价,或许它真的能工作,但...也只能如此了。最合适的算法自然是使用HashTable(哈希表),先介绍介绍其中的基本知识,
系统 2019-08-12 09:30:13 1962
同事问了一个非常简单的问题,怎么取出每个partition里面另外一个列的最小值?createtablet1(intc1,intc2);假如按照c2分区,0-10,10-20,20-30,30-40,40-50insertintot1values(101,1);insertintot1values(102,2);insertintot1values(111,11);insertintot1values(112,12);insertintot1values(
系统 2019-08-12 09:26:53 1962
python脚本自动生成需要文件在工作中我们经常需要通过一个文件写出另外一个文件,然而既然是对应关系肯定可以总结规律让计算机帮我们完成,今天我们就通过一个通用文件生成的python脚本来实现这个功能,将大家从每日重复的劳动中解放!定义一个函数defproduceBnf(infilename,outfilename):List=[]withopen(infilename,'r')asinf:forlineininf.readlines():List.appe
系统 2019-09-27 17:56:45 1961
本人财务狗一枚,编程基础为0。因为提升工作效率的主观愿望(备注:懒),准备开始学点python。因为平时比较忙(事多),可能更新的非常慢,估计2019年11月开始正式学习更新。给自己立个flag,主要学习内容两个:(1)提升办公效率(2)pandas库学习day1基础软件安装安装anaconda\pycharm\cmder软件介绍:Pycharm是集成开发环境(操作平台),Anaconda是集成环境管理器(库包),cmder好用的程序操作命令参考文档:Py
系统 2019-09-27 17:56:37 1961
1.准备工作下载源码包wgethttp://python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2查看是否安装make工具~#rpm-qa|grepmakeautomake-1.11.1-4.el6.noarchmake-3.81-20.el6.x86_64如果没有安装make工具yum-yinstallgccautomakeautoconflibtoolmake查看是否安装zlib库~#rpm-qa|grepzl
系统 2019-09-27 17:56:34 1961
前言单例模式(SingletonPattern),是一种软件设计模式,是类只能实例化一个对象,目的是便于外界的访问,节约系统资源,如果希望系统中只有一个对象可以访问,就用单例模式,显然单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。在Python中,我们可以用多种方法来实现单例模式:使用模块使用__new__使用装饰器(decorator)使用元类(metaclass)概念简单说,单例模式(
系统 2019-09-27 17:56:26 1961
这篇文章将解除你使用python的pipinstallxxx受到的网速限制,如果只是下载较小的第三方库,可以尝试pip--default-timeout=100install-Uxxx。一、Windows找到python安装目录下的:\Lib\site-packages\pip\models\index.py文件,将PYPI的值改为你所需要的镜像源即可,例如改为豆瓣镜像源:#PyPI=Index('https://pypi.python.org/')PyP
系统 2019-09-27 17:55:57 1961
今天我们用python进行体育竞技分析,预测球队成绩一.体育竞技分析的IPO模式:输入I(input):两个球员的能力值,模拟比赛的次数(其中,运动员的能力值,可以通过发球方赢得本回合的概率来表示,一个能力值为0.8的球员,在他发球时,有80%的可能性赢得1分)处理P(process):模拟比赛过程输出O(output):两个球员获胜的概率该体育竞技程序,我们采用自顶向下的设计方法。自顶向下的设计是一种解决复杂问题的行之有效的方法。其步骤如下自顶向下设计的
系统 2019-09-27 17:55:31 1961
如果需要把大量实验跑完,最好用批量处理操作,直接使用shell写shell文件来操作也行,但是需要学习shell脚本的语法,不如直接用python调用shell,把python如何调用shell学会,就直接在python里边把需要的命令写成字符串,传递给python的调用shell的模块就行了importosos.system('ffmpeg-version')#将在shell中打印出ffmpeg的版本str='ffmpeg-version'os.syst
系统 2019-09-27 17:55:28 1961