自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

stupid的博客

小小小白请指教!!!

  • 博客(23)
  • 收藏
  • 关注

原创 敏捷开发笔记(第7章节)--什么是敏捷设计

在按照我的理解方式审查了软件开发的生命周期后,我得出一个结论:实际上满足工程设计标准的唯一软件文档,就是源代码清单。

2024-06-22 11:30:35 897

原创 敏捷开发笔记(第6章节)--一次编程实践

设计和编程都是人的活动,忘记了这一点,将会失去一切。该章节都是代码示例,可自行进行阅读。

2024-06-17 09:07:57 206

原创 敏捷开发笔记(第5章节)--重构

本章讲述的是关于人的注意力的,阐述人民应该专注手边的工作并且确信自己正在尽全力,说明了使事物能够工作和使事物正确之间的区别,介绍了我们放入代码结构中的价值。重构的目的,是为了每天清洁你的代码。通过最小的努力就能够对我们的系统进行扩展和修改。要想具有这种能力,最重要的就是要保持代码的清洁。每一个软件模块都具有三项职责。第一个职责是它运行起来完成的功能。第二职责是它要应对变化。第三个职责是要和阅读它的人进行沟通。重构定义:在不改变代码外在的行为的前提下对代码做出修改,以改进代码的内部结构过程。

2024-06-11 08:46:53 233

原创 敏捷开发笔记(第4章节)--测试

测试套件运行起来越来越简单,就会越频繁的运行它们,测试运行得越多,就会越快的发现和那些测试的任务背离。如果有一天多次运行所有的测试,那么系统失效的时间就绝不会超过几分钟,这是一个合理的目标,我们决不允许系统倒退,一旦它工作在一个确定的级别上,就决不能让它倒退到一个稍低的级别。第一个也是最明显的一个影响,是程序中的每一项功能都有测试来验证它的操作的正确性。把程序设计为易于调用和可测试的,是非常重要的,为了易于调用和可测试,程序必须和周边环境解耦,这样首先编写测试迫使我们解除软件中的耦合。

2024-06-04 09:05:05 818

原创 敏捷开发笔记(第3章节)--计划

当你能够度量你所说的,并且能够用数字去表达它时,就表示你了解它;若你不能度量它,不能用数字去表达它,那么说明你的知识就是匮乏的、不能令人满意的。--凯尔文勋爵(英国物理学家)1883。

2024-05-28 09:01:24 693

原创 嵌入式:简单的service框架

在嵌入式中,我们获取一个资源、设置一个变量、更新数据的话最直接的方式就是直接调用一个函数。这样的写法也可以满足基本的功能,前提是这个系统是只要一个任务,只有一个while(1)如图1.1。图1.1当有两个或者两个以上的任务的时候,同时调用一个函数(设置一个状态值、操作同一个资源、操作指针等行为)的流程如图1.2。图1.2当两个任务同时操作一个资源的时候,就会有重入的问题,会导致想不到的异常问题(数据不对、指针异常等)。

2024-05-15 17:15:51 565

原创 敏捷开发笔记(第2章节)--极限编程概述

极限编程(简称XP)是敏捷方法中最著名的一个。它由一系列简单却相互依赖的实践组成。这些实践结合在一起形成了一个胜于部分结合的整体。本章节我们将简要的探讨一下这个整体。我们希望客户跟开发人员在一起紧密的工作,以便于彼此知晓对方所面临的问题,并共同去解决这些问题。谁是客户?XP团队中的客户是指定义产品的特性并排列这些特性优先级的人或者团体。最好的情况是客户和开发人员在同一个房间中工作,次一点就是客户和开发人员之间的工作距离在100米内,距离越大,客户就越难成为真正的团队成员。

2024-05-14 08:38:26 752

原创 敏捷开发笔记(第1章节)--敏捷实践

敏捷软件开发的原则和价值观构成了一个可以帮助团队打破过程膨胀循环的方法,这个方法关注的是可以达到团队目标的一些简单的技术。

2024-04-29 21:18:48 892

原创 headfirst设计模式笔记(13章节)--真实世界的模式(与设计模式相处)

如果你发现自己处于某个情境下,面对着所欲达到的目标被一群约束影响着的问题,然而,你能够应用某个设计,克服这些约束并达到该目标,将你领向某个解决方案。在阅读完本书之后,已经相当了解什么事设计模式了,但是我们至今还没有给它正式定义。模式是在某情境(context)下,针对某问题的某种解决方案。:就是你想在某情境下达到的目标,但也可以是某情境下的约束。:就是你所追求的,一个通用的设计,用来解决约束,达到目标。:就是应用某个模式的情况,这应该是会不断出现的情况。

2024-04-18 08:54:11 212

原创 嵌入式:EasyLogger 日志库

下载的时候选择master的版本:查看elog.h的文件注意看版本号(2.2.99),如果版本不一样源码可能不一样,不一样的话用最新的即可;

2024-04-16 11:28:19 506

原创 headfirst设计模式笔记(12章节)--模式中的模式(复合模式)

