03 2022 档案
摘要:DDD(Domain Driven Design,领域驱动设计)作为一种软件开发方法,它可以帮助我们设计高质量的软件模型。在正确实现的情况下,我们通过DDD完成的设计恰恰就是软件的工作方式。UL(Ubiquitous Language,通用语言)是团队共享的语言,是DDD中最具威力的特性之一。不管你
阅读全文
摘要:单例模式: 单例模式:确保一个类只有一个实例,并且这个实例化向整个系统提供 (例如只有一台打印机,可以有多个打印任务队列,但是只能有一个正在打印)。单例模式又分为(饿汉模式,懒汉模式)两种 饿汉模式:程序运行即创建对象并实例化,静态实现所以线程是安全的懒汉模式:创建对象不实例化,需要的时候才实例化,
阅读全文
摘要:设计模式(Design Pattern)是前辈们对代码开发经验的总结,代表了最佳的实践是解决特定问题的一系列套路。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案。 三层架构:表述层(
阅读全文
摘要:solid原则包括以下五个: 1、单一职责原则(SRP):表明一个类有且只有一个职责。一个类就像容器一样,它能添加任意数量的属性、方法等。 2、开放封闭原则(OCP):一个类应该对扩展开放,对修改关闭。这意味一旦创建了一个类并且应用程序的其他部分开始使用它,就不应该修改它。 3、里氏替换原则(LSP
阅读全文
摘要:在linux一般使用netstat 来查看系统端口使用情况步。 netstat命令是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的 netstat命令的功能是显示网络连接、路由表和网络接口信息,可以让用户得知目前都有哪些网络连接正在运作。 该命令的
阅读全文
摘要:函数模板不是一个实在的函数,编译器不能为其生成可执行代码。定义函数模板后只是一个对函数功能框架的描述,当它具体执行时,将根据传递的实际参数决定其功能。 面向对象的继承和多态机制有效提高了程序的可重用性和可扩充性。在程序的可重用性方面,程序员还希望得到更多支持。举一个最简单的例子, 如何编写一个通用加
阅读全文
摘要:precision()函数和fixed合用的方法。 其中,fixed表示使用一般的方法(不是科学计数法之类的)输出浮点数。precision是cout自定义的函数,用来设置小数输出位数的精度。注意:如果precision函数没有配合fixed使用的话,它表示的精度就包括了小数的位数。 double
阅读全文
摘要:至从C语言开始enum类型就被作为用户自定义分类有限集合常量的方法被引入到了语言当中,而且一度成为C++中定义编译期常量的唯一方法(后来在类中引入了静态整型常量)。根据上面对enum类型的描述,有以下几个问题:1.到底enum所定义出来的类型是一个什么样的类型呢?2.作为一个用户自定义的类型其所占用
阅读全文
摘要:参数的传递本质上是一次赋值的过程,赋值就是对内存进行拷贝。所谓内存拷贝,是指将一块内存上的数据复制到另一块内存上。 对于像 char、bool、int、float 等基本类型的数据,它们占用的内存往往只有几个字节,对它们进行内存拷贝非常快速。而数组、结构体、对象是一系列数据的集合,数据的数量没有限制
阅读全文
摘要:git查看某个文件的修改历史及具体修改内容 git log --pretty=oneline 文件名 使用git show即可显示具体的某次的改动的修改 在git中出现中文乱码的解决方案 解决方案 在cygwin中,使用git add添加要提交的文件的时候,如果文件名是中文,会显示形如 274\23
阅读全文
摘要:测试应用有很多方法,例如,黑盒测试、白盒测试、迭代测试等,然而,这些方法都是从宏观上描述测试的。为了在技术上保障测试的效果,Kent Beck(也是极限编程创始人)提出了在结果上进行限制的测试方法,也就是在编写程序之前,先确定程序中的变量、控件等元素允许的值。如果在编写程序时,变量、控件中的值与事先
阅读全文
摘要:领域驱动设计(简称 ddd)概念来源于2004年著名建模专家eric evans发表的他最具影响力的书籍:《domain-driven design –tackling complexity in the heart of software》(中文译名:领域驱动设计—软件核心复杂性应对之道)一书。,
阅读全文