您好,欢迎来到聚文网。
登录
免费注册
网站首页
|
搜索
热搜:
磁力片
|
购物车
0
我的订单
商品分类
首页
幼儿
文学
社科
教辅
生活
销量榜
华为仓颉语言编程从入门到精通
字数: 805
出版社: 北京大学
作者: 刘陈 著
商品条码: 9787301359914
适读年龄: 12+
版次: 1
开本: 16开
页数: 467
出版年份: 2025
印次: 1
定价:
¥109
销售价:
登录后查看价格
¥{{selectedSku?.salePrice}}
库存:
{{selectedSku?.stock}}
库存充足
{{item.title}}:
{{its.name}}
加入购物车
立即购买
加入书单
收藏
精选
¥5.83
世界图书名著昆虫记绿野仙踪木偶奇遇记儿童书籍彩图注音版
¥5.39
正版世界名著文学小说名家名译中学生课外阅读书籍图书批发 70册
¥8.58
简笔画10000例加厚版2-6岁幼儿童涂色本涂鸦本绘画本填色书正版
¥5.83
世界文学名著全49册中小学生青少年课外书籍文学小说批发正版
¥4.95
全优冲刺100分测试卷一二三四五六年级上下册语文数学英语模拟卷
¥8.69
父与子彩图注音完整版小学生图书批发儿童课外阅读书籍正版1册
¥24.2
好玩的洞洞拉拉书0-3岁宝宝早教益智游戏书机关立体翻翻书4册
¥7.15
幼儿认字识字大王3000字幼儿园中班大班学前班宝宝早教启蒙书
¥11.55
用思维导图读懂儿童心理学培养情绪管理与性格培养故事指导书
¥19.8
少年读漫画鬼谷子全6册在漫画中学国学小学生课外阅读书籍正版
¥64
科学真好玩
¥12.7
一年级下4册·读读童谣和儿歌
¥38.4
原生态新生代(传统木版年画的当代传承国际研讨会论文集)
¥11.14
法国经典中篇小说
¥11.32
上海的狐步舞--穆时英(中国现代文学馆馆藏初版本经典)
¥21.56
猫的摇篮(精)
¥30.72
幼儿园特色课程实施方案/幼儿园生命成长启蒙教育课程丛书
¥24.94
旧时风物(精)
¥12.04
三希堂三帖/墨林珍赏
¥6.88
寒山子庞居士诗帖/墨林珍赏
¥6.88
苕溪帖/墨林珍赏
¥6.88
楷书王维诗卷/墨林珍赏
¥9.46
兰亭序/墨林珍赏
¥7.74
祭侄文稿/墨林珍赏
¥7.74
蜀素帖/墨林珍赏
¥12.04
真草千字文/墨林珍赏
¥114.4
进宴仪轨(精)/中国古代舞乐域外图书
¥24.94
舞蹈音乐的基础理论与应用
内容简介
华为自研的仓颉(Cangjie)语言作为一款面向全场景应用开发的现代编程语言,通过现代语言特性的集成、全方位的编译优化和运行时实现,以及开箱即用的工具链支持,为开发者打造了友好的开发体验和卓越的程序性能。 本书循序渐进地讲解了仓颉语言的核心知识,并通过具体实例的实现过程演练了开发仓颉语言程序的关键方法和流程。全书共 19 章,分别讲解了从仓颉语言的基础语法、数据结构、面向对象编程、网络编程到多线程与并发处理等内容,最后通过实战项目——圆角图片视图库的开发,系统展示了仓颉语言的核心语法知识和实际应用技巧。 本书通俗易懂而不失技术深度,案例丰富,实用性强,涵盖了华为开发技术的最新动态和实践案例,同时涵盖了其他同类图书中很少涉及的开发工具与平台介绍。本书适合华为仓颉编程语言的初学者和进阶读者作为自学教程,也可作为培训学校和各大院校的相关专业的教学参考书。
作者简介
刘陈 ---------------------------- 山东大学计算机通信硕士、HarmonyOS技术专家,现任浪潮信息资深移动开发架构师,精通Java、C、C++、Python、Objective-C、Swift等编程语言,10年Android、iOS开发经验,5年HarmonyOS开发经验。曾就职于HTC、联想,先后担任过软件开发工程师、项目经理、产品技术主管等职位。
目录
第 1 章 仓颉语言基础介绍 1 1.1? 鸿蒙系统介绍 2 1.1.1 鸿蒙系统的发展历程 2 1.1.2 鸿蒙系统的架构概览 2 1.1.3 分布式架构 .3 1.1.4 多设备支持 .3 1.2? 仓颉语言介绍 4 1.2.1 仓颉语言的背景和发展历程 4 1.2.2 仓颉语言的主要特点 5 1.3? 仓颉语言的应用场景 6 1.3.1 操作系统和系统级开发 6 1.3.2 智能设备应用开发 .6 1.3.3 物联网与嵌入式系统 7 第 2 章 搭建仓颉开发环境 8 2.1? 系统要求 9 2.2? 准备仓颉 SDK 9 2.3? 搭建 Visual Studio Code 开发环境 10 2.3.1 安装 Visual Studio Code 10 2.3.2 配置仓颉环境 .12 2.3.3 第一个仓颉程序 14 2.4? 搭建 DevEco Studio 开发环境 18 2.4.1 DevEco Studio 的特点 . 19 2.4.2 下载并安装 DevEco Studio . 19 2.4.3 配置仓颉环境 .22 第 3 章 基础语法 26 3.1? 标识符和关键字 27 3.1.1 标识符 .27 3.1.2 关键字 .27 3.2? 注释 28 3.3? 常量和变量 29 3.3.1 常量 293.3.2 变量 31 3.3.3 值类型和引用类型变量 33 3.4? 操作符 34 3.4.1 算术操作符和赋值操作符 35 3.4.2 比较操作符 36 3.4.3 逻辑操作符 37 3.4.4 位操作符 39 3.4.5 自增和自减操作符 40 3.4.6 操作符的优先级 41 3.5? 数据类型 44 3.5.1 整数类型 45 3.5.2 浮点类型 46 3.5.3 布尔类型 47 3.5.4 字符类型 48 3.5.5 字符串类型 50 3.5.6 Unit 类型 54 3.6? 类型转换 55 3.6.1 数值类型转换 .55 3.6.2 和 Rune 类型相关的转换 .57 3.6.3 is 和 as 操作符 . 58 3.7? 输入和输出 59 3.7.1 函数 print 59 3.7.2 函数 println . 61 第 4 章 表达式 63 4.1? 条件表达式 64 4.1.1 if 表达式语句 . 64 4.1.2 if…else if…else 表达式语句 . 65 4.1.3 if 表达式语句的类型检查 . 67 4.1.4 if 表达式语句的嵌套 . 68 4.2? 循环结构 69 4.2.1 while 表达式 69 4.2.2 do-while 表达式 72 4.2.3 for-in 表达式 . 74 4.2.4 遍历区间 76 4.2.5 where 条件 .77 4.2.6 while 表达式的嵌套 78 4.2.7 for-in 表达式的嵌套 . 79 4.3? 跳转表达式 80 4.3.1 break 表达式 80 4.3.2 continue 表达式 81 第 5 章 元组和数组 83 5.1? 元组 84 5.1.1 元组的定义 84 5.1.2 元组的操作 85 5.1.3 元组的嵌套 88 5.2?一维数组 91 5.2.1 数组的声明与创建 91 5.2.2 使用一维数组 .93 5.2.3 数组元素求和 .95 5.3? 多维数组 96 5.3.1 多维数组的声明与创建 96 5.3.2 初始化二维数组的其他方法 100 5.4? VArray 数组 103 5.4.1 定义与声明 103 5.4.2 VArray 的初始化和操作 .103 5.5? 内置 Array 操作函数 105 5.5.1 拷贝与克隆 105 5.5.2 连接与合并 106 5.5.3 翻转与切片 107 5.5.4 访问与搜索 108 5.5.5 转换与输出 109 5.5.6 比较 110 5.5.7 数组元素数量 111 第 6 章 函数 112 6.1? 函数基础 113 6.1.1 定义函数 .113 6.1.2 参数列表 . 113 6.1.3 函数返回值类型 .115 6.1.4 函数体 118 6.2? 调用函数 118 6.2.1 非命名参数的调用 119 6.2.2 命名参数的调用 .119 6.2.3 默认参数的函数调用 120 6.3? 函数的嵌套调用和递归调用 120 6.3.1 函数的嵌套调用 .120 6.3.2 函数的递归调用 .121 6.4? Lambda 表达式 125 6.4.1 Lambda 表达式的定义 125 6.4.2 Lambda 表达式的返回类型 .125 6.4.3 Lambda 表达式的调用 126 6.5? 变量作用域 132 6.5.1 局部变量作用域 .133 6.5.2 全局变量作用域 .134 6.5.3 函数作用域 134 6.6? 闭包 135 6.6.1 变量捕获 .135 6.6.2 使用闭包 .136 6.6.3 闭包作用域 140 6.7? 函数重载 140 6.7.1 函数重载的规则 .141 6.7.2 函数重载决议 144 6.8? 内置函数 146 6.8.1 随机函数 .146 6.8.2 格式化函数 147 6.8.3 数学运算函数 149 第 7 章 结构 152 7.1? 结构体基础 153 7.1.1 定义结构体 153 7.1.2 结构体的成员变量 154 7.1.3 成员函数 .157 7.1.4 结构体成员的访问修饰符 160 7.2? 结构体实例 161 7.2.1 创建结构体实例 .161 7.2.2 不同类型的结构体成员变量 161 7.2.3 修改结构体的成员变量 .162 7.2.4 结构体的复制行为 164 7.3?mut 函数 166 7.3.1 mut 函数介绍 . 166 7.3.2 mut 函数的限制 . 168 第 8 章 枚举 170 8.1? 枚举基础 171 8.1.1 推出枚举的背景 .171 8.1.2 定义枚举类型 171 8.1.3 使用枚举 .173 8.1.4 match 表达式 .175 8.2? 模式匹配 180 8.2.1 常量模式 .180 8.2.2 通配符模式匹配 .181 8.2.3 绑定模式匹配 182 8.2.4 元组模式匹配 183 8.2.5 类型模式匹配 184 8.2.6 枚举模式匹配 186 8.2.7 模式的嵌套与组合匹配 .186 8.2.8 模式的可匹配性 .189 8.3? 可选类型 193 8.3.1 定义 Option 类型 . 193 8.3.2 if-let 表达式 . 195 8.3.3 while-let 表达式 .197 8.3.4 模式和可选类型的关系 .198 第 9 章 面向对象编程 200 9.1? 类 201 9.1.1 类和对象的概念 .201 9.1.2 声明类 201 9.1.3 创建对象 .203 9.1.4 成员变量 .204 9.1.5 构造函数 .206 9.1.6 终结器 209 9.1.7 成员函数 .210 9.2? 访问修饰符 212 9.2.1 访问修饰符介绍 .212 9.2.2 使用访问修饰符 .213 9.3? 类的继承 214 9.3.1 继承的基本概念 .215 9.3.2 实现继承 .215 9.3.3 super 和 this 216 9.3.4 覆盖(override)和 重定义(redef) .218 9.3.5 This 类型 .220 9.4? 抽象类 221 9.4.1 抽象类的特点 221 9.4.2 定义抽象类 222 9.5? 接口 224 9.5.1 定义并实现接口 .224 9.5.2 接口的成员 227 9.5.3 接口的继承 2299.5.4 接口的默认实现 .231 9.5.5 Any 类型 . 232 9.6? 属性 234 9.6.1 定义属性 .234 9.6.2 属性的修饰符 235 9.6.3 抽象属性 .238 9.7? 子类型关系 239 第 10 章 泛型 242 10.1? 泛型介绍 243 10.1.1 泛型的常用术语 243 10.1.2 定义泛型 243 10.1.3 泛型约束 246 10.2? 泛型函数 246 10.2.1 泛型函数的定义 247 10.2.2 全局泛型函数 248 10.2.3 局部泛型函数 249 10.2.4 泛型成员函数 250 10.2.5 静态泛型函数 252 10.3? 泛型类和接口 253 10.3.1 泛型类 253 10.3.2 泛型接口 254 10.4? 泛型结构体 255 10.4.1 泛型结构体的定义 .255 10.4.2 使用泛型结构体 256 10.5? 泛型枚举 259 第 11 章 扩展 262 11.1? 扩展介绍 263 11.1.1 编程语言中的扩展 . 263 11.1.2 仓颉语言中的扩展 . 263 11.2? 直接扩展 264 11.2.1 实现直接扩展 . 264 11.2.2 针对泛型类型的扩展 . 265 11.2.3 泛型约束的扩展 . 267 11.3? 接口扩展 269 11.3.1 实现接口扩展 . 269 11.3.2 同时实现多个接口 . 269 11.3.3 接口扩展中的泛型约束 . 271 11.4? 访问规则 272 11.4.1 扩展的修饰符 . 272 11.4.2 扩展的孤儿规则 . 275 11.4.3 扩展的访问和遮盖 . 276 第 12 章 集合 278 12.1? 集合介绍 279 12.1.1 集合的基本概念 279 12.1.2 仓颉语言中的集合 .280 12.2? ArrayList 281 12.2.1 ArrayList 介绍 281 12.2.2 添加、遍历、修改和删除 .283 12.2.3 排序操作 285 12.2.4 切片操作 287 12.3? HashSet 288 12.3.1 HashSet 介绍 288 12.3.2 添加、遍历、修改和删除 .290 12.3.3 排序操作 291 12.3.4 切片操作 293 12.4? HashMap 294 12.4.1 HashMap 介绍 294 12.4.2 添加、遍历、修改和删除 .295 12.4.3 切片操作 297 12.5? LinkedList 298 12.5.1 LinkedList 介绍 .298 12.5.2 添加、遍历、修改和删除 .300 12.6? TreeMap 301 12.6.1 TreeMap 介绍 . 302 12.6.2 添加、遍历、修改和删除 .303 第 13 章 包 306 13.1? 包的基础知识介绍 307 13.1.1 推出包的历史背景 .307 13.1.2 包的作用 307 13.2? 仓颉语言中的包 308 13.2.1 包的声明 308 13.2.2 顶层声明的可见性 .309 13.3? 包的导入 313 13.3.1 普通的 import 导入 .313 13.3.2 隐式导入 314 13.3.3 导入重命名 .314 13.3.4 重导出一个导入的名字 316 第 14 章 异常处理 318 14.1? 初识异常 319 14.1.1 异常的基本概念 319 14.1.2 仓颉语言的异常处理 319 14.1.3 常用的运行时异常 .320 14.2? try 表达式 321 14.2.1 普通的 try 表达式 321 14.2.2 try-with-resources 表达式 .323 14.2.3 CatchPattern 机制 . 326 14.3? 用 Option 处理异常 328 14.3.1 模式匹配 328 14.3.2 Coalescing 操作符(??) 329 14.3.3 问号操作符(?) . 331 14.3.4 函数 getOrThrow . 331 第 15 章 并发 334 15.1? 并发基础 335 15.1.1 并发的基本概念 335 15.1.2 并发的特性和实现方式 336 15.1.3 仓颉语言的并发 336 15.2? 多线程开发 337 15.2.1 线程介绍 337 15.2.2 创建线程 338 15.2.3 访问线程 340 15.2.4 访问线程属性 34315.2.5 终止线程 344 15.3? 线程同步 346 15.3.1 线程同步的意义 346 15.3.2 原子操作 347 15.3.3 可重入互斥锁 349 15.3.4 Monitor 同步 357 15.3.5 MultiConditionMonitor .361 15.3.6 synchronized 锁管理 365 15.3.7 线程局部变量 369 第 16 章 I/O 流操作 372 16.1? I/O 流介绍 373 16.1.1 I/O 流的操作类型 373 16.1.2 仓颉语言中的 I/O 373 16.2? 标准流 375 16.2.1 标准流介绍 .375 16.2.2 类 Console 375 16.2.3 ConsoleReader 标准读取 . 376 16.2.4 ConsoleWriter 标准写入 377 16.3? 文件流 379 16.3.1 包 std.fs 介绍 380 16.3.2 File 文件操作 . 380 16.3.3 Directory 文件夹操作 383 16.3.4 结构体 FileInfo .386 16.3.5 结构体 Path .389 16.4? I/O 处理流 393 16.4.1 包 io 介绍 . 393 16.4.2 输入流和输出流 394 16.4.3 BufferedInputStream 缓冲区输入流 395 16.4.4 BufferedOutputStream 缓冲区输出流 397 16.4.5 ByteArrayStream 字节流 . 398 16.4.6 ChainedInputStream 多输入流读取 .400 16.4.7 MultiOutputStream 多输出流 .401 16.4.8 StringReader 读取输入流 402 16.4.9 StringWriter 写入输入流 . 404 第 17 章 网络编程 407 17.1? 网络编程基础 408 17.1.1 网络通信协议 408 17.1.2 IP 地址和端口号 409 17.1.3 仓颉语言的网络编程 . 410 17.2? Socket 编程 410 17.2.1 包 socket . 411 17.2.2 TCP 传输处理 412 17.2.3 UDP 传输处理 . 416 17.3? HTTP 编程 418 17.3.1 包 net.http . 418 17.3.2 处理客户端请求 420 17.3.3 Cookie 服务 .424 17.3.4 网络服务 427 17.3.5 WebSocket 编程 . 431 第 18 章 宏 436 18.1? 宏的相关概念 437 18.2? 仓颉语言中的宏 437 18.2.1 第一个宏实例 437 18.2.2 Token 类型 439 18.2.3 quote 表达式和插值 441 18.2.4 语法节点 442 18.3? 宏的实现 444 18.3.1 非属性宏 444 18.3.2 属性宏 447 18.3.3 宏的调用 448 18.3.4 宏的嵌套 449 18.3.5 宏调用中的嵌套宏调用 450 第 19 章? 综合实战:圆角图片视图库 453 19.1? 项目介绍 454 19.1.1 背景介绍 454 19.1.2 项目需求分析 454 19.1.3 项目概述 454 19.2? 圆角图片处理框架 455 19.2.1 工具函数 455 19.2.2 目录操作和文件操作 456 19.2.3 创建和管理 PixelMap 对象 . 458 19.2.4 图片缩放类型 461 19.2.5 配置圆角图片显示属性 463 19.3? HarmonyOS 应用包 465 19.3.1 入口逻辑和组件初始化 465 19.3.2 主界面程序 .466 19.3.3 配置文件 467
×
Close
添加到书单
加载中...
点此新建书单
×
Close
新建书单
标题:
简介:
蜀ICP备2024047804号
Copyright 版权所有 © jvwen.com 聚文网