自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(180)
  • 资源 (2)
  • 收藏
  • 关注

原创 UML的常见关系说明

2024-04-06 20:44:34 93

原创 谈软件的模块间依赖关系

软件的模块间依赖关系指的是在软件系统中,各个模块或组件之间的相互依赖和关联。例如,在一个典型的软件系统中,可能有数据库模块、用户界面模块和业务逻辑模块等多个模块。数据库模块负责存储和管理数据,。在这种情况下,,因为它需要从数据库中获取数据来显示给用户。同时,业务逻辑模块也可能间接依赖于数据库模块,因为它在处理用户请求时可能需要调用数据库模块中的功能。。静态依赖是在程序编译时就可以确定的依赖关系,例如程序中调用了某个库文件或其他模块。

2024-03-10 21:23:12 777

原创 软件功耗管理

功耗管理是由软件、处理器、外设、电源等一起构成的系统问题。

2024-01-01 21:49:36 846

原创 软件测试相关

使用人工和自动手段来运行或测试某个系统的过程,其目的在于验证它是否满足规定的需求或弄清预期结果与实际结果的差别。发现软件存在的代码或业务逻辑错误。检验产品是否符合用户需求。

2023-12-10 10:08:53 724

原创 界面开发的优化与设计

界面开发的优化与设计

2023-11-19 20:52:30 137

原创 文件数据交换格式说明

文件数据交换格式说明

2023-11-05 23:13:02 204

原创 无线连接知识

设备发送WiFi-》传输过程中-》设备接收端,整个链路上的涉及资源及优化。

2023-08-20 21:43:48 108

原创 技术人员需要具备的思维

当面临一个复杂的问题时,我们可以将其拆解为多个子问题,并按照他们的逻辑关系将其组织成一个金字塔结构,顶层是最抽象的主旨,下面的每一层都是对上一层的具体化和支持。例如,在解决“如何提高广告产品竞争力”这个问题时,我们可以把它分解为“提高营销产品效果”、“优化产品设计”和“加强市场推广”等子问题,然后将这些子问题组织成一个金字塔结构。这种结构化分层的思维方式,不仅有利于我们更清晰、更系统地理解和解决问题,也有助于提升我们的结构化分层能力。2、结构化分层能力---软件工程的银弹,也是系统正向梳理的要求。

2023-07-30 23:09:27 145

原创 cmake学习

cmake学习。

2023-06-18 15:53:14 64

原创 C语言代码质量与架构调整(五)

把握事物的本质规律和主要特征方法论:领域问题(分析抽象),模型(设计抽象),软件系统(开发实现)

2023-05-21 21:38:11 161

原创 C语言代码质量与架构调整(六)

架构设计的目的主要是为了解决复杂度带来的问题。

2023-05-20 23:17:21 501

原创 用户思维与研发思维

用户思维体现在哪些方面?在软件开发过程中体现在哪些方面?或者注意事项是什么?怎么养成有用户思维的习惯?相较于什么是研发或者设计思维?

2023-04-05 21:54:12 314

原创 RPC

什么是RPC?RPC的应用场景是什么?有什么优势和劣势

2023-04-05 21:03:18 264

原创 谈谈嵌入式软件兼容性

嵌入式系统的一个特性就是软硬件复杂多样,为了使代码具有尽量好的兼容性,需要考虑很多因素,这里简单罗列几条。当然并不是说我们的代码里要全部支持这些兼容性,而是根据具体的项目需求,选择其中一部分加以设计。如果有其他的考虑,欢迎留言交流~如Linux,Windows,MAC等。兼容同一功能不同的实现方案版本。兼容不同的外围芯片软硬件版本。兼容不同的编程语言版本。如C/C++的不同版本。兼容不同的第三方库版本。兼容不同的系统架构版本。兼容不同的硬件模拟测试。兼容不同的应用协议版本。兼容不同的小系统版本。

2023-03-11 21:34:25 480

原创 谈谈软件的持续高质量交付

在软件产品的生命周期中涉及到新想法的探索、对环境的变化、或者用户的问题快速响应,以及实现大规模的快速开发。

2023-03-05 21:18:48 376

原创 C语言代码质量与架构调整(四)

成为架构师需要怎么做,各项能力的要求展开讲,系统架构相关的知识和经验

