摘要:一、数据结构1、数组 类型 长度(不重要)初始化使用NewArray...是语法糖,编译器会自动推导,遍历元素来计算元素数量如果数组元素小于等于4个,所有变量会在栈上初始化,如果大于4个,变量会在静态存储区初始化然后拷贝到栈上。索引为非整数,负数,越界都会在编译期间pannic2、切片 数组指针 长 阅读全文
posted @ 2020-12-20 18:47 菲菲菲菲菲常新的新手 阅读(18) 评论(0) 推荐(0) 编辑
摘要:go设计与实现把go内存分配器介绍的很详细,起始一般情况下程序员不怎么会用到。需要简单了解下即可。如果没时间看,看看下述内容即可。 栈区堆区概念要理解。分配方法其实就是基于算法中的数组和链表,优缺点都类似。 go采用的空闲链表分配。并采取了隔离适应来规避链表的缺陷。 通过将对象大小分成微对象[<16 阅读全文
posted @ 2020-12-13 16:05 菲菲菲菲菲常新的新手 阅读(21) 评论(0) 推荐(0) 编辑
摘要:一、什么是cmake cmake 是为了让开发者编写一种与平台无关的CMakeList.txt文件来定制整个编译流程,然后再根据目标用户的平台进一步生成所需的本地化 Makefile 和工程文件,如 Unix 的 Makefile 或 Windows 的 Visual Studio 工程。从而做到“ 阅读全文
posted @ 2020-06-25 21:47 菲菲菲菲菲常新的新手 阅读(112) 评论(0) 推荐(0) 编辑
摘要:wireshark作为一款常用的抓包工具,对程序员调试非常重要,因此理出一些常用的过滤规则。 1.过滤IP,如来源IP或者目标IP等于某个IP 例子: ip.src eq 192.168.1.107 or ip.dst eq 192.168.1.107 或者 ip.addr eq 192.168.1 阅读全文
posted @ 2020-05-31 09:56 菲菲菲菲菲常新的新手 阅读(129) 评论(0) 推荐(0) 编辑
摘要:go中定义了结构体之后,使用json.marshal的时候,如果对应字段未能解析,会自动填充字段类型的零值。unmarshal的时候也是。可以通过在json 的标签内添加omitempty来防止这种情况发生 例子如下,在更新数据库的时候,可以先查询,再更新。可选字段可以加上omitempty标签。 阅读全文
posted @ 2020-05-27 19:26 菲菲菲菲菲常新的新手 阅读(685) 评论(0) 推荐(0) 编辑
摘要:在执行一系列小的变化之前,我们应该重构,每次重构都应该在使程序正常运行的情况下改善代码。 正确执行重构的清单 一、代码应该变得更加整洁 如果在重构之后代码仍然不干净,那么很抱歉,你浪费了这段重构的时间。想想看为什么会这样。 当你离开重构进行小的修改并将一堆重构混合成大的变更时,这些情况通常就会发生。 阅读全文
posted @ 2020-05-02 15:44 菲菲菲菲菲常新的新手 阅读(177) 评论(0) 推荐(0) 编辑
摘要:一、三个规则 1、当你第一次做某件事的时候,直接做就是了 2、当你第二次做类似的事情的时候,不得不重复,无论如何都要做同样的事情 3、当你第三次做同样的事情的时候,你应该开始重构 这个是为了避免代码重复。事不过三。 二、什么时候添加新的特性 重构能帮助你理解其他人的代码。如果你不得不处理某些人遗留下 阅读全文
posted @ 2020-05-02 15:25 菲菲菲菲菲常新的新手 阅读(294) 评论(0) 推荐(0) 编辑
摘要:技术债务 每个人都尽最大的努力从头开始编写出色的代码。项目中一般不存在故意写垃圾代码来损害项目的程序员。那么整洁代码变得杂乱无章的原因是什么呢? Ward CunningHam最初突出了关于不干净代码是技术债务的隐喻。 如果你从一个银行里贷款,这样会让你购物更快。在加快处理进程的时候你付出了额外的费 阅读全文
posted @ 2020-04-30 22:09 菲菲菲菲菲常新的新手 阅读(131) 评论(0) 推荐(0) 编辑
摘要:整洁代码 重构的主要目的就是清理技术债务,将一堆杂乱无序的代码转换成整洁代码和简单设计。 这很好,但是什么才是整洁代码呢。下面是整洁代码的一些特征: 一、整洁代码对其他的编程者是很浅显易懂的 整洁代码不存在超级复杂的算法,糟糕的变量命名,臃肿的类和方法,魔鬼数字,这些都使代码变得草率而且难以理解。 阅读全文
posted @ 2020-04-30 21:34 菲菲菲菲菲常新的新手 阅读(110) 评论(0) 推荐(0) 编辑
摘要:前几天因为公司需要用python自动化测试模拟话机呼叫,找了半天,大部分都是基于pjsip的库。所以开始苦逼的编译安装pjsua之路。 先已经编译好python3.7 32位的_pjsua.pyd并且可以通过import pjsua导入 首先,需要准备的工具有visual studio 2019 c 阅读全文
posted @ 2020-04-21 23:07 菲菲菲菲菲常新的新手 阅读(247) 评论(0) 推荐(0) 编辑