本书是一本全面、深入解析与算法竞赛有关的数据结构、算法、代码的计算机教材。 本书包括十个专题: 基础数据结构、基本算法、搜索、高级数据结构、动态规划、数论和线性代数、组合数学、计算几何、字符串和图论。本书覆盖了绝大多数算法竞赛考点。 本书解析了算法竞赛考核的数据结构、算法; 组织了每个知识点的理论解析和经典例题; 给出了简洁、精要的模板代码; 通过明快清晰的文字、透彻的图解,实现了较好的易读性。 本书的读者对象是参加算法竞赛的中学生和大学生、准备面试IT企业算法题的求职者、需要提高算法能力的开发人员,以及对计算机算法有兴趣的广大科技工作者。
对于刚刚成为软件工程师的新手来说,知道如何编写代码只是成功了一半。你可能很快就会发现,学校并没有教授在现实世界中至关重要的技能和工作中必要的流程。本书恰恰填补了这一环节,它是作者十多年来在大型公司指导初级工程师工作的教程,涵盖软件工程的基础知识和best实践。 本书第1~2 章讲解当你在公司开启你的职业生涯时会发生什么;第3~11 章会扩展你的工作技能,教你如何使用现有代码库、解决和防止技术债、编写生产级软件、管理依赖关系、有效地测试、评审代码、交付软件、处理On-Call 时的事故和构建可演进的架构等;剩余章节涵盖管理能力和职业阶梯的提升等相关内容,例如敏捷计划、与管理者合作以及成长为资深工程师的必经之路。本书中非常重要的一部分内容是教你如何应对糟糕的管理,以及如何调整自己的节奏。 本书内容不仅
本书是系统架构领域标杆参考书的升级版,由业内资深专家萨姆 纽曼(Sam Newman)撰写。 过去10年,随着微服务的普及,大量组织从单体应用迁移到了微服务应用,分布式系统变得愈加精细化,然而,这个过程中也出现了一系列问题。本书深入探讨了构建、管理、扩展和演进微服务架构时需要考虑的方方面面。内容分为三部分:第一部分 基础 (第1章~第4章),详细阐述微服务背后的核心思想;第二部分 实现 (第5章~第13章),带你转向具体实现细节,通过各种技术和方法尽可能大程度地用好微服务;第三部分 人和组织 (第14章~第16章),具体阐述离开人和组织的支持,理念和技术将毫无意义。通过学习本书,你将深入了解对微服务的建模、集成、测试、部署和监控等方向新的解决方案。 第2版进行了全面更新:新增了微服务构建和部署、无服务器计算及云原生应
《大话软件工程 需求分析与软件设计》面向从事软件分析与设计相关工作的读者。《大话软件工程 需求分析与软件设计》的重点是在软件工程中增加了业务设计和应用设计的部分,提出了软件设计工程化的模式,支持进行定性、定量的软件项目管理,是一本实操型的软件工程工具书。全书共分为6篇22章,分别介绍了业务分析与设计的理论、需求工程的调研与分析方法、业务的分析与设计方法、应用设计方法、业务用例和应用用例的编写方法、需求和设计的配套模板、规格书标准等。 《大话软件工程 需求分析与软件设计》可作为软件工程师(包括需求、设计、开发、实施)、产品/项目经理、管理咨询师的实用工具书、培训机构的设计资格培训教材,以及普通高等院校管理信息专业、计算机专业学生学习软件设计方法的参考书。
本书以一个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平台
《深入理解分布式共识算法》结合理论知识、算法模拟和源码解析,从多个维度详细剖析分布式共识算法的基本原理和应用实践,涵盖分布式共识算法的方方面面。同时《深入理解分布式共识算法》对共识算法开发中的重点和难点问题进行了重点讲解,并提供精心准备的练习题供读者巩固和提高所学的知识。另外,作者针对重点内容录制了教学视频,以帮助读者高效、直观地学习。 《深入理解分布式共识算法》共10章,分为4篇。第1篇分布式相关概念与定理,主要介绍集群、状态机和共识等相关概念,以及BASE和CAP理论等相关知识;第2篇常见分布式共识算法原理与实战,主要介绍二阶段提交(2PC)协议、三阶段提交(3PC)协议、Paxos、ZAB和Raft等相关知识;第3篇Paxos变种算法集合,主要介绍Paxos变种算法的发展历程,以及Fast Paxos和EPaxos等变种算法的相关知识;第4篇番
本书从实际应用出发,通过35个典型实例系统地介绍了组态软件MCGS的设计方法及其监控应用技术。全书分为两篇:入门基础篇包括组态软件概述,组态软件MCGS应用基础及初、高级应用实例;监控应用篇采用组态软件MCGS实现多个监控设备(包括三菱PLC、西门子PLC、远程I/O模块、PCI数据采集卡等)的模拟电压输入/输出、数字量输入/输出、温度监控等功能。设计实例由设计任务、线路连接、任务实现等部分组成,每个实例均提供详细的操作步骤。
本书从PLC基础入门和工程实践出发,涵盖内容包括电气控制基础、S7-1500 PLC编程技术及项目应用实践。电气控制部分包括常用低压电器的工作原理及选型、电气控制电路的分析与设计等;PLC编程技术以西门子S7-1500 PLC为主线,详细介绍了S7-1500 PLC的硬件结构和指令体系,同时还介绍了西门子人机界面的相关设计方法,重点讲解了西门子*TIA博途软件的使用,并将S7-1500 PLC系统的知识体系贯穿于PLC项目应用实践中。 本书可作为高等院校自动化、电气工程及其自动化、机器人工程、计算机科学与技术、机械设计制造及其自动化等相关专业的教材,也可作为工程技术人员培训及自学参考使用。
本书是网易杭州研究院项目管理部十年来丰富的项目管理实践总结与干货分享。字字句句凝结了网易项目经理的甘与苦、汗与泪。全书围绕项目管理体系,从敏捷实践、项目立项、需求管理、沟通管理,到计划进度管理、风险管理,真实反映了网易面向互联网产品项目管理实战经验与心路历程。不论你是项目管理新手,还是资深项目经理,都可以从本书中获得启发与借鉴。
本书立足实践,以通俗易懂的方式详细介绍深度学习的基础理论以及相关的必要知识,同时以实际动手操作的方式来引导读者入门人工智能深度学习。本书的读者只需具备Python语言基础知识,不需要有数学基础或者AI基础,按照本书的内容循序渐进地学习,即可快速上手深度学习。本书配套示例源码、PPT课件、数据集、开发环境与答疑服务。 本书共分13章,主要内容包括人工智能、机器学习和深度学习之间的关系、深度学习的环境搭建、深度学习的原理、深度学习框架TensorFlow和Keras、卷积神经网络相关知识、图像识别、情感分析、迁移学习、人脸识别、图像风格迁移、生成对抗网络等内容。本书从简单的常识出发来切入AI领域,打造平滑和兴奋的学习 体验。 本书作为零基础入门书,既适合希望了解深度学习、使用深度学习框架快速上手的初学者和技术人员阅读,
本书系统地讲述了使用VMware vSphere 6.7建设和管理数据中心的整个过程,采用任务驱动的方式,通过精心安排的实训项目与实训任务,使读者在实战过程中掌握VMware vSphere的基础知识及企业应用,不但是一本适合初学者快速上手的基础教程,还是一本全面的VMware vSphere学习指南和技术手册。 本书内容遵循数据中心的建设流程,从虚拟化基础认识,到虚拟化平台的部署,再到vSphere群集的部署、配置、管理、运维、分析等,是VMware vSphere虚拟化的整体落地实现,能够帮助读者从无到有掌握构建虚拟化数据中心的技术与操作。 本书适合计算机及相关专业学生学习,更适合数据中心运维管理从业者提升技术能力使用。本书配有网络学习及技术支持平台,提供操作视频、技术文档与虚拟化学习资源,读者可扫描二维码随时浏览查看。 本书内容遵循数据中心的建设流程,从
《平衡掌控者(游戏数值战斗设计)》由真正从事 游戏行业的一线人员似水无痕编著,全部由真实游戏设计案例作为实例讲解。全书一共分为6章,每章的主要内容分别为:第1章介绍游戏数值策划在团队中的定位和岗位需求,以及需要提升哪些能力;第2章讲述游戏数值策划在设计层的基础知识,包括游戏类型分类、玩家分类等;第3章讲述实现层的基础知识、Excel相关知识点;第4章讲述公式、技能、装备和随机在实际工作中的设计理念;第5章介绍游戏中战斗的数据结构并对第4章的内容加以实现;第6章讲述VBA相关知识并对之前设计的战斗进行模拟。 本书适合以下这些人群阅读:没做过游戏但热爱游戏,想往数值策划发展的人;做过游戏但没有机会做数值策划,又向往做数值策划的人;想通过本书了解数值策划及其工作内容和工作方法的人。
《番茄工作法图解:简单易行的时间管理方法》介绍了时下流行的时间管理方法之一——番茄工作法。作者根据亲身运用番茄工作法的经历,以生动的语言,传神的图画,将番茄工作法的具体理论和实践呈现在读者面前。番茄工作法简约而不简单,本书亦然。在番茄工作法一个个短短的25分钟内,你收获的不仅仅是效率,还会有意想不到的成就感。 《番茄工作法图解:简单易行的时间管理方法》适合所有志在提高工作效率的人员,尤其是软件工作人员和办公人员。
《网易一千零一夜(互联网产品项目管理实战)》是网易杭研项目管理部十年来丰富的项目管理实践总结与干货分享。字字句句凝结了网易项目经理的甘与苦、汗与泪。全书围绕项目管理体系,从敏捷实践、项目立项、需求管理、沟通管理,到计划进度管理、风险管理,真实反映了网易面向互联网产品项目管理实战经验与心路历程。不论你是项目管理新手,还是 项目经理,都可以从本书中获得启发与借鉴。
本书的作者用通俗易懂的语言清晰地解释了敏捷,并提供了坚实可行的步骤,帮助各个团队将敏捷的价值观和原则付诸实践。本书以各种组织为例,既包括小型的非营利机构,也包括全球的金融企业,生动有趣地讲述了各个行业与跨职能组织实践敏捷的真实故事。 准确地理解敏捷的真正含义以及重要性。 利用敏捷强调组织的具体需求与目标。 杜绝在 汇报与批评 会议上浪费时间,做出更明智的决策。 建立良好的学习、协作与交付的循环周期。 借鉴IBM、Spotify和可口可乐等大公司的敏捷专家的经验。
《微服务运维实战(第二卷)》在*卷的基础上,以时下热门的Docker Swarm为例,详细介绍微服务和容器在软件持续集成和部署中的应用。本书重点讲解如何在Docker Swarm上构建、测试、部署、监控微服务,帮助读者打造大规模、高效、可靠、可快速恢复的软件系统。
本书深入介绍了从开发方法、生产力到面向对象的设计需求和系统文档的方方面面。通过本书,你将学习到:为什么遵循软件匠艺模型可以让你做到 ;如何利用可追溯性来加强文档的一致性;如何通过用例分析来创建自己的UML需求;如何利用IEEE文档标准开发出 好的软件。通过对高质量软件开发中技能、态度和道德方面的深入讲解,本书揭示了如何将工程原理应用于编程的正确方法。在这个过程中,Hyde不仅会教给你规则,还会告诉你什么时候该打破规则。他不仅会启发你认识什么是 实践,同时还会让你发现适合自己的 实践。本书中包含了大量的资源和示例,它是你编写代码的 指南,将让你从同行中脱颖而出。
本书分为3篇,由6个学习情境组成,它们是软件测试管理、单元测试、集成测试、系统测试、VSTEST单元测试VSTEST系统测试应用。每个学习情境包含了若干个任务,通过任务描述、任务分析、相关知识、任务实施的主线来进行介绍,并配有相应的思考练习。全书共包括10个任务,分别介绍了功能性测试用例的设计、结构性测试用例的设计、集成测试用例的设计、系统测试用例的设计、VSTEST单元测试的应用、VSTESTWeb测试和负载测试的应用、VSTEST手工测试的应用等。 本书适合读者学习软件测试基础理论和VSTEsT测试应用,可以作为高职院校相关专业的教材,也可用于读者自学。本书由浙江警官职业学院杨哗老师和浙大网新科技股份有限公司王申康工程师共同主编。
在软件过程中,不同的实体,例如,需求、组件、体系结构、文档、产品和人等,都是相互依赖而存在的,其中任意实体发生变化,都可能导致其他相关实体的变化。各个实体之间的紧密联系导致变更成为软件过程风险的一个重要原因。因此,主动预测软件需求变更并积极开展软件过程改进,是保持和提升软件整体质量的有效方法。首先,系统地论述了软件需求变更与软件过程的相关研究与实践背景,分析了需求变更与软件过程的关系。然后,对软件需求变更及变更间关联关系进行了分析,为软件开发和维护过程中利益相关者做出有效管理决策提供了有价值的信息。*后,使用系统动力学方法对软件需求变更管理过程进行了仿真建模,并根据模型运行的仿真结果来分析软件过程改进效果。
本书从测试项目实战需求出发,讲述了软件测试的分类以及测试的流程等,还重点讲述了性能测试技术和LoadRunner 11.0与12.60工具应用的实战知识。书中将实践中经常遇到的问题进行总结汇总成几十个解决方案,详细的项目案例,完整的性能测试方案、计划、用例设计、性能总结及相关交付文档,为读者做好实际项目提供参考和方向引导,同时为了满足培训机构及初学者的需要,本书的各个章节都配有练习题或实际面试题。 本书适合测试初学者、测试人员、测试经理以及开发人员学习,也适合作为大中专院校相关专业师生的学习用书,以及培训机构的教材。
本书在对军用软件相关概念和生存周期模型介绍的基础上,较为系统详细地介绍了军用软件的需求分析、总体设计、详细设计、测试技术、维护技术等开发过程,阐述了软件项目管理的主要内容和方法,着重介绍了软件质量管理、配置管理和风险管理的相关知识。该书的知识体系较为完整,力争做到简明、科学、适用。为便于学习,每章均附有习题。本书可作为“军用软件工程”课程的教材或教学参考书,主要适用于信息类、电子类和非计算机类专业学生,也可供软件开发人员和项目管理人员参考学习。
《软件外包服务技术(对欧美)》由人力资源和社会保障部教材办公室、中国就业培训技术指导中心上海分中心、上海市职业培训研究发展中心依据上海1+X软件外包服务技术(对欧美)职业技能鉴定细目组织编写。教材从强化培训操作技能,掌握实用技术的角度出发,较好地体现了当前*的实用知识与操作技术,对于提高从业人员基本素质,掌握软件外包服务技术(对欧美)的核心知识与技能有直接的帮助和指导作用。 《软件外包服务技术(对欧美)》在编写中根据本职业的工作特点,以能力培养为根本出发点,采用模块化的编写方式。本教材内容共分为8章,主要包括:对欧美软件外包概述、对欧美软件外包的沟通、个体软件过程规范、软件开发外包、软件测试外包、国际化软件外包、软件部署与运维外包、对欧美软件外包的管理。 本教材可作为软件外包服务技术(