2022-08-13 23:47:25 810

原创 C语言代码质量与架构调整(三)

自己最近对于架构、模块、组件的优化的思考做个总结,不然没有思考总结就是体会不到软件其中的乐趣。不过自己的认识是比较粗鄙和浅显的,所以更多的是记录笔记和想法。

2022-08-13 21:25:50 585

原创 软件开发的质量及效率

一、背景提到软件开发,我们的脑海里总是浮现出这样的情景:开发组的每一位成员都在辛苦的工作,有的加班加点,甚至通宵达旦是常有的事,虽然项目经理修改了一次又一次的进度计划,而实际的开发情况却总是很令人担忧,以至于每次向领导汇报工作的时候总是觉得以前制定的计划没有很好的完成,总是觉得人力资源不够,总是觉得我们没有太多的时间。等到代码终于开发完成了,测试进度却又非常令人担忧,每一个小BUG都要花很长的时间去查找,改了某一个小错误却又引起了很多错误,结果产品发布遥遥无期,而项目组里的每一位成员已经...

2021-08-08 17:32:49 3546

原创 二次开发与集成

一、思考万物互联的时代,所有的设备都面临着与其他设备和平台之间连接。因此设备需要有可以进行二次开发的SDK和可以被集成,特别是一些模块本身是用来被集成。那么如何考核一个被集成类设备的易用性呢?即它很好能够被集成。集成分为硬件上的接口和软件上的接口,集成类设备被客户集成后。对于浅集成指的是设备只是被客户集成到对应的开发平台,而深集成将伴随客户的开发、生产、使用生命周期。所以两者性质是不一样的。在业务不复杂的情况下,如何处理呢?二、如何提高集成的易用性或者评价它呢?...

2021-07-25 22:13:43 796

原创 人机交互及用户体验、GUI思考

一、背景知识在交互或者是产品设计的研究过程中,其边界一直是在不断拓展的。交互设计其实专指设计人和计算机或者其他电子设备的互动方式,是因为电子计算机,手机等设备被发明之后才逐渐出现的一门学科。用户行为、技术可行性、产品管理/创业、用户体验如何从用户需求、设计、开发、测试,打造用户最佳的人机交互和用户体验。1、用户研究,够不够?2、技术上,我们需要做什么?miniGUI、Android,进程化,web独立3、用户反馈测试如何?我们可以和其他部门或者公司交流,补全组织上的欠缺。人机交互

2021-07-25 21:21:25 1768

原创 技术氛围如何创建

一、技术氛围为什么需要创建1、技术氛围应当围绕建立在整个开发流程中,提升整个团队整个技术氛围,参与前期的概要设计评审大会、代码审核大会、技术分享大会、技术规划大会。2、作为基层管理者需要带头二、有哪些动作1、技术导向有技术导向的价值观,是保持好的技术氛围的最关键的事情。一个公司要想有较好的技术氛围,首先从最高层开始就需要重视技术,尊重工程师。如果连CEO都认为工程师只不过是用来实现产品需求的资源,那么技术团队的负责人不管怎么做,也不可能保持住技术氛围的。这里说的尊重工程师,不是说给高

2021-07-11 13:07:30 1296

原创 常见的几种分支开发方式

1、主干开发在这种模式下,开发人员几乎总是签入代码到主干,而使用分支的情况极少。主干开发有如下三个好处:确保所有的代码被持续集成 确保开发人员及时获得他人的修改 避免项目后期的“合并地狱”和“集成地狱”缺点:每次向主干签入并不都是可发布状态2、按发布创建分支在这种模式下,在某个版本即将发布之前,创建一个分支,该发布版本的测试和验证全部在该分支上进行,而最新的开发工作仍旧在主干上进行。要遵循如下规则:一直在主干上开发新功能 当待发布版本的所有功能都完成了,且希望继续开发新功能时

2021-07-10 23:10:47 3300

原创 项目管理读书感悟

1、什么情况下需要紧急动员2、紧急动员有哪些动作3、紧急动员的过程是什么样

2021-06-13 11:26:46 133

原创 软件需求

