软件与程序设计
-
C++新经典王健伟本书是一部详细讲解C 模板与泛型编程知识的书,针对的是希望系统学习C 模板与泛型编程、元编程相关开发知识的中高级C 开发者,所讲解的知识具备一定的难度,书籍包含纸质图书以及教学源代码文件。编写初衷是帮助读者解决各种模板与泛型编程中的语法问题,以免在阅读他人所写的泛型编程代码(如C 标准库代码、Boost库代码)时磕磕绊绊甚至进行不下去。此外,书中也会对一些比较有商业价值的源码进行适当的分析和讲解,以进一步提高读者的实战能力,更好的让读者利用模板与泛型编程技术编写可复用的高质量代码以及供第三方开发者使用的接口库。 书籍有如下比较明显的特点:①注重细节,注重基础;②讲解难度适宜,范例由浅入深;③内容比较全面;④支持C 11/14/17新标准。 全书共分7章:第1章搭建C 编程环境,第2~3章讲述模板开发的基础和进阶知识,第4章介绍C 标准库中常用的各种模板,第5~6章详细通过众多范例展示萃取技术、策略技术以及元编程,第7章动手编写STL中的list容器和对应的迭代器实现源码以期望读者对list容器的实现细节有清晰掌握并触类旁通。 -
Google软件工程[美]提图斯·温特斯,[美]汤姆·曼什雷克,[美]海勒姆·赖特你将学习到软件组织在设计、架构、编写和维护代码时应牢记的三个基本原则:时间如何影响软件的可持续性,以及如何使代码随着时间的推移而具有韧性。模如何影响工程组织内软件实践的可行性。在评估设计和开发决策时,一位典型的工程师需要做出哪些权衡。 -
剑指Offer何海涛本书全面、系统地总结了在准备程序员面试过程中的数据结构与算法。本书首先详细讨论整数、数组、链表、字符串、哈希表、栈、队列、二叉树、堆和前缀树等常用的数据结构,然后深入讨论二分查找、排序、回溯法、动态规划和图搜索等算法。除了介绍相应的基础知识,每章还通过大量的高频面试题系统地总结了各种数据结构与算法的应用场景及解题技巧。本书适合所有正在准备面试的程序员阅读。无论是计算机相关专业的应届毕业生还是初入职场的程序员,本书总结的数据结构和算法的基础知识及解题经验都不仅可以帮助他们提高准备面试的效率,还可以增加他们通过面试的成功率。 -
Go程序员面试笔试宝典饶全成 欧长坤 楚秦等编著 猿媛之家 组编Go语言是一门既年轻、简捷,又强大、高效、充满潜力的服务器语言。《Go程序员面试笔试宝典》使用浅显易懂的语言与大量流程图,深入介绍了Go语言。全书分为三大部分:第1部分(1~5章)为Go语言基础。介绍了Go 语言中基础、常见的逃逸分析、defer 延迟语句、切片、数组、散列表、通道和接口。第2部分(6~11章)为Go语言类库。介绍了Go语言自身的类库,如unsafe、context、错误、计时器、反射和sync包。第3部分(12~14章)为Go语言高级特性。介绍了调度、内存分配、GC,从原理到源码分析,逐渐深入。这三大部分是runtime 中重要、核心的内容,理解了这三者的原理,才算是对Go语言有了一个比较深入的理解和掌握。 《Go程序员面试笔试宝典》是一本计算机相关专业毕业生面试笔试求职参考书,同时也适合有一定工作经验的开发工程师进一步提升自身水平。 -
ARM64体系结构编程与实践奔跑吧Linux社区本书旨在详细介绍ARM64体系结构的相关技术。本书首先介绍了ARM64体系结构的基础知识、搭建树莓派实验环境的方法,然后讲述了ARM64指令集中的加载与存储指令、算术与移位指令、比较与跳转等指令以及ARM64指令集中的陷阱,接着讨论了GNU汇编器、链接器、链接脚本、GCC内嵌汇编代码、异常处理、中断处理、GIC-V2,后剖析了内存管理、高速缓存、缓存一致性、TLB管理、内存屏障指令、原子操作、操作系统等内容。本书适合嵌入式开发人员阅读。 -
Excel+Python 飞速搞定数据分析与处理[瑞士]费利克斯·朱姆斯坦(Felix Zumstein)在如今的时代,大型数据集唾手可得,含有数百万行的数据文件并不罕见。Python是数据分析师和数据科学家的语言。通过本书,即使完全不了解Python,Excel用户也能够学会用Python将烦琐的任务自动化,显著地提高办公效率,并利用Python在数据分析和科学计算方面的突出优势,轻松搞定Excel任务。你将学习如何用pandas替代 Excel函数,以及如何用自动化Python库替代VBA宏和用户定义函数等。本书既适合Excel用户,也适合Python用户阅读。 -
小学生C++趣味编程潘洪波一本难度适当、易学易教的教材是开展小学信息学教学的重要一环。本书选取 80多个贴近小学生学习生活的例子,结合小学生的认知规律,激发孩子兴趣,以程序为中心,适当地弱化语法。本书利用流程图厘清思路,并提供多种算法实现举一反三,让小学生在学习 C 语言编程的过程中,学会运用计算思维解决问题。本书循序渐进、层层铺垫地依次呈现各个知识点,深入浅出,让学生在探索中体会到编程的乐趣和魅力。 本书适合小学四年级及以上学生阅读使用,可作为全国青少年信息学奥林匹克普及组竞赛教材,也可作为信息教师学习 C 语言的入门教材。 -
少儿计算思维养成记包若宁,卜文远,傅鼎荃 等编著 张国强 审计算思维是信息社会创新型人才的素养。本书是少儿计算思维养成过程的忠实记录:中科院计算所三位研究员组织了小SIGMA 数学兴趣亲子班,教授孩子们数学思维与计算思维;孩子们在学习时编程序、写心得、记笔记,终汇集成册,形成本书。本书包含10讲编程基础和15讲动手实例,讲述6个基本计算思维,包括从简单的做起、逐级逼近、带剪枝的枚举等,具有3大特色:以计算思维为纲,内容深刻;以少儿视角行文,浅白易懂;以动手促进动脑,手脑并重。这是一本“孩子写给孩子看”的书,尤其适合中小学生阅读自学。家长和老师也可以本书作教材,以书中的“教师点评”为导读,按“背景知识->基本思路->编程步骤”顺序讲授,后对比、检验实验结果。让孩子们在少儿时期建立正确的计算思维,将使其终生受益。 -
昇腾AI处理器CANN架构与编程苏统华,杜鹏,周斌 著《昇腾AI处理器CANN架构与编程/华为智能计算技术丛书》专注昇腾AI处理器和昇腾AI异构计算架构CANN,《昇腾AI处理器CANN架构与编程/华为智能计算技术丛书》共7章。首章介绍昇腾AI处理器硬件架构。首先介绍昇腾AI处理器的达芬奇架构,为后续章节提供了计算单元、存储系统、控制单元、指令集等知识储备,然后介绍基于该架构分别面向训练和推理的昇腾AI处理器,最后介绍围绕昇腾AI处理器的Atlas系列硬件产品。第2章介绍昇腾AI异构计算架构CANN。涵盖CANN概述、昇腾计算图、训练和推理两种场景运行架构、开发环境安装及全流程开发和全流程开发工具链MindStudio等重要内容。第3章介绍CANN自定义算子开发,以示例的方式介绍TBEDSL、TBETIK和AICPU三种算子开发方式。第4章介绍昇腾计算语言。首先讲述AscendCL的编程模型,包括线程模型和内存模型,接着介绍AscendCL提供的五大开放能力,包括资源管理、模型加载与执行、算子能力开发和高级功能等。第5章介绍基于CANN的通用AI模型训练方法。以模型训练的全流程作为起始,对比了主流深度学习框架的异同,然后讲述基于CANN的模型训练方法和训练辅助工具的使用方法。第6章介绍基于CANN的模型部署方法。讲述模型部署全流程以及数字视觉预处理模块、模型转换工具、模型压缩工具的使用方法。第7章介绍两个典型行业应用实例。围绕个性化影视推荐系统和智能巡检机器人,提供全流程的完整开发实例。《昇腾AI处理器CANN架构与编程/华为智能计算技术丛书》是昇腾AI处理器架构、昇腾AI异构计算架构与编程的官方教材,可以作为高校人工智能、智能科学与技术、计算机科学与技术、软件工程、电子信息工程、自动化等专业的教材,也可以作为从事人工智能系统开发的科研和工程技术人员的参考用书。 -
C语言编程思想与方法尹宝林 著本书是一本讲授使用C语言进行程序设计的实用参考书。它以C语言为工具,讲授程序设计的过程和方法。从C语言和C程序的基本要素以及程序设计的基本方法开始,循序渐进地引入对程序设计专业化的要求和相关的知识。从增强读者的感性认识入手,通过多角度对例题的分析,示范对关键知识和技术的运用,通过对关键内容在不同层次上的适当重复,深化读者对概念的理解和掌握。
