- 博客(976)
- 资源 (24)
- 收藏
- 关注
原创 关于C++异常,你必须知道的
本文是作者翻译过C++之父Bjarne Stroustrup的技术文章C++核心准则中有关C++中异常的文章之后的总结,希望读者通过本文可以对C++异常有一个全面,快速的了解:异常处理机制希望解决的问题为了使用错误处理系统化,健壮和不繁琐。例如下面的代码:void f2(int i) // Clumsy and error-prone: explicit release{ int* p = new int[12]; // ... if (i < 17) ..
2020-10-24 19:18:21 853
原创 使用30元开发板UNO D1 R32构筑物联网开发环境
本文介绍使用UNO D1 R32(ESP32)开发板构建嵌入式开发环境的方法。ESP32是啥?用厂家的话来讲,ESP32 采用 40 nm 工艺制成,具有最佳的功耗性能、射频性能、稳定性、通用性和可靠性,适用于各种应用场景和不同功耗需求。以下是ESP32的主要参数:项目 数值 核心数 2 架构 32bit Wifi Yes 蓝牙 Yes 内存 512K 闪存 16M GPIO 36 通讯协议 SPI, I.
2020-05-10 19:32:36 5865 2
原创 使用Eclipse构建树莓派远程调试环境
本文内容和前两篇文章具有连续性,请根据需要阅读。在Ubuntu主机端使用gdb-multiarch实现远程调试之后,接下来使用说明在Eclipse中实现远程调试的方法。构建远程调试配置信息通过菜单选择[Run]-[Debug Configurations...]启动调试配置信息设定画面之后,选择[C/C++ RemoteApplication]项目之后,鼠标右键选择[New Co...
2020-04-10 19:34:31 1605 1
原创 使用树莓派构建嵌入式C++调试环境
本文以使用树莓派4b为例说明构建嵌入式C++执行环境。树莓派本身可以到各大购物网站直接购买,价格大概300-500元不等。之所有选择树莓派是因为它的系统比较完善,容易上手。但是需要实现说明的是本文说明的大部分内容并不仅限于树莓派。准备树莓派下载镜像文件打开树莓派官方网站的系统镜像下载网页:https://www.raspberrypi.org/downloads...
2020-04-09 19:47:04 4877
原创 ARM C++交叉编译环境构建方法
本文说明在Linux主机上构建ARM开发用最新C++编译环境的方法。安装Ubuntu主机安装虚拟机软件从VitualBox官网下载最新的VirtualBox。https://www.virtualbox.org/wiki/Downloads具体的安装包根据正在使用的操作系统决定。安装Ubuntu操作系统下载并安装Ubuntu交叉编译环境我们选择...
2020-04-08 20:07:25 6891
原创 永远无法在游泳池里学会海战--《实战Python设计模式》新书介绍
《实战Python设计模式:实战Python设计模式:可复用面向对象软件开发实践》是本人根据自己在实际开发工作中积累的有关Python语言,设计模式的经验,想法写成的一本书,由电子工业出版社出版。谨此推荐给各位。作为可复用面向对象软件开发的基础,设计模式集合了很多软件开发领域专家的宝贵经验和良好实践,其重要性不言而喻。但是,学习设计模式的过程并不是一帆风顺的,对于缺乏面向对象开发经验的设计者...
2020-03-29 09:58:38 1782
原创 用VisualStudio2019预览版体验C++20新功能
最近的连载中有很多内容涉及到C++20中的内容,例如concept等。但是由于C++20还属于新生事物,不仅可以参考的例子少,找到一个可以体验C++20功能的开发环境都困难。本文介绍使用微软VisualStudio2019预览版体验C++20新特性的方法。下载并安装VisualStudio体验版以下是体验版和正式版的下载地址,和正式版稍有不同:https://visualstud...
2020-01-26 20:42:38 6774
原创 30分钟理解关键链--《突破项目的瓶颈--关键链 》读书笔记
每一个PMP或者是准PMP都会知道关键链这个词。但能说清楚的应该没有多少。会用的估计更不会超过1/100。希望本文能是大家不用通读原著而理解关键链的概念,只用30分钟。原著以小说的形式说明的管理学中的关键链的原理及运用方法。小说写得生动,活泼。在不知不觉间,书就读完了。但是在现在的时代快餐流行,应该有很多人希望能够有更快的方式对关键链有个大概的了解。于是按照个人的理解,总结了一下。
2013-04-12 20:43:37 23063 3
原创 Android函数计算器(含源码,Android测试工程)
1.Android环境下自己写的函数计算器的源代码,工程文件2. Android环境下的单元测试工程及源代码。http://download.csdn.net/detail/craftsman1970/39366983.已经上传到Anroid电子市场,可直接安装。https://market.android.com/details?id=calculator.xwg&feature
2011-12-18 14:41:11 7785 3
原创 Android歌词秀1.5版
功能简介:0.本软件可以在Android2.1以上(2.1,2.2,2.3测试通过)执行。1.自动读取与音乐相同位置的歌词文件。2.根据播放进度,表示当前的歌词3.按歌词语句快进,快退。5.选择不同于音乐文件名得歌词文件。(1.5版新增功能)6.选择歌词文件的编码格式,支持UTF-8和GB2312(1.5版新增功能)7.同时选择多个播放文件(1.5版新增功能
2011-11-27 19:48:51 7889 9
原创 Android小游戏-九宫格,有源码的哦!
为了学习Android,自己编了一个小游戏,就是9宫格。特点:1.自动分析可选数字。2.自动判断结果3.支持Undo功能(Command设计模式)4.支持自编题目。 功能简介主画面功能:1.点击项目选择题目2.按【Menu】键新
2011-08-10 00:18:14 9450 17
原创 EA&UML日拱一卒 在时间线之间进行交互
今天继续说明多个时间线之间进行交互的方法。时间观察点相当于在时间线上打一个桩(这里是th),接下来可以以这个时间桩为参照定义时间约束(th..th+0.1S)。本例的含义就是半按快门操作启动对焦过程,对焦过程必须在半按快门0.1S之内启动。
2022-10-07 15:16:37 263
原创 使用Python3.10以上执行《实战Python设计模式》示例程序时,发生Iterable导入错误
使用Python3.10以上执行《实战Python设计模式》示例程序时,发生Iterable导入错误
2022-09-18 14:05:20 549
原创 EA&UML日拱一卒 时序图入门
时序图侧重于沿线性时间轴在生命线内和生命线之间变化的条件。它描述了单个类目的行为和类目之间的交互,将注意力集中在导致生命线的建模条件发生变化的事件发生的时间。
2022-09-12 08:43:40 1074 1
原创 EA&UML日拱一卒 历史状态
有一种情况,状态没有被进入过(即不存在之前的历史)或者已经到达了终止状态,如果存在与终止于历史伪状态上的迁移,可以使用缺省历史机制使之强制迁移到一个特定的子状态。历史状态是一个与组合状态中区域有关的便利的概念,通过这个概念一个区域可以保持自己前一次退出时的状态构成的痕迹。深历史(deepHistory)代表的是包含它的区域的完整的状态构成。其效果使终止于deepHistory历史伪状态的迁移产生的效果等同于如同迁移终止于被保存的状态构成的最里层中的某个子状态,也包括沿途遇到的所有入口行为的执行。...
2022-08-28 19:35:33 757
原创 EA&UML日拱一卒 用例扩展关系
前面到文章说明了取款和转账的用例分析,除了共同的处理之外,还分别包含了执行转账动作和执行取款动作两个用例。也有一些客户,可能希望在执行正常的转账或取款动作的同时,将执行过的动作记入动作日志中。被扩展用例的定义独立于扩展用例,其含义也独立于扩展用例。相反,扩展用例定义了一组模块化的行为增量,这些增量可以在特定条件下增强被扩展用例的执行。如果是【额外】的,就是扩展关系。扩展是从扩展用例到被扩展用例的关系,它指定扩展用例中定义的行为如何以及何时可以插入到被扩展用例。图中黄色的是扩展用例,绿色的是被扩展用例。
2022-08-21 15:47:17 1052
原创 EA&UML日拱一卒 用例泛化关系
使用Python 语言进行图像分析、数据处理工作的读者可以直接以本书中的示例为基础,迅速构建自己的系统架构。给定一个类目,其指向一般类目(泛化方向)的传递闭包通常统称为泛化类目,其指向特殊类目(泛化的反方向)的传递闭包通常统称为特化类目。增加具象用例的种类在一个完全不考虑具体场景(例如可以是一个和银行完全无关的场景)的情况下进行,从而可以开发出更加通用的用例。将上述3种形式的认证进行泛化可以得到一个抽象的用户认证用例。除了密码认证,还可以有指纹认证:。也可以有面部识别:。...
2022-08-13 15:03:44 723
原创 EA&UML日拱一卒 用例包含关系
由于包含关系的主要用途是重用公共部分,因此基本用例中剩下的部分通常并不完整,需要和包含的部分结合才有意义。可以看到我们将一个转账用例分解为九个小的用例,而这里的取款用例和九个用例之间的关系就是包含关系也就是说转账用例包含九个小用例。包含(Include)是两个用例之间的有向关系,表示被包含的用例的行为被插入到包含用例的行为中。可以看到,除了绿色的执行去狂动作之外,所有的被包含用例都是在转账用例中出现过的。再看一下取款用例的基本路径。待机显示。选择语言。...
2022-07-31 14:26:22 1003
原创 EA&UML日拱一卒 用例图开篇
是作者去年3月份出版的技术书籍,该书利用Python的标准GUI工具包tkinter,通过可执行的示例对23个设计模式逐个进行说明。另一方面通过对这些问题的解决过程进行说明,让读者明白在编写代码时如何判断使用设计模式的利弊,并合理运用设计模式。这些行为涉及之间的相互作用参与者和主体,可能会导致主体状态的变化以及与其环境的通信。一个用例可以包括其基本行为的可能变化,包括异常行为和错误处理。使用Python语言进行图像分析、数据处理工作的读者可以直接以本书中的示例为基础,迅速构建自己的系统架构。...
2022-07-27 21:23:58 661
翻译 UML2.51边译边学-组件
系统或其他上下文中的组件之间的接线可以通过使用兼容的简单端口之间的依赖关系来结构化定义,或者在使用和匹配的接口实现之间进行定义,这些接口由组件图中组件上的插座和棒棒糖(参见10.4.4)表示。组件包支持定义逻辑组件(例如,业务组件、流程组件)和物理组件(例如,EJB组件、CORBA组件、COM+和.NET组件、WSDL组件等),以及实现、部署和执行它们的节点。部署定义可以定义参数化组件执行的值。符合标准的工具可以选择支持名为“提供的接口”和“所需的接口”的隔间,按名称列出提供的和所需的接口。...
2022-07-17 16:00:46 653
翻译 UML2.51边译边学-接口
本文是UML规范2.5.1中接口相关部分中文翻译。原文可从https://www.omg.org/spec/UML/2.5.1下载。10.4 Interfaces(接口)10.4.1 Summary(总结)Interfaces declare coherent services that are implemented by BehavioredClassifiers that implement the Interfaces via InterfaceRealizations.接口声明由行为类目实现的一致
2022-07-12 20:35:46 883
翻译 UML2.51边译边学-部署图
本文是UML规范2.5.1中部署图相关部分中文翻译。原文可从https://www.omg.org/spec/UML/2.5.1下载。19.1 Summary(总结)The Deployments package specifies constructs that can be used to define the execution architecture of systems and the assignment of software artifacts to system elements. A
2022-07-03 12:46:45 845
原创 自学HarmonyOS应用开发(75)- 显示拍摄结果
照片拍摄完成接下来的动作就是确认拍照结果。我们的实现方法是对前面文章中用到的文件浏览器功能进行扩展,从而实现一个简单的照片浏览器功能。增加照片浏览器画面照片浏览器画面使用下面的布局。代码中用到的FileListContainer,LayoutSeparator都在之前的文章中有过说明,这里就不再赘述了。和这个布局文件配套的页面文件如下:准备ListContainer相关类稍微需要说明的是,这个BrowserSlice类会在onStart方法中从Intent参数中获取一个浏览
2022-06-21 20:30:36 349
原创 自学HarmonyOS应用开发(74)- 拍摄照片
断更有一段时间,今天继续。相机准备好了之后,就开始实际拍摄照片。首先稍微回退一下,在打开相机时,我们设置了用于保存图像的listener(以下代码的第2行):当用户按下【拍照】按钮时,架构会触发下面的处理:代码第8行会调用cameraDevice的triggerSingleCapture方法。如果方法被成功执行,下面的saveImage方法会被执行:如果一切顺利,就可以看到第10行代码显示的"Take photo succeed"提示。就像下面的视频这样:视频到目前为止的内容
2022-06-15 20:11:57 685 1
原创 自学HarmonyOS应用开发(73)- 准备相机(2)
画面布局初始化MainAbilittySlice的初始化代码如下:代码中只是调用了如下的组件初始化代码:目前这段代码只是为两个按钮指派功能。其中【初始化】按钮的功能如下:它的功能是初始化相机,有一点需要注意的是:构建params时使用的参数必须和前一篇文章中说明的布局文件中为id:surface_container指定的属性相同。当初始化过程结束后,下面的回调函数会被执行:的那个surface被成功创建之后,就可以打开相机了:
2022-06-05 19:52:36 546 4
原创 自学HarmonyOS应用开发(72)- 准备相机(1)
相机是手机的常用功能,同时也是许多更高阶功能的基础。本文按步骤详细介绍Harmony应用开发中启动相机的过程。声明相机相关权限相机相关功能可能用到的权限包括:照相机权限,读写存储存储空间权限,访问麦克风权限和获取定位权限。这些权限首先需要在config.json中进行声明。{... "module": {"abilities":[ { "skills": [ { "entities": [ ...
2022-05-28 19:22:00 395
原创 自学HarmonyOS应用开发(71)- 优化目录间迁移体验
通过前面几篇文章,虽然我们实现了在各级目录之间进行切换的功能,但还是有一些不够方便的地方。例如: 返回上级目录之前必须首先当前回到目录的最顶端 退回上级目录之后,总是回到该目录的最顶端。这对于希望继续浏览目录内容的用户很不友好 针对这两个问题,我们采取如下对策: 通过画面顶端的操作区实现返回上级目录功能 每次进入下级目录时记录当前表示位置,从下级目录返回时恢复这个表示位置。 修改后的动作视频如下:演示动作返回上级目录按钮画面最上面操作区的布局文件中和
2022-05-22 20:27:31 338 1
原创 自学HarmonyOS应用开发(70)- 解决ListContainer默认优化问题
列表项布局表示问题使用FileBrowser在目录之间进行切换时,发现了一个问题:本来只应该在出现在返回上级目录列表项上面的<<按钮会按照一定的频率出现在其他列表项上。具体请参见下面的视频:经过各种尝试之后得到的结论是问题出在下面的代码:@Overridepublic Component getComponent(int i, Component component, ComponentContainer componentContainer) { HiLog.info(
2022-05-15 19:55:54 383 1
原创 自学HarmonyOS应用开发(69)- 获取并表示手机目录结构
和文件存储比较起来,一般用户更关心的是文件系统的目录结构。本文介绍获取和表示目录结构的方法。先看演示视频:演示视频File类这是一个Java中的标准类,提供跨平台的文件访问功能。本文主要使用文件类的下面几个功能:方法名 功能 listRoots 列举文件系统中根目录,Linux系统中只有一个根目录 listFiles 列举指定目录中的所有目录和文件 isDirectory 判断当前文件是否问目录 BrowserItem类目录项的基类,功能是封装
2022-05-08 19:26:06 1609 1
原创 自学HarmonyOS应用开发(68)- 获取并表示文件系统信息
接下来我们想通过一个文件浏览器应用,练习文件系统操作,文件表示等功能,本文首先说明获取并表示文件系统内容的方法。还是先看演示视频:演示视频构建FileStore表示画面首先为准备画面布局:<?xml version="1.0" encoding="utf-8"?><xwg.filebrowser.DynamicLayout xmlns:ohos="http://schemas.huawei.com/res/ohos" ohos:height="m
2022-04-24 19:38:55 1221
原创 自学HarmonyOS应用开发(67)- 自定义布局(2)
布局文件示例接下来使用一个实际的布局为例,介绍动态调整组件高度的实现方法。布局内容如下:<?xml version="1.0" encoding="utf-8"?><xwg.filebrowser.DynamicLayout xmlns:ohos="http://schemas.huawei.com/res/ohos" ohos:height="match_parent" ohos:width="match_parent" ohos:background_
2022-04-13 19:30:12 512
原创 自学HarmonyOS应用开发(66)- 自定义布局(1)
Harmony应用开发文档中为Java开发者提供了6种UI布局,可以满足开发者的大部分需求。但是有一个问题是:这些布局一旦显示,用户便无法进行调整。我们开发一个自定义布局来解决这个问题。以下是效果演示:效果演示内容比较多,今天是第一部分,先实现一个按比例分配显示空间的布局。定义DynamicLayout类自定义布局类除了要继承ComponentContainer类的功能之外,还要实现EstimateSizeListener和ArrangeListener接口的功能。
2022-04-07 20:08:24 1282
Aduino UNO D1 R32 硬件包
2020-03-15
[Android应用开发记录-字幕播放器(5)完善]附属工程,源码
2011-09-07
Android应用开发记录-字幕播放器(5)完善附带工程,源码
2011-09-07
LyricPlayer for Android 2.1
2011-09-03
Android应用开发记录-字幕播放器(4)完成
2011-08-28
Android下的原创小游戏-九宫格
2011-08-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人