本书是一本全面、深入解析与算法竞赛有关的数据结构、算法、代码的计算机教材。 本书包括十个专题: 基础数据结构、基本算法、搜索、高级数据结构、动态规划、数论和线性代数、组合数学、计算几何、字符串和图论。本书覆盖了绝大多数算法竞赛考点。 本书解析了算法竞赛考核的数据结构、算法; 组织了每个知识点的理论解析和经典例题; 给出了简洁、精要的模板代码; 通过明快清晰的文字、透彻的图解,实现了较好的易读性。 本书的读者对象是参加算法竞赛的中学生和大学生、准备面试IT企业算法题的求职者、需要提高算法能力的开发人员,以及对计算机算法有兴趣的广大科技工作者。
本书全面概述了软件架构的方方面面,涉及架构特征、架构模式、组件识别、图表化和展示架构、演进架构,以及许多其他主题。本书分为三部分。第1部分介绍关于组件化、模块化、耦合和度量软件复杂度的基本概念和术语。第2部分详细介绍各种架构风格:分层架构风格、管道架构风格、微内核架构风格、基于服务的架构风格、事件驱动的架构风格、基于空间的架构风格、编制驱动的面向服务的架构、微服务架构。第3部分介绍成为一个成功的软件架构师所必需的关键技巧和软技能。
本书从哲学高度和底层逻辑视角剖析了中国ToB行业过去30年沉积下来的弊病和面临的各种困局,作者基于自己在ToB行业深耕10余年后的丰富实践、深度洞察和系统思考,为中国ToB行业的发展给出了破局之法,助力中国ToB企业破茧化蝶,构建服务全球的产业体系和综合能力。对于中国ToB行业而言,作者的经历独特而难得,他是极少数同时具备深厚的科技和人文素养并真正跨越了ToB软件创业全周期的人,这使得本书同时具备中国视角与全球视角、创业者视角与平台视角、产品视角与产业视角,为中国ToB从业者正确理解行业格局、客户需求、产品经营、市场竞争、发展机会给出了明确的指引。本书将解开中国ToB领域企业家和创业者的困惑,激发他们重新思考自己的核心竞争力,走出泥潭、摆脱逆境,走向世界的大舞台。具体内容方面,全书分为上下两篇:上篇以理论分析为
《大话软件工程 需求分析与软件设计》面向从事软件分析与设计相关工作的读者。《大话软件工程 需求分析与软件设计》的重点是在软件工程中增加了业务设计和应用设计的部分,提出了软件设计工程化的模式,支持进行定性、定量的软件项目管理,是一本实操型的软件工程工具书。全书共分为6篇22章,分别介绍了业务分析与设计的理论、需求工程的调研与分析方法、业务的分析与设计方法、应用设计方法、业务用例和应用用例的编写方法、需求和设计的配套模板、规格书标准等。 《大话软件工程 需求分析与软件设计》可作为软件工程师(包括需求、设计、开发、实施)、产品/项目经理、管理咨询师的实用工具书、培训机构的设计资格培训教材,以及普通高等院校管理信息专业、计算机专业学生学习软件设计方法的参考书。
对于刚刚成为软件工程师的新手来说,知道如何编写代码只是成功了一半。你可能很快就会发现,学校并没有教授在现实世界中至关重要的技能和工作中必要的流程。本书恰恰填补了这一环节,它是作者十多年来在大型公司指导初级工程师工作的教程,涵盖软件工程的基础知识和best实践。 本书第1~2 章讲解当你在公司开启你的职业生涯时会发生什么;第3~11 章会扩展你的工作技能,教你如何使用现有代码库、解决和防止技术债、编写生产级软件、管理依赖关系、有效地测试、评审代码、交付软件、处理On-Call 时的事故和构建可演进的架构等;剩余章节涵盖管理能力和职业阶梯的提升等相关内容,例如敏捷计划、与管理者合作以及成长为资深工程师的必经之路。本书中非常重要的一部分内容是教你如何应对糟糕的管理,以及如何调整自己的节奏。 本书内容不仅
本书以一个Kubernetes工程师的视角,全面系统地介绍Kubernetes常见的知识点、企业应用实践及运维管理方法。本书共分18章,第1、2章介绍如何快速搭建高可用的Kubernetes集群;第3~7章介绍Docker的基础和镜像的制作优化,以及Kubernetes的基础概念(Master、Node和Pod)、核心调度资源(Deployment、StatefulSet、DaemonSet、CronJob)、服务发布(Service和Ingress)和配置管理(ConfigMap和Secret)。第8~11章主要介绍Kubernetes的持久化存储、动态存储、CSI、高级调度(容忍、污点和亲和力)、服务质量、权限管理、Kubernetes资源配额管理。第12、13章主要介绍云原生存储、中间件容器化、Operator和Helm的使用。第14~16章主要介绍针对Kubernetes的日志收集(EFK)、监控告警(Prometheus和Grafana)、生产级服务发布Ingress的使用。第17章主要介绍基于Kubernetes、Jenkins、Harbor、GitLab等工具建设生产级的DevOps平台
本书全面介绍产品的设计与开发方法,涉及顾客需求识别、功能设计、原型化设计、工业设计、服务设计等一系列过程,将市场营销、设计和制造融合为一套结构化产品开发方法,从真实工业实践的视角帮助读者了解产品开发的工作内容、方法、工具以及团队中的不同角色。书中每章都使用不同的产品实例进行方法阐释,同时附有练习和参考资源。 本书既可作为从事产品设计与开发的工程设计人员和项目管理人员的实践指南,也适合作为产品设计和项目管理等相关专业的辅助教材。 主要特点: (1)知识体系完整、系统 本书涵盖了产品设计与开发过程中涉及的方方面面,本书有两个主线:一个主线是研发项目生命期主线;另一个主线是研发各阶段都会用到的支撑性方法和工具。 (2)采用结构化的方法进行阐述,通俗易懂 本书强调采用结构化的方法解决问题
本书是系统架构领域标杆参考书的升级版,由业内资深专家萨姆 纽曼(Sam Newman)撰写。 过去10年,随着微服务的普及,大量组织从单体应用迁移到了微服务应用,分布式系统变得愈加精细化,然而,这个过程中也出现了一系列问题。本书深入探讨了构建、管理、扩展和演进微服务架构时需要考虑的方方面面。内容分为三部分:第一部分 基础 (第1章~第4章),详细阐述微服务背后的核心思想;第二部分 实现 (第5章~第13章),带你转向具体实现细节,通过各种技术和方法尽可能大程度地用好微服务;第三部分 人和组织 (第14章~第16章),具体阐述离开人和组织的支持,理念和技术将毫无意义。通过学习本书,你将深入了解对微服务的建模、集成、测试、部署和监控等方向新的解决方案。 第2版进行了全面更新:新增了微服务构建和部署、无服务器计算及云原生应
本书着重讨论以下核心内容,并层层递进,逐步深入。 首先解释了什么是软件架构,为什么它很重要,以及如何以规范和有效的方式设计、实现、分析、演进和管理它。 其次系统阐述如何使用架构来应对需求和系统规模的加速增长,以及如何管理新增的质量属性。 后讲解如何利用架构优化关键质量属性(包括性能、可修改性、防护性、可用性、互操作性、可测试性、易用性、可部署性等),如何管理和优化现有架构,如何将它们用于解决新问题并构建成可作为战略资产的可重用架构。
本书是AB实验领域的标准化著作,它将带领你快速理解AB实验原理、掌握AB实验方法、搭建AB实验平台、塑造基于数据和实验的企业文化,高效开展AB实验、实现用AB实验驱动增长。 作者是某BAT大厂的数据科学家,在数据产品、AB实验等数据科学领域有10余年经验,亲自主导了该厂AB实验平台的搭建和AB实验产品的设计与分析,积累了丰富的经验。 学习本书,你将收获以下知识和技能: AB实验的基础知识、关键问题及其挑战; AB实验的统计学知识、参与单元、随机分流; AB实验的SRM问题、灵敏度、长期影响; AB实验的产品指标体系、评估指标体系; AB实验的平台建设、组织和文化建设; AB实验的增长实践和解决方案; AB实验的难点和局限性; 因果分析方法和用户调查分析方法 本书内容具有以下3个特点: (1)全面系统、主次分明:如上所述,本书涵盖AB实验
你是否遇到过这些情况:只会使用软件中的默认图表;图表太简单,被嫌弃没有创意;图表表现力差,对报告结论的支持很有限;图表格式不统一,搭配起来一团糟;图表难以与实际工作和老板的需求相结合 也许你需要一套图表私人定制的知识体系。 这是一本专为工作服务的图表实战书,从结构上可以分为两个部分:基础篇和实战篇。第1~4章属于基础篇,分别讲解图表基本元素、图表通用设计法则、典型图表设计技巧和常用图表类型;第5章和第6章属于实战篇,分别讲解如何分析老板偏好并拆解工作型图表中的典型问题,以及综合利用基础篇的知识点,规范化图表定制步骤,让每个人都能实现图表定制梦。
《项目管理基础工具:五图二表》从管理学的角度出发,在系统工程学、运筹学、数理统计学和逻辑学的理论基础上,参照美国《PMBOK指南》的知识体系,梳理了项目管理的内在逻辑关系,将项目管理的核心内容进行提炼,化繁为简,创建了一套具有可操作性的实用工具:五图二表(阶段图、资源图、工作分解结构图、关键路径图、甘特图、工作陈述表及责任矩阵表)。 这套基础的核心工具是作者在长期的项目管理实践及项目管理咨询与培训经验基础上总结的,可帮助项目经理在项目管理中厘清思路,提升项目管理水平。 本书适用于对项目管理感兴趣的人群,特别是项目经理、项目总监、企业顾问及高管,同时也可作为高等院校项目管理、服务管理、生产管理或工程项目管理等相关专业的辅导教材。
《深入理解分布式共识算法》结合理论知识、算法模拟和源码解析,从多个维度详细剖析分布式共识算法的基本原理和应用实践,涵盖分布式共识算法的方方面面。同时《深入理解分布式共识算法》对共识算法开发中的重点和难点问题进行了重点讲解,并提供精心准备的练习题供读者巩固和提高所学的知识。另外,作者针对重点内容录制了教学视频,以帮助读者高效、直观地学习。 《深入理解分布式共识算法》共10章,分为4篇。第1篇分布式相关概念与定理,主要介绍集群、状态机和共识等相关概念,以及BASE和CAP理论等相关知识;第2篇常见分布式共识算法原理与实战,主要介绍二阶段提交(2PC)协议、三阶段提交(3PC)协议、Paxos、ZAB和Raft等相关知识;第3篇Paxos变种算法集合,主要介绍Paxos变种算法的发展历程,以及Fast Paxos和EPaxos等变种算法的相关知识;第4篇番
本书自第1版出版至今,近40年来在软件工程界产生了巨大而深远的影响。第9版继承了之前版本的风格与优势,全面系统地讲解软件过程、建模、质量与安全、软件项目管理等知识,涵盖相关的概念、原则、方法和工具,并且提供了丰富的扩展阅读资源和网络资源。同时,本书调整了篇章结构,使内容更加简洁,更适于教学。本书是面向本科生的版本,保留了完整版中的基础内容,压缩或删除了一些高级内容,更加适合作为高等院校计算机、软件工程及相关专业的软件工程课程教材。
本书系统地讲述了使用VMware vSphere 6.7建设和管理数据中心的整个过程,采用任务驱动的方式,通过精心安排的实训项目与实训任务,使读者在实战过程中掌握VMware vSphere的基础知识及企业应用,不但是一本适合初学者快速上手的基础教程,还是一本全面的VMware vSphere学习指南和技术手册。 本书内容遵循数据中心的建设流程,从虚拟化基础认识,到虚拟化平台的部署,再到vSphere群集的部署、配置、管理、运维、分析等,是VMware vSphere虚拟化的整体落地实现,能够帮助读者从无到有掌握构建虚拟化数据中心的技术与操作。 本书适合计算机及相关专业学生学习,更适合数据中心运维管理从业者提升技术能力使用。本书配有网络学习及技术支持平台,提供操作视频、技术文档与虚拟化学习资源,读者可扫描二维码随时浏览查看。 本书内容遵循数据中心的建设流程,从
本书立足实践,以通俗易懂的方式详细介绍深度学习的基础理论以及相关的必要知识,同时以实际动手操作的方式来引导读者入门人工智能深度学习。本书的读者只需具备Python语言基础知识,不需要有数学基础或者AI基础,按照本书的内容循序渐进地学习,即可快速上手深度学习。本书配套示例源码、PPT课件、数据集、开发环境与答疑服务。 本书共分13章,主要内容包括人工智能、机器学习和深度学习之间的关系、深度学习的环境搭建、深度学习的原理、深度学习框架TensorFlow和Keras、卷积神经网络相关知识、图像识别、情感分析、迁移学习、人脸识别、图像风格迁移、生成对抗网络等内容。本书从简单的常识出发来切入AI领域,打造平滑和兴奋的学习 体验。 本书作为零基础入门书,既适合希望了解深度学习、使用深度学习框架快速上手的初学者和技术人员阅读,
ANSYS软件是融结构、热、流体、电磁、声学等多物理场于一体的大型通用有限元分析软件,具有多个模块,不但可进行隐式分析,还可进行显式分析,并且可进行多物理场间的复杂耦合分析。 本书以ANSYS2020为平台,对ANSYS热分析和与热相关的耦合场分析的基本思路、操作步骤和应用技巧进行了介绍,并结合工程应用实例讲述了ANSYS的具体使用方法。 本书实例部分采用GUI方式,逐步讲解了操作步骤,在每个实例的后面列出了分析过程的命令流文件。 本书还随书赠送了配套电子资料,其中收录了全书所有实例的APDL程序文件和实例操作过程录屏讲解AVI文件,可以让读者轻松快捷地掌握ANSYS2020热分析的操作技巧和工程应用方法。 本书可供汽车、压力容器、国防 、土木工程、金属热加工等行业的技术人员进行热分析与产品开发使用,也可以作为大学本科生与研究生进行热分
本书为在现实环境中利用持续架构方法提供了实践指南,并阐明了架构在敏捷、DevOps和云平台时代不断变化的角色。 本书将帮助技术人员更新其架构实践,以应对新的软件挑战。 本书使架构师和软件工程师能够快速应用面向交付的知识。它包括了解决当今软件系统关键质量属性和交叉问题的深入指导,例如安全性、性能、可伸缩性、弹性、数据和新兴技术等。通过一个贯穿全书的案例研究,对每项关键技术都进行了演示,反映了作者应对复杂软件环境的丰富经验。
本书是一本基于丰富案例的软件工程实用教程,利用软件工程核心三要素 方法、工具和过程 贯穿全文。重点介绍了软件工程的基本概念、原理、软件工程国家相关规范和软件工程文档撰写国家标准以及传统软件工程方法学和面向对象方法学。 本书重点介绍当前主流的面向对象软件工程的开发方法,UML与建模方法、工具以及统一过程RUP。通过实例突出讲述面向对象分析、设计和实现流程。本书所有的概念、开发方法都通过实例来演示,内容精炼、表达简明、实例丰富,非常适合用作高等院校软件工程专业、计算机科学与技术专业及相关专业本科生、研究生的教材,也可以作为培训机构相关专业的培训教材和广大科技工作者和研究人员的参考用书。
在本书中,Jim仔细地描述了软件方法、方法论和思维方式在他非凡的60年职业生涯中的演变。作为一个多产的作者,Jim从他个人和他一路上遇到的同行的经历,以及这些时期的技术创新和管理趋势的角度,引导我们了解敏捷开发的发展历程。通过阅读本书,读者可以了解敏捷实践如何演变为软件开发的支柱,进而学会持续交付客户价值、促进企业效益以及构建可持续发展的企业。
本书讲述了一位IT经理临危受命,在未来董事的帮助和自己“三步工作法”理念的支撑下,最终挽救了一家具有悠久历史的汽车配件制造商的故事。小说揭示了管理现代IT组织与管理传统工厂的共通之处,让读者不仅能对如何管理IT组织心领神会,更重要的是将以完全不同于以往的视角来看待自己的工作环境。
本书介绍了零信任的基本概念及以零信任理念为基础的软件定义边界(SDP)的概念、主要功能、商业与技术优势,对技术架构、组件、工作原理和协议进行了深入分析,详细介绍了SDP架构部署模式,并梳理其适用场景,指导技术人员做出选择。本书还梳理了SDP的应用领域,与现有技术实现方式进行了对比,并结合SDP的特点与优势,为企业安全上云给出具体应用场景。零信任在防御分布式拒绝服务攻击方面有天然优势,本书介绍了DDoS攻击定义、攻击向量,以及通过SDP防DDoS攻击的原理。结合国内网络安全法律法规要求,本书在等保2.0合规方面进行了完整梳理,包含安全通用要求、云计算安全扩展要求、移动互联安全扩展要求、物联网安全扩展要求、工业控制系统安全扩展要求,详细介绍了基于SDP满足各级等保2.0要求的方法。除了SDP架构,本书还详细介绍了其他零信任
本书的作者用通俗易懂的语言清晰地解释了敏捷,并提供了坚实可行的步骤,帮助各个团队将敏捷的价值观和原则付诸实践。本书以各种组织为例,既包括小型的非营利机构,也包括全球的金融企业,生动有趣地讲述了各个行业与跨职能组织实践敏捷的真实故事。 准确地理解敏捷的真正含义以及重要性。 利用敏捷强调组织的具体需求与目标。 杜绝在 汇报与批评 会议上浪费时间,做出更明智的决策。 建立良好的学习、协作与交付的循环周期。 借鉴IBM、Spotify和可口可乐等大公司的敏捷专家的经验。