本书深入探讨了软件设计中的核心问题:如何将复杂的软件系统分解为可以相对独立实现的模块(例如类和方法),从而降低其复杂性并提高开发效率。本书首先介绍了软件设计中的基本问题,即复杂性的本质。其次,讨论了有关如何处理软件设计过程的 哲学 问题,如通用设计的重要性、与《代码整洁之道》中设计哲学的对比,以及如何将重要的东西和不重要的东西区分开等内容。最后,总结了在软件设计过程中应遵循的一系列设计原则,以及一系列识别设计问题的警示信号。 本书适合软件工程师、计算机科学专业的学生、教育者、对软件设计和开发感兴趣的自学者和技术管理者阅读。通过应用本书中的思想,读者可以最大限度地降低大型软件系统的复杂性,从而更快地以更低的成本编写软件,并构建更易于维护和增强的系统。
对于刚刚成为软件工程师的新手来说,知道如何编写代码只是成功了一半。你可能很快就会发现,学校并没有教授在现实世界中至关重要的技能和工作中必要的流程。本书恰恰填补了这一环节,它是作者十多年来在大型公司指导初级工程师工作的教程,涵盖软件工程的基础知识和best实践。 本书第1~2 章讲解当你在公司开启你的职业生涯时会发生什么;第3~11 章会扩展你的工作技能,教你如何使用现有代码库、解决和防止技术债、编写生产级软件、管理依赖关系、有效地测试、评审代码、交付软件、处理On-Call 时的事故和构建可演进的架构等;剩余章节涵盖管理能力和职业阶梯的提升等相关内容,例如敏捷计划、与管理者合作以及成长为资深工程师的必经之路。本书中非常重要的一部分内容是教你如何应对糟糕的管理,以及如何调整自己的节奏。 本书内容不仅
本书以目前流行的大语言模型ChatGPT为基础,用丰富的案例演示ChatGPT在软件测试中的赋能作用。本书主要介绍如何用ChatGPT生成需求规格说明书、测试计划、功能测试用例、自动化测试用例、接口测试用例、测试数据和性能测试用例,以及?ChatGPT?在分析测试结果、辅助?CI(Continuous Integration,持续集成)、生成测试总结报告和职业发展中的应用等。 本书内容通俗易懂,案例丰富,涵盖软件测试的功能测试、性能测试、接口测试和自动化测试等。通过阅读本书,读者可以借助大语言模型(简称大模型)提高测试效率和研发效率,提升测试工作质量。本书适合软件测试人员、项目管理人员、研发人员及关注软件效能提升的相关人员阅读,也适合希望借助大语言模型提升工作效率的技术人员阅读。
大模型技术是目前人工智能领域的重要发展方向之一,具有广阔的应用前景和巨大的发展潜力。本书结合当前高等院校创新实践课程,基于大模型应用程序的开发方法,给出可执行实战案例。大模型技术主要开发方向为人机聊天、自动生成代码、旅游图鉴等,本书案例主要包括系统架构、系统流程、开发环境、开发工具、系统实现、功能测试等内容。本书中所述案例多样化,可满足不同层次的人员需求; 同时,本书附赠视频讲解、工程文件、拓展知识、插图素材、程序代码,供读者自我学习和自我提高使用。本书可作为大学信息与通信工程及相关专业的本科生教材,也可作为从事物联网、创新开发和设计的专业技术人员的参考用书。
随着信息技术和互联网的发展,人们逐渐从信息匮乏的时代走入了信息过载(information overload)的时代 。在这个时代,无论是信息消费者还是信息生产者都遇到了很大的挑战:对于信息消费者,从大量信息中找到自己感兴趣的信息是一件非常困难的事情;对于信息生产者,让自己生产的信息脱颖而出,受到广大用户的关注,也是一件非常困难的事情。推荐系统是解决这一矛盾的重要工具。推荐系统的任务是联系用户和信息,一方面帮助用户发现对自己有价值的信息,另一方面让信息能够展现在对它感兴趣的用户面前,从而实现信息消费者和信息生产者的双赢。
《WTF Solidity智能合约教程(入门篇)》内容源自GitHub上发布的“WTF Solidity教程”,丰富且实用,用通俗易懂的语言描述Solidity的基础知识,通过实例和代码示例,深入浅出地介绍Solidity编程的关键概念,以及智能合约的优化、安全等高级主题,让读者能够编写出更安全、更高效的智能合约。
每天,Google都要测试和发布数百万个源文件、亿万行的代码。数以亿计的构建动作会触发几百万次的自动化测试,并在好几十万个浏览器实例上执行。面对这些看似不可能完成的任务,谷歌是如何测试的呢? 《Google软件测试之道》从内部视角告诉你这个世界上有名气的互联网公司是如何应对21世纪软件测试的独特挑战的。《Google软件测试之道》抓住了Google做测试的本质,抓住了Google测试这个时代**复杂软件的精华。《Google软件测试之道》描述了测试解决方案,揭示了测试架构是如何设计、实现和运行的,介绍了软件测试工程师的角色;讲解了技术测试人员应该具有的技术技能;阐述了测试工程师在产品生命周期中的职责;讲述了测试管理及在Google的测试历史或在主要产品上发挥了重要作用的工程师的访谈,这对那些试图建立类似Google的测试流程或团队的人受益
本书分为软件基础入门与应用实例两大部分,全书共计17章节。1~11章节为软件基础入门,其内容以热仿真工作流程、建立模型、网格划分、求解计算、结果处理、优化设计和仿真模型校核为主。12~17章节为软件应用实例部分,其内容主要由BGA封装芯片、户外通信机柜、数据中心、智能手机、服务器六个应用实例组成。本书内容丰富、讲解详尽,在介绍FloTHERM软件的同时,也注重相关背景原理的阐述和软件实际应用的注意事项。其中软件基础内容多来自作者的多年积累和整理。仿真模型的校准作为热仿真分析的重中之重,本书中也进行了细致的阐述。应用实例内容涵盖软件不同的应用领域,对于软件使用者而言,具有很强的实际指导意义。本书可以作为电子设备热仿真工作者、热设计工程师和FloTHERM软件使用者的自学教材和参考书,同时也可以作为高等院校学
《MATLAB数学建模从入门到精通》结合案例,系统介绍了使用 MATLAB 进行数学建模的相关知识和方法论。 《MATLAB数学建模从入门到精通》分为 11 章,主要包括走进数学建模的世界、函数极值与规划模型、微分方程与差分模型、数据处理的基本策略、权重生成与评价模型、复杂网络与图论模型、时间序列与投资模型、机器学习与统计模型、进化计算与群体智能、其他数学建模知识、数学建模竞赛中的一些基本能力。 《MATLAB数学建模从入门到精通》内容通俗易懂,适合刚刚接触数学建模的大中专院校学生和其他数学建模爱好者阅读,也适合作为相关组织和培训机构的教材和参考用书。
全书共25 章,分成三个部分,分别介绍了精益产品开发的原则、方法和实施。原则部分,从精益及敏捷产品开发的目标入手,梳理了敏捷和精益思想的来龙去脉和具体的实践框架,构建了系统和完整的精益产品开发体系。方法部分,以作者在华为、招商银行、平安科技以及数家互联网创业公司的大量成功案例为基础,详细介绍了这些案例背景、应用细节以及背后的原理和方法,构建了坚实、系统和可应用的实践方法体系。实施部分继续以真实案例为基础,总结了完备的精益产品开发实施路径,涵盖了需求管理、过程改进、质量提升、团队建设、DevOps 落地等实施中的重点要素。本书适合所有准备实施或正在实施敏捷和精益方法以及希望改善组织价值交付效率、质量、灵活性以及产品创新能力的团队阅读与参考。
本书系统地讲述了智能现象的发展历史。全书共分为9 章。第1 章介绍本书的写作背景、智能的不同定义、智能现象问题、智能现象新的假说;第2 章介绍宇宙从无到有(物质、能量和空间)、不安分的宇宙、改变以稳定宇宙等内容;第3 章介绍物理学中的智能,包括美丽的物理世界、引力智能、引力和暗能量、熵引力、最小作用量原理、量子隐形传态等内容;第4 章介绍化学中的智能,包括化学发展的简要历程、耗散结构、熵增、最大熵产生;第5 章介绍生物学中的智能,包括生命的定义、生命为什么存在、微生物的智能、植物的智能、动物的智能;第6 章介绍人类的智能,包括大脑中的新皮质、人类特殊的思维方式、关于大脑的理论(贝叶斯大脑假说、高效编码原理、神经达尔文主义、自由能最小原理),以及信息过载与信息茧房;第7 章介绍机器的智能,包括1950
本书以步骤图解和视频微课等方式展现了用Blender软件进行三维造型设计的相关知识和技能,主要内容包括:Blender与3D打印的基础入门,Blender与3D打印的进阶内容,Blender与3D打印的高阶内容。每个案例均配有相应的教学视频,方便读者自学和培训。通过对本书的学习,读者不仅可以精准掌握Blender的核心造物功能,包括三维设计、渲染、骨骼绑定、动画等,还可以了解3D打印的操作流程。
本书深入浅出地介绍非线性有限元计算软件OpenSees的基本建模与编程的方法,针对初学者设计了一系列循序渐进的算例,介绍编译和添加新材料方法,帮助使用者快速掌握OpenSees用法与编程.
本书作为一本详细讲解信创产品测试的图书,从信创产品的基础开始讲起,逐步贯通测试技术、测试方法论和测试案例分析。全面融合理论、实践与案例分享的方式,详细讲解如何对信创产品进行检验检测,如何提高信创产品的适配能力和产品质量。 本书共分为三个部分10个章节:第一部分为技术篇,详细介绍了信创的发展史和生态布局等内容,整个篇章以解读信创测试的团体标准和国家标准为突破口,从信创产品的测试基础要求、适配迁移能力、功能、性能效率、可靠性、安全性、兼容性、环境试验等方面进行一一的指导与测试实践,详细讲解如何对信创产品进行测试测评。第二部分为方法论,主要介绍了两款测试方法论(一款是基于业务场景的测试设计方法论,另一款是基于任务驱动的测试设计方法论),指导读者对信创产品从一个更高层次上,进行测试分
本书主要分享作者在多年软件测试从业中积累的关于性能测试、分析诊断与调优的技巧以及实战经验,使读者在性能测试、分析诊断与调优能力上有进一步的提升。 本书分为8章,首先从性能测试的基础理论开始介绍,包括性能测试的基本概念、常见的性能指标、性能测试流程等,接着会介绍Linux和Windows服务器的性能指标监控和性能分析技巧、Web中间件和应用中间件的常见性能诊断调优方法、Java应用程序的性能分析诊断调优技巧、MySQL数据库以及安卓APP的常见性能分析诊断方式,*后会结合LoadRunner、JMeter等常见性能测试工具以及结合HTTP、RPC等常见的传输协议一起来剖析真实的性能测试分析调优案例。 本书适合性能测试初学者、测试工程师、测试经理、研发经理、技术经理作为技术参考书,也适合高等院校与培训学校软件测试相关专业的师生作为教学参考书。
本书共分为五部分,部分全面讲述了面向对象程序设计的6大原则;第二部分深入浅出地阐述了23种设计模式,将这23种设计模式与我们耳熟能详的历史故事结合在了一起,趣味性极强;第三部分对各种彼此之间有关联的设计模式进行了分析和比较;第四部分讲解了设计模式的混编;第五部分是附录提供了一份设计模式彩图手册。
虚拟化技术是云计算的底层支撑技术之一。作为已经纳入到Linux内核的虚拟化解决方案,KVM虚拟化近年来发展迅猛,是很多公共云供应商默认的虚拟机管理程序。对于IT从业者来讲,掌握一些KVM虚拟化知识是很有必要的。 本书是《虚拟化KVM进阶实战》姊妹篇,共有6章。针对初学者,先从虚拟化基本概念及KVM原理讲起,然后通过全动手的实验学习KVM的安装、虚拟机创建、虚拟机的日常管理、虚拟网络的管理、虚拟存储的管理。 KVM虚拟化其实是Linux、KVM、QEMU和libvirt等很多开源技术的组合,对于初学者来讲学习曲线比较陡。本书将这些技术融会贯通,是作者多年讲授KVM虚拟化实战课程经验的结晶,可以使学习者快速入门并为后续的企业级应用打下基础。
本书介绍了关于软件应用建模和设计的知识。从UML中的用况到软件体系结构,本书展示了如何在解决现实世界问题的过程中应用COMET,介绍了针对各种体系结构的模式,包括客户端/服务器以及基于构件的软件体系结构中的客户端/服务模式,面向服务的体系结构中的代理、发现和事务模式,实时软件体系结构中的实时控制模式,软件产品线体系结构的分层模式。此外,还介绍了软件质量属性,包括可维护性、可修改性、可测试性、可追踪性、可伸缩性、可复用性、性能、可用性和安全性。
通过讲述和可视化故事来构建更好的商业软件,从故事到工作软件,帮助读者构建软件内容的本质,提出以种用于协作领域建模的平易近人、结构化、基于叙述的技术。该书是领域建模技术的实用指南,并从领域驱动设计的关键方面提炼出的丰富见解。
本书是《架构即未来》的姊妹篇。全书共分13章,用成功互联网产品公司首席技术官和企业家的故事,引出了对构建可扩展的产品至关重要的50条规则,可帮助软件研发人员、技术运维人员和管理者修复或重新架构现有产品,了解关于扩展的佳实践并有计划地实施,还可以帮助建立一套架构原则以推动未来的研发。
这是一部从原理、方法和实战3个维度全面讲解场景化设计的著作,它将让我们在产品设计和运营的过程中真正理解并做到以用户为中心。场景化设计是以用户为中心的底层逻辑,以用户为中心是产品和运营的灵魂。 本书是作者超过15年的产品经验的总结,首先分析了用户场景和业务场景的要素和原理,然后总结了发现场景的4种方法、设计场景的4种方法、运营场景的3个步骤,以及场景化设计在电商和在线教育等典型商业场景中的应用。 全书共12章,分为三部分。 部分(第1~5章) 认识场景化 主要介绍业务场景和用户场景的定义与特点、移动互联网产品思维,以及如何运用常用的分析方法来发现场景。场景化设计可以使产品定位更加清晰和明确,可以使需求分析的过程更准确和高效,可以将产品设计的过程考虑得更全面,可以促进需求评审时团队理解的一致性。
本书是国产基础软件集群的实操指南,在揭示国产基础软件集群平台本质的基础上,对国产基础软件集群进行分类介绍,按照操作系统、数据库、中间件的顺序,分别对银河麒麟高可用集群软件、达梦数据共享集群、神通数据库共享存储集群、东方通中间件应用服务器集群的概念和特点等进行了介绍,并解析了这些集群的架构,阐述了如何搭建这些集群。最后,本书从实践应用出发,列出了几个重点行业的部署实践指南,帮助读者加深对内容的理解,做到学以致用。 本书适合对基础软件行业感兴趣、想了解国产基础软件的人士,以及基础软件相关行业的从业者。
本书基于ANSYS Workbench 2022 R1平台,分别对ANSYS Workbench平台、几何建模、网格划分、Mechanical处理、结构线性静力学分析、结构线性动力学分析、结构非线性分析、热力学分析、机构优化设计、复合材料分析、结构显示动力学分析、疲劳分析、刚体动力学分析、LS-DYNA动力学分析和HyperMesh与Workbench联合仿真分析进行了介绍。实例与相关理论基础相结合,可帮助初学者快速入门,熟悉有限元分析流程,评估分析结果,处理分析过程中出现的错误,在实践中掌握解决结构领域工程实际问题的思路和方法。 本书可供机械工程、土木工程、水利水电、能源动力、石油化工、航空航天、汽车、日用家电等领域从事产品设计、仿真和优化的工程技术人员参考,也可作为工科类专业本科生、研究生和教师的参考及教学用书。
本书全面阐述了数字化转型的核心,从战略制定到流程再造,再到数字化领导力的实现,提供了独特的视角。通过深入剖析数字化的本质、数字技术的应用和数字化转型要素,提出并阐明了数字化领导力的关键构成,涵盖数字化战略流程、智能创新及人才激励等多个维度,帮助读者全面理解数字化及其转型路径。书中还针对管理者在数字化时代所面临的挑战,提出了一系列创新的理论与实践方法,指导管理者制定有效的数字化战略,提升数字化思维,强化数字化领导力和实践方法,帮助管理者建立数字化战略,形成技术认知,提升数字化领导力。
本书技术范围属计算机软件与理论二级学科计算机软件专业,紧扣软件软件工程标准规范要求,结合国内相关软件研制现状,系统地介绍了软件质量管理的要求,涵盖了软件工程、CMMI软件能力成熟度模型和软件测试技术的相关知识。对于帮助软件质量管理人员清楚了解和掌握质量管理精髓具有较强的指导作用。本书是作者多年从事软件工程技术研究和软件质量体系建设的实践经验总结,与其它公开教材相比,本书的实用性好,内容指导性强,适用于全军、同领域教育培训,具有较高的参考价值。本书可供从事软件研制的技术和管理人员使用,也可供高等院校的研究生和高年级本科生学习和参考。