使用模式最棒的方式,就是把它们从家里找出来跟其他模式展开交互,你越多的使用模式就越容易发现他们一同现身在你的设计中。对于这些在设计中携手合作征服许多问题的模式,我们给它一个特备的名字:复合模式(compound Pattern);模式通常被一起使用,并被组合在同一个设计解决方案中。复合模式在一个解决方案中结合两个或者多个模式,以解决一般或重复发生的问题。本章节还是以鸭子模拟器进行举例,详情参考PDF;

2024-04-07 08:35:09 141

原创 headfirst设计模式笔记(11章节)--代理模式

目录1:PDF上传链接2:控制对象访问2.1:目标3:Java RMI概观4:定义代理模式5:设计箱的工具6:本章去看详细的PDF吧(裂开)1:PDF上传链接【免费】headfirst-设计模式:PDF用于引用资源-CSDN文库2:控制对象访问 玩过扮白脸、扮黑脸的游戏?你是一个白脸,提供很好且友善的服务,但是你不希望每个人都叫你做事,所有找了黑脸控制对你的访问。这就是代理要做的:控制和管理访问。就像你将看到的,代理的方式有很多种。代理通过I

2024-03-20 09:02:54 227

原创 headfirst设计模式笔记(10章节)--状态模式

状态模式:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。状态模式跟策略模式的差别,如图2.1图2.1。

2024-03-18 08:44:34 165

原创 headfirst设计模式笔记(9章节)--管理良好的集合:迭代器与组合模式

迭代器模式提供一种方法顺序访问一个聚合对象的各个元素,而又不是暴露其内部的表示。图4.1组合模式:允许你讲对象组合成树形结构来表现“整体/部分”层次结构。组合能让客户以一致的方式处理个别对象以及对象组合。图5.1。

2024-03-06 08:58:10 218

原创 headfirst设计模式笔记(8章节)--模版方法模式

图2.1好莱坞原则;别调用(打电话给)我们,我们会调用(打电话给)你。在好莱坞原则下,我们允许低层组件将自己挂钩到系统上,但是高层组件会决定什么时候和怎样使用使用这些低层组件。换句话说,高层组件对待低层组件的方式是“别调用我们,我们会调用你”。图2.2。

2024-02-05 08:34:44 126

原创 headfirst设计模式笔记(7章节)--适配器模式与外观模式

适配器模式:将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。这个适配器模式充满着良好的OO设计原则:使用对象组合,以修改的接口包装被适配者:这种做法还有额外的优点,那就是,被适配者的任何子类,都可以搭配着适配器使用。提供一个统一的接口,用来访问子系统中的一圈接口。外观定义了一个高层接口,让子系统更加容易使用。

2024-01-17 09:05:01 358

原创 常用内存分配器算法

动态内存分配是指在程序运行过程中,根据需要动态地分配和释放内存空间。常用的就是malloc、free:malloc():用于分配指定字节数的内存空间,并返回指向该内存的指针。free():释放之前通过malloc()分配的内存空间。使用动态内存分配可以灵活地管理内存,特别适用于以下情况:需要在程序运行时根据具体需求动态分配内存的情况,例如处理可变长度的数据结构。需要在堆上分配较大的内存块,超出栈空间的限制。需要在程序中动态创建和释放对象。

2024-01-08 10:28:25 344

原创 headfirst设计模式笔记(6章节)--单件模式

确保一个类只有一个实例,并提供一个全局访问点。

2024-01-05 08:48:22 320

原创 headfirst设计模式笔记(4章节)--工厂模式

简单工厂其实不是一个设计模式,反而比较像是一种编程习惯,但是由于经常被使用,所以我们给它一个“Head First Pattern荣誉奖”,有些开发人员的确把这个编程习惯误认为是“工厂模式”

2023-12-11 09:01:55 22

原创 headfirst设计模式笔记(3章节)--装饰对象

图3.1。

2023-12-06 08:46:54 17

原创 headfirst设计模式笔记(1-2章节)

1.设计模式让你和其他开发人员之间有共享的词汇,一旦懂得这个些词汇,和其他开发人员之间沟通就很容易,也会促使那些不懂的程序员开始学习设计模式。设计模式也可以把你的思考架构层次提高到模式层面,而不是仅停留在琐碎的对象上。2.观察者模式:我建立了这个广播类,它能够追踪所有的倾听对象,而且任何时候只要有新资料进来就会通知每一个倾听者。最棒的是倾听者可以随时加入广播系统,甚至可以随时退出。这样的设计方式相当动态和松耦合。

2023-11-28 08:52:23 21

原创 如何快速定位结构体某个变量的偏移量

typedef struct { uint8_t diag_param1_result; //测试结果 uint8_t diag_param2_result; uint8_t diag_param3_result; uint8_t diag_param4_result; uint8_t diag_param5_result; uint8_t diag_param6_result; uint8_t d

2022-01-06 20:28:35 298

原创 指针的使用

指针的使用1.指针的 . 与 -> 使用当左边是个对象时用“.”当左边是个指向对象的指针时用“->”例如:typedef struct {uint8_t ucRow;uint8_t ucSavecmappingdate[2];}Pointer_t;Pointer_t A ;Pointer_t *B ;则调用时用A.ucRow;B->ucRow;//学...

2020-02-17 16:18:12 11

空空如也

空空如也

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

TA关注的人

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