软件与程序设计
-
微服务架构与实践王磊 著微服务架构不仅延续了分布式系统与SOA 的特征,也汲取了DevOps、持续集成、持续交付等工程实践的成功经验,并正在借着云计算和容器化的春风开始其驰骋之旅。但是,微服务的落地并不像其概念描述的那样举重若轻,它不仅包括架构解耦,还涉及开发测试、部署运维、工程实践、团队合作与康威定律等多方面的因素,这些因素相辅相成,共同影响着如何高质量、快速地交付业务价值。 《微服务架构与实践(第2版)》是在第1 版的基础之上,基于作者近年来对服务化改造的实战经验和思考,并结合业界的技术趋势进行的一次体系化的精进。全书共分为3 部分,首先阐述了微服务架构的理论基础。其次介绍了微服务生态系统、实施参考模型以及*佳实践,并基于真实案例分析了遗留系统的服务化改造策略与应用场景。最后基于Apache 开源社区的微服务框架ServiceComb,设计并实现了案例SockShop 系统,从端到端交付的角度,指导读者完成服务的设计、开发、测试、流水线,以及自动化部署和运维体系的建立。 《微服务架构与实践(第2版)》不仅适合架构师、开发人员以及技术管理者阅读,也适合正在尝试向微服务架构迁移的团队或者个人。希望本书能够在微服务落地的工作中对读者有所帮助。 -
ScratchJr编程趣味卡[美] MarinaUmaschiBers,AmandaSullivan 著ScratchJr是扩展性的编程工具。即使你的孩子之前从未学过编程,《ScratchJr编程趣味卡》也可以轻松教会他们编程技巧。本作采用卡片的形式,通过动画、故事、游戏,与孩子们一起体验编程的乐趣。卡片形式新颖、轻松,玩法多样,更符合孩子的心态,适合孩子使用。 《ScratchJr编程趣味卡:孩子们也能轻松掌握创意编程(全彩)》包括三组卡片,分别是Kitten的一天”(40张,根据故事编程)、模拟编程游戏”(15张,讲解编程思想)、界面”(20张,讲解软件功能),寓教于乐,让孩子们掌握编程的核心精神,创建交互式故事、动画和游戏,轻松上手编程操作,在欢乐的游戏中掌握计算思维。 《ScratchJr编程趣味卡:孩子们也能轻松掌握创意编程(全彩)》适合对编程感兴趣的少年儿童(5岁以上)学习使用,可用于智能硬件的程序编写学习,也可用于游戏程序编写学习。本书也可作为培训机构教辅材料使用。 -
深入理解Android邓凡平 著这是一部从源代码角度分析和讲解Android虚拟机ART的鸿篇巨著,核心内容和价值体现在3个方面: 首先,细致、深入地分析了ART虚拟机的架构、设计与实现原理,能让读者对ART虚拟机有透彻了解; 第二,能让Andriod系统工程师和应用工程师从底层了解整个Android系统的运行机理,从而写出更高质量的应用; 第三,Java虚拟机是一个“庞然大物”,学习和理解的门槛较高,ART是迄今应用广泛的JVM实现,本书为读者学习JVM提供了独特的视角和更为容易的路径。 全书共14章: 第1章介绍了在学习ART虚拟机前需要准备的工具和环境,以及本书的内容结构和阅读注意事项,建议仔细读和反复读; 第2~4章详细讲解了Class文件、dex文件和ELF文件的格式和内容,理解Class文件是学习JVM的一步,dex和ELF者是学习Dalvik虚拟机和ART虚拟机的的前提和基础; 第5章详细讲解了ART虚拟机的实现语言C++11,是阅读ART源代码必备的知识; 第6~8章详细讲解了ART虚拟机中与编译和Runtime相关的大量知识,这是虚拟机的核心和难点; 第9章详细讲解了dex字节码转机器码的核心进程dex2oat以及.oat和.art的文件格式; 第10~11章详细讲解了虚拟机的解释执行、JIT部分以及异常的投递和处理的过程,以及JNI在ART虚拟机中的实现。 第12~14章详细讲解了虚拟机中Java线程的执行、内存分配和释放、垃圾回收的原理与实现。 本书是经典丛书“深入理解Android”系列的第8本,继承了该系列图书严谨、细致、深入、编排考究的优点,相信所有Android工程师和Java工程师都能从中受益。 -
乐学Scratch编程刘龙强 著本书是专门为7~14 岁孩子写的Scratch 故事编程书。坐上时光机器回到久远的过去或遥远的将来,并 在时光之旅中经历各种新奇的冒险,这种体验几乎是每一位未满14 周岁的小朋友共有的梦想。本书充分考 虑儿童的认知特点,将Scratch 编程知识与计算机软件逻辑整合到一个个任务中,让读者在轻松愉悦的氛围中, 不知不觉地掌握编程技能,提升逻辑思维能力。 全书内容共分14 章,代表时光旅行所到达的14 个站点。前10 章每一章对应Scratch 编程中一个类别 的指令集,例如第1 章对应运动类指令集、第2 章对应外观类指令集等等;第11 章至第14 章综合运用前 10 章所学的基础知识分别完成一个相对复杂和大型的编程任务,其中第11 章用游戏的方式解决人狼羊菜过 河的数学图论问题、第12 章编写一个古诗词填空游戏、第13 章开发交通信号灯模拟动画、第14 章编写一 个有多关卡的塔防类游戏。 本书配套了61 个讲解视频,每个视频平均约三分钟时长,分别对应书中的近百个知识点。读者在阅读 本书的过程中,可以方便地通过二维码随时随地观看极具针对性的讲解视频,加深对书中内容的理解。另外, 书中所有的例子程序均已随书提供,同样可以通过扫描二维码获得。 -
孩子趣味学编程之Scratch篇张文婧,乔陶鹏,刘芸,方亮 著本书以Scratch 这一款集编程语言、运行环境和展示效果于一体的可视化编程软件为工具,向青少 年读者介绍计算机编程的基本概念,并通过丰富的实例让读者能够完成属于自己的作品。 本书首先简单介绍Scratch 操作,帮助读者快速开始使用Scratch。然后分两部分介绍编程知识。第 一部分讲解编程的基本知识,包含计算机语言的三大基本结构、事件的概念以及变量和Scratch 项目制 作的方法。第二部分重点讲解编程的高级技巧及计算机科学的基础概念,包含布尔逻辑、条件与循环的 组合等知识。在最后两章,力图通过Scratch 提供的工具向青少年读者展示未来编程的核心内容。 本书是目前市面上稀缺而青少年编程学习急需的将计算机编程概念与Scratch完美结合的经典书籍, 是青少年学习编程的引导性图书;同时,对于青少年编程教育的从业人员,本书的结构及其丰富的实例 可以帮助他们设定课程体系,完善教学内容。 -
C++大学教程Paul Deitel(保罗·戴特尔),Harvey ... 著,Paul Deitel(保罗·戴特尔) 译本书是一本C++编程方面的优秀教材,全面介绍了面向对象编程的原理与方法,详细分析了与C++编程有关的技术。本书的主要内容包括类与对象、控制语句、函数与递归、数组、指针、运算符重载、继承、多态、输入/输出流、异常处理、文件处理、模板、搜索与排序等。全书以“活代码”的方式详细分析了每个知识要点,提供了丰富的自测练习和项目练习,是初学者和中高级程序员学习C++编程的理想用书。 -
C语言程序设计赵彦 著本书以应用性、趣味性为背景,以程序设计方法为核心,以算法、数据结构为主线,以培养能力、提高兴趣为目标,改传统授课方式为现代信息化教学,把程序设计领域全新、极有价值的思想和方法渗透到C语言教学中,着重培养学生灵活运用这些思想和方法分析和解决实际问题的能力。 本书以三大真实项目(身高体型判定系统、考试系统、学生信息管理系统)为引领,由易到难,由简到繁,逐层深入,步步递进,展开教学,研究C语言基本知识与结构化程序设计方法。内容包括C语言的数据类型、程序结构、各种语句、函数、预处理、文件等。全书共10个教学单元,每个单元由项目需求引领,按照项目需求–相关知识–解决问题–能力测试–项目实施五大环节展开,极大提高学生的知识、技能、素质水平。本书配有丰富的数字化资源,与本书配套的数字化课程将在“智慧职教”(www.icve.com.cn)网站上线,学习者可登录进行学习并下载基本教学资源,也可通过扫描书中二维码观看教学视频。 本书可作为高等职业院校电子信息类专业C语言课程的教材,也可作为C语言学习者的参考用书。 -
C语言程序设计基础实验教程范萍 著本书是与《C程序设计基础教程》一书配套使用的教学参考书,全书共分为11章,每一章的标题和内容均与《C程序设计基础教程》一书相对应,内容包括:一、各章节的知识点介绍;二、各章节的典型实验示例和上机实验内容;三、对全部上机编程题以及《C程序设计基础教程》一书的习题都给出了参考解答。 -
Java多线程与Socket庞永华 著本书从实战角度出发,首先介绍Java多线程、Socket、Spring、动态代理、动态字节码、序列化等技术在构建分布式微服务框架中的应用。然后介绍一种微服务框架的架构设计与编程实践,并将这一微服务框架分解为底层Socket通信、服务注册与发现、服务暴露与引用、远程方法调用等层面,逐一深入讲解。这里重点介绍作者如何活用相关技术一步步地构建微服务框架的基础RPC框架并分享了相应的性能调优经验。最后介绍微服务架构中配套的服务治理系统的设计与实现方案,包括服务的设计、配置、管理与监控。 -
数据可视化陈为 等 著全书共有15章,分为4篇。基础篇,阐述数据可视化的基础理论和概念,从人的感知和认知出发,介绍数据模型和可视化基础;时空数据篇,介绍带有空间坐标或时间信息的数据的可视化方法,此类数据通过设备在真实物理空间中采集得到或由科学计算模拟产生;非时空数据篇,描述非结构化和非几何的抽象数据的可视化,这些数据既存在于真实物理空间,又是社会空间和网络信息空间的基本表达形式;用户篇,介绍面向各类数据的可视化在实际应用中共同需要的方法、技术和工具,例如交互和可视化评测方法,以及在具体领域的可视化和应用系统。本书从研究者的角度,介绍数据可视化的定义、方法、效用和工具,既可作为初学者的领路手册,也可用于可视化研究和可视化工具使用的参考指南。
