本书是一本全面、深入解析与算法竞赛有关的数据结构、算法、代码的计算机教材。 本书包括十个专题: 基础数据结构、基本算法、搜索、高级数据结构、动态规划、数论和线性代数、组合数学、计算几何、字符串和图论。本书覆盖了绝大多数算法竞赛考点。 本书解析了算法竞赛考核的数据结构、算法; 组织了每个知识点的理论解析和经典例题; 给出了简洁、精要的模板代码; 通过明快清晰的文字、透彻的图解,实现了较好的易读性。 本书的读者对象是参加算法竞赛的中学生和大学生、准备面试IT企业算法题的求职者、需要提高算法能力的开发人员,以及对计算机算法有兴趣的广大科技工作者。
《大话软件工程 需求分析与软件设计》面向从事软件分析与设计相关工作的读者。《大话软件工程 需求分析与软件设计》的重点是在软件工程中增加了业务设计和应用设计的部分,提出了软件设计工程化的模式,支持进行定性、定量的软件项目管理,是一本实操型的软件工程工具书。全书共分为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篇番
本书立足实践,以通俗易懂的方式详细介绍深度学习的基础理论以及相关的必要知识,同时以实际动手操作的方式来引导读者入门人工智能深度学习。本书的读者只需具备Python语言基础知识,不需要有数学基础或者AI基础,按照本书的内容循序渐进地学习,即可快速上手深度学习。本书配套示例源码、PPT课件、数据集、开发环境与答疑服务。 本书共分13章,主要内容包括人工智能、机器学习和深度学习之间的关系、深度学习的环境搭建、深度学习的原理、深度学习框架TensorFlow和Keras、卷积神经网络相关知识、图像识别、情感分析、迁移学习、人脸识别、图像风格迁移、生成对抗网络等内容。本书从简单的常识出发来切入AI领域,打造平滑和兴奋的学习 体验。 本书作为零基础入门书,既适合希望了解深度学习、使用深度学习框架快速上手的初学者和技术人员阅读,
本书是领域驱动设计方面的经典之作,修订版更是对之前出版的中文版进行了全面的修订和完善。 全书围绕着设计和开发实践,结合若干真实的项目案例,向读者阐述如何在真实的软件开发中应用领域驱动设计。书中给出了领域驱动设计的系统化方法,并将人们普遍接受的一些实践综合到一起,融入了作者的见解和经验,展现了一些可扩展的设计新实践、已验证过的技术以及便于应对复杂领域的软件项目开发的基本原则。
本书融有限元分析的基础知识和ANSYS Workbench应用实例为一体,配以大量的案例分析,从而在基础理论和工程实践应用之间架起一座桥梁。全书共15章,分别讲解了ANSYS Workbench基础知识、几何建模基础 、网格划分平台、结构线性静力分析、Workbench界面与经典ANSYS(MAPDL)、热分析、动力学分析、显式动力学分析、线性屈曲分析、结构非线性分析、流体动力学分析、电磁场分析、优化设计、多物理场耦合分析及综合应 用和ANSYS Discovery AIM基础,主要包括不同物理场耦合技术在产品研发中的应用,这些都反映了当今国际上仿真技术发展的新应用成果。为了提高读者的学习效率,本书还特别配套1张DVD光盘,内含书中实例的模型 文件和计算文件。
本书趋近,因为它在提供知识的同时,仍然具有相当高的可读性。 本书共有14章,每章都介绍了几个设计模式,完整地涵盖了四人组版本23个设计模式。 前言介绍了这本书的用法 章至1章陆续介绍了设计模式:Strategy、Observer、Decorator、Abstract Factory、Factory Method、Singleton、Command、Adapter、Facade、TemplatMethod、Iterator、Composite、State、Proxy。 2章介绍了如何将两个以上的设计模式结合起来成为新的设计模式(例如,的MVC模式),作者称其为复合设计模式。 3章介绍了如何进一步学习设计模式,如何发掘新的设计模式等主题。 附录A介绍了剩下的设计模式:Bridge(桥接)、Builder(生成器)、Chainof Responsibility(责任链)、Flyweight(蝇量)、Interpreter(解释器)、Mediator(中介者)、Memento(备忘录)、Prototype(原型)、Visitor(访问者)。 另外,章至第9章还穿插
《黑客攻防与网络安全从新手到高手:实战篇》在剖析用户进行黑客防御中迫切需要或想要用到的技术时,力求对其进行 傻瓜 式的讲解,使读者对网络防御技术有一个系统的了解,能够更好地防范黑客的攻击。全书共分为15章,包括网络安全快速入门、搭建网络安全测试环境、黑客入侵方式与DOS命令、木马病毒的查杀与预防、系统漏洞与用户账户的安全防护、远程控制入侵系统的安全防护、网络账号及密码的安全防护、浏览器的安全防护、有线局域网的安全防护、无线局域网的安全防护、网站系统的安全防护、电子邮箱与邮件的安全防护、操作系统的安全防护、计算机安全的终极防护、黑客后门入侵痕迹的清理等内容。 另外,《黑客攻防与网络安全从新手到高手:实战篇》还赠送海量王牌资源,由于赠送的资源比较多,在《黑客攻防与网络安全从新手到高手:实
《微服务运维实战(第二卷)》在*卷的基础上,以时下热门的Docker Swarm为例,详细介绍微服务和容器在软件持续集成和部署中的应用。本书重点讲解如何在Docker Swarm上构建、测试、部署、监控微服务,帮助读者打造大规模、高效、可靠、可快速恢复的软件系统。
为了帮助读者提高工作效率,同时,便于读者迅速锁定目标软件而不至于迷失在工具海洋中,本书作者结合自己多年在教学中教授、使用小软件的经历和经验,从上百个常用多媒体小软件中精心挑选了27款经典小软件供读者选择学习,包括PPT插件、音频编辑、动画制作、录屏、视频剪辑、手绘、思维导图、问卷制作、H5页面制作、Office小功能等多个类别的27款多媒体小软件。另外,为了满足读者碎片化学习的需求,我们还为每一款小软件制作了包括软件特点介绍、操作示范、作品样例等在内的若干短视频。通过扫描封底二维码,读者便可进入微视频页面,观看视频进行学习。
魏亮、谢剑、李武君编*的《结构软件学且思-- 以STAAD为例(附光盘)》介绍了国际知名的结构分析设计软件STAAD的基本功能,通过一些简单的例题诠释了结构的基本概念,如弯曲变形、剪切变形、振型、剪力滞后等,语言通俗易懂,风格独到。 本书可作为刚参加工作的土建结构工程师特别是钢结构设计工程师的参考读物。 对于有意完善手中的软件、丰富其功能的工程师,本书也提供了一章内容介绍软件的二次开发。 对于那些已经带领一个设计团队的有经验的工程师,本书介绍的一些管理软件和思路将会帮助他们* 轻松地管理团队,使得团队的合作*高效、*愉快。 本书也可供教学、科研和设计领域的相关科技人员参考。
本书由看板方法创始人David J. Anderson亲自编写,是看板方法的奠基之作。看板方法脱胎于丰田生产方式和约束理论,是精益方法的进一步延伸。它将软件开发过程视为一种价值流,并且相信拉动式的管理能产生更好的结果。它通过限制在制品的数量等一系列简单可行的技巧,发现和缓解软件开发过程中的压力和瓶颈,提高生产效率。看板方法的奇妙之处,在于它与企业原有的开发流程无缝结合,在不知不觉中提高生产效率。换句话说,它是一种渐进式的改良,不是翻天覆地的革命,因而更容易被企业接受。实施阻力小且切实有效是看板方法在软件开发社区中迅速流行起来的原因。
No matter how much instruction you've had on managing software requirements, there's no substitute for experience. Too often, lessons about requirements engineering processes lack the no-nonsense guidance that supports real-world solutions. Complementing the best practices presented in his book, Software Requirements, Second Edition, requirements engineering authority Karl Wiegers tackles even more of the real issues head-on in this book. With straightforward, professional advice and practical solutions based on actual project experiences, this book answers many of the tough questions raised by industry professionals. From strategies for estimating and working with customers to the nuts and bolts of documenting requirements, this essential companion gives developers, analysts, and managers the cosmic truths that apply to virtually every software development project.
“用户说不清需求”、“需求变更频繁”……都是在软件需求实践中频繁遇到的问题。本书首先直面这些问题,从心理学、社会学的角度剖析其背后的深层原因,使大家从中获得突破的方法。 然后沿着需求开发的几大关键过程,逐一说明了需求定义、需求捕获、需求分析与建模、编写规约、需求验证等需求开发活动的任务、要点和具体手段,并提出了一个可操作性强、易于上手的SERU过程框架,能够帮助读者清晰地了解整个过程,理解各阶段的关键产物和产物之间的关系,迅速应用于实际工作中。本书还对包括需求基线、变更管理、需求跟踪在内的需求管理活动的操作要点进行了阐述,给出了具有很强实践性的具体建议。 纵观《软件需求实践--SERU过程框架原理与应用(典藏版)》,语言浅显、文字生动,蕴含了许多人文、心理、交流方面的知识,即使是非技
本书是国内当前集中介绍软件调试主题的权威著作。本书第2 卷分为5 篇,共30 章,主要围绕Windows系统展开介绍。第一篇(第1~4 章)介绍Windows 系统简史、进程和线程、架构和系统部件,以及Windows系统的启动过程,既从空间角度讲述Windows 的软件世界,也从时间角度描述Windows 世界的搭建过程。第二篇(第5~8 章)描述特殊的过程调用、垫片、托管世界和Linux 子系统。第三篇(第9~19 章)深入探讨用户态调试模型、用户态调试过程、中断和异常管理、未处理异常和JIT 调试、硬错误和蓝屏、错误报告、日志、事件追踪、WHEA、内核调试引擎和验证机制。第四篇(第20~25 章)从编译和编译期检查、运行时库和运行期检查、栈和函数调用、堆和堆检查、异常处理代码的编译、调试符号等方面概括编译器的调试支持。第五篇(第26~30 章)首先纵览调试器的发展历史、工作模型和
内 容 提 要 本书全面系统地介绍了大数据的测试技术与质量体系建设。本书共11章,第1~4章涵盖认识大数据,大数据技术生态,数据仓库的设计与构建,以及大数据项目开发流程;第5~7章讲解大数据测试方法、大数据测试实践和数据质量管理;第8~10章介绍大数据测试平台实践、数据治理平台建设,以及DataOps的理念与实践;第11章提供大数据测试学习路线。附录列出了大数据技术经典面试题。 本书适合想要了解大数据技术的读者,以及想要学习和掌握大数据测试与大数据开发的从业者。通过阅读本书,测试工程师可以系统地学习大数据技术基础、大数据开发和大数据测试等知识;大数据开发工程师可以借鉴大数据质量保障的方法,拓宽数据工程实践的思路;技术专家和技术管理者可以了解大数据质量保障体系、数据治理建设和DataOps实践等内容。
Access是Microsoft Office套件中的一员,是一个数据库管理程序,用于管理数据。本书以Access 2021软件为平台,从管理人员和办公人员的工作需求出发,配合大量典型实例,全面而系统地讲解Access 2021在数据管理中的应用,帮助用户轻松高效地完成数据库的创建与维护。 本书以“完全掌握Access”为出发点来安排内容,全书共6篇,分为15章。第1篇为基础学习篇(第1~4章):本篇主要针对初学者,从零开始,系统并全面地讲解Access 2021的基本操作、数据库的创建与使用、数据表的创建与使用,以及规范数据库的方法。第2篇为查询分析篇(第5~6章):介绍在Access 2021中创建查询、编辑查询字段、使用SQL查询、嵌套查询和多表查询等内容。第3篇为窗体报表篇(第7~9章):介绍在Access 2021中创建普通窗体、创建主/次窗体、在窗体中添加控件和编辑控件,以及创建和分析报表
在本书中,你可以跟随作者在活跃而神秘的开源世界中进行一次奇妙的旅行。本书从生活中的常见软件讲起,介绍了什么是开源、标志性开源项目的标志、开源人的日常活动、组织机构等;紧接着介绍开源世界中包括科学家、程序员、律师、商人、用户等在内的不同角色,以及开源运动如何在这些人的推动下取得胜利;最后探讨了开源的迷人特性,介绍了这件表面上看起来吃力不讨好的事情所取得的成就,并对开源在本土的发展进行了思考。全书包含大量生动有趣的故事和数据分析,让非技术领域的读者也能用高屋建瓴的视角感受和拥抱开源文化。 本书适合在开源领域工作的技术人员、社区工作者、研究人员等参考,也适合想了解开源的一般大众阅读。
本书主要介绍GitLab CI/CD的相关内容。*介绍GitLab CI/CD的基础知识,包括CI/CD的几个基本概念(pipeline、stages、job、GitLab Runner和.gitlab-ci.yml文件);然后介绍GitLab CI/CD的35个关键词、每个关键词的语法及其使用场景,并给出一些示例;*介绍CI/CD的实践,通过3种不同的项目详细讲解各种部署方式,包括微服务架构项目流水线开发、GitLab CI/CD与Kubernetes的集成,以及如何将项目部署到Kubernetes集群中等。本书还给出了两个附录,分别是GitLab CI/CD中的预设变量和GitLab CI/CD测试题。 本书适用于想要提高研发团队的软件集成、软件交付效率的开发和运维人员。