一、需求的背景1.1、需求从何而来1.2、需求实现流程需求收集、需求评估、需求导入、需求开发、需求澄清、需求变更、需求实现、需求验证1.3、需求分类软件需求的分类(IEEE):功能需求:和系统主要工作相关的需求,即在不考虑物理约束的情况下,用户希望系统所能够执行的活动,这些活动可以帮助用户完成任务。功能需求主要表现为系统和环境之间的行为交互。性能需求:速度、容量、吞吐率、负载、实时性速度:系统的响应时间。PR1:所有的用户查询都必须在10秒内完成。容量:系统所能存储的数据.

2021-05-01 22:34:45 8378

原创 思考解决问题

1、思考的层次人的逻辑层次从下到上分别为:环境层、行为层、能力层、信念/价值观层、身份层与愿景层。参考来源:https://www.sohu.com/a/405224087_358836

2021-04-05 11:41:05 655

原创 代码评审如何做好

一、背景知识1.1、关于Code Review 翻译成中文是代码评审,具体的定义可以看wiki。这篇 wiki 介绍说 Code Review 在帮助团队找到代码缺陷这件事上作用巨大:“代码审查一般可以找到及移除约65%的错误,最高可以到85%”。实际上, Code Review 的好处远不止这一条,它至少能在以下三个方面帮到我们: 传播知识。相信很多人第一次提交 Code Review 都有类似的经历:短短几百行代码,却被提了密密麻麻几十条 comments,更新了十多次代码,才最终被 a.

2021-02-20 09:57:06 1669

原创 IT项目管理

一、背景知识1.1、何为项目管理 项目管理是指为了达到一个特定的目标而对一列有时间顺序的任务进行管理的能力。其中一些任务必须在其他任务完成之后才能完成,而另外一些任务能够并行完成。一些任务需要个人能力,而另一些工作则需要每个人的参与来减轻负担。技术上讲,项目是为了创造一个惟一的产品或提供一个惟一的服务而进行的一个临时性的努力。项目是超出常规运作的一项事业。假设一个公司在为其他组织开发客户应用,运作是项目进行的一系列活动,完成项目的企业是执行组织。1.2、团队管理维度五、参...

2021-02-20 08:55:05 1478 2

原创 有关敏捷软件开发记录

一、背景最近在开发一个项目,以前一直是瀑布式开发转变成了敏捷开发。当然自己也不知道处于的状态就是敏捷开发,只是最近刚好对于开发中遇到的问题比较困惑。于是找了点知识来填补自己的空白,才发现敏捷所说的知识就是我们现在做的事情。二、知识2.1、定义敏捷开发是以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都...

2020-05-02 10:06:24 309

原创 嵌入式设备GUI

参考文档1、论文-QThttps://www.ixueshu.com/document/9e34d7aacc0ae6f146ac8636e2a41040318947a18e7f9386.html2、论文-框架设计https://www.ixueshu.com/document/ee3f5d1acb12b91a5cbe7b316d0a96fc318947a18e7f938...

2020-03-08 19:40:03 265 1

原创 USB(UVC协议)摄像头

一、背景知识1.1、背景UVC全称为USB Video Class,即:USB视频类,是一种为USB视频捕获设备定义的协议标准。是Microsoft与另外几家设备厂商联合推出的为USB视频捕获设备定义的协议标准,已成为USB org标准之一。对于一个 usb 摄像头来说,内部大概分为一个 VC 接口和一个 VS 接口,VC 接口内部有许多 unit 和 terminal 用来“控制”摄...

2020-03-01 20:02:47 18623 2

原创 复盘及学会提问

1、关于复盘目的:让个人和团队,在项目实践中总结问题与经验,能够发掘到新的思路,认清问题本质,找到规律避免重复犯错,进而提升每个人的能力。2、复盘知识2.1、复盘引导九步法一,精心准备确定复盘的主题,范围,参加人确定复盘时间,地点确定复盘材料二,有效引导开场顺序研讨,深入挖掘收尾。三,推进到位整理并分享复盘结果跟进实施评估改善2...

2020-01-12 12:35:26 1086

原创 python下的加密方法

