统信软件致力于造操作系统创新生态。一本涵盖发设计原则、发环境配置、Qt发框架、DTK发框架、服务发、发布与部署、发案例等知识的发指南正合时宜。本书适合有志于参与统信生态构建的信创厂商、应用发人员阅读参考。 ● 从发环境到发布与部署,应用发全流程详解 ● 自研发框架DTK使用介绍,提升发效率 ● 6个桌面应用发实战,学练结合
售 价:¥
纸质售价:¥74.00购买纸书
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
版 权
编委会
《统信UOS应用开发详解》编委会
推荐序
-第1篇 背景知识-
第1章 操作系统简史
1.1 人工时代
1.2 批处理操作系统
1.2.1 联机批处理操作系统
1.2.2 脱机批处理操作系统
1.3 分时操作系统
1.3.1 UNIX操作系统的诞生
1.3.2 可视化操作系统的演进
1.3.3 开源Linux的诞生与演进
第2章 国产操作系统
2.1 国产操作系统的必要性
2.2 国产操作系统统信UOS
2.2.1 DDE
2.2.2 统信UOS生态环境
-第2篇 应用开发-
第3章 开发设计原则
3.1 同源异构
3.1.1 内核适配
3.1.2 ABI兼容性
3.1.3 接口兼容性
3.2 兼容性原则
3.3 目录权限规范
3.4 界面设计理念
3.4.1 为用户而设计
3.4.2 设计解决的不是视觉问题
3.4.3 保持轻量
第4章 开发环境与开发工具
4.1 统信UOS的安装
4.1.1 物理机单系统安装
4.1.2 物理机多系统安装
4.1.3 VirtualBox安装
4.1.4 统信UOS的基本使用
4.1.5 安装软件
4.2 常见的开发环境配置
4.2.1 DTK开发环境
4.2.2 开发第一个程序:HelloWorld
4.3 目录结构设计
4.3.1 项目目录规范
4.3.2 README文件
4.4 版本控制系统
4.4.1 Git基础知识
4.4.2 安装Git
4.4.3 配置Git
4.5 Git Flow开发模型
4.5.1 主分支
4.5.2 辅助分支
4.6 版本号管理
4.7 统信UOS的开发者模式
4.7.1 潜在风险说明
4.7.2 开启方法
第5章 Qt开发框架
5.1 Qt基础模块
5.1.1 Qt Core
5.1.2 Qt GUI
5.1.3 Qt Widgets
5.1.4 Qt Test
5.2 Qt扩展模块
5.2.1 Qt Concurrent
5.2.2 Qt BlueTooth
5.2.3 Qt D-Bus
5.2.4 Qt Image Formats
5.3 Qt WebEngine概述
5.3.1 开发Qt WebEngine Widgets应用
5.3.2 开发与Qt WebEngine相关的Qt Quick应用
5.3.3 命令行参数
5.3.4 Qt WebEngine其他说明
5.4 Electron概述
5.4.1 Electron开发环境
5.4.2 第一个Electron程序
5.4.3 打包并分发第一个应用
5.4.4 调试方法
5.5 常见问题
5.5.1 qmake工程设置模块之间的编译依赖关系
5.5.2 CMake工程设置模块之间的编译依赖关系
5.5.3 快速使用QTimer进行一次计时操作
5.5.4 Qt单元测试发送事件到控件中
5.5.5 使用事件过滤器
5.5.6 信号和槽的连接参数
5.5.7 Qt多线程常见使用方法
5.5.8 QWidget坐标系的位置变换
5.5.9 Qt版本区分
5.5.10 限制QLineEdit内容输入
5.5.11 Qt通过信号与槽传递自定义结构体数据
5.5.12 Qt界面控件自动关联信号槽
5.5.13 QString格式化字符串的使用
5.5.14 QDateTime日期时间类的使用
第6章 DTK开发框架
6.1 DTK开发简述
6.2 DTK功能模块介绍
6.3 DTK程序框架创建
6.3.1 软件环境配置和开发包安装
6.3.2 创建qmake项目
6.3.3 创建CMake项目
6.4 DTK图形控件使用
6.4.1 dtkwidget的public类简介
6.4.2 DMainWindow简介
6.5 DTK常用组件
6.5.1 布局
6.5.2 进度、状态指示
6.5.3 输入框和编辑框
6.5.4 按钮与选项
6.5.5 消息通知与提示
6.6 DTK中的设置界面框架
6.6.1 简介
6.6.2 示例
6.6.3 详解
第7章 DTK插件开发
7.1 插件的工作原理
7.2 dde-dock插件开发
7.2.1 dde-dock插件接口
7.2.2 dde-dock插件开发过程
7.3 dde-control-center插件开发
7.3.1 dde-control-center插件开发的准备工作
7.3.2 dde-control-center插件接口
7.3.3 构建dde-control-center插件
7.3.4 插件加载原理
7.4 dfm插件开发
7.4.1 准备工作
7.4.2 属性对话框插件
7.4.3 视图插件
7.4.4 面包屑插件
7.4.5 文件控制器插件
7.4.6 文件预览插件
7.5 PAM插件
7.5.1 PAM工作流程
7.5.2 PAM配置文件介绍
7.5.3 PAM主要操作函数
7.5.4 PAM标准接口介绍
7.5.5 实现一个PAM插件
7.6 浏览器插件开发
7.6.1 NPAPI插件
7.6.2 插件安装
7.6.3 插件识别
7.6.4 插件的生命周期
7.6.5 NAAPI的插件开发
第8章 服务开发
8.1 systemd服务开发
8.1.1 systemd系统架构
8.1.2 unit介绍
8.1.3 unit管理
8.1.4 unit服务配置文件
8.1.5 实例
8.1.6 systemd调试
8.2 PolicyKit服务开发
8.2.1 PolicyKit系统架构
8.2.2 身份验证代理
8.2.3 声明操作
8.2.4 polkitd
8.2.5 pkcheck
8.2.6 pkaction
第9章 调试与性能优化
9.1 GDB入门
9.1.1 何为GDB
9.1.2 GDB工作原理
9.1.3 调用和退出GDB
9.1.4 GDB基本命令
9.1.5 GDB调试脚本
9.1.6 GDB多线程调试
9.1.7 GDB多进程调试
9.2 Qt Creator中的调试和调优
9.2.1 代码调试
9.2.2 性能调优
9.3 使用perf进行性能分析
9.3.1 用法
9.3.2 事件类型
9.3.3 示例
9.4 使用gperftools进行性能分析
9.4.1 编译安装gperftools
9.4.2 TCMalloc
9.4.3 heap checker
9.4.4 heap profiler
9.4.5 CPU profiler
9.5 使用gprof进行性能分析
9.5.1 编译profiling程序
9.5.2 运行profiling程序
9.5.3 运行gprof
9.5.4 gprof输出样式
9.6 使用Valgrind与Sanitizers进行内存分析
9.6.1 Valgrind
9.6.2 Sanitizers
-第3篇 发布与部署-
第10章 包格式
10.1 Debian软件包
10.1.1 Debian软件包概述
10.1.2 统信UOS系统安装deb软件包
10.1.3 构建deb软件包
10.2 RPM
10.2.1 RPM软件管理命令
10.2.2 DNF包管理器
10.2.3 构建RPM包
10.3 依赖分析与处理
10.3.1 软件包的依赖概述
10.3.2 统信UOS系统上软件依赖分析方法及原理
10.3.3 统信UOS系统使用过程中如何处理依赖
10.3.4 统信UOS开发过程中常见的依赖问题
第11章 上架部署
11.1 应用规范
11.1.1 目录结构
11.1.2 权限规范
11.2 签名
11.2.1 签名机制
11.2.2 统信UOS应用签名
11.2.3 签名工具的使用
11.3 上架
11.3.1 应用商店介绍
11.3.2 准备工作
11.3.3 创建应用
11.3.4 上架
11.4 内网分发
11.4.1 私有化应用商店
11.4.2 部署流程
11.4.3 其他
-第4篇 桌面应用开发实战-
第12章 经典应用案例
12.1 初级:简易文本编辑器
12.1.1 简述
12.1.2 应用主要功能
12.1.3 “关于”界面
12.1.4 主业务视图
12.1.5 标题栏
12.1.6 文本显示/编辑框及行号栏
12.1.7 底部栏
12.2 初级:计算器
12.2.1 简述
12.2.2 应用主要功能
12.2.3 应用入口
12.2.4 应用主窗口内容添加
12.3 中级:相册
12.3.1 简述
12.3.2 图片加载
12.3.3 缩略图展示
12.3.4 大图展示
12.4 中级:邮箱客户端
12.4.1 简述
12.4.2 邮件引擎
12.4.3 数据结构
12.4.4 实例
12.5 高级:影院
12.5.1 简述
12.5.2 播放引擎介绍
12.5.3 播放引擎接口函数
12.5.4 实例
12.6 高级:音乐播放器
12.6.1 简述
12.6.2 音乐引擎介绍
12.6.3 音乐播放接口
12.6.4 实例
第13章 系统接口案例
13.1 定时任务
13.1.1 cron简述
13.1.2 systemd简述
13.2 设备访问
13.2.1 摄像头
13.2.2 扬声器和麦克风
13.2.3 网络
13.2.4 蓝牙
13.3 通知接口
13.4 托盘图标
13.4.1 QSystemTrayIcon类
13.4.2 实例
-第5篇 常见问题-
第14章 内核与驱动
14.1 内核编译
14.1.1 编译x86/ARM内核
14.1.2 交叉编译龙芯内核
14.2 GPIO
14.2.1 数据结构
14.2.2 驱动初始化流程
14.2.3 示例
14.3 input子系统
14.3.1 输入设备驱动
14.3.2 应用示例
14.4 hwmon子系统
14.4.1 hwmon驱动
14.4.2 应用示例
14.5 LTP
14.5.1 LTP执行原理
14.5.2 LTP环境部署
14.5.3 安装目录
14.5.4 测试执行
14.6 驱动问题
14.6.1 网卡速度异常问题
14.6.2 USB触摸板S3唤醒问题
14.6.3 HDMI热插拔连接状态错误问题
第15章 开发工具相关
15.1 其他开发工具
15.1.1 VS Code
15.1.2 JetBrains系列IDE
15.1.3 Eclipse
15.2 其他语言开发环境搭建
15.2.1 Node.js
15.2.2 Go
15.2.3 Rust
第16章 常用资源
16.1 DTK接口简要说明
16.1.1 DMainWindow自定义快捷菜单
16.1.2 DApplication接口函数
16.1.3 DTK汉字转拼音
16.1.4 DListView DViewItemAction::setWidget用法
16.1.5 打印预览
16.1.6 DAccessibilityChecker的用法
16.1.7 自定义按钮背景色
16.1.8 帮助手册
16.1.9 日志文件
16.1.10 系统信息
16.1.11 系统通知
16.1.12 DRegionMonitor
16.2 Linux开发常用资源
16.2.1 libc手册
16.2.2 man手册
16.2.3 编辑器
16.2.4 工具
16.2.5 代理
16.2.6 网络安全
16.2.7 文件共享
16.2.8 终端
16.2.9 图形界面
16.2.10 数据备份与恢复
16.2.11 控制台
16.2.12 包管理工具
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