9 廖杰良

广州创龙电子科技有限公司 软件工程师

个人网站:http://liaojieliang.com/

等级
TA的排名 3w+

《代码大全》笔记 10 - 使用变量的一般事项

豆瓣:https://book.douban.com/subject/1477390/《Code Complete》2d ed,CC2变量初始化的原则在声明变量的时候初始化。 在靠近变量第一次使用的位置初始化它。结合第一条,应当在即将使用的时候声明,然后马上初始化变量。 尽量使用 final 或 const 声明变量,防止意外修改。 构造函数初始化类的所有...

2020-01-07 20:46:14

《代码大全》笔记 09 - 伪代码编程过程

豆瓣:https://book.douban.com/subject/1477390/《Code Complete》2d ed,CC2 伪代码编程过程是创建类和子程序的最佳方法。其他的方法还有,测试先行开发(测试驱动开发),重构,契约式设计。 “伪代码”这个术语是指某种用来描述算法、子程序、类或完整程序的工作逻辑的、非形式的、类似于英语的记法。 伪代码编程过程则是...

2020-01-05 16:54:33

《代码大全》笔记 08 - 防御式编程

豆瓣:https://book.douban.com/subject/1477390/《Code Complete》2d ed,CC2 在防御式驾驶中要建立这样一种思维,那就是你永远也不能确定另一位司机将要做什么。你要承担起保护自己的责任,哪怕是其他司机犯的错误。 保护程序免遭非法输入数据的破坏要做到“垃圾进,什么都不出”、“垃圾进来,出去是错误提示”或“不许垃圾进来”。断...

2020-01-01 20:01:27

《代码大全》笔记 07 - 高质量的子程序

豆瓣:https://book.douban.com/subject/1477390/《Code Complete》2d ed,CC2创建子程序的正当理由降低复杂度。 引入中间的、易懂的抽象。 避免代码重复。 支持子类化。方便在派生类中覆盖单一功能。 隐藏实现细节。 提高可移植性。 隔离复杂度。 提高代码重用。 ...

2019-12-29 19:34:56

《代码大全》笔记 06 - 可以工作的类

豆瓣:https://book.douban.com/subject/1477390/《Code Complete》2d ed,CC2 软件开发技术的发展,先是直接基于语句来思考编程问题,然后发展到基于子程序来思考,到现在是基于类来思考。 类是由一组数据和子程序构成的集合,这些数据和子程序共同拥有一组内聚的、明确定义的职责。 抽象数据类型抽象数据类型(ADT,abs...

2019-12-28 20:52:55

《代码大全》笔记 05 - 软件构建中的设计

豆瓣:https://book.douban.com/subject/1477390/《Code Complete》2d ed,CC2设计中的挑战设计是一个险恶的问题 你必须首先把这个问题“解决”一遍以便能够明确地定义它,然后再次解决该问题,从而形成一个可行的方案。 设计是个了无章法的过程 设计就是确定取舍和调整顺序的过程 设计受到诸多限制 设计是不确定的 设计是一...

2019-12-15 18:35:14

板卡复位功能测试规范

概述复位,作为板卡独立设计的功能,需要独立的专门性测试。测试用例首先根据板卡设计筛选出所有受复位功能影响的外设和器件,作为该项测试的测试对象。然后,通过 reset 键(full、warm、PMIC)、reboot 命令,各种复位系统的方法,分别执行测试:保持外设连接不变,复位系统,然后基于功能测试方法检查各接口、器件是否正常。 保持外设连接不变,复位系统,然后拔下再插入可热插拔...

2019-12-10 20:46:43

一个简单的内存读写带宽测试程序

