其他编程语言/工具
-
Azure、DevOps和微服务软件架构实战[葡] 加布里埃尔·巴普蒂斯特,[意]弗朗西斯科·阿布鲁泽塞 著,叶伟民 张陶栋 王伟 肖宁 译软件架构是指可以简化软件开发过程并提高应用程序质量的实现架构和系统。本书在第1版的基础上进行了全面修订和扩展,面向.NET 5和C# 9,介绍了一些能够助你成为一名卓越的软件架构师所需的关键技能、知识和**实践。 第2版增加了对软件架构原则的额外讲述、Azure服务结构、Kubernetes和Blazor等新章节。另外,还增加了关于安全性、微服务和DevOps的讨论,以及软件开发周期的GitHub部署。 首先,介绍如何将用户需求转换为软件架构需求,并探讨功能性需求和非功能性需求之间的差异。然后,探讨如何为基础设施选择云解决方案,以及如何在基于云的环境中管理应用程序。最后,讲解软件设计模式和各种软件方法,从而帮助你解决开发过程中遇到的常见问题。 学习完本书,你将能够构建并交付可满足组织业务需求的高度可扩展的企业应用程序。 主要内容 ● 使用多种技术克服现实工作中的架构挑战,并从设计层面解决问题 ● 应用分层架构、面向服务架构和微服务架构 ● 利用容器、Docker、Kubernetes和Blazor等工具高效管理微服务 ● 快速使用Azure工具和功能提供全局解决方案 ● 使用C# 9及其新功能编程和维护Azure功能 ● 了解什么情况下最适合使用测试驱动开发方法 ● 编写自动化功能测试用例 ● 充分利用DevOps原则实现CI/CD环境 -
C++20设计模式[俄]德米特里·内斯特鲁克(Dmitri Nesteruk)本书将C++标准的新版本应用于设计模式的实现。除了介绍传统的设计模式之外,本书还充实了对现代C++开发人员有用的新的设计模式和方法。本书融合了作者多年的研究和实践经验,从C++新特性的角度展示了如何将设计模式化繁为简,并以诙谐风趣的语言阐述各个设计模式的优缺点和应用场景。本书将提供一些现代C++技术案例,展示如何利用C++的新特性(比如,协程、模块等)将一些难题化繁为简。本书所有示例程序都可以直接投入生产环境,不过,为了便于阅读,部分示例程序做了适当的简化。通过阅读本书,你将学会: *如何使用创建型设计模式,比如构造器模式、工厂模式、原型模式和单例模式。 *如何实现结构型设计模式,比如适配器模式、桥接模式、装饰器模式、外观模式等。 *如何开发行为型设计模式,比如职责链模式、命令模式、迭代器模式、中介者模式等。 -
Web渗透测试技术郑天明本书为Web渗透测试知识普及与技术推广教材,不仅能为Web渗透测试技术的初学者提供全面、实用的技术和理论基础知识,而且能有效培养和提高读者的Web安全防护能力。本书所有案例均在实验环境下进行,并配套示例源码、PPT课件、教学大纲、习题答案、作者答疑服务。本书共分12章,通过DVWA、Pikachu等靶场以及在线CTF实战演练平台,分析Web漏洞原理,掌握漏洞利用方法,并结合CTF实战演练,使读者能够充分掌握Web渗透测试技术。本书重点介绍SQL注入、XSS、CSRF、SSRF、RCE、文件上传、文件包含、暴力破解、反序列化、Web框架、CMS等常见的Web漏洞及其防御手段。本书适合Web渗透测试初学者、Web应用开发人员、Web应用系统设计人员、Web应用安全测试人员,可以作为企事业单位网络安全从业人员的技术参考用书,也可以作为应用型本科、高职高专网络空间安全、信息安全类专业的教材。 -
Python数据结构与算法孙玉胜 陈锐 张志锋数据结构与算法是计算机、软件工程、大数据、人工智能等专业非常重要的一门专业基础和核心课程。本书内容全面,通俗易懂,所选案例典型,结构清晰,重点难点突出,所有算法均采用Python实现,示例可直接运行。本书配套示例源码、PPT课件、教学视频、教学大纲、作者QQ群答疑服务。本书共分8章,内容包括数据结构与算法概述,线性表,栈和队列,串、数组与广义表,树和二叉树,图,查找,排序。本书适合Python数据结构与算法的初学者、Python软件开发人员,可作为备考计算机专业研究生和软考人员学习数据结构与算法的参考书,也可作为高等院校计算机、软件工程、大数据等相关专业学生学习数据结构与算法的教材。 -
Efficient Linux命令行[美]丹尼尔·J. 巴雷特(Daniel J. Barrett)马晶慧本书将介绍一系列中高级命令的构建技巧,其中包括:选择或构建命令,帮助用户快速完成工作。高效运行命令,轻松浏览Linux文件系统。从简单的命令出发,构建强大且复杂的命令。通过文本文件的转换与类似于数据库的查询技术实现业务目标。通过Linux命令行实现鼠标点击的功能。 -
SRE原理与实践张观石 著这是一本从架构、开发、测试、运维全流程讲解如何进行软件可靠性工程建设的著作,它将帮助读者构建针对软件可靠性工程的完整的知识体系、工程体系和理论体系。本书作者是虎牙科技的SRE架构师,他基于20余年的架构、研发和运维经验,用4年时间反复打磨,代表中国的工程师总结了中国互联网企业的SRE方法和经验。本书得到了中国SRE奠基人、虎牙科技CEO以及华为、腾讯、阿里、B站、亚马逊等企业的10余位技术专家高度评价并一致推荐。本书参考传统可靠性工程及软件可靠性工程体系,把传统可靠性工程中的“六性”(可靠性、维修性、测试性、保障性、安全性、环境适应性)转化为互联网软件可靠性工程的6种能力(可靠性设计能力、观测能力、修复能力、保障能力、反脆弱能力、管理能力)。每一项能力都包括:互联网SRE体系中的概念、能力的设计、能力建设的原则与方法、能力的度量与改进,以及相应的实践案例。通过这6种能力把可靠性相关的工作组织起来,6种能力对应6个工作方向,不仅清晰地描绘出互联网软件可靠性工程体系的全貌,而且详细阐述了每一种能力的获得方法。本书基于传统可靠性和软件可靠性的研究成果,借鉴和应用它们的成熟理论和工程方法,结合互联网软件的实际情况并加以融合和改进,提出了一套符合互联网时代的软件可靠性工程方法。此外,本书还介绍了可靠性管理能力,对互联网软件开发团队、运维团队的技术领导者以及希望转型为可靠性工程师的传统运维人员、开发人员应该都有一定参考价值。 -
基于图像处理技术的推移质平衡输沙试验研究苗蔚推移质运动规律是河流动力学研究的核心问题之一,也是解决诸多水利工程实际问题的关键。经典的推移质运动理论建立了时均意义上的输沙率与水流强度之间的关系,而在颗粒尺度上深入揭示水沙耦合运动的特性,则是目前泥沙运动力学中推移质研究的前沿和重点。《基于图像处理技术的推移质平衡输沙试验研究》基于图像处理技术的自主研发,建立了可以实现水沙同步测量的平台;进行多组次的水槽试验,获取了高时空分辨率下的推移质运动图像;通过图像处理和统计分析,深入研究了颗粒尺度下推移质运动的特征,初步揭示了瞬时的水流-泥沙运动之间的相关关系。 -
AI编译器开发指南汪岩 著《AI编译器开发指南》结合专用AI加速器和GPGPU两类芯片架构,系统介绍了AI编译器的基本框架和开发流程,着重论述了在AI编译器开发过程中,针对这两类架构需要重点考虑的实现方法。全书共分为7章,内容涵盖了以TVM为代表的开源AI编译器实现分析和定制化方法,以及GPGPU编译器后端相关设计方法。在介绍AI编译器一般原理的同时,书中通过对开源编译器项目的源代码分析,使读者能通过实例对AI编译器开发过程有更直观的认识。 《AI编译器开发指南》填补了AI编译器开发类书籍的空白,可作为从事AI软硬件设计、开发人员的参考用书,也可作为普通高等院校智能科学与技术、计算机科学与技术等专业的本科生和研究生的教辅书籍。 -
编程卓越之道(美)Randall Hyde(兰德尔海德)卓越的代码需要利用现代编程语言的先进特性来实现软件功能。但软件最终都要运行在计算机上,无论它是采用哪种编程语言编写的。因此,卓越的软件代码也要充分地利用计算机中的各种资源,将计算机的性能发挥到极致。现代编程语言将这些知识隐藏了起来,容易被我们忽视。因此,《编程卓越之道》系列的第一卷《深入理解计算机》将重点放在软件执行背后的计算机底层上,深入浅出地介绍了计算机体系结构的方方面面,帮助我们理解如何才能写出在计算机上高效运行的代码。本书具体内容包括:数字、字符串及复合数据结构在计算机中的表示形式,以及如何在内存层次结构中访问这些数据;基本的二进制运算、位运算、布尔逻辑,以及如何设计完成运算的中央处理器指令集;输入/输出、大容量存储等丰富多彩的外设,以及把这些外设和计算机相连进行通信的各种总线技术。本书适合软/硬件开发人员及系统程序员、移动及嵌入式设备开发者、体系结构设计人员,以及高校计算机相关专业师生。 -
跨平台机器学习[意]迪诺·埃斯波西托(Dino Esposito), [意]弗朗西斯科·埃斯波西托(Francesco Esposito)著,周靖 译ML.NET 是面向.NET 开发人员的开源机器学习框架,可以帮助开发人员使用 C# 或 F# 创建自定义机器学习模型,从而将机器学习集成到 Web、移动、桌面、游戏和物联网应用中。《跨平台机器学习:ML.NET架构及应用编程》以ML.NET 为核心,介绍了架构及其基本知识,介绍了ML.NET 的八大机器学习应用场景:预测、分类、聚类、异常检查、预测、推荐、图像分类以及神经网络。 《跨平台机器学习:ML.NET架构及应用编程》适合数据工程师使用和参考。