一、概念1、对称加密A 和 B 要把他们的通信内容加密, 如果A/B使用相同的加密解密key,那这就是对称加密。2、非对称加密有公钥和私钥。公钥随意公开,私钥自己私密保存。比如 A 把公钥发给B, C。 当B,C与A通信时,先把约定好的见面信号用公钥加密,A收到后,用私钥解密,当解密后的数据就是提前约定好的见面信号的话,A 就认为B,C是受信链接。二、基于Python代码编写1...

2019-11-30 10:05:11 156

原创 前端概念

写这篇文章的目的是,自己在搭建Django框架时涉及到了前端的知识,但是本身个人主要是做嵌入式出身的,这些概念无疑是会让人一头雾水。当然代码无论如何变,各种语言的基础是类似的。基本都是数据类型,函数行为等。一、HTMl、CSS、JSHtml:决定网页的结构和内容----【结构】Css:控制页面的表现样式,如:美化页面----【表现】Js:控制网页的行为,如:给页面加动态的效果---...

2019-11-16 22:45:42 155

原创 django

一、背景知识Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。Django是一个开放源代码的Web应用框架,由Python写成。Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 。Django采用了MVC的软件设计模式,即模型M,视图V和控制器C。(或...

2019-10-27 12:06:31 266

原创 C语言代码质量与架构调整(二)

一、代码质量和架构阶段一1.1、读书《代码整洁之道》第三章函数1、不要重复,尽量写小函数。2、小函数可以有好几个出口和入口更具表达力,但是对于大的函数应尽量保证一个入口和一个出口。3、写代码和写文章是一样的,需要反复打磨。4、最理想的方式是不要带参,但是有时候也可以带参更易于理解,要分清场合,可以用结构体如果多个参数的话。5、函数的抽象结构应该是自顶向下的方式。6、...

2019-09-21 19:43:28 459

原创 VS下QT编程

一、环境搭建配置下载VS2013或者其他版本的,下载QT,及QT插件等。VS2013社区版,下载并安装了QT5安装包(qt-windows-opensource)和QT插件(VisualStudioAdd-in)参考网址:https://blog.csdn.net/liang19890820/article/details/49874033二、开始编程1、ui界面,打开...

2019-08-31 23:25:35 1148

原创 Linux下的proc文件夹信息

Linux下如何用/proc命令查找进程状态信息——当前目录,内存占用,描述符等Linux系统上的/proc目录是一种文件系统,即proc文件系统。与其它常见的文件系统不同的是,/proc是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,用户可以通过这些文件查看有关系统硬件及当前正在运行进程的信息,甚至可以通过更改其中某些文件来改变内核的运行状态。这个目录中包含每...

2019-08-02 22:40:56 280

原创 Linux下OOM崩溃

一、背景 Linux kernel out_of_memory(简称OOM)从字面上看可以就可以看出是因为没有内存可供分配导致,OOM的产生和内存分配相关,分析此类问题需要对linux kernel的内存管理非常了解才好定位问题。产生OOM的原因大部分是因为内存的泄漏导致,但也不排除部分小内存的设备(512M或者更低)在使用大量耗内存的应用时,设备的内存回收机制来不及回...

2019-08-02 20:37:07 3115

原创 Linux下排查网络异常

一、一些命令ifconfig该命令用于查看机器挂载的网卡情况pingping命令是用于检测网络故障的常用命令,可以用来测试一台主机到另外一台主机的网络是否连通。netstat此命令显示网络连接、端口信息等,另外一个命令ss与netstat命令类似。ethtoolethtool用于查看网卡的配置情况。ifdown禁用该网卡设备ifup启用该网...

2019-07-28 12:06:07 2850

原创 Linux下排查设备崩溃工具

可以学习的路径:https://www.cnblogs.com/lidabo/category/542683.html背景对稳定性缺陷解决的思考一,缺陷解决的方法二,抽象问题的解决过程,演绎和归纳三,代码质量及意识,程序员的职业素养一、最常见的gdb和gdb server1、排查设备堆、栈越界崩溃问题2、排查设备卡死问题见文章:https://blog.c...

2019-07-28 11:41:46 670

酒店管理的一个小程序

用C#语言编写的一个酒店管理的程序,亲测有用。运用了数据库和EXcel等功能。

2016-01-11

一个简单的AD转换程序

用C#和measurementStudio,编写的一个AD转换的程序。MeasurementStudio做界面,比组态软件要好,结合了labview和C#的长处

2016-01-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除