之前有写文章介绍了 mbw(https://blog.csdn.net/engrossment/article/details/88314722)以及 lmbench(https://blog.csdn.net/engrossment/article/details/83830363)。其中 mbw 的只是简单使用了 memcpy 系统调用进行测试,而 lmbench 里面的 bw_mem、str...

2019-11-25 17:05:01

UART0 作为调试串口的同时与普通串口 UART3 对接测试的方案

缘由在硬件自动化测试中,数据通信接口最好有对接的方式,由程序自动完成数据收发与校验,从而实现对硬件接口的测试验证。这里讲到的 UART0 与 UART3 的测试,由于为了保留 UART0 作为调试串口的功能,便于维修人员使用,所以需要特别的处理方案。硬件连接原理这里 UART0 是调试串口,CP2108 是 USB 转串,用于接上位机进行使用调试串口。UART3 是一个普通的待测串...

2019-11-14 11:25:21

重开 CSDN 博客一周年

大学的时候开始写技术博客,最早是在 CSDN 开的。后来整了个个人博客(http://liaojieliang.com/),处于某个记不清的原因,清空了 CSDN 的博客。不久之后觉得个人博客的访问量低得可怜,又不便于与他人做技术交流,于是在 cnblogs 开始写。然后到去年的今天,2018 年 11 月 8 日,重新在我之前已清空了的 CSDN 博客写下新的第一篇博客《命令行终端下的处理进...

2019-11-09 15:38:06

《研发管理破局》笔记 10 - 技术管理

豆瓣:https://book.douban.com/subject/30402872/10.1 技术开发于产品、平台开发的区别 产品开发与产品平台开发的需求分析差异:产品开发需求直接来源于客户,产品平台开发需求源于产品型谱的差异化分析。 产品开发与产品平台开发的验收标准差异:产品开发的验收标准通过设计确认,产品平台开发的验收标准是充分支持同类型新产品的开发。 10...

2019-11-07 08:27:36

《研发管理破局》笔记 04 - 研发成本管理

豆瓣读书:https://book.douban.com/subject/30402872/4.1 产品开发全生命周期成本管理产品生命周期成本研发费用 产品直接成本 产品制造成本 产品维护费用 产品销售费用 产品处置费用4.2 规划研发成本管理体系成本管理是在成本方面的指挥、控制、协调等活动。当研发成本管理要求融合到研发管理体系中之后,研发成本管理就可以依据研发...

2019-10-19 14:43:49

Windows WSL 及 Windows Terminal 工具

WSL 的全称是 Windows Subsystem for Linux。这使得我们在 Windows 上直接使用 Linux 环境,比通过 VMware、VirtualBox 安装虚拟机更为便捷。至于性能,有看到网友进行了简单测试,与虚拟机里的系统不相上下。微软有在开发更高性能的 WSL2,不过还没正式放出。基于 WSL 安装的 Linux 发行版都会有一个命令行终端,但比较难用。可以选择安...

2019-10-18 12:10:36

《研发管理破局》笔记 03 - 研发质量管理

豆瓣读书:https://book.douban.com/subject/30402872/所谓质量是满足顾客要求的程度。因此研发质量管理的目标就是清晰地定义顾客要求,并实现顾客要求。研发质量管理包括设计控制、设计转换、更改控制、技术文件的控制。3.1 设计控制设计控制的原理是从设计输入出发,通过设计过程,产生设计输出,通过检查设计输出与设计输入之间存在差异的方法来发现问题,并采取...

2019-10-11 08:18:09

《研发管理破局》笔记 02 - 定义产品开发的结构

豆瓣读书:https://book.douban.com/subject/30402872/2.1 价值链与开发链从获取顾客需求到满足顾客需求以实现价值的全过程就构成了价值链。 价值链中与设计开发有关的活动组成了开发链。 开发链管理系统(Development Chain Management,DCM)。 高效能的开发连是各公司新产品开发竞争的利器,而打造高效能的开发链的第一步就...

2019-10-10 08:33:47

《研发管理破局》笔记 01 - 研发管理的理论多菱镜

豆瓣读书:https://book.douban.com/subject/30402872/为什么要学习理论研发管理人员如果没有良好的理论素养和全局观,把握好改进方向,而是同其他人员一样陷入技术或经验的泥潭,或是被动接受大家的处理意见,就不能与高层领导产生良性互动,从而逐步找到解决问题的突破口,打破困局。1.1 ISO9000 族标准ISO9000 族标准是指由国际标准化组织质...

2019-10-07 16:30:25

《研发管理破局》笔记 00 - 引言

豆瓣读书:https://book.douban.com/subject/30402872/本书内容概览本书分析总结了如何应用 ISO9001、CMMI、PMBOK、SGS、PACE 等研发管理方法,以及这些方法的局限性;从项目管理、资源管理、战略管理研发管理变革四个方面对研发管理的各个要素及其相互关系进行了分析和讨论;还讨论了行业特征、研发团队规模、管理成熟度水平、企业文化对研发管理...

2019-10-06 15:17:17

Linux 中的 bashrc、vimrc 及 tmux.conf 配置

概述趁手的工具能大大提高生产力。而对于整天与 Linux 字符终端打交道的程序员来说,终端工具、shell 工具以及文本编辑工具,一定要用好、用趁手。这里 3 个工具我选择的分别是 tmux、bash、Vim。当然,*NIX(UNIX、Linux)环境下还有很大其他很好的选择,如 screen、zsh、Emacs 等等,关键还是自己用趁手。没有最好,只有最合适自己的。不要盲目站队、打口水仗。一...

2019-09-30 08:33:27

SATA 和 USB 的移除与扫描加载测试

在硬件验收测试中有发现板卡偶尔识别 SATA 盘失败的情况,为了进一步测试定位问题,专门找了这个 SATA 设备的移除与扫描加载测试方法。以下基于广州创龙的 TL138 进行说明。我们这里的移除和加载是在系统驱动层面的动作,而非物理上的。所以我们要看设备接入到系统所使用的总线,SATA 盘使用的正是 SCSI 总线。那么 SCSI 相关的操作就是我们需要关心的。基于以下描述的方法,我们对可疑的...

2019-09-20 09:22:15

ZLG AWTK 移植到 TL5728

周立功最近两年在软件上做了不少东西,其中 awtk GUI 框架开源了,于是拿来在广州创龙的 5728 开发板上试试玩下。以下为移植过程。tslib 交叉编译awtk 依赖 tslib,而 5728 的 sdk 开发环境并未带有。所以需要先进行交叉编译移植。在配置好 5728 SDK 开发环境的 PC 执行以下命令:git clone https://github.com/lib...

2019-09-18 11:52:02

查看更多

勋章 我的勋章
  • 领英
    领英
    绑定领英第三方账户获取
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 脉脉勋章
    脉脉勋章
    绑定脉脉第三方账户获取
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证
    技术圈认证
    用户完成年度认证,即可获得
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。