文章吧-经典好文章在线阅读:松本行弘的程序世界读后感精选10篇

当前的位置:文章吧 > 经典文章 > 读后感 >

松本行弘的程序世界读后感精选10篇

2022-05-14 11:26:41 来源:文章吧 阅读:载入中…

松本行弘的程序世界读后感精选10篇

  《松本行弘的程序世界》是一本由松本行弘著作,人民邮电出版社出版的389图书,本书定价:75.00元,页数:2011-8,文章吧小编精心整理的一些读者的读后感,希望对大家能有帮助。

  《松本行弘的程序世界》读后感(一):Ruby是一门有着优秀设计的语言

  ruby是一种比较另类的编程语言,按照作者松本行弘的意思,ruby推崇的是 “code for fun”,是一门“人性化”的编程语言。《松本行弘的程序世界》一书中,有很多与其他编程语言比较的例子,ruby可以用最少的代码实现相同的功能,可以明显感受到作者以此为豪。

  在国内,或者国外也会,我发现很多开发人员,对编程语言的接受态度很奇怪。我不想说这是教育体制的问题,但是我所接触的高校老师,在对待编程语言上确实有一种夜郎自大的感觉。曾经和一些老师讨论过,发现在他们眼中,只有两类语言,一是正规语言(C/C++,Java,C#),二是脚本语言。我不知道这种这种“正规语言”的思想是怎么形成,但似乎让我感受到这和某个国家在某个时代一直强调自己“地大物博”有相同的地方。即便你是天下无敌的剑客,下了厨房还是得用菜刀来切菜啊。用适合的工具解决特定的场景才能让解决方案更加简单有效率。

  相比其他讲ruby技术的书籍,这本书更像是ruby之父的散文集,讲述着ruby为何被设计如此,以及作者对编程语言的理解。

  书中有一个章节讲面向对象的思想,特别在多继承的方面,让我受益匪浅。关于多继承,第一次接触是来自C++,很多资料都说C++多继承有多不好什么的,当然也举了很多例子,但是,在C++编程方面我确实没直接接触过这些弊端,但是至少在我脑海中形成这是一个不好的设计。然后,在Java中,用Interface来解决了多继承的问题,我一直以为这就是一个解决多继承的标准答案。ruby中解决多继承的方法是Mix-in,而且很好的解决了。这个收获更多的是,我知道了一个事情,它挑战了我脑海中理所当然的事情,开阔了我的思维。

  ruby的很多特性,block,metaprograming,duck typing ... 这些经常让我感叹到,原来还可有这样写程序。“语言影响思想”这本是说自然语言的,但是编程语言也是适合的,多接触一些优秀的编程语言,也有助于开阔思维。

  《松本行弘的程序世界》读后感(二):程序员的自我世界

  Knuth 说编程是件迷人的工作,她能把美丽的数学在现实中展现出来,他对此深深着迷。大师的数学修养我们没法达到,但我们可以把通过编程把梦想带到现实,带到世界各处,爱思考的人尤其无法拒绝这种诱惑。松本行弘就是这样一种人。最初接触Ruby是很久以前的事了,那时自己到处找脚本语言玩,听说了ruby,好像还没有ROR,有同学因为作者是日本人还有些抵触,不过程序是无国界的,好东西还是流行了开来:)即使Ruby这样成功,从书的字里行间可以看出松本行弘还是在继续学习,思考,将更美好的东西带到Ruby当中,就像不断学习的谦恭的程序员Dijkstra。松本行弘达到这种高度并不是因为他有很高的编程天赋(不能和神人比),而且写一种实用的语言比起用语言实现一套框架难度不是一个级别的,对梦想的执着,对程序的热爱让他前进到此。希望天下有梦想的程序员把心中的天堂带到人间。

  《松本行弘的程序世界》读后感(三):不一样的Ruby程序世界

  一本好书!学习的不是语言,而是语言背后的内涵!让你领悟程序开发不一样的思路,拓展程序人生的视野!

  Ruby在风靡程序世界数年之后的今天,继续展现出蓬勃的生命力,Ruby社区不断扩大,各种Ruby扩展库越来越多,Rails杀手级应用也依托Ruby这个坚硬磐石应运而生。这些都表明了Ruby的正确之路!

  既然Ruby是好东西,那深入了解Ruby作者的程序感悟就自然是一种乐趣了。我觉得,这本书,最大的特点,就是:不是为了Ruby而Ruby!而是程序设计大师,以Ruby阐述程序设计思想和感悟,同时让你一方面对Ruby思想有更深入的了解,另一方面又对程序设计的本质地带有进一步的认知。

  书中,你可以领略到程序大师的程序设计高超技艺,以及通达的思想表达,看完了样张,我最大的感触就是,一个人可以在程序设计和开发方面不断深入,并提高自己的技术水平,但如果要成为程序设计大师,除了能力超强,还要有开阔的视野和敏锐的洞察力、以及广博的知识。

  不管你后面学不学Ruby,对于程序设计开发人员来说,都推荐一看。你学的,不是程序语言本身,更重要的是程序语言的设计之妙以及语言语法表面下的实质、思想。

  《松本行弘的程序世界》读后感(四):读《松本行弘的程序世界》样章有感

  Ruby可说是一门灵活至极的语言。它的代码块+yield、duck typing、模块元编程等特性,使它面对各种应用环境,尤其是Web应用时,都可做到快速开发;而且作为脚本语言,它在粘合应用程序、编写爬虫、自动测试程序等任务中同样表现不俗。这样一门洋溢着自由精神的语言,其发明者是什么样的人?他对于各门编程语言及语言背后蕴含的思想,又经历过哪些思考、得到过何种见解?我想,这本由Matz亲笔写就、字里行间饱含其智慧结晶的书,应该很接近我不止一次思索过的这些问题的答案。

  第一章一上来,Matz首先就谈到了他为什么开发Ruby。答案和很多IT界乃至自然科学领域的大牛们一样——兴趣。当然,同样的问题若由某国大牛回答,那么答案很可能会是——感谢国家、感谢政府给我编程的机会。不过话说回来,在某国这一急功近利、思维封闭、极少倾听内心声音的社会,是否有人能开发出像Ruby这种自由洒脱的语言还是个问题。紧接着,Matz又谈到编程语言为什么重要。这里,他提到了一个语言学中的假说——Sapir-Whirf假说:语言不同造成思想不同,并把自然语言的这个假说推广到了编程语言上。虽然下面的注释说,这个假说在自然语言领域越来越站不住脚,但我认为,且不说思想,语言至少和文化紧密相关着。而在编程世界中,语言更是至关重要,各种范型、各种惯用法,甚至一个小小的语法糖,都会对编程本身造成重大影响。

  经由Sapir-Whirf假说,Matz很自然地把编程语言和开发效率联系到了一起——既然语言决定思想,那我干吗不发明一种尽量贴近人类思考方式、尽可能灵活的编程语言?这样就引出了发明Ruby的原动力——提高程序员的开发效率。围绕着这个原动力,Matz更进一步展开,谈到了三个具体的设计原则——简洁性、扩展性、稳定性。

  简洁性,说的是程序员在编程时不应为那些细枝末节、与描述算法无关的代码操心,比如类型声明之类,而是应专注于算法本身去编程。这条原则很像从命令式编程到声明式编程的转变,显然,这能够大大提高程序员的效率。正是因为有这条原则指导,Ruby才会成长为今天这样善于利用元编程技术和DSL解决问题的语言。扩展性,Matz提到了由抽象化实现扩展性的方法。“抽象”二字,正是自由的关键。如果什么都预先约束,反而会僵化死板、毫无扩展余地;但过度抽象同样是编程的大忌。因此在本小节最后,Matz也谈到了如何在抽象和约束间做出权衡,找到一个平衡点。稳定性,就是保持程序的结构。它统一了各种程序的风格和结构,使代码的可读性增强。这同样可以提高程序员的开发效率。这里Matz举了Lisp宏的例子。但我个人认为,作为Ruby而言,实际上并没有太做到这一点。用Ruby的元编程机制,实现类Lisp的宏一点不难。而且Ruby偏重DSL的特点,似乎也注定它不太容易稳定。也许稳定性这条原则,在看过后面章节的详述之后才能更好领会。

  三大原则之后,Matz在最后一小节又回到了兴趣和开发效率,作为对第一章的总结。纵观全章,为兴趣爱好而工作、为提高开发效率而发明Ruby,可说是Matz至关重要的两个出发点(同时也应是我们在宏观和微观两个处事层面上的出发点)。Ruby散发的自由精神,很好地演绎了这两个出发点。另外,值得注意的是,三大原则中,有两个原则(简洁性和稳定性)都提到了Lisp,这也暗示着Ruby在很大程度上受到了Lisp的影响。

  再简单说说本书的第四章。第四章表面上看,讨论的是设计模式和设计原则,实则不然。它讨论的是动态语言与静态语言相比,在进行软件开发时究竟具有何等优势。

  第四章一上来就讨论了软件设计中最重要的几个设计模式。可以看出,Ruby这样的动态语言与Java、C++这些静态语言相比,实现各种模式都要便捷得多,也更符合人类的思维方式。值得注意的是,讲到原型模式的时候,Matz还提到了Io语言。Io以其彻底的原型特性,近来也受到了不少关注(有机会的话,我很想写一篇关于Io的介绍性文章)。了解这门语言,同样可加深对Javascript、Ruby等语言的理解。Matz在编程语言上真可谓学识渊博、不拘一格。

  本书内容极棒,翻译也较为流畅,但某些地方仍稍有瑕疵。比如第105页第四行的“Smalltalk的‘亚种’Self语言”,这个“亚种”似乎翻译得不太舒服。它对应的英文单词可能是subtype之类的(当然,原书大概是日文,但也应为类似的词),意译为“后代”或“衍生品”或许更好一些。还有第118页倒数第三行的“设计模式与软件开发原则(Open-Clode principle)”,这个似乎和括号里的英文不对应,是否括号里写错了?或者其本意(作者本意还是译者本意?)是“设计模式与软件开发原则——开放-封闭原则”?似乎也应再作推敲。

  写了不少,目的当然是为了拿一本赠书,呵呵。如果看过全书后再有什么感想,有时间的话也会写下来,分享给想读此书的朋友们。也欢迎更多喜欢本书、喜欢编程的朋友发帖讨论。

  《松本行弘的程序世界》读后感(五):主要还是写给Ruby程序员看的

  初版后第一时间收到这本书,在想为什么没有国内企业做一门厂内语言,它可能的长期收益是什么?目前业界开发自家用语言也只有Google做了,Mark Zuckerberg则选择造个工具将PHP转换成C++,这样现有的代码可以跑快一点。

  《松本行弘的程序世界》主要还是写给Ruby程序员看 的,口水仗爱好者也可以作为参考书,有大量现成的素材。

  如果你的项目进展不顺利,是不是名字起得不好呢?“我设计上的一个座右铭就是名字很重要,设计任一功能时,我首先会着重考虑它的名字。在我作为编程人员的生涯中,名字好的功能都成功了”

  以上是第一次看时发的3条微博

  《松本行弘的程序世界》读后感(六):程序员需要了解的知识

  收获心得,按章节排列

  第一章 为什么开发Ruby

  兴趣最重要,数学不好也没问题,这个真的用真实例子抨击了那些吵着要数学好才能编程的人,照我看来可能是对数学感兴趣的人基本也会对编程感兴趣:) 其他专业只要感兴趣都可以搞好,在我看来编程就是逻辑推导和边界问题判断

  第二章 面向对象

  goto和多继承,哈,从没这么想过,也有道理。进一步了解了mix-in,duck typing.

  第三章

  inject,select, colect,这些方法倒从没考虑过加到集合里去。C++有另外的方式,不过自己实现库倒可以考虑。

  第四章 设计模式

  内外迭代器区分,Io语言, OCP原则已经很了解了,其实设计模式的变化就在于要根据实际情况选择不变的维度,变化的维度,并不是固定的。

  第五章 Ajax

  没做过网页编程,看后了解了

  第六章

  猴子补丁,第一次接触这个概念

  第七章

  系统的了解了编码的一些历史和原理

  第八章

  复习了一下,快速看过,鬼车不知道能不能单独用

  第九章

  知道了不少特例

  第十章

  关于优化,老生常谈,有机会多玩玩Erlang

  第十一章

  复习了下xss csrf攻击

  第十二章

  时间实现真是个大问题,不是一个人能搞定的,为啥那么多恶心的规定

  第十三章

  第一次听说object prevalence模式,准备深入了解下

  第十四章

  对函数语言,垃圾收集,代码生成作了概述,有个完整的概念认识。

  《松本行弘的程序世界》读后感(七):松本行弘的侦探世界

  在书店拿起这本书时某人(得知这货是ruby作者之后)问我 “你不是python那边的么?” 为了表明还是个py党,我只好回答 “师夷长技以自强嘛”。

  其实这本书讲ruby的很少,更像是

  或者

  这样的“十全大补丁”。看看目录就知道了:Ajax,字符编码,RE,并行,安全,functional...最后一节甚至还扯了点自由软件与开源,大赞。也因为此,我这样不懂ruby的人也可以看得很顺畅。不过内容很散,评论也只能散着写了。

  估计日本人遇到的国际化本地化问题和我们一样多吧,所以文字编码那章讲的十分详细。刚知道原来很多日本汉字和我们的汉字写法是不一样的,他们的骨字里边的一折在右侧...(7.1.7)

  是不是日文翻译成中文,要比E文翻译成中文要更容易呢?也可能是翻译下的功夫比较多? 总之从头到尾读起来都挺通顺的,没有一般翻译E文书里要努力想想或者找找原文才知道什么意思的情况。而且不知为什么,有些文字一看就感觉是日文,比如:“世界上很有名的Python,在日本的知名度从现在才开始增加..”

  前几章是讲为什么ruby要搞成这样的,思路很清晰,让人有看看ruby的冲动。ruby看起来有不少好玩的特性,特别是那个程序块,很诱人,感觉很好用的样子。还有就是闭包的支持了,python的闭包真是让人郁闷(参见阮一峰翻译过的那篇lisp文章,里边有一个各个语言实现一个返回累加函数的函数的对比)

  按照作者的说法,ruby设计最大的原则应该是让人快乐地编程,这个境界太高了,不是为了教学,不是为了改进现有语言,不是为了方便摆弄文本,不是为了完成工作任务,更不是为了卖产品,完全没有包袱,只是为了快乐,多好。

  quot;""

  =begin

  /*

  以下内容是曾经身为python党的作者为了给python找点面子的YY,被一些读者认为与事实不符,请大家无视

  不过,我还是以为python和ruby已经没什么可比的了,就像python和perl也已经没什么可比的了一样。原因很简单,社区规模的差距越来越大,我们不需要两种主流动态语言。但参差多态是幸福本源嘛,多几种非主流的选择总是好的。

  要不要恶俗的说一句 既生ruby何生python 呢...

  */

  =end

  quot;""

  tw, 名字改成“松本行弘的侦探世界”是不是更符合封面的意境?

  《松本行弘的程序世界》读后感(八):这本书的重点不是ruby

  书的内容最先发表在杂志上,所以是Mathz对多个编程理念的理解,在这里,ruby倒是一个用例而已了。

  书的第二章和第三章是我感觉最有意义的,也是最有见解的。

  第二章从根本上描述了面向对象程序设计基本概念的实质,包括类、继承和多态;纠正了长期流传的错误观点,比如一讲到面向对象,马上动物园的例子就来了,什么动物、哺乳动物。这种例子是不太恰当的。

  还分析了多重继承的必要性以及多种实现形式,而ruby是比较优雅的一种。

  第三章应该是ruby语言本身最大的特点,即类的开放性以及新的不同于java之类的迭代器。

  其他章节就一般了。

  《松本行弘的程序世界》读后感(九):多重继承不好的观点是错误的

  首先得说, 一般某种语言的发明人写的关于自己语言的东西都是非常值得阅读的, 从别的牛人那里你也许能学会很多奇技淫巧, 但从语言发明人那里你能学到语言发明人本身设计的初衷, 以及设计时的一些抉择. 这种思路是独一无二, 绝无仅有的. 所以我在学习一个新语言时, 假如语言发明人有写书, 一定优先阅读.

  语言发明人写的书又分两种, 一种是语言的教材, 这个几乎是惯例, 因为一个语言在初期, 没有其他人会用的时候, 语言发明人不教会别人怎么使用, 那可能就没有人会用了, 而他们这本教材的好坏甚至能决定他们语言最后能有多流行. 我听说一个有意思的言论, 说C语言之所以这样流行, 很重要的原因就是C程序设计语言这本教材实在写的太好了. 虽然有些夸张, 但是不无道理, 这个和现在一些开源库对文档要求很高的道理是一样的, 一个开源库的文档写的好不好, 对这个库最后是不是会被很多人使用有极大的关系. 当然, 也有反例, 鬼知道Anders Hejlsberg是怎么把一本C#的语言的教材C#程序设计语言, 写的就像是语言的规格说明书一样.

  另外一种, 那就是除了教材外, 写关于自己语言的设计想法的书, 这种书就更加少了, 就目前而言, 我只看到过Bjarne Stroustrup写的C++语言的设计与演化和这本松本行弘的程序世界. 欢迎大家给我推荐其他的类似书籍. C++语言的设计与演化讲述了BS在设计C++时的各种抉择, 看完该书后, 我第一次明白C++到底是怎么设计成那么难用的, 当然, 同时也明白了怎么使用C++是正确的. 后来还反复的读了好几遍, 工作后, 也极力的推荐给使用C++的同事阅读, 事实上, 现在我买的这本书就还在我原来的同事那里, 虽然我已经离开原公司了. 如果说, 那个时候读C++语言的设计与演化还太无知(我那时候才刚刚参加工作), 并且C++又是我接触编程的第一门语言, 导致碰到一些可能习以为常的东西还如获至珍, 所以才这么喜欢的话, 那松本行弘的程序世界在我工作五年, 已经或多或少学习了不下于10门编程语言后, 仍然能给我很多启发, 就更加值得向大家推荐了.

  完整评论见:

  《松本行弘的程序世界》读后感(十):整体还是很不错的书

  全书涉及到程序设计的方方面面,买这边书的目的希望能看到看看Ruby设计抉择和最基本的原则。作者在这本书上阐述了Ruby最基本的设计原则::简洁,扩展,稳定。对设计block,而不是直接使用闭包,以及为什么是Mixin而不是多重继承(当然Minix是多重继承的一种实现而已)做了比较精彩的解释。另外对面向对象中的实现模式,比如Io语言的原型模式和基于类为模板的实现模式做了比较清晰的介绍。基于类模板的方式其实也有强弱之分比如C++由于缺少对反射的支持,能够访问到的类的信息有限,Java支持反射和Annotation在一定的程度上能够达到比较强的动态性,当然相对于Ruby这种动态语言,还是弱了很多,作者只是对这些实现的范式进行了比较,没有太细深入的比较。对设计模式从开闭原则上看也算不错的方向。

  作者对RoR和MVC的理解和介绍有些瑕疵。毕竟作者对Web开发涉及偏少。其他的基本上算入门级别的知识普及。缺少对Ruby Metaprogramming的大笔墨的介绍,我想Ruby的最大特点就是易于Metaprogramming吧。

  但是从书的标题来看,毕竟不是介绍Ruby设计内幕之类的题目,应该说书的内容遵循了标题所涵盖的内容,而不是专门对Ruby的书。

  比较期待Ruby能有像《C++语言的设计和演化》这样的书出现,当然二者的风格应该大相径庭吧,Ruby的应该是某某语法、功能为什么这么设计,才有如此的简洁和自然,有别于C++的这本书讨论在如何纠结的做出了如此设计的风格。

评价:

[匿名评论]登录注册

评论加载中……