伊利诺伊大学云计算专项课程及其参考学习书籍介绍

作者:

日期:2022-10-28

伊利诺伊大学云计算专项课程的基本信息

如今的云计算系统,无论是开源的还是公司内部使用的,都是使用一套通用的核心技术、算法和设计理念构建的,所有这些都以分布式系统为中心。了解云计算的这些基本分布式计算“概念”。

其中一些概念包括:云,MapReduce,键值/ NoSQL存储,经典分布式算法,广泛使用的分布式算法,可扩展性,趋势区域等等!了解这些系统如何从内到外工作。使用这些概念和提供的家庭作业练习来弄脏你的手。在编程任务中,在C++编程语言中提供的模板代码(程序)中实现其中一些概念。需要具有C++经验。该课程还包括对来自工业界和学术界的领先研究人员和管理人员的采访。

通过本课程您将获得的技能

  • 分布式算法
  • 分布式计算
  • C++
  • 云计算

《具有安全性和可扩展性的云计算: 概念和实践(Cloud Computing with Security and Scalability. : Concepts and Practices)》

《具有安全性和可扩展性的云计算: 概念和实践》

本书为读者提供了云计算的概述,从大型机和早期网络协议的历史背景开始,导致当前的问题,如硬件和系统安全,性能,物联网,边缘计算和医疗保健等新兴领域。读者将受益于对云计算使用和底层架构的深入讨论。作者仔细解释了云计算的“原因和方法”,因此工程师会发现这本书是该主题的宝贵信息来源。本书第三版包括有关云计算可扩展性的新材料,以及使用动态云基础架构的最佳实践,以及具有成本优化的云运营管理。这个新版本增加了几个新的云安全示例和分析,包括ARM架构和https协议。
本书的主要内容包括:为从事将内部应用程序迁移到公共云的软件开发人员提供实用指导;
a、为 IT 经理描述如何改进其云计算基础架构;
b、包括云操作模型的安全问题;
c、使用几个案例研究来说明使用云的“原因和方法”;
d、提高云计算可扩展性的示例和选项;

《分布式算法:一种直观的方法(Distributed Algorithms : An Intuitive Approach)》

《分布式算法:一种直观的方法》

新版本的分布式算法指南,强调示例和练习,而不是数学模型的复杂性。


本书为学生和研究人员提供了分布式算法指南,强调示例和练习,而不是数学模型的复杂性。它避免了数学论证,这通常是学生的绊脚石,教授算法思维而不是证明和逻辑。这种方法允许学生在相对较短的时间内学习大量算法。通过简短的非正式描述,启发性的示例和实践练习来解释算法。这些示例和练习使读者能够从不同的角度直观地理解算法。还包括证明草图,争论算法的正确性或解释基本结果背后的想法。书中介绍的算法大部分是“经典”,之所以选择它们,是因为它们阐明了分布式系统的算法设计或分布式计算和并发编程中的关键问题。


这个最新的第二版已经经过大幅修订。关于分布式事务的新章节提供了数据库事务的最新处理以及事务内存的重要发展领域。关于安全性的新章节讨论了两个令人兴奋的新主题:区块链和量子密码学。这个新版本添加了涵盖回滚恢复、容错终止检测和共享内存共识等主题的部分。附录提供了许多算法的伪代码描述。问题解答和幻灯片可供教师使用。
分布式算法可用于计算机科学专业高级本科生或研究生的课程,或作为该领域研究人员的参考。

《分布式算法(Distributed Algorithms)》

《Distributed Algorithms》

《分布式算法》

在《分布式算法》中,作者Nancy Lynch 为设计、实现和分析分布式算法提供了蓝图。她将她的书面向广大读者,包括学生、程序员、系统设计师和研究人员。


分布式算法包含该领域最重要的算法和不可能结果,所有这些都在一个简单的自动机理论设置中。这些算法被证明是正确的,并且根据精确定义的复杂性测量值分析其复杂性。涵盖的问题包括资源分配,通信,分布式进程之间的共识,数据一致性,死锁检测,领导者选举,全局快照等等。


材料根据系统模型进行组织 - 首先通过时序模型,然后通过进程间通信机制进行组织。系统模型的材料被隔离在单独的章节中,以便于参考。
演示是完全严谨的,但足够直观,可以立即理解。本书让读者熟悉了该领域的重要问题、算法和不可能性结果:读者可以在实践中发现问题时识别问题,应用算法来解决它们,并利用不可能性结果来确定问题是否无法解决。本书还为读者提供了基本的数学工具,用于设计新的算法和证明新的不可能结果。此外,它还教读者如何仔细推理分布式算法 - 正式对它们进行建模,为它们所需的行为设计精确的规范,证明它们的正确性,并用现实的度量来评估它们的性能。

本书有中文翻译版本;

《学习C编程:轻松学习最强大和最通用的编程语言的初学者指南(Learn C Programming : A beginner's guide to learning the most powerful and general-purpose programming language with ease)》

《学习C编程:轻松学习最强大和最通用的编程语言的初学者指南》

开始用 C 语言编写简单程序,同时学习核心编程概念;
本书的关键特性:
学习基本的 C 概念,如变量、数据结构、函数、循环和指针
掌握构成许多现代编程语言
基础的核心编程方面知识

使用此新版本中,使用更新的代码示例并详细介绍数组声明和初始化;同时这本书籍描述许多现代编程语言(如C++、C#、JavaScript 和 Go)的基础,C 被广泛用作系统编程语言以及嵌入式系统和高性能计算。有了这本书,你将能够立即跟上C语言的步伐。


本书将带您了解基本的编程概念,并向您展示如何在 C 编程语言中实现这些概念。在本书中,您将创建和运行演示基本 C 概念的程序,例如具有函数的程序结构、控制结构(如循环和条件语句)以及复杂的数据结构。随着您的进步,您将掌握代码内文档、测试和验证方法。这个新版本扩展了枚举、数组和其他C功能的使用,并根据本书中使用的代码提供了两个工作程序。更重要的是,本书使用了故意失败的方法,你将开发一个工作程序,然后故意打破它,看看会发生什么,从而学习如何在错误发生时识别它们。


在本C编程书结束时,您将已经掌握了基本的C编程技能,这些技能可以轻松应用于其他编程语言,并为您作为程序员的构建奠定了坚实的基础。
本书的用途 如果你是一个绝对的初学者,对操作计算机有基本的了解,本书将帮助你学习成为一名成功的C程序员需要知道的最基本的概念和实践。如果你是一个有经验的程序员,你会发现书中涵盖的全部C语法以及常见的C习语都很有用。