本周是2023年第12周,本周推荐书单均来自群友推荐。欢迎大家在群里推荐书籍,我们会在每周整理出来。也欢迎您的加入,可先加群主微信(微信号:gameboy1000)备注“加群”,群主会拉你进群。
The Night Fire 夜火 中文版
豆瓣评分:8.0
【美】迈克尔·康纳利
西方文学速递佳作鉴赏002
哈利·勃什初入刑警队的时候,有一位鼓舞人心的导师杰克·汤普森,杰克教导他认真对待每一个案件,并在心中点燃不屈不挠的火焰。现在,杰克·汤普森去世了,他的遗孀给了勃什一本杀人案的档案,二十年前杰克退休时从警察局带走了这份档案,这个案子从此无人问津。
勃什将这份档案交给蕾妮·巴拉德,请她帮忙一起查案。与此同时,蕾妮上夜班的时候发生了一起火灾,一名流浪汉被烧死在帐篷里。但经过调查后蕾妮发现,案情并没有那么简单。
与此同时,勃什同父异母的哥哥米克在法官被杀案为一个蒙受冤罪的精神异常者辩护,米克成功地为被告脱罪。勃什觉得案子没有结束,决意找出杀害法官的真凶,没想到法官被杀的案子竟以一种神奇的方式和火灾案联系在了一起……
ACM国际大学生程序设计竞赛:算法与实现
评分:8.9
《ACM国际大学生程序设计竞赛:算法与实现》内容简介:ACM国际大学生程序设计竞赛(ACM-ICPC)是国际上公认的水平最高、规模最大、影响最深的计算机专业竞赛,目前全球参与人数达20多万。《ACM国际大学生程序设计竞赛:算法与实现》作者将16年的教练经验与积累撰写成本系列丛书,全面、深入而系统地将ACM-ICPC展现给读者。本系列丛书包括《ACM国际大学生程序设计竞赛:知识与入门》、《ACM国际大学生程序设计竞赛:算法与实现》、《ACM国际大学生程序设计竞赛:题目与解读》、《ACM国际大学生程序设计竞赛:比赛与思考》等4册,其中《ACM国际大学生程序设计竞赛:知识与入门》介绍了ACM-ICPC的知识及其分类、进阶与角色、在线评测系统;《ACM国际大学生程序设计竞赛:算法与实现》介绍了ACM-ICPC算法分类、实现及索引;《ACM国际大学生程序设计竞赛:题目与解读》为各类算法配备经典例题及题库,并提供解题思路;《ACM国际大学生程序设计竞赛:比赛与思考》介绍了上海交通大学ACM-ICPC的训练及比赛,包括训练札记、赛场风云、赛季纵横、冠军之路、峥嵘岁月。
本丛书适用于参加ACM国际大学生程序设计竞赛的本科生和研究生,对参加青少年信息学奥林匹克竞赛的中学生也很有指导价值。同时,作为程序设计、数据结构、算法等相关课程的拓展与提升,本丛书也是难得的教学辅助读物。
Flutter之旅
本书从一个Android原生开发者的角度去认识和了解Flutter,本书作者以幽默生动的故事描写手法,记录在Flutter学习中所遇见的景色,并呈现给读者,主要内容包括:Flutter的安装与基本概念,Dart语法、组件与容器、布局基础、动画与手势、自定义组件、资源与路由、Flutter框架、Flutter与Redux、Flutter与iOS、插件开发、综合案例等。
JavaFX应用开发教程
本书介绍JavaFX的GUI程序设计的基本内容,精心挑选并深入探讨JavaFX中具有代表性的应用开发技术——JavaFX Media、JavaFX 3D、JavaFX Web、JavaFXSwing、JavaFX图表,以及JavaFX动画与视觉效果等。书中每章都有大量从简单到综合的示例,对重点示例阐述编程思想并归纳必要的结论和概念。本书的电子教案及源代码等配套资源均可在清华大学出版社官方网站免费下载。 本书可作为高等学校计算机、通信及自动化等专业的教材,也可作为相关专业技术人员的自学参考书。
Programming with Types
Programming with Types teaches you to design safe, resilient, correct software that’s easy to maintain and understand by taking advantage of the power of strong type systems. Designed to provide practical, instantly-useful techniques for working developers, this clearly-written tutorial introduces you to using type systems to support everyday programming tasks. In it, you’ll explore the impact types have on functions, inheritance, and composition, and you’ll take a close look at generics, which enable greater abstraction. You’ll also discover folding data structures and applying functions to containers with higher kinded types. Along the way, you’ll explore real-world use cases and practical examples in TypeScript as you build your skills from primitive types up to more advanced concepts like functors and monads.
what’s inside
An introduction to type systems and their benefits
Designing functions that don’t return values
Encoding text
Building data structures with arrays and references
Type composition
Function types
Type safety
Asynchronous functions
Subtyping
Object-oriented programming with types
Generic data structures and algorithms
UML面向对象设计基础
Meilir Page-Jones所著,包晓露、赵晓玲、叶天军、唐亚东翻译的《UML面向对象设计基础》是关于面向对象软件设计的基本概念、符号表示、术语、准则以及原理的书籍。
《UML面向对象设计基础》第一部分(第1章和第2章)介绍了面向对象的基本概念以及面向对象的发展史。第二部分(第3章至第7章)较全面地介绍了统一建模语言(Unified Modeling Language,UML),UML已成为描述面向对象设计符号的事实上的标准。第三部分(第8章至第14章)较深入地介绍面向对象设计的原理。本书最后一章(第15章)分析软件构件的特点,包括优点和缺点。
《UML面向对象设计基础》针对采用面向对象技术的程序员、设计人员、系统工程师或技术经理,无论您是面向对象技术的初学者,还是具有一定面向对象技术经验的高手,都将从本书中受益匪浅。
人人都该懂的量子力学
信息系统项目管理师考试辅导教程(第4版)
《信息系统项目管理师考试辅导教程(第4版)》是计算机技术与软件专业资格(水平)考试中的信息系统项目管理师级别的考试辅导指定教程。《信息系统项目管理师考试辅导教程(第4版)》内容涵盖了考试大纲规定的所有知识点,对考试大纲规定的内容有重点地进行了细化和深化。阅读《信息系统项目管理师考试辅导教程(第4版)》,就相当于阅读了一本详细的、带有知识注释的考试大纲。准备考试的人员可通过阅读本书掌握考试大纲规定的知识,掌握考试的重点和难点,熟悉考试方法、试题形式、试题的深度和广度、内容的分布,以及解答问题的方法和技巧等。
《信息系统项目管理师考试辅导教程(第4版)》可作为IT项目管理人员的工作手册,并可作为系统分析师、系统架构设计师考试的参考用书,也可作为软件设计师、数据库系统工程师和信息系统监理师技能进阶的学习用书,还可作为计算机专业教师的教学参考书。
打开心智
评分:8.5
心智,是我们对外部世界的认知和一切思维方式的集合,决定了人的信念、思考和行动。成长的本质,就是不断用新的认知打破旧的认知,重塑自己的心智模式。
深度思考践行者、成长类公号“L先生说”主理人李睿秋,带你探索心智的底层原理,搭建一套行之有效的成长系统,提供情绪、自驱、行动、学习、思考、创造六个方面的提升路径,从而获得更明晰的头脑,更平静的心态和更有主动权的人生——
停止精神内耗,应对生活的不确定性和疲惫。
走出信息茧房,拥有自主学习力。
把自律变成自驱。
果断行动,摆脱懒惰、畏难和拖延。
构建知识地图,打造终身受用的学习系统。
找到个人兴趣所在与立身之本。
……
科幻如何改变商业
评分:7.2
内容简介
科幻思考是全球商业大师的常识,新的商业机会总是诞生于科幻小说中。科幻思考作为一种不拘泥于过去、以新想法创造商业的方法而引起了人们的关注。创造出不存在于现实世界但又和现实世界有一定联系的、独属于自己的头衔,这样的思考过程就是科幻思考法。本书的目的就是通过使用科幻思考法,通过一步步的具体实践,引导读者构思出只属于自己的未来故事,并把它运用到不同的商业场景中去。
本书介绍的思考方法对大多数商务人士来说都是有用的,而且实操性很强,每个人都能轻易掌握。如果你是为事业烦恼,读了很多设计思考、艺术思考之类的书却总是无法实践,为此感到非常苦恼的商务人士;如果你是对公司定下的目标都是数字而对此感到非常厌倦的人;如果你是正在负责开发新业务并努力思考未来社会形态的人;如果你是正在苦恼未来社会公司该走向何方的经营者;如果你是从事城市规划并致力于长期图景构想的建筑师;如果你是想让孩子们思考更多未来的人,这本书就是你的必读之书。
[编辑推荐]
为什么科幻可以描绘出对现实世界产生巨大影响的景象呢?其秘密就在于“科幻独有的未来预测”。创造出不存在于现实世界但又和现实世界有一定联系的、只属于自己的头衔,这样的思考方式就是“科幻思考法”。《科幻如何改变商业》这本书为我们提供了一种思考问题的角度,让我们可以创造出仿佛科幻小说般的虚构头衔,并把它接续到现实的工作中去。
电子科技大学教授周涛电子科技大学教授周涛,科幻作家江波,中国作协科幻文学委员会副主任、中国科普作协副理事长陈楸帆,《经济学人·商论》执行总编辑吴晨,战略设计农场biotope公司CEO兼首席战略设计师佐宗邦威,早稻田大学商学院教授入山章荣,日本艺术家、设计师长谷川爱联袂推荐。
湛庐文化出品。
编程与类型系统
【关于本书】
本书旨在告诉你如何使用类型系统编写更好、更安全的代码。虽然大部分介绍类型系统的图书更加关注形式方面的讨论,但本书采用了偏向实用的做法。本书包含你在日常工作中可能遇到的许多示例、应用和场景。
【读者对象】
本书主要针对想要学习类型系统的工作原理以及使用类型系统来提高代码质量的程序员。你应该具备一些使用面向对象编程语言(如Java、C#、C++或JavaScript/TypeScript)的经验,还应该有一些软件设计经验。虽然本书的代码示例是基于TypeScript的,但是大部分内容是普遍适用的。事实上,本书的代码示例并非总是使用TypeScript特有的功能。在编写代码示例时,我尽可能让熟悉其他编程语言的程序员也容易理解它们。虽然本书会介绍各种技术来帮助你编写健壮的、可组合的、封装程度更好的代码,但是也假定了你知道为什么我们希望获得这些特性。此外,本书侧重类型系统的实际应用,因此涉及的数学理论较少,但是你应该熟悉基本的代数概念,如函数和集合等。
【本书的组织方式】
本书包含11章,涵盖类型编程的各个方面。
第1章介绍类型和类型系统,讨论它们为什么存在以及为什么有用。我们将讨论类型系统的类型,并解释类型强度、静态类型和动态类型。
第2章介绍大部分语言中都有的基本类型,以及在使用这些类型时需要注意的地方。常用的基本类型包括空类型、单元类型、布尔类型、数值类型、字符串类型、数组类型和引用类型。
第3章介绍组合,包括把类型组合起来定义新类型的各种方式,还介绍实现访问者设计模式的不同方式,并定义代数数据类型。
第4章讨论类型安全—如何使用类型来减少歧义以及防止错误。本章还介绍如何使用类型转换在代码中添加或移除类型信息。
第5章介绍函数类型,以及当我们获得了创建函数变量的能力后能够做些什么,还展示实现策略模式和状态机的不同方式,并介绍基本的map()、filter()和reduce()算法。
第6章以前一章为基础,展示函数类型的一些高级应用,包括简化的装饰器模式、可恢复的函数和异步函数。
第7章介绍子类型,并讨论类型兼容。我们会看到顶层类型和底层类型的应用,以及从子类型的角度看,和类型、集合和函数类型之间的关系。
第8章介绍面向对象编程的关键元素,以及什么时候使用每种元素,并讨论接口、继承、组合和混入。
第9章介绍泛型编程及其第一种应用—泛型数据结构。泛型数据结构把数据的布局与数据本身分隔开。迭代器支持遍历这些数据结构。
第10章继续介绍泛型编程,讨论泛型算法及迭代器的分类。泛型算法是能够在不同数据类型上重用的算法。迭代器用作数据结构和算法之间的接口,并且能够根据迭代器的能力启用不同的算法。
第11章介绍高阶类型、函子和单子的概念,以及如何使用它们,并为进一步学习提供一些建议。
本书中的各章以前面章节中的概念作为基础,故建议读者按顺序阅读。虽然如此,但是本书介绍的4大主题相对独立:前4章介绍基础知识;第5~6章介绍函数类型;第7~8章介绍子类型;第9~11章介绍泛型编程。
黑客简史:棱镜中的帝国
“黑客”,伴随着计算机和互联网而诞生,他们掌握着前沿的计算机和网络技术,能够发现并利用计算机系统和网络的弱点,他们的行为动机多样,因此我们必须对这一群体进行分解,认识他们及其技术的两面性——“黑客”中那些不断拓展技术边界、富于创造力的,和那些掌握技术、却利欲熏心的,就像硬币的两面,谁都无法清晰地辨别是非。相对于主流文化,黑客的行为方式和理念等形成了一种“亚文化”,与主流文化相互作用。
欢迎关注我的公众号“码农真经”,原创技术文章第一时间推送。