首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
可移植专题
可测试,可维护,可移植:上位机软件分层设计的重要性
互联网中,软件工程师岗位会分前端工程师,后端工程师。这是由于互联网软件规模庞大,从业人员众多。前后端分别根据各自需求发展不一样的技术栈。那么上位机软件呢?它规模小,通常一个人就能开发一个项目。它还有必要分前后端吗? 有必要。本文从三个方面论述。分别是可测试,可维护,可移植。 可测试 软件黑盒测试更普遍,但很难覆盖所有应用场景。于是有了接口测试、模块化测试以及单元测试。都是通过降低测试对象
阅读更多...
《GOF设计模式》—桥接(BRIDGE)—Delphi源码示例:可移植的用户界面
示例:可移植的用户界面 说明: 代码: unit uWindow; interface uses Windows,SysUtils,Classes,Graphics; type TWindow = class; TWindowImp = class; {窗口视图} TView = class
阅读更多...
单片机的按键消抖/开关量监测函数(附源码,可移植)
方案一:纯软件延时 sbit KEY = P1^3;///按键读取函数uint8_t GetKey(void){if(KEY == 1){DelayMs(20); //延时消抖if(KEY == 1){return 1;}else {return 0;}}else {return 0;}} 致命缺点:在延时的时候一直占用cpu的资源,如果在延时的时候,有其他外部中断或者
阅读更多...
Java语言跨平台可移植理解
在理解Java语言的跨平台和可移植特性前,我们先来看看C语言的跨平台性。 如下图所示: windows平台上的C语言程序通过汇编生成二进制形式的目标文件,最后生成exe类型的可执行文件。 Linux平台上的C语言程序通过汇编生成.T类型的文件最后生成EXE类型的可执行文件。 我们经常说C语言不容易跨平台,其实说的是可执行文件层面上的不容易跨平台。 而源码层是可以跨平台的,也就是说你在w
阅读更多...
POSIX(可移植操作系统接口)简介
POSIX(Portable Operating System Interface)是一种标准的接口规范,用于定义操作系统与应用程序之间的交互方式。POSIX标准由IEEE(电气和电子工程师协会)制定,旨在提供一种跨平台、可移植的API(应用程序编程接口),使开发人员能够在多种操作系统上编写和运行应用程序,而无需进行重大的代码修改。 POSIX标准包括多个部分,涵盖了各种系统编程和应用程序开发方
阅读更多...
Docker 容器化技术:构建高效、可移植的开发环境和部署流程|Docker 数据管理
在 Docker 中,数据主要分为两类:非持久化数据和持久化数据。 非持久化数据是指不需要长期保存的临时数据,每个 Docker 容器都有自己的非持久化数据,这次存储自动创建,与容器的生命周期相同,因此删除容器会同时删除非持久化数据。 如果需要保留容器的数据进行持久化,就需要使用数据卷,通过将宿主机上的目录与容器的挂载点(数据卷)关联,容器的挂载点内容就是宿主机的目录内容。这样,对宿主机目录的
阅读更多...
【旧文更新】【优秀毕设】人脸识别打卡/签到/考勤管理系统(OpenCV+最简基本库开发、可移植树莓派 扩展网络图像推流控制 验证码及Excel邮件发送等功能)
【旧文更新】【优秀毕设】人脸识别打卡/签到/考勤管理系统(OpenCV+最简基本库开发、可移植树莓派 扩展网络图像推流控制 验证码及Excel邮件发送等功能) 文章目录 关于旧文新发毕设结构主页面验证码识别效果管理页面人脸信息采集管理实时数据更新签到结果邮件发送网络前端效果实时图像推流 附录:列表的赋值类型和py打包列表赋值BUG复现代码改进优化总结 py打包 附录:关于旧文新发
阅读更多...
C语言中位域(bit fields)的可移植问题
网上有文章说C语言的“位域”(bit fields)有可移植性的问题,原因是不同的编译器对位域的实现不同。 我决定用实验验证一下。 一、 实验过程: 1. 准备实验程序 这 是谭浩强C语言课本上第12章12.2节的位域示例程序: main() { struct bs { unsigned a:1; unsigned b:3;
阅读更多...
Docker容器部署OpenCV,打造高效可移植的计算机视觉开发环境
推荐 海鲸AI-ChatGPT4.0国内站点:https://www.atalk-ai.com 前言 在计算机视觉领域,快速部署和测试算法是研究和开发的关键。OpenCV作为一个强大的开源计算机视觉库,广泛应用于各种图像处理和视频分析任务。然而,配置OpenCV环境可能会因为不同操作系统和依赖库的版本差异而变得复杂。这里,Docker的使用就显得尤为重要。本文将介绍如何利用Docker
阅读更多...
用C语言写一个耦合性低、完全可移植的轻量级菜单框架
一、前言 作为嵌入式软件开发,可能经常会使用命令行或者显示屏等设备实现人机交互的功能,功能中通常情况都包含 UI 菜单设计;对于复杂的UI设计,可能最多优先考虑的是使用开源的GUI库。 但GUI使用起来复杂,在简单的UI设计中则臃肿或者较难实现(比如OLED这种);基于这种情况,很多开发人员都会有自己的菜单框架模块,避免重复造轮子,网上有很多这种菜单框架的代码,但是大多耦合性太强。
阅读更多...
Docker容器中的OpenCV:轻松构建可移植的计算机视觉环境
目录 前言 推荐 目的和重要性: 深入理解Docker和OpenCV Docker的基本概念和优势: OpenCV简介和应用领域: 构建Docker镜像 部署分享Docker容器 1. 打包Docker镜像: 2. 上传到Docker镜像仓库: 3. 在其他机器上部署并运行容器: 前言 计算机视觉是一门涉及图像和视频处理的领域,可以应用于目标检测、图像
阅读更多...
Docker容器中的OpenCV:轻松构建可移植的计算机视觉环境
前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 构建可移植的计算机视觉环境 文章目录 前言引言简介:目的和重要性: 深入理解Docker和OpenCVDocker的基本概念和优势:OpenCV简介和应用领域: 构建Docker镜像部署分享Docker容器1. 打包Docker镜像:2. 上传到Docker镜像仓库:3. 在其他机器上部署并运行容器: 送书活动
阅读更多...
C#使用Xamarin开发可移植移动应用(1.入门与Xamarin.Forms页面),附源码
前言 什么是Xamarin? Xamarin始创于2011年,旨在使移动开发变得难以置信地迅捷和简单。 Xamarin的产品简化了针对多种平台的应用开发,包括iOS、Android、Windows Phone和Mac App。 Xamarin由许多著名的开源社区开发者创立和参与,而且也是Mono项目的主导者——C#与·NET框架的开源、跨平台实现。 (以上摘自百度百科) 那么什么是Xa
阅读更多...
利用Docker容器化构建可移植的分布式应用程序
目录 一、什么是Docker容器化 二、构建可移植的分布式应用程序的优势 三、构建可移植的分布式应用程序的步骤 四、推荐一款软件开发工具 随着云计算和容器化技术的快速发展,将应用程序容器化成为构建可移植的分布式应用程序的一种重要方式。Docker作为目前最为流行的容器化平台,提供了强大的工具和生态系统,可以帮助开发者快速构建、部署和管理分布式应用程序。下面将详细介绍如何利用Docker容
阅读更多...
可移植文档格式(PDF文件)
可移植文档格式 便携式文档格式(英語:,缩写:PDF)是一種用獨立於應用程序、硬件、操作系統的方式呈現文檔的文件格式。[2]每個PDF文件包含固定布局的平面文檔的完整描述,包括文本、字形、圖形及其他需要顯示的信息。1991年,Adobe Systems共同創始人約翰·沃諾克提出的名為“Camelot”的系統[3]演變成PDF。 如今,PDF文件除平面的文本和图形外,还可能包括逻辑结构元素,注释、
阅读更多...
stm32驱动1.44寸LCD屏幕显示中文字符包含可移植keil5工程代码
1.44寸LCD屏幕 之前的0.96寸的OLED屏幕坏掉了,现在重新买了一块1.44寸的LCD屏幕,感觉这次的质量比较好,还可以显示彩色的 用的IC是stm32f103vet6 接线方法是 供电要5V的,3.3V只会白屏 SCL接PB13 SDA接PB15 RES接PB12(复位,和stm32接同一个复位就行) DC接PB10 那个CS片选完全可以不接就默认浮空吧 BL接GND的
阅读更多...