这是一本关于如何设计更整洁、更高效的软件架构的全面、实用性指南,阐述了软件架构师的角色和目标,软件架构设计的核心原则,如何为Web、数据库、客户端、控制台和嵌入式应用程序设计最佳的高级结构。全书分为六部分,涵盖了设计和架构、编程范式(结构化编程、面向对象编程、函数式编程)、设计原则(单一职责原则、开闭原则、里氏替换原则、接口隔离原则)、组件原则(重定位技术、组件内聚、组件耦合)、架构(独立性、划分边界、边界剖析、分层和边界、整洁架构、整洁嵌入式架构),以及实现细节和案例研究。本书是软件架构师、系统分析师、系统设计师、软件经理以及执行他人设计的程序员的之作。
本书作为Kali Linux的实用指南,涵盖了在使用Kali Linux进行渗透测试时涉及的各个阶段和相应的技术。 本书总计11章,主要内容包括渗透测试系统的搭建、信息收集、漏洞扫描、漏洞利用、提权、持久化、内网横向渗透、暴力破解、无线攻击、中间人攻击、社会工程学等内容。本书不仅介绍了Kali Linux的安装和配置方法,还详细讲解了Kali Linux中包含的众多安全工具的用法和原理,以及如何结合不同的工具进行有效的渗透测试。 本书通过大量的实例和截图,带领读者了解各种常见的Web安全漏洞和网络攻防技巧,提高读者的安全意识和安全技能。本书适合渗透测试初学人员阅读,也可供具有一定经验的安全从业人员温习、巩固Kali Linux实战技能。
本书由知名编译与操作系统专家海纳撰写,将沉淀20余年的Linux系统研究所得倾注书中。本书用不到1万行代码复现了Linux 0.12内核,打通了 古早 工具链障碍,模块实现环环相扣,带你穿透 迷雾 ,窥见Linux系统设计的绚丽 天光 。 本书共8章,从逻辑上分为四部分。第一部分(第1和2章)是基础知识,介绍开发内核所需的基础知识,包括开发环境和调试环境的搭建,以及i386保护模式等。第二部分(第3~6章)是核心模块,逐步实现进程、中断、系统调用、内存管理、字符设备驱动和块设备驱动等模块。第三部分(第7章)是文件系统,涵盖Minix文件系统、管理inode、管理普通文件、管理目录、文件链接、执行程序等内容。第四部分(第8章)是系统服务接口,介绍一些重要的函数,这部分不是内核的主要部分,但为了让shell程序正确地运行,这些函数也是必须实现的。
全书共五篇,以从易到难的顺序详细剖析了Linux内核开发的核心技术。“知识储备篇”介绍了Linux的数据结构、中断处理、内核同步和时间计算等内容,这些是理解后续章节的前提;之后通过“内存管理篇”“文件系统篇”“进程管理篇”详细介绍了Linux的三大核心模块;最后的“综合应用篇”则融合了前面诸多模块知识展示了Linux内核开发在操作系统、智能设备、驱动、通信、芯片、云计算和人工智能等热点领域的应用。书中的重点、难点均配有图表、代码和实战案例,力求直观、清晰。 学习本书的读者需要熟悉C语言,建议对Linux内核有一定了解。推荐初学者按照本书的编排顺序阅读,而熟悉Linux内核的读者可以跳过知识储备篇,直接从三大核心模块篇进行阅读。 本书深入浅出、配图丰富,可作为Linux初中级读者系统学习Linux内核开发的指导手册,也可作为从事嵌入
《ADS信号完整性仿真与实战 第2版》主要是以ADS软件为依托,结合信号完整性和电源完整性的基础理论以及实际案例,完整地介绍了使用ADS进行信号完整性以及电源完整性仿真的流程和方法,最终以实际的案例呈现给读者,具体内容包括信号完整性基本概念、ADS基本概念及使用、PCB材料和层叠设计、传输线及端接、过孔及过孔仿真、串扰案例、S参数及其仿真应用、IBIS与SPICE模型、HDMI仿真、DDR4/DDR5仿真、高速串行总线仿真、PCB板级仿真SIPro、PCB板级仿真PIPro等。 《ADS信号完整性仿真与实战 第2版》内容翔实,深入浅出,结合实际案例的应用进行讲解,实用性强,非常适合作为信号完整性以及ADS仿真入门教程,也可以作为资深仿真工程师的工具书,还可以作为大学电子、电路、通信、电磁场等专业的教学实验教材。
nbsp nbsp《架构基础:从需求到架构》根据各种企业级真实场景总结,提出合理的设计思路和解决方案,从需求、问题、解决方案、原理、设计方法、落地方案多个角度,给出架构设计方法。 《架构基础:从需求到架构》主要内容包括大型互联网架构设计的四大原则、分布式微服务架构设计、登录功能架构设计、用户安全架构设计、系统日志架构设计、系统攻防架构设计、系统消息架构设计、监控预警架构设计、关系型大数据架构设计、批处理调度架构设计、系统配置架构设计、企业级核心架构设计实战等,详细讲解了各种场景的架构方案。 《架构基础:从需求到架构》与任何编程语言无关,目的是提升读者的设计思维、培养读者的设计能力、开启读者的架构思维。同时,《架构基础:从需求到架构》也是一本设计方案指南,开发人员、设计人员、架构人员均可参
罗布乐思(Roblox)Studio 是融合了3D 引擎、社交、云存储的开发工具,是优质的游戏化教育工具,为各大编程赛事和夏令营提供技术支持。罗布乐思自2019 年被引进中国,一直深耕青少年市场,打造用户生产内容的平台,持续构建完全沉浸的数字社区,向着真正的 元宇宙 世界迈进。 本书是官方的罗布乐思开发指南。本书旨在帮助读者学会: (1)使用内置的地形和照明工具构建身临其境的自然环境; (2)建模和导入资源、模型、装备和纹理; (3)使用Lua 脚本编写游戏、动画和相机移动; (4)为交互元素设计 GUI; (5)通过跨平台游戏将个人游戏分享到多个平台。 本书语言简单易懂,内容循序渐进,并在每章结尾设置常见问题及其解决方案、测验和答案等环节,帮助读者时刻回顾与检验所学知识; 并且设置练习环节,鼓励读者独立练习,动手巩固开发技能。
本书以新版的华为网络技术职业认证 HCIA-Datacom(考试代码为H12-811)为基础,以 eNSP 模拟器为仿真平台,从行业的实际出发组织全部内容,全书共 19 章,主要内容包括 eNSP 的安装和使用,华为 VRP 系统,IP 地址的配置,静态路由,OSPF,交换机的基本配置,VLAN、Trunk 和 Hybrid,STP,实现 VLAN 间的通信,Eth-Trunk,ACL 的原理与配置,AAA 的原理与配置,NAT,网络服务与应用,WLAN,广域网技术,网络管理与运维,IPv6,网络编程与自动化。 本书既可以作为华为 ICT 学院的配套实验教材,用来增强学生的实际动手能力,也可以作为计算机网络相关专业的实验指导书,还可以作为相关企业的培训教材,同时对于从事网络管理和运维的技术人员来说,也是一本很实用的技术参书。
系统编程是指编写系统软件,其代码在底层运行,直接跟内核和核心系统库对话。 《Linux系统编程(第 2版)》是一本关于Linux系统编程的教程,也是一本介绍Linux系统编程的手册,还是一本如何实现更优雅更快代码的内幕指南。全书分为11章和2个附录,详细介绍了Linux系统编程基本概念、文件I/O、缓冲I/O、高 级文件I/O、进程管理、高 级进程管理、线程、文件和目录管理、信号和时间等主题。附录给出了gcc和GNU C提供的很多语言扩展,以及推荐阅读的相关书目。 《Linux系统编程(第 2版)》的作者是Linux内核专业人士,多本技术图书的作者。《Linux系统编程(第 2版)》需要在C编程和Linux编程环境下工作的程序员阅读,对于想要巩固基础或了解内核的高 级编程人员,《Linux系统编程(第 2版)》也很有参考价值。
《RHCSA/RHCE8红帽Linux认证学习教程》从零基础开始讲解,系统介绍了RHCE8的相关知识,以帮助读者快速了解及熟练掌握RHCE8的相关操作,是一本高品质的RHCE认证的学习书籍。 《RHCSA/RHCE8红帽Linux认证学习教程》分为9篇,共35章。第1篇主要介绍基本配置;第2篇主要介绍用户及权限管理;第3篇主要介绍网络相关配置;第4篇主要介绍存储管理;第5篇主要介绍系统管理;第6篇主要介绍软件管理;第7篇主要介绍安全管理;第8篇主要介绍容器管理;第9篇主要介绍自动化管理工具ansible的使用。 《RHCSA/RHCE8红帽Linux认证学习教程》适用于希望通过RHCE(红帽认证工程师)考试的读者学习,也可以作为培训班的教材使用。
内容简介这是一本能指导零计算机基础的读者轻松理解计算机软硬件和操作系统工作原理,从而自己动手从0到1编写出一个操作系统的著作。作者在操作系统领域深度耕耘20余载,不仅一直奋斗在百度等企业一线,而且一直致力于操作系统的教育和布道,希望能帮助和指导越来越多的人,尤其是青少年,能从学生时代开始学习操作系统,能从底层原理真正理解操作系统,改变我国基础软件受制于人的现状。本书不仅是作者悟透操作系统本质、厚积薄发的成果,而且是他将复杂的操作系统原理化繁为简、举重若轻,成功指导自己9岁的孩子从0到1编写出一个操作系统的过程的全面复盘和复现。本书驱散了操作系统的迷雾,让操作系统不再神秘和高不可攀,让每一个怀揣操作系统梦的中国人都能理解并实现自己的操作系统。全书一共14章,逻辑上分为上下两篇。上篇(第1~5
操作系统目前已成为我国 卡脖子 的关键技术之一,这对操作系统的教材建设提出了新的要求。首先,教材需要体现操作系统的核心原理与设计,帮助读者构筑系统性的认识;其次,教材需要反映国际研究前沿,帮助读者开拓新思路;*后,教材需要反映工业界实践,不可陷入纸上谈兵的陷阱。 作为操作系统教材的新尝试,本书融合了作者的教学经验与工业实践经验,以三个 面向 为导向,即面向经典基础理论与方法,面向国际前沿研究,面向*新工业界实践,深入浅出地介绍操作系统的理论、架构、设计方法与具体实现。本书将原理与实现解耦,从具体问题导出抽象概念,然后分析实现方法。全书内容以ARM架构为主,x86架构为辅;以微内核架构为主,同时兼顾宏内核与外核等架构。 除纸质版教材外,本书还配有网络章节、在线社区和课程实验。与本书配套的微内
这是一本从实战角度介绍FastAPI web开发的入门与进阶型技术书。本书没有过多的理论介绍,完全从一线工作角度入手,介绍日常web开发需要掌握的相关知识。本书共分为4篇16章: 第1篇是基础篇,主要介绍FastAPI的基础知识,包括FastAPI的基本信息、安装使用、常规操作、中间件、数据库相关内容。作为初学者,掌握这部分内容就可以快速上手使用FastAPI,处理各种日常问题。 第二篇是进阶篇,主要围绕与FastAPI相关的高级技能展开,包括异常处理、功能扩展、安全认证、性能、测试等相关内容。 第三篇是实战篇,主要从案例的角度对FastAPI在典型应用场景中的落地进行分享,包括短链应用、websocket、基于公众号的挂号系统等应用场景。 第四篇是部署篇,这部分重点介绍如何实现FastAPI的自动化部署,这数据高阶人员技能。本篇提供了三种自动化部署方式。
本书介绍了嵌入式Linux系统开发过程中,从底层系统支持到上层GUI应用的方方面面,内容涵盖Linux操作系统的安装及相关工具的使用、配置,嵌入式编程所需要的基础知识(交叉编译工具的选项设置、Makefile语法、ARM汇编指令等),硬件部件的使用及编程(囊括了常见硬件,?热?UART、I*IC、LCD等),U-Boot、Linux内核的分析、配置和移植,根文件系统的构造(包括移植busybox、glibc、制作映象文件等),内核调试技术(比如添加kgdb补丁、栈回溯等),驱动程序编写及移植(LED、按键、扩展串口、网卡、硬盘、SD卡、LCD和USB等),GUI系统的移植(包含两个G UI系统:基于Qtopia和基于X),应用程序调试技术。 本书从**简单的点亮一个LED开始,由浅入深地讲解,使读者**终可以配置、移植、裁剪内核,编写驱动程序,移植GUI系统,掌握整个嵌入式Linux系统的开发方法。 本书由浅入深
本书为Linux之父林纳斯 托瓦兹的自传。书中以林纳斯 托瓦兹对人生和社会走向的独特理解(生存、社会秩序、娱乐)为线索,在讲述林纳斯 托瓦兹成长经历的同时,阐述他对技术、自由、信息共享以及创造激情的体会与感悟,以及黑客精神与商业现实之间的冲突的深入思考,描绘出了以 自由与激情 为主导价值和内在驱动的黑客人生信仰模式,是了解林纳斯成功之路与人生哲学,以及Linux操作系统幕后故事的佳作。 本书适合计算机相关从业者阅读,也作为对Linux系统、黑客精神感兴趣的读者的参考资料。
《鸿蒙应用开发从零基础到实战 始于安卓,成于鸿蒙(视频 案例 应用版)》基于编者20多年 的教学实践和软件开发经验,用通俗易懂的语言、丰富实用的案例,从鸿蒙初学者容易上手的角度循序 渐进地讲解了鸿蒙应用开发的基础知识。全书共12章,主要内容涵盖鸿蒙应用开发的项目生成及相关 开发环境的建立、展示App页面内容的HML语言、渲染App页面样式的CSS语言、控制App页面行为的 JavaScript语言,还包括计算属性与侦听属性、基础综合案例(待办事项和影院订票页面)的制作、App应 用的生命周期和页面的生命周期、自定义组件及组件的生命周期、访问系统设备的接口、数据存储与网 络访问以及项目实战 网上书城App制作等。 本书根据学习鸿蒙应用开发所需知识的主脉络搭建内容,采用 案例驱动 视频讲解 代码调试 相 配套的方式,向读者提供了鸿蒙应用开发
本书基于Windows 10和Windows Server 2016编写,深入解析Windows操作系统的系统架构、进程、线程、内存管理等知识,旨在帮助读者了解Windows 10和Windows Server 2016操作系统内部工作原理,使之在针对Windows平台开发应用程序时,可以更好地理解不同设计机制间的关系。 本书先介绍Windows的基本概念和工具以及Windows的架构和主要组件,然后详细介绍进程和作业、内存管理、I/O系统等内容,*后介绍Windows内置的安全机制以及用于阻止滥用的各种缓解措施。 本书辅以大量实验,并给出了具体步骤,可供读者自行尝试,让他们通过内核调试器、Sysinternals工具和专为本书内容开发的其他工具一窥Windows的工作原理,进而能够将这些知识应用于改进应用程序设计、调试以及系统性能和支持。 本书适合希望了解Windows 10和Windows Server 2016操作系统内部工作原理的开发者、系统管理员及安全研
本书对Linux命令行进行详细的介绍,全书内容包括4个部分,*部分由Shell的介绍开启命令行基础知识的学习之旅;第二部分讲述配置文件的编辑,如何通过命令行控制计算机;第三部分探讨常见的任务与工具;第四部分全面介绍Shell编程,读者可通过动手编写Shell脚本掌握Linux命令的应用,从而实现常见计算任务的自动化。通过阅读本书,读者将对Linux命令有更加深入的理解,并且可以将其应用到实际的工作中。 本书适合Linux初学人员、Linux系统管理人员及Linux爱好者阅读。
本书首先介绍Dubbo的简史、后续的规划和整体架构大图;接着介绍Dubbo环境配置,并基于Dubbo开发*款应用程序;然后介绍Dubbo内置的常用注册中心的实现原理,Dubbo扩展点加载的原理和实现,Dubbo的启动、服务暴露、服务消费和优雅停机的机制,Dubbo中RPC协议细节、编解码和服务调用实现原理,Dubbo集群容错、路由和负载均衡机制,Dubbo的扩展点相关知识,Dubbo高级特性的实现和原理,Dubbo常用的Filter的实现原理,Dubbo中新增etcd3注册中心的实战内容和Dubbo服务治理平台的相关知识;*后介绍Dubbo未来生态和Dubbo Mesh的相关知识。