常用的C/C++库可参考awesome-cpp。这里主要记录本人曾使用的C/C++库。
数学库
文件解析
图像处理
网络通信
软件测试
参考链接
- awesome-cpp,by fffaraz.
软件序列号保护是一种常用的软件保护机制,其具体流程如下图所示。
飞行仿真中飞行器控制器的设计方法可以参考Matlab中的示例。具体步骤如下:
MongoDB是一种面向文档的数据库管理系统,用C++等语言撰写而成,以解决应用程序开发社区中的大量现实问题。MongoDB由MongoDB Inc.于2007年10月开发,2009年2月首度推出,现以服务器端公共许可分发。
最近需要做一个红外图像处理软件,在VS2017上使用OpenGL GLUT开发,采用Rapidcsv读取传递的CSV数据。具体代码如下:
1 | int main(int argc, char *argv[]) |
最近调试一个使用VC6开发环境,使用OpenGL编写的遗留程序。记录一下VC6开发环境下GLUT库的配置。
目前最新的Nodejs LTS已不再支持Windows7。如需在Windows7上安装Nodejs,需安装12.19.1或之前的版本。
最近遇到一个奇特的需求,要求构建一个评估系统,分为前后端。它的前端是桌面应用程序,后端也是桌面应用程序。前后端之间的通信是通过前端导出一个数据包文件,然后交给后端导入完成的。由于熟悉Nodejs前后端开发,我选择Electron加Vuejs的解决方案。具体的技术选型如下:
Electron(原名为Atom Shell)是GitHub开发的一个开源框架。它允许使用Node.js(作为后端)和Chromium(作为前端)完成桌面GUI应用程序的开发。Electron现已被多个开源Web应用程序用于前端与后端的开发,著名项目包括GitHub的Atom和微软的Visual Studio Code。
一个基础的Electron包含三个文件:package.json(元数据)、main.js(代码)和index.html(图形用户界面)。框架由Electron可执行文件(Windows中为electron.exe、macOS中为electron.app、Linux中为electron)提供。开发者可以自行添加标志、自定义图标、重命名或编辑Electron可执行文件。
Vue.js是一款流行的JavaScript前端框架,旨在更好地组织与简化Web开发。Vue所关注的核心是MVC模式中的视图层,同时,它也能方便地获取数据更新,并通过组件内部特定的方法实现视图与模型的交互。
Vuejs适合开发单页应用程序。
IndexedDB 是一种底层 API,用于在客户端存储大量的结构化数据(也包括文件/二进制大型对象(blobs))。该 API 使用索引实现对数据的高性能搜索。虽然 Web Storage 在存储较少量的数据很有用,但对于存储更大量的结构化数据来说力不从心。而 IndexedDB 提供了这种场景的解决方案。
IndexedDB 是一个事务型数据库系统,类似于基于 SQL 的 RDBMS。 然而,不像 RDBMS 使用固定列表,IndexedDB 是一个基于 JavaScript 的面向对象数据库。IndexedDB 允许您存储和检索用键索引的对象;可以存储结构化克隆算法支持的任何对象。您只需要指定数据库模式,打开与数据库的连接,然后检索和更新一系列事务。
indexedDB的API不够友好,建议使用localForage,支持类Storage API语法的客户端数据存储polyfill,支持回退到Storage和Web SQL
使用如下命令构建Vuejs项目脚手架:
1 | npm install -g @vue/cli |
在上一节创建Vuejs项目的基础上,使用如下命令为Vuejs项目添加Electron支持,从而生成桌面应用程序:
1 | vue add electron-builder |
使用如下命令为项目添加Sqlite3数据库支持:
1 | npm install sequelize --save --registry https://registry.npm.taobao.org |
使用如下命令构建32位Electron安装程序:
1 | npm run electron:build -- --ia32 |
或者
1 | yarn electron:build --ia32 |
请参考 Electron:运行npm run build构建环境失败解决方案。
当遇到如下错误时, 解决方法很简单,打包项目路径不能包含中文路径。
1 | .electron-builder\Cache\nsis\nsis-3.0.3.2\Bin\makensis.exe exited with code ERR_ELECTRON_BUILDER_CANNOT_EXECUTE |
请参考Blank screen on builds, but works fine on serve。
electron支持macOS、Windows、Linux。在Windows平台,electron仅支持 Windows 7 或更高版本, 旧版操作系统已不再支持(并且无法运行).
看了吴菁老师的几个Simulink教学视频,很不错,记录一下。