Java图解创意编程:从菜鸟到互联网大厂之路
- ISBN:9787302621997
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:其他
- 页数:404
- 出版时间:2023-01-01
- 条形码:9787302621997 ; 978-7-302-62199-7
本书特色
这是一本兼具趣味性、实用性、广泛性的好书,简直是编程小白的福音! 一、深入浅出,用可视化项目让读者体验动手创造世界的编程成就感。 二、理论和工程相结合,在动手的同时夯实基础,让读者更直观地理解数据结构、算法、网络等计算机底层原理。 三、通过代码级别的讲解,让初学者有机会在自学过程中丰富自己的实战经验,接触到业界流行的技术框架,为未来实习和进入职场打下坚实基础。
内容简介
本书从问题入手,使用100多个创意编程范例,试图在深入理解原理的基础上,通过自造“轮子”帮助读者提升代码编写功底和工程实现能力。全书分为12章,内容包括Java入门、分形图像处理、数据结构、网络通信、动态装载、多线程、Raft协议、分布式编程和ZooKeeper框架等,由浅入深实现“美颜相机”“迷你通信会议”“迷你Web服务器”“迷你Raft”等项目。本书针对每一个范例,首先给出代码实现和重要知识点,然后提出任务以使读者发挥创意,提升代码编写技能。 本书由浅入深,有趣有料,适合想提升代码编写水平的大学生、求职者、编程爱好者阅读,也适合有1~2年开发经验的程序员参考,还可以作为各类培训班的培训教材。
目录
第1章 OOP上手 / 1
1.1 安装开发环境 / 2
1.2 使用Eclipse / 3
1.3 代码“跑”起来 / 4
1.4 类与对象编写规则 / 5
1.5 类的继承 / 7
1.6 参数传递 / 10
1.7 接口的用法 / 12
1.8 仿QQ登录界面 / 13
1.9 更多界面组件 / 15
1.10 按钮事件的实现 / 18
1.11 验证输入框内容 / 19
1.12 界面的鼠标事件 / 21
1.13 界面上画图 / 22
1.14 鼠标写字 / 23
1.15 重写方法中画图 / 24
1.16 温故知新 / 26
第2章 分形之美 / 27
2.1 代码能做什么 / 28
2.2 画出3D图形 / 29
2.3 多态与传参 / 30
2.4 按钮监听器传参 / 32
2.5 多重继承 / 36
2.6 迭代分形 / 39
2.7 数值转换 / 40
2.8 递归分形 / 44
2.9 谢尔宾斯基三角形 / 46
2.10 门格海绵 / 49
2.11 混沌游戏 / 55
2.12 科赫曲线 / 55
2.13 编写代码画“千变之树” / 58
2.14 编写代码“造山” / 61
2.15 经典之作——曼德勃罗集 / 65
第3章 创意项目实践 / 69
3.1 美颜相机之图像特效 / 70
3.2 深入理解颜色 / 72
3.3 图片特效实现 / 73
3.4 图像卷积算法 / 76
3.5 视频的获取与绘制 / 79
3.6 图像双缓冲处理 / 80
3.7 视频的运动追踪 / 82
3.8 视频哈哈镜 / 83
3.9 五子棋开发 / 85
3.10 对战游戏开发 / 89
3.11 生产消费模型 / 91
3.12 粒子运动系统 / 95
第4章 初探数据结构 / 103
4.1 数组的基本用法 / 104
4.2 数组排序与时间复杂度 / 106
4.3 多维数组 / 110
4.4 数组队列的实现 / 112
4.5 链表队列 / 113
4.6 哈希表实现 / 116
4.7 哈希表的4个关键问题 / 119
4.8 集合框架 / 120
4.9 二叉树结构 / 121
4.10 使用JTree组件 / 123
4.11 哈夫曼树应用 / 126
第5章 迷你视频会议项目的实现 / 132
5.1 上手编写通信服务器 / 133
5.2 基本客户端 / 135
5.3 项目编码规范 / 136
5.4 网络画板 / 138
5.5 客户端实现 / 141
5.6 字画同屏 / 146
5.7 通信协议制定 / 147
5.8 网络画板服务器代码 / 148
5.9 网络画板客户端代码 / 153
5.10 视频通信实现 / 157
5.11 视频通信客户端代码 / 160
5.12 视频通信的性能优化 / 163
5.13 简版录像播放器 / 165
5.14 使用内存字节流 / 168
5.15 群发功能服务器实现 / 169
5.16 迷你会议项目拓展 / 173
第6章 迷你RPC框架的实现 / 174
6.1 为了简单地生活 / 175
6.2 迷你RPC框架分析 / 176
6.3 RPC公共代码实现 / 177
6.4 迷你RPC服务器代码实现 / 178
6.5 分发公用库给客户端 / 179
6.6 客户端编码实现 / 181
6.7 注意事项 / 182
6.8 配置文件设计 / 183
6.9 XML配置格式设计 / 184
6.10 使用Dom4j解析XML / 185
6.11 RPC服务器发布设计 / 186
第7章 从Spring到迷你Web服务器 / 190
7.1 Spring初体验 / 191
7.2 Spring RPC客户端调用 / 194
7.3 应用Apache HttpClient / 195
7.4 Tomcat快速上手 / 197
7.5 编写Servlet / 201
7.6 在Servlet中接收请求 / 205
7.7 从零实现WebServer项目 / 208
7.8 HTTP分析 / 209
7.9 session原理测试 / 210
7.10 迷你Web服务器实现 / 214
第8章 再探二叉树 / 222
8.1 二叉树分类 / 223
8.2 图解二叉树 / 224
8.3 二叉搜索树 / 225
8.4 堆排序树 / 227
8.5 红黑树 / 229
8.6 手建红黑树 / 230
8.7 树的旋转 / 231
8.8 编码极简红黑树 / 233
8.9 B+树 / 238
8.10 B+树代码实现 / 242
第9章 类的动态装载 / 248
9.1 三分钟上手Robocode / 249
9.2 迷你Robocode初步实现 / 250
9.3 动态添加机器人 / 252
9.4 理解动态加载 / 254
9.5 面向接口编程 / 256
9.6 工厂设计模式的改进 / 257
9.7 反射Class对象 / 258
9.8 动态创建对象 / 260
9.9 动态调用方法 / 262
9.10 代理一个对象 / 263
9.11 代理接口虚拟调用 / 266
9.12 CLASS文件探秘 / 267
9.13 编写一个Java编译器 / 274
9.14 类ACM网站代码编译 / 275
9.15 安全沙箱运行 / 277
9.16 Class.forName源码解析 / 281
9.17 类的卸载 / 284
9.18 对象的回收 / 288
第10章 深入线程 / 295
10.1 无处不在的生产消费模型 / 296
10.2 简单生产消费模型 / 297
10.3 基于wait/notify的生产消费模型 / 298
10.4 wait/notify探秘 / 300
10.5 锁定对象意味着什么 / 301
10.6 ReentrantLock / 302
10.7 阻塞队列实现线程通信 / 306
10.8 自己造个BlockingQueue / 308
10.9 为什么需要线程池 / 309
10.10 真正的Thread在哪里 / 311
10.11 线程池的必要性 / 317
10.12 用线程池送咖啡 / 318
10.13 自造迷你版线程池 / 322
10.14 用Future送咖啡 / 326
10.15 回调的实现 / 327
第11章 迷你Raft的实现 / 330
11.1 分布式是什么 / 331
11.2 CAP理论 / 332
11.3 拜占庭将军的共识 / 333
11.4 Paxos的渊源 / 334
11.5 Raft**步:选举 / 335
11.6 Raft第二步:日志复制 / 336
11.7 Raft的心跳信号 / 337
11.8 Raft的编码实现 / 338
11.9 分析系统中有哪些对象 / 339
11.10 通过网络收发对象 / 342
11.11 编写业务流程 / 345
11.12 拉票流程实现 / 346
11.13 发送心跳流程的实现 / 350
11.14 客户端存取数据处理 / 352
11.15 实现日志复制过程 / 355
11.16 数据的本地保存 / 359
第12章 菜鸟学ZooKeeper / 362
12.1 检测JDK环境 / 363
12.2 下载安装ZooKeeper / 364
12.3 启动ZooKeeper / 366
12.4 自动选举测试 / 368
12.5 客户端连接 / 369
12.6 zNode常用命令 / 369
12.7 zNode权限设置 / 370
12.8 ZooKeeper客户端编程 / 371
12.9 监听机制 / 373
12.10 下载ZooKeeper源码 / 374
12.11 在Eclipse中配置ZooKeeper
源码 / 375
12.12 ZooKeeper实现分布式锁的
思路 / 376
12.13 分布式共享锁分析 / 377
12.14 分布式共享锁编码的实现 / 382
12.15 分布式独占锁的实现 / 384
12.16 miniCloud项目分析 / 387
12.17 文件上传实现 / 391
12.18 文件下载 / 393
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥37.7¥65.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥77.4¥109.0 -
UG NX 12.0数控编程
¥24.8¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥84.5¥119.0 -
PREMIERE PRO 2023全面精通:视频剪辑+颜色调整+转场特效+字幕制作+案例实战
¥69.3¥99.0