软件与程序设计
-
图解数据结构吴灿铭本书是一本综合讲述数据结构及其算法的入门书,内容浅显易懂、逻辑严谨,力求在适用性上兼顾教师教学和学生自学。 全书从基本的数据结构概念开始讲解,以新版的Java语言详细诠释数组结构、队列、堆栈、链表、树结构、图结构、排序和查找等数据结构的基础知识,书中收录了精华的算法及范例程序的实现过程,辅以丰富的图示解析。全书的范例程序均采用Eclipse IDE for Java Developers集成开发工具进行编译、执行、测试及调试。此外,本书各章末尾都安排了配合教学内容的习题和选自各类考试的试题,并在附录中提供了解答,可供读者测试学习效果。 本书图文并茂,叙述简洁、清晰,范例丰富、可操作性强,是一本数据结构普及型的教科书和自学参考书。适用于具有一定编程能力又想增加编程“深度”的非信息专业类人员或学生。
-
企业级Java现代化(德)Markus Eisele(马库斯·艾泽勒), Natale Vinto(纳塔莱·文托)本书讨论了如何利用现代化的技术开发新一代的企业级Java应用。传统的单体应用已经难以适应云环境下的开发和部署,因此,作者首先介绍了在云环境下需要什么样的Java应用架构和开发实践。作者基于Quarkus、Spring Boot和Vert.x技术搭建了一个典型的云原生分布式应用,并将其容器化和部署至Kubernetes。Serverless是一种新兴的应用开发和部署模式,能够最大化地节省成本,作者以Knative平台为例,讲解了如何将我们开发的云原生应用部署至Serverless平台。在应用现代化的过程中,我们不仅要面临新应用的开发,更要处理已有的遗留应用,作者花费大量的篇幅介绍了对传统应用进行现代化改造的行动方案,其中涉及大量最佳实践,以及实用的技术和工具。
-
Java高并发核心编程 卷2尼恩本书聚焦Java高并发编程基础知识,介绍Java多线程、线程池、内置锁、JMM、CAS、JUC、高并发设计模式等并发编程方面的核心原理和实战知识。本书共10章。第1、2章剖析多线程、线程池的核心原理和实战应用,揭秘线程安全问题和Java内置锁的核心原理。第3、4章讲解CAS原理与JUC原子类、JMM的核心原理,揭秘CAS操作的弊端和两类规避措施,以及Java内存可见性和volatile关键字的底层知识。第5章讲解JUC显式锁的原理和各种显式锁的使用。第6章阐述JUC高并发的基础设施——AQS抽象同步器的核心原理。第7章介绍JUC容器类。第8~10章介绍常见的Java高并发设计模式的原理和使用。本书既可以作为Java工程师、架构师的编程参考书,又可以作为参加互联网大厂面试、笔试的人员的学习参考书。
-
Java高并发核心编程尼恩 、德鲁、李鹏举、尤里乌斯本书从动态代理模式、Reactor模式、三大限流策略等知识入手,深入浅出地剖析Spring Cloud Nginx系统架构的核心原理以及Web高并发开发技术。全书从基础设计模式和基础原理出发,理论与实战相结合,系统、详尽地介绍Spring Cloud Nginx高并发核心编程。本书共10章。前6章剖析Feign高并发RPC的底层原理,解析Hystrix高性能配置的核心选项,阐述Hystrix滑动窗口的核心原理;后4章介绍Nginx的核心原理及其配置,并结合秒杀场景实现Spring Cloud秒杀、Spring Cloud Nginx Lua秒杀,为广大Java开发者提供一个全面学习高并发开发的实战案例。这些知识会为广大Java工程师解决后台开发中遇到的高并发、高性能问题打下坚实的技术基础。
-
大话设计模式程杰《大话设计模式 Java溢彩加强版》是百万销量的经典畅销书《大话设计模式》的全新升级版,描述语言由上一版C#变为Java。《大话设计模式 Java溢彩加强版》在形式上开创了IT技术图书的先河。通篇以情景对话形式,用多个小故事和编程示例来组织解读GoF(设计模式经典名著—Design Patterns Elements of Reusable Object-Oriented Software)的23个设计模式。《大话设计模式 Java溢彩加强版》共分为一个楔子 29章正文。其中,楔子主要通过一个编程实例的演变为初学者介绍了面向对象的基本概念,用来奠定面向对象基础以及树立正确的、有高度的开发思维;第0、1、3、4、5章着重讲解了面向对象的意义、好处以及几个重要的设计规则;第2章,以及第6~28章详细讲解了23种设计模式;第29章对设计模式进行了全面总结。《大话设计模式 Java溢彩加强版》的特色是通过小菜与大鸟的趣味问答,在讲解程序的不断重构和演讲过程中,极大地降低设计模式的学习门槛,让初学者可以更加容易地理解为什么这样设计才是好的?是怎样想到这样设计的?以达到不但授之以“鱼”,还授之以“渔”的目的,引导读者体会设计演变过程中蕴藏的大智慧。
-
Python数据结构与算法孙玉胜 陈锐 张志锋数据结构与算法是计算机、软件工程、大数据、人工智能等专业非常重要的一门专业基础和核心课程。本书内容全面,通俗易懂,所选案例典型,结构清晰,重点难点突出,所有算法均采用Python实现,示例可直接运行。本书配套示例源码、PPT课件、教学视频、教学大纲、作者QQ群答疑服务。本书共分8章,内容包括数据结构与算法概述,线性表,栈和队列,串、数组与广义表,树和二叉树,图,查找,排序。本书适合Python数据结构与算法的初学者、Python软件开发人员,可作为备考计算机专业研究生和软考人员学习数据结构与算法的参考书,也可作为高等院校计算机、软件工程、大数据等相关专业学生学习数据结构与算法的教材。
-
Azure、DevOps和微服务软件架构实战[葡] 加布里埃尔·巴普蒂斯特,[意]弗朗西斯科·阿布鲁泽塞 著,叶伟民 张陶栋 王伟 肖宁 译软件架构是指可以简化软件开发过程并提高应用程序质量的实现架构和系统。本书在第1版的基础上进行了全面修订和扩展,面向.NET 5和C# 9,介绍了一些能够助你成为一名卓越的软件架构师所需的关键技能、知识和**实践。 第2版增加了对软件架构原则的额外讲述、Azure服务结构、Kubernetes和Blazor等新章节。另外,还增加了关于安全性、微服务和DevOps的讨论,以及软件开发周期的GitHub部署。 首先,介绍如何将用户需求转换为软件架构需求,并探讨功能性需求和非功能性需求之间的差异。然后,探讨如何为基础设施选择云解决方案,以及如何在基于云的环境中管理应用程序。最后,讲解软件设计模式和各种软件方法,从而帮助你解决开发过程中遇到的常见问题。 学习完本书,你将能够构建并交付可满足组织业务需求的高度可扩展的企业应用程序。 主要内容 ● 使用多种技术克服现实工作中的架构挑战,并从设计层面解决问题 ● 应用分层架构、面向服务架构和微服务架构 ● 利用容器、Docker、Kubernetes和Blazor等工具高效管理微服务 ● 快速使用Azure工具和功能提供全局解决方案 ● 使用C# 9及其新功能编程和维护Azure功能 ● 了解什么情况下最适合使用测试驱动开发方法 ● 编写自动化功能测试用例 ● 充分利用DevOps原则实现CI/CD环境
-
精通Neo4j张帜 庞国明 叶伟民 宋建栋 马延超 杨志图数据库是NoSQL类数据库的又一大典型代表,在国内图数据库属于新兴事物,其优异的复杂关系解决方案引起了国内众多大型互联网公司及IT开发者的关注,而Neo4j是目前图形化数据库中最为出色、最为成熟的产品。本书的第一版书名是《Neo4j**指南》,发行量超过13000册,本书在第一版的基础上补充完善了Neo4j的新特性、新功能。本书基于Neo4j 4.4版本编写,共分10章,涵盖基本概念、基础入门、查询语言、程序开发技术、管理运维、集群技术、应用案例、高级应用、配置设置、内建过程、GDS、Fabric等内容。本书内容涉及Neo4j的大部分知识,既可以作为Neo4j初学者的入门教材,也可以作为相关行业Neo4j技术专家的参考手册。
-
Apache Airflow 数据编排实战[荷] 巴斯·哈伦斯拉克(Bas Harenslak),朱利安·德·瑞特(Julian de Ruiter)著,殷海英 译数据管道通过整合、清理、分析、可视化等方式来管理初始收集的数据流。Apache Airflow提供了一个统一的平台,可以使用它设计、实施、监控和维护数据的流动。Airflow具有易于使用的UI、即插即用的选项以及灵活的Python脚本,这些都使Airflow能够非常轻松地完成任何数据管理任务。 在《Apache Airflow 数据编排实战》中,介绍了如何构建和维护有效的数据管道。与你一同探索最常见的使用模式,包括聚合多个数据源、连接到数据湖以及云端部署。可以将本书作为Airflow的实用指南,本书涵盖了为Airflow提供动力的有向无环图(DAG)的各方面知识,以及如何根据工作需求对其进行自定义的技术。 主要内容 ● 构建、测试及部署Airflow管道作为DAG ● 自动对数据进行移动和转换 ● 使用回填技术分析历史数据集 ● 开发自定义组件 ● 在生产环境中搭建Airflow
-
Spring Data Access源码精讲王涛本书围绕Spring Data Access相关技术,着重强调方法的流程分析和成员变量的分析,测试用例的数量相对较少。 本书内容包含Spring Data Access中的四大核心模块的使用及其源码分析,四大模块分别是spring-jdbc、spring-tx、spring-orm和spring-oxm。本书可以帮助读者快速掌握这四大模块的基本使用方法以及Spring Data Access中常见接口的处理流程。 本书的源码分析大部分情况下遵循测试用例优先,尽可能保证源码可复现。 本书适合作为具有一定Java编程基础的读者、对Spring框架有基础开发能力的读者和对Spring Data Access开发有一定实践经验的读者的参考用书。