分享最近阅读的书藉清单(三) - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术题时复制粘贴 AI 生成的内容
mascteen
V2EX    程序员

分享最近阅读的书藉清单(三)

  •  
  •   mascteen
    janegwaww 2022-02-14 10:26:23 +08:00 2051 次点击
    这是一个创建于 1334 天前的主题,其中的信息可能已经有所发展或是发生改变。
    # Table of Contents

    1. [分享最近阅读的书藉清单(三)](#org35c5689)
    1. [Category Theory for Programmers](#org871da17)
    2. [The Practice of Programming](#orgca75979)
    3. [Introduction to Game Programming (C++)](#org733cafe)
    4. [Javascript For Impatient Programmers](#org515b9fc)
    5. [Deep Javascript](#org9fd200f)
    6. [The Art of PostgreSQL](#org45d4a41)
    7. [The Passionate Programmer: Creating a Remarkable Career in Software Development](#org9705293)
    8. [Remote: Office Not Required](#orgae3528f)
    9. [The Clean Coder:A Code of Conduct for Professional Programmers](#org059bf89)
    10. [Learn C++](#org3d26c49)
    2. [写在后面](#org06de4ff)



    <a id="org35c5689"></a>

    # 分享最近阅读的书藉清单(三)

    > 一个经常阅读的人在他死之前已经活了上千次了……一个从不阅读的人只活了一次。
    >
    > &#x2013;乔治RR马丁

    > 一个人与另一个人交流的最佳方式是通过故事。
    >
    > &#x2013;唐纳德高德纳

    这些都是在行业中的好书藉或好内容,我想把这些优秀的东西分享出来,并赋上自己的一些主观想法,
    能让更多人知道并从中受益。这里只是做一个引荐,精彩需要你自己亲自拜读从中感受。


    <a id="org871da17"></a>

    ## Category Theory for Programmers<sup><a id="fnr.1" class="footref" href="#fn.1">1</a></sup>

    写给程序员的范畴论

    > 简单并不是先于复杂,而是紧随其后。
    >
    > &#x2013;艾伦佩利斯

    - 我的结论

    这本书有一个配套课程<sup><a id="fnr.2" class="footref" href="#fn.2">2</a></sup>。范畴论(英语:Category theory )是[数学]( https://zh.wikipedia.org/wiki/%E6%95%B0%E5%AD%A6 )的一门学科,以抽象的方法处理数学概念,将这些概念形式化成一组组的“物件”及[“态射”]( https://zh.wikipedia.org/wiki/%E6%80%81%E5%B0%84 )。<sup><a id="fnr.3" class="footref" href="#fn.3">3</a></sup>
    范畴论运用最广是在 Haskell 这个语言中,而 Bartosz Milewski 写了这本书把它推广开来。计算机行业每过几年会出现一些新的概念,例如面向对象编程,函数式编程到
    范畴论,总能给自己一些新鲜感,他能如何影响到我,如何影响行业,以至于是否会影响到世界,可能很难得知;我自己之前很看好前端,但当我有一定积累之后,前端的人才
    也越来越多了,失去了一定的议价能力。我不清楚范畴论这个概念是否会影响编程界,因为每年都有好多新的概念冒出来,例如这几年的 WebAssamble ,Container ,No-Code,
    语言更是数不胜数了,范畴论是否值得去学习认识下,但是不管怎样,接受新事物,认识新事特,学习新事物也是这个行业的一部份。


    <a id="orgca75979"></a>

    ## The Practice of Programming<sup><a id="fnr.4" class="footref" href="#fn.4">4</a></sup>

    程序设计实践

    > 如果人类能从历史中吸取教训,它会给我们什么教训!但是激情和党派别蒙蔽了我们的双眼,经验所发出的光是茎上的一盏灯,只照亮我们身后的海浪!
    >
    > &#x2013;塞缪尔泰勒柯勒律治《回忆》

    - 我的结论

    当我们有一些想法,或者做一些事情的时候,总希望能做的更好;编程也一样:我是否为一个可能错误的算法花了太多时间;我使用的数据结构是否过于复杂了;
    测试一个程序但错过了一个明显的问题;花了一天时间找到的 BUG 可能留心点 5 分钟就能找到了;需要一个程序速度提升 3 倍并减少内存的使用&#x2026;。
    跟理论不同的是这些很难从书本中习得,只能通过实践不断积累;而初学者的代码总是充满了僵硬的语法和无全局观,本书从三个准则讲述如何写好一个软件:
    1.简单性,保持程序的简短和可管理; 2.清晰性,代码是通俗易懂的; 3.通用性,尽可能让代码能在更多不同环境中运行,这些都是基于多年的实践经验和大型
    软件的维护。虽然不管是什么都不可能做到完美,或者说能达到一个标准就可以了,而编程中的完美标准就是那三个准则,本书围绕三个准则具体在语法风格,
    算法数据结构,设计,API ,Debug ,测试,性能,移植等中实践,使你尽量能在脱离了特定语言,操作系统和编程范式上实现代码的最大优化。


    <a id="org733cafe"></a>

    ## Introduction to Game Programming (C++)<sup><a id="fnr.5" class="footref" href="#fn.5">5</a></sup>

    游戏编程介绍( C++)

    > 这就是重点:不是为了卖东西;也不是随潮流;而是因为热爱一些东西;做一些我们创作者喜欢的东西,这是我们在制作游戏时应该有的核心感觉。
    >
    > &#x2013;茂る 本, 谈及宝可梦的创造

    - 我的结论

    这是免费的游戏编程公开课。游戏被称为第九艺术,他能让你体验在现实中不可能的完成的事,更是让你沉浸在其中,大有取代其他所有娱乐方式之势。他有美妙的音乐、
    有引人入胜的剧情,有切身体验的交互,有志同道合的朋友&#x2026;。但是如果你想创造自己的乐园,想让更多人体验你创造的世界,那游戏将是你最好的选择;而本公开课就是
    游戏编程入门,他主要是实现你的创意,至于是什么创意不是本课的内容。而这门课给我最大的感受是老师的讲课非常标准,让我这个英语初学者都能听的懂,即便内容不
    是非常深入,但是听的懂,听的舒服有时候比什么都重要,因为听课原本就是枯燥无味的。本门课用到的编程语言是 C++,而游戏编程运用最普遍的语言也是 C++,但是也
    只是介绍了个基础内容,更加具体的学习可以到[Learn C++]( https://www.learncpp.com/ )和[cpp refernce]( https://en.cppreference.com/w/ ),[cplusplus]( http://cplusplus.com )等。


    <a id="org515b9fc"></a>

    ## Javascript For Impatient Programmers<su><a id="fnr.6" class="footref" href="#fn.6">6</a></sup>

    写给不耐烦程序员的 Javascript

    > 要是咱们,得罪了请原谅。
    >
    > 咱们本来是,一片的好意,
    >
    > 想要显一显。薄薄的伎俩,
    >
    > 那才是咱们原来的本意。
    >
    > &#x2013;威廉莎士比亚,仲夏夜之梦

    - 我的结论

    不知道是因为 Javascript 过于流行还是因为我自己本身就是从 Javascript 入行的,目前我的榜单上单是 Javascript 入门书籍就已经有三本了,
    一本是[《权威指南》]( https://book.douban.com/subject/10549733/ ),另一本是[《雄辩的 Javascript 》]( https://tiglapiles.github.io/article/src/recent_reading.html #org5a9d340),还有就是现在这一本;要我说这三本有什么需别,可能就是权威指南偏向于纯前端的技术,
    有涉及前端的方方面面;雄辩的 JS 偏向于基于 JS 的软件设计,而这本聚焦于语言本身,以及之后便于对语言的深挖,选择哪本根据个人需求。至于
    为什么是叫写给不耐烦程序员那是因为本书可以让你快速开始 Javascript 其他更深的章节可以有空再看。


    <a id="org9fd200f"></a>

    ## Deep Javascript<sup><a id="fnr.7" class="footref" href="#fn.7">7</a></sup>

    深入 Javascript

    > 实践并不能成就完美。只有完美的实践才能成就完美。
    >
    > &#x2013;文斯隆巴迪

    - 我的结论

    本书适合有一定 Javascript 基础或经验的人,希望更加了解这门语言;例如对象的完全克隆,对象属性保护,元编程等,以及最新的 ECMAScript 标准。


    <a id="org45d4a41"></a>

    ## The Art of PostgreSQL<sup><a id="fnr.8" class="footref" href="#fn.8">8</a></sup>

    PostgreSQL 的艺术

    > 数据占主导地位。 如果您选择了正确的数据结构并将事物组织得井井有条,那么算法几乎总是不言而喻的。数据结构而不是算法才是编程的核心。
    >
    > &#x2013;罗布派克

    - 我的结论

    Postgresql 是我很钟意的一个数据库,我自己的理想是小型开发用 SQLite ,中型开发用 mongodb,大型开发,推荐算法,AI 等开发用 Postgresql 。
    软件开发数据有多重要数据库就有多重要,而 PostgreSQL 给我的感觉是有点复杂比较难驾驭,或许犹如书名,使用 PostgreSQL 是艺术,需要常年
    不断积累与练习。至于 PostgreSQL 的使用官方的文档已经非常好了,也很难做的比文档好了,所以本书重点不在使用,而在更好的使用,
    更好的设计你的数据库。


    <a id="org9705293"></a>

    ## The Passionate Programmer: Creating a Remarkable Career in Software Development<sup><a id="fnr.9" class="footref" href="#fn.9">9</a></sup>

    我编程,我快乐: 程序员职业规划之道

    > 在我们的文化中,听从父母的建议是一件神圣的事情。它被视为孩子的职责,并与履行自己的宗教职责一样被视为正确的事情。
    > 书籍、电影和电视情节都以听取父母的智慧作为一种美德。但对于我们这个 IT 行业来说,这种美德是错误的。
    >
    > &#x2013;文中摘要

    - 我的结论

    这本书的灵感来源于[《程序员修炼之道-从小工到专家》]( https://tiglapiles.github.io/article/src/recent_reading.html #orgc607b75)。如果修炼之道是对这个职业的一个总览,那规划之道是对这个职业的具体实施规划。
    就像修炼之道提到的:我们构建自己的生活,当你规划好自己的路线之后,后面不管是公司还是职位都应该为自己的路线让道。不管你是打工还是独立开发,
    都需要一条正确道路和建议,少一点挫败多一些成功。选择你的技术和商业领域;投资你的产品,仅仅会 Java 已经是不够了,你可能需要其他的技术;
    执行力;和市场这是本书的四大重点。我自己也曾经设想:一个好点子加上执行力把产品创造出来应该就能成功,关于这方面有一个专门的公开课(后面会讲到),
    但是略了市场,因为如果没人知道你的产品,那有好点子也很难成功。当然这里概括的四个重点,很难说明什么,具体的详细实施方法在重点下的章节有说明。
    例如第一章:领导还是血亏,根椐目前的市场,列举一份表单,分别是适合在早期,中期,晚期使用的技术,从左到右,左边是最新的技术,
    右边是公布的技术;然后标注出哪些是你熟练的技术哪些是你不熟练的,以此定位出自己的位置。


    <a id="orgae3528f"></a>

    ## Remote: Office Not Required<sup><a id="fnr.10" class="footref" href="#fn.10">10</a></sup>

    远程工作

    > 未来已经到来只是还没有平均的发散出去。
    >
    > 威廉吉布森

    - 我的结论

    有时候面对变革并没有那么困难,我们需要做的只是改变自已的观念; 对于工作他并不是你的束缚,相反他是你活着的证明。
    工作不是大家聚在一个办公室群策群力解决问题,而是我们在问题面前每个人发挥自已的专业能力去解决他。首先要生活的
    有意义,你就要有能力在闲暇之于去做一些事情。而我们做事情不一定要在固定的场所,可以是任何能高效发挥你能力的地方,
    这便有了远程工作。你可以在家里,在咖啡厅;或者是正在旅行的酒店里,房车里,野外等。美国从 2005 年至 2011 年远程
    工作人数飙升 73%达到 3 百万人,也就是说远程工作已经是一种举手投足间的常态了;或许你已经生活在其中了,或许你早有
    所闻了,又或许你可能刚意识到这个现象;这本书就是关于远程工作的一本书,他告诉你远程工作的好处和解决其中的困难,
    他让你对工作有重新的认识。


    <a id="org059bf89"></a>

    ## The Clean Coder:A Code of Conduct for Professional Programmers<sup><a id="fnr.11" class="footref" href="#fn.11">11</a></sup>

    代码整洁之道: 程序员的职业素养

    > “哦笑吧,老男孩科廷。这是主对我们开的一个很好的玩笑,也或者是命运,或者自然开的,由你喜欢吧。但是无论是谁,无论是什么,
    > 玩它的人肯定很有幽默感哈!”
    >
    > &#x2013;霍华德,《马德雷山脉的宝藏 7 》

    - 我的结论

    你是否想成为专业的软件开发人员,就像我一样,在没有进入这个行业之前,对程序员充满敬意和想象,想象自己通过技术改变世界;
    可在进入这个行业之后各种的挫折和打击,经历过狼性文化,经历过加班,经历过被辞退被降薪被算计,经历过破产&#x2026;。到最后都没办法
    好好坐下来写自己的代码,结果是现在对这个行业非常失望已经对所谓的公司失去了信心。我在想当时如果有个人能指导下或许会不一
    样,但是这个社会功利性太强,身边碰不到这样的人,不寄希望于人性,于是寻找经典的书籍和有用的知识指导自己的方向。本书作
    者也做过软件开发,也经历过职场,做过 CEO ,他来告诉你如何成为专业的开发人员,如何提升自己的职业素养。他讲了很多故事,都是
    程序员会碰到的情况,例如第一章敬业精神:如何让自己更专业首先就是要负起责任,讲了一个自己在 Teradyne 公司的经历;
    然后后面章节是要会说不,要会说是,编码中的事项等。都是一些中肯且有意义的建议,能让你迈向专业的路平坦些。


    <a id="org3d26c49"></a>

    ## Learn C++<sup><a id="fnr.12" class="footref" href="#fn.12">12</a></sup>

    C++学习

    > 请记住,程序老兵永远不死他们只是超出了作用域。
    >
    > &#x2013;Alex

    - 我的结论

    三人行则必有我师,网络时代有一技之长都可以成为老师;我只恨自己没有在更早时看到这个资源,以至于让我感慨自己在
    学校花的如此多的时间和金钱简直就是一种浪费。他是由个人编写,发布在网站上的 C++初学者学习课程,靠着网页浏览量
    的广告收入来维持网站的运转,他的授课如此优秀,相比现实中的老师是有过之而无不及:他浅显易懂,在我的印象中 C++
    是一门抽象的语言,但是他的讲解简短,一章一个知识点,每一个知识点很有趣,总能让我对下一章充满兴趣;循序渐近,
    他的每一章的编排也是互相关联慢慢增加你的知识的,跟现在许多优秀的入门教材一样,特别是在技术行业,你能很快的看
    到自己努力的成果;接地气,没有专业的术语,没有深奥的理论,没有故作深沉,有的只是一个朋友侃侃而谈;
    免费,无门槛,有解答,他是免费的可全网查看的资源,没有设置任何的门槛,他只希望你不要对他的网站广告拦截,
    因为那是维持网站的收入来源,并且他也会解答一些在评论中的问题。或许所谓的网络时代就是只要我们肯努力,
    都能找到最好的资源来指导自已前进的方向,这也是这个行业的优势,我们总是乐于毫无保留的分享自己的知识和成果。


    <a id="org06de4ff"></a>

    # 写在后面

    1. [分享最近阅读的书籍清单(一)]( https://tiglapiles.github.io/article/src/recent_reading.html )
    2. [分享最近阅读的书籍清单(二)]( https://tiglapiles.github.io/article/src/recent_reading2.zh.html )
    3. [本文地址]( https://tiglapiles.github.io/article/src/recent_reading3.zh.html )
    4. 更多文章欢迎访问我的[github 仓库]( https://github.com/tiglapiles/article )
    5. 捐助我的[游戏]( https://itch.io/profile/tiglapiles ),支持我的创作
    6. 转载请注明出处
    7. [社区更新地址]( t/805027 )
    8. 邮箱: tiglapiles@gmail.com


    # Footnotes

    <sup><a id="fn.1" href="#fnr.1">1</a></sup> < https://github.com/hmemcpy/milewski-ctfp-pdf >

    <sup><a id="fn.2" href="#fnr.2">2</a></sup> < http://brendanfong.com/programmingcats.html >

    <sup><a id="fn.3" href="#fnr.3">3</a></sup> < https://zh.wikipedia.org/zh-hans/%E8%8C%83%E7%95%B4%E8%AE%BA >

    <sup><a id="fn.4" href="#fnr.4">4</a></sup> < http://brendanfong.com/programmingcats.html >

    <sup><a id="fn.5" href="#fnr.5">5</a></sup> < http://www.cs.mun.ca/ ~dchurchill/teaching.shtml>

    <sup><a id="fn.6" href="#fnr.6">6</a></sup> < https://exploringjs.com/impatient-js/toc.html >

    <sup><a id="fn.7" href="#fnr.7">7</a></sup> < https://exploringjs.com/deep-js/toc.html >

    <sup><a id="fn.8" href="#fnr.8">8</a></sup> < https://theartofpostgresql.com/ >

    <sup><a id="fn.9" href="#fnr.9">9</a></sup> < https://book.douban.com/subject/4923179/ >

    <sup><a id="fn.10" href="#fnr.10">10</a></sup> < https://book.douban.com/subject/21362627/ >

    <sup><a id="fn.11" href="#fnr.11">11</a></sup> < https://book.douban.com/subject/11614538/ >

    <sup><a id="fn.12" href="#fnr.12">12</a></sup> < https://www.learncpp.com/ >
    第 1 条附言    2022-02-14 11:11:24 +08:00
    3 条回复    2022-02-19 00:17:21 +08:00
    echo1937
        1
    echo1937  
       2022-02-14 10:53:55 +08:00
    楼主你的排版有些问题,希望能改一改增加点阅读体验
    WhereverYouGo
        2
    WhereverYouGo  
       2022-02-14 13:02:48 +08:00
    @echo1937 #1 +1
    tennc
        3
    tennc  
       2022-02-19 00:17:21 +08:00
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2861 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 00:26 PVG 08:26 LAX 17:26 JFK 20:26
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86