软件与程序设计
-
计算机科学概论克里斯汀·阿尔瓦拉多(Christine Alvarado),扎卡里·道兹(Zachary Dodds),吉奥夫·昆宁(Geoff Kuenning),兰·列别斯科(Ran Libesk) 著,王海鹏本书是美国哈维玛德学院 “计算机科学通识”课程的配套教材,用独特的方法介绍计算机科学,带领读者进入这一充满智慧和活力的知识领域。全书共7章。第1章介绍计算机科学的概念,引入了用于控制虚拟的“Picobot”机器人的一种简单的编程语言;第2章和第3章介绍Python编程语言,并且结合Python介绍了函数式编程的思想和概念;第4章深入计算机的内部工作原理,从数字逻辑到机器组织,再到用机器语言编程;第5章探讨计算中更复杂的思想,同时探讨诸如引用和可变性等概念,以及包括循环在内的构造、数组和字典;第6章探讨面向对象编程和设计中的一些关键思想;第7章针对问题解决,在计算复杂性和可计算性方面,提供了一些优雅的,但数学上非常合理的处理方法,最终证明了计算机上无法解决的许多计算问题。 本书适合想要通过Python编程来系统学习和了解计算机科学的读者阅读,也可以作为高等院校计算机相关专业的教学参考书。 -
架构解密吴治辉 著微服务、云原生、Kubernetes、Service Mesh是分布式领域的热点技术,它们并不是凭空出现的,一定继承了某些“前辈”的优点。我们不仅要了解这些技术,还要深入理解其发展脉络、原理等,才能游刃有余地将其用于现有的项目开发或老系统改造中。 本书总计9章。第1章讲解分布式的基础——网络,对国际互联网、NIO、AIO、网络传输中的对象序列化问题、HTTP的前世今生、TCP/IP、从CDN到SD-WAN等知识进行深入讲解。第2章讲解分布式系统的经典理论,涉及分布式系统的设计理念、一致性原理;ZooKeeper的使用场景;CAP理论的前世今生;BASE准则;分布式事务的原理。第3章从RPC开始,讲解分布式服务治理框架的起源与原理,并讲解ZeroC Ice的原理和微服务架构实战。第4~6章以专题形式讲解内存、分布式文件存储和分布式计算,对每个专题都讲解相关的重要理论、产品、开源项目及经验等。第7章深入讲解全文检索与消息队列中间件的原理及用法。第8章讲解以Kubernetes为代表的微服务架构解决了传统架构的哪些痛点;Service Mesh解决了微服务架构的哪些问题,以及如何理解它的原理和核心内容。第9章分享作者的架构实践经验。 不论你是有十几年研发经验及架构经验的IT老手,还是刚入门系统架构的IT新手,本书都能对你理解分布式架构和微服务架构大有助益。 -
互意纪毅 著本书提出了关于交互设计的新观点。交互设计是设定一种人与物之间的交流模式,在人和交互物之间创建有意义的个性化互动。交互设计的个性化语言是将复杂的交互内容通过语言系统帮助使用者构建个人与交互对象的个性化交互。本书旨在让交互设计者对交互设计有一个更深入的理解,尤其是对交互设计语言的认知与应用。书中详细描述了个性化交互语言的组成元素和基本结构,并通过对特定交互产品的解析来说明交互设计语言在实际交互设计中的应用。 -
Python实战指南周家安 著本书以300个不同类型的案例引导初学者快速入门,全面掌握Python语言编程技巧。这些案例各具特色,容易上手,趣味性强,学习效率高。本书内容涵盖字符串处理、包与模块管理、变量名称空间、代码流程控制、数学运算、面向对象编程、常用数据结构、异步编程、网络编程、文件与I/O、Tk组件与应用程序界面开发。 本书配套提供所有案例的源代码,便于读者动手实践甚至进行二次开发。本书适合作为广大高校计算机专业或相关培训机构的Python课程教材,也可以作为Python技术开发者的自学参考用书。 -
ClickHouse原理解析与应用实践朱凯 著这是一本可帮助读者深度理解并全面掌握ClickHouse运行原理并进行实践开发的工具书,涵盖了ClickHouse的时代背景、发展历程、核心概念、基础功能、运行原理、实践指导等多个维度的内容,尤其是在ClickHouse最核心的部分——MergeTree表引擎与分布式方面,书中对其实现原理和应用技巧进行了详细解读。本书采用浅显易懂的语言+大量演示案例+大量示意图例的形式呈现,以求让读者在最短的时间内,以最舒服的方式,获得最核心的知识。本书的理论观点来自作者在OLAP领域10余年的工作思考与总结;功能与实操的素材来自作者在工作中对ClickHouse的深度应用与实践;原理解析部分的素材来自对大量专业文献的钻研与源码级的调试与解读。本书在逻辑上分为三大部分:第1~2章从宏观的角度出发,描述了时代背景、ClickHouse的发展历程及其核心特点。其中,对MOLAP、ROLAP和HOLAP三种架构形态的优缺点进行了详细解读,对ClickHouse的发展历程和架构形态进行了深度剖析,目的是帮助读者从根本上了解ClickHouse为什么具有这么高的性能。第3~5章从实践应用的角度出发,详细介绍了ClickHouse基础功能的使用方法和技巧,其中包括对数据库、数据表、视图、数据字典等重点功能的剖析和演示。第6~11章从原理的角度出发,解析了ClickHouse核心功能的运行机理。重点介绍了六大类数十种表引擎的主要特点与使用方法。其中对MergeTree的原理进行了深度解析,对它的基础数据结构、分区索引、一级索引、二级索引、压缩数据块、数据标记等重要概念进行了解读;对副本与分片的运行原理也进行了详细剖析;对它的基础数据结构、分布式DDL、分布式协同的核心操作过程等进行了解读。 -
高效自动化测试平台徐德晨,茹炳晟 著《高效自动化测试平台:设计与开发实战》从软件自动化测试的发展历史和趋势出发,作者总结了当前软件自动化测试的需求和挑战,比如: 1. 测试对象功能复杂化,被测对象的功能越来越多,越来越全面。 2. 迭代快速化,软件从设计到交付的时间周期越来越短。 3. 测试环境规模不断增加,被测试对象的系统规模越来越庞大。 在此基础上,本书以实战的方法,深入浅出地分析和介绍了一种模块化平台的设计方案来应对这些挑战,逐一介绍了每个模块的设计思路。这种自动化测试平台具有良好的测试用例的复用能力和功能的扩展能力,并且对于测试工程师用户来说有比较低的学习成本,能快速对测试用例开发进行上手。同时,该平台的设计能够很好的解决部署和执行问题,在CI/CD并且融入了数据驱动,事件驱动等先进的设计思想和理念。 本书还结合了当下软件企业比较重视的CI/CD流程,云端部署等热门话题, 介绍了如何将自动化测试平台集成到CI/CD的工作流程以及如何将测试平台进行云部署的转变。最后介绍了几个大型企业的经典案例。 除了设计思路和方案以外,本书会给出部分的代码实现(主要适用面向对象脚本语言Python)。 -
Java编程从入门到实践扶松柏,王洋 著本书循序渐进地讲解了Java语言的核心语法知识,并通过大量的实例讲解了各个知识点的具体用法,本书分为26章。第0~2章是Java的基础知识部分,包括学习本书必备的知识、Java开发基础、Java开发工具;第3~10章为核心语法部分,包括Java基础语法、条件语句、循环语句和跳转语句、数组、面向对象基础、面向对象编程进阶、构造器、多态和引用类型、内部类、匿名类和枚举类;第11~16章为Java开发进阶提高部分,包括集合、泛型、Java常用类库、异常处理、I/O文件处理和流处理;第17~23章为Java典型应用部分,包括JavaFX桌面程序开发基础、JavaFX图像、布局和组件、JavaFX事件处理、数据库编程、开发互联网程序、开发多线程Java程序、开发网络爬虫程序;第24~25章为综合实战部分,通过两个大型实例的实现过程,详细讲解了使用Java语言开发大数据挖掘和分析系统(网络爬虫+JSP+MySQL+大数据分析)和微信商城系统(SpringBoot+Vue+微信小程序)的过程。本书适合Java开发人员阅读,也适合计算机相关专业的师生阅读。 -
Dreamweaver+ASP动态网页设计从新手到高手徐洪峰 著随着Internet技术的不断提高,越来越多的人意识到了动态网页的重要性。动态网页的编写也逐渐替代静态页面的编写,成为当今站点的主流。《Dreamweaver+ASP动态网页设计从新手到高手/从新手到高手》全面、翔实地介绍了使用Dreamweaver+ASP进行动态网站开发的具体方法与步骤;从网站基础知识开始,由浅入深、循序渐进,引导读者从零开始,一步步了解、掌握动态网页制作和动态网站设计的全过程;详细介绍了Dreamweaver的使用方法、ASP动态网页编程技术及数据库的基本操作和典型动态模块的创建等。全书共分14章,主要内容包括动态网站建设基本流程,掌握网页制作工具Dreamweaver,用Photoshop设计网页图像,动态网页开发语言ASP基础与应用,使用SQL查询数据库中的数据,使用JavaScript创建特效网页,动态网页脚本语言VBScript,组建ASP动态网站的工作环境,设计制作新闻发布管理系统,设计制作留言系统,设计制作网上调查系统,设计制作搜索查询系统,设计制作会员注册管理系统,设计企业宣传网站。《Dreamweaver+ASP动态网页设计从新手到高手/从新手到高手》语言简洁,实例丰富,适合网页设计与制作人员、网站建设与开发人员、大中专院校相关专业师生、网页制作培训班学员、个人网站爱好者阅读。 -
精通Spring[印] 兰加·拉奥·卡拉南 著,石华耀,熊珅 译本书是使用Spring进行Java Web开发的指导手册,介绍了Spring Framework的演变——从解决可测试应用程序的问题到在云端构建分布式应用程序。本书介绍了Spring 5.0的新增功能,讲解如何使用Spring MVC构建应用程序,然后全面阐释如何使用Spring Framework构建并扩展微服务,以及如何开发和部署云应用程序。读者会了解应用程序架构的进化过程——从单体架构到围绕微服务构建的架构。此外,本书还介绍了Spring Boot的高级功能,并通过强大的示例演示这些功能。 -
C语言程序设计李刚,徐义晗 著本书主要分为四篇:语法基础篇、程序设计结构篇、初级应用篇和高级应用篇。其中第一篇语法基础部分介绍了C语言概述和C语言数据与运算;第二篇程序设计结构部分介绍了算法与流程图、顺序结构程序设计、选择结构程序设计和循环结构程序设计;第三篇初级应用部分介绍了数组、函数和编译预处理;第四篇高级应用部分介绍了指针、构造类型、位运算和文件。本书可作为高等教育应用型本科院校和高职高专学校计算机专业的教材, 也可作为各类计算机培训课程的教材。
