![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
软件开发
程序猿司晨
这个作者很懒,什么都没留下…
展开
-
转行程序员浅谈Linux下的多线程编程
文章目录什么是多线程多线程编程的基本步骤线程同步总结多线程编程作为程序员无法绕过去的一个话题,同时也是面试必考题目,是每个程序员必会的基本技能之一。由于工作后基本每天都是写业务代码,我很少涉及到多线程编程。虽说之前学过相关知识,但没有实战经验,导致我对多线程的理解一直处于学习和遗忘的循环之中。这不最近接手了以太网应用层协议栈的维护和开发,才得以有机会接触到多线程的相关技术。因此,我花了一个星期的时间对着项目代码和书本一点点啃多线程编程及其相关技术。通过一周的学习,我算是基本掌握了多线程编程,今天写文原创 2020-05-24 16:26:16 · 345 阅读 · 0 评论 -
浅谈我从修复bug的过程中学到了什么
文章目录引述bug的描述bug的分析与修复bug修复之后的测试总结Note引述前天和系统工程师讨论一个新的需求,需求描述很简单就是定时向TSP发送车辆的位置信息。由于需求描述很简单,我也没有过多的考虑多种场景,三下五除二就完成了设计并coding完成,之后简单测试一下就提交了代码。bug的描述内测版软件发布后,MCU团队测试该功能时发现了问题。由于我设计的是两分钟的定时器,即接收到MCU...原创 2020-03-24 22:20:11 · 458 阅读 · 0 评论 -
程序员必备技能之 多种场景下的Git操作
文章目录Git学习的动力和重点常用的git命令Git构建workflow总结本文默认读者使用过git,并且知道简单的git命令。本篇文章介绍git学习中的重点,以及利用git构建自己的workflowGit学习的动力和重点1 兴趣驱动。很多朋友能在网上看到各种各样git教程,但是这些文章仅仅是写出git各种命令的操作。当看到这种文章时,我们往往只是找到需要的命令就直接离开,这导致每次使用gi...原创 2020-03-08 22:29:03 · 247 阅读 · 0 评论 -
程序员为什么要学习软件工程
按照惯例,先回顾一下这周完成的工作:(1)练习英语听力240分钟(2)完成了三个Test Case的自动化测试实现(3)修复5个bug(4)发布小版本,做回归测试(5)读完《构建之法》自从结束了CPA分析后,工作又回归了日常学英语、解bug、做测试的节奏。自动化测试自动化测试开发节奏略慢,因为这周大部分时间在研究subprocess模块,网上资料太过杂乱,拉慢了开发进度。这周实现了...原创 2019-03-26 22:39:03 · 2736 阅读 · 2 评论 -
瀑布模型与“V”模式开发模型有何异同?
在做软件开发时,程序员们肯定接触过各式各样的软件开发模型,例如:写了再改模型、瀑布模型、增量模型等。其实,很多开发模型是在瀑布模型基础上衍生出来的。然而,了解“V”模式开发模型的程序员应该不多。“V”模式开发模型是汽车电子行业在瀑布模型的基础上做了改进,以符合汽车ECU开发需要的模型。今天来讲讲瀑布模型与“V”模式开发模型的异同。瀑布模型瀑布模型产生的历史背景是20世界70年代出现的软件危...原创 2019-04-08 20:18:30 · 12470 阅读 · 0 评论 -
软件开发都需要哪些岗位参与?
最近一直在学习软件工程的相关知识,通过看书和网络课程在脑中搭建了软件工程的基本架构。同时,在工作中留心观察,发现软件工程在工作中真的是无处不在。今天介绍一下关于软件开发过程中涉及的岗位及各岗位的职责。由于参照汽车ECU软件开发的各个岗位职责,这与互联网行业/软件行业的分工还是有些区别,但大体岗位一致,供大家参考。角色介绍根据岗位划分,软件开发的需要项目经理、系统工程师、硬件工程师、软件开发工...原创 2019-04-08 20:21:33 · 13633 阅读 · 1 评论 -
菜鸟程序员利用消息队列实现进程间通信
之前介绍了进程间通信的PIPE通信、FIFO通信和共享内存,三种通信方式各有其适用范围。今天介绍第四种进程通信方式—消息队列。消息队列的概念消息队列从字面理解就是消息组成的列表。进程能够从消息队列添加消息和读取消息。乍一看消息队列类似于FIFO通信,但消息队列能够实现消息的随机查询,有些读者会疑惑这是什么意思呢?FIFO中的信息必须按照信息的先后顺序进行读取,而消息队列能够指定读取某条消...原创 2019-06-12 21:44:06 · 901 阅读 · 0 评论 -
菜鸟程序员利用共享内存实现进程间通信
上篇文章介绍了进程间的FIFO通信,FIFO通信属于有名管道通信,其能够用于任何进程间的数据通信。今天介绍第三种进程通信方式—共享内存。共享内存的概念共享内存(share memory)是一种最为高效的进程间通信方式,是因为进程能够直接对内存进行读写,且不需要进行数据的保存与复制。为了实现在多个进程间高效的数据通信,linux内核特地留下一块内存区,该内存区能够被需要的进程映射到自身的内存...原创 2019-06-10 21:43:27 · 924 阅读 · 0 评论