`
qing_gee
  • 浏览: 121493 次
  • 性别: Icon_minigender_1
  • 来自: 河南
社区版块
存档分类
最新评论

《Linux就是这个范儿》试读有感

阅读更多

       感谢ITeye的7月图书试读活动,使得我有机会接触到当前最热门的技术以及优秀的图书。上一次不经意间的写了微管理的读后感,并且侥幸获奖,这次在写这篇文章的读后感的时候有了一些莫名的压力,那就是如何让本篇读后感也成为优秀的文章,为购买该图书的人抛砖引玉,并且对自己的学习过程做一个总结,而不只是简单的获奖。

       的确,如书中所写“初学 Linux使用的人们,坐在 Linux老手旁边,看他们帮自己解决一些工作上的问题时,往往会惊叹于他们似乎不怎么使用 GUI。”,在刚参加工作时,看着老大在linux的“shell”界面下,熟练的敲着那么活蹦乱跳的命令行时,一种崇拜之情油然而生。而当自己在接下来工作中自己来敲那些简单的命令时,如简单的“ll、ls、rm”等等这些简单的命令时,都显得如此的笨拙,尤其对于命令中添加的参数"-f、-v"等等时,更觉得无所适从。

      本章前序中写道作者如何爱上linux,从而开启自己的linux神奇之旅也深深的触动了我。在上大学的第一年,在学习操作系统时,老师要求我们在windows XP上通过虚拟机软件安装linux操作系统时,当时的自己还傻傻的认为,这linux有什么好处,不过是微软的图形化界面的一个翻版操作系统,用起来还是那么的憋手,现在想起来,自己对于linux的认知在当时是多么的浅薄,就如同作者认为linux只不过是写错了名字的“unix”,直到在读本章之前,我似乎也只是知道linux是unix的衍生版,并没有什么不同。

   

一:万般皆文本

     linux将枯燥的令人厌烦的二进制计算机语言转变为程序员易上手、易操作、易阅读的文本,这节省了程序员很多时间效率,同时linux对于文本的封装也是极其有效率的,这使得我们觉得简单的文本操作起来也是非常的方便、简洁,这也使得我们这些linux新手在操作shell文件时,也显得那么轻松快乐,下面就介绍一下使用linux shell编程一个hello world经典案例。

     在linux上进行一个“hello,world”的程序编码时,我们只需要使用vim命令就可以轻松的打开一个文件,然后在里面输入"echo 'hello,world'",然后wq保存退出后,再使用chmod将文件属性改变为可执行文件,然后再通过sh命令运行该文件,那么就可以在命令行看到hello,world字样(具体细节请查看我写的“linux shell之hello world”一文),在这个过程中是不是可以体会到linux的文本之强大。

     就如书中介绍的linux把配置文件、程序、通信协议、更甚至于硬件,也都和文本紧密的联系在一起,linux就是这样让我们感受到了文本原来也可以如此的强大。

 

二:四处用脚本

     linux使用了大量的“脚本”来编写程序,这使得我们可以选择当今非常强大的Python、Rudy脚本来编写自己所需要的程序,从而在linux上运行。记得我在参加上一个公司的项目时,需要做出一个tab键自动填补命令的程序,当时采用的是Perl 语言编写的,比如,当你运行该程序后,在你在命令行敲一个show 命令时,我们当时做的候补项有date、dir、file等等,当键入tab键时,这些命令选项就如同linux本身的tab键功能时出现在当前命令的下一行list选项中。

    我非常喜欢作者提出的“强力胶水”的概念,将自底向上和自顶向下的设计方式进行粘合,同时却不显得臃肿,使得bug缺少了滋生的温床。

 

三:规律无处可循 

    是的,作为一个程序员,我们始终抱着一种心态,只要我学会一门编程语言,再来学习其他语言就可以有规律可循,而对于linux的编程,作者告诉我们在linux上解决一个问题是没有规律可循的,但却有着技巧。作者写道的“机制和策略”(吃饭是一种机制,怎么吃饭是一种策略,作者用通俗易懂的方式把两个略显枯燥的词语进行了很好的解释)、“接口和引擎”(这里的接口指程序和人的交互界面)、“重用”(不用重新造轮子,的确,一种好的设计模式可以让程序员事半功倍)、“内在支持”(linux能使的两个进程之间进行数据的交互,有点略强大)、“沉默是金”(作者所说的正是我们作为程序永远所需要的,不轻易写大程序)。

 

四:配置乱生根

     我个人是不太习惯配置到处都是的,但这也许是我对linux的配置了解的还不够透彻。

 

五:文化

     书中说linux就是一种基于“简单”和“傻X”的传统文化和哲学,linux的重要特性就是“提供一种机制,而不是策略”,linux使得这种“傻X”文化发挥到了极致,而linux的开源使得更多希望自己能够成为程序员中的精英而努力掌握这门技术,而我也希望自己能够通过敲入一些枯燥的命令从而做些“入侵”工作,哈哈。

     简单,是的,什么事物只有越简单才会越强大,诸如武侠小说中的“无招胜有招”、“独孤求败、唯快不过”等理念,就是使自己的文化底蕴足够的简单,足够的精纯。而linux提供给我们的这种简单的文化,使得linux受到编程高手的青睐。

 

六:大师的阐释

     书中列出的及格“禅言”使我非常有感触。

      1.使每个程序只做好一件事,对于我们编程人员来说,就是要让自己编写的每一个类都具有自己的独立性,而不在一个类中写和自己不相关的功能。

      2.尽早的将软件投入使用,就目前我们的项目而言,这也是我以后应该注意的,不能把自己做好的东西迟迟不敢放出去,只有将自己完成的一个功能大胆的交给客户,才能发现自己没有注意的问题。

      3.拙劣的代码扔掉,在我们软件开发过程中,难免会接手前人留下的代码,而由于怕造成影响,我们总是对一些没用的代码耿耿于怀,却没有胆量删除掉它。

      4.无法判定程序在什么地方花费时间的话,不要胡乱找代码修改,在找到瓶颈后,再进行修改。这一点,在我的这次迭代工作中,使我有很大的感触,我们的项目目前遇到了一个性能上的问题,但是在这个调优的过程中,我尝试了做了几次自己并没有确定瓶颈的代码的修改,而导致不断的反复的改回代码。

 

总结:本章试读使我对朦胧的linux有了进一步的理解,而书中介绍的一些案例也有着非常好的扩展,使我意识到自己在工作中遇到的一些问题,从而进行总结改进。

6
5
分享到:
评论
6 楼 qing_gee 2014-07-22  
ray_linn 写道
个人一点感受:

Windows 和 Linux 最大的不同点个人觉得不是开源与不开源之争,而是开放与不开放之争,事实上 Windows 内核和驱动微软也以不同的方式开源给各种用户。

但是 Windows  和 iOS 一样,本身不是一个开放体系,所以它不会接纳那些乱七八糟的功能,比如 DBRD 之类的。微软把持着 Windows 的话语权,个人开放者对内核基本没有影响力。

不过开放与否本身就是一把双刃剑,从代码编写来看,微软的代码更富有弹性,更归整,可以看出很强的设计理念,相反,Linux 的代码良莠不齐,有很多野路子,缺乏规范性,但是你可以在 Linux 内核中找到更有有趣的功能,换句话说,Linux 就是各个公司欢乐的实验田,可以自由地播种,看看最后能结出什么果子。


说的非常好,认同。
5 楼 ray_linn 2014-07-21  
个人一点感受:

Windows 和 Linux 最大的不同点个人觉得不是开源与不开源之争,而是开放与不开放之争,事实上 Windows 内核和驱动微软也以不同的方式开源给各种用户。

但是 Windows  和 iOS 一样,本身不是一个开放体系,所以它不会接纳那些乱七八糟的功能,比如 DBRD 之类的。微软把持着 Windows 的话语权,个人开放者对内核基本没有影响力。

不过开放与否本身就是一把双刃剑,从代码编写来看,微软的代码更富有弹性,更归整,可以看出很强的设计理念,相反,Linux 的代码良莠不齐,有很多野路子,缺乏规范性,但是你可以在 Linux 内核中找到更有有趣的功能,换句话说,Linux 就是各个公司欢乐的实验田,可以自由地播种,看看最后能结出什么果子。
4 楼 qing_gee 2014-07-21  
hawkon 写道
  写的不错,顶起

3 楼 qing_gee 2014-07-21  
ray_linn 写道
1. 万物皆文本 --- 这句话不知道你是不是从书里抄来的,但正确的应该是万物皆文件(File),而不是文本(Text)。 这也不是  Linux 的特点,unix 也是如此,甚至 Windows 也是如此。在 Windows 内核中操作文件、目录、设备也不外就是NTOpenFile,NTCloseFile,NTReadFile。唯一不同的是,这种概念暴露给程序员也就罢了,暴露给一般用户纯属吃饱了撑的。


2.四处用脚本。从我的角度来说, shell script 和 linux 没有毛关系,Linux 就是内核操作系统,shell 不过就是内核的一个进程。所以对操作系统而言, csh不过和 Perl 一样,就是个脚本解释器。shell 可以运行在任何可能的操作系统上,包括 Windows.

3.4.5 都是软文,尤其是淘宝这位哥们算不算大湿,很值得怀疑。


非常感谢您的指教,接触linux不是很深刻,所谓尽信书,不如无书,本人的确是在初入阶段,我也尽量从书中获取一些有用的信息,希望能从中获取对linux的有用知识,在接下来的工作之中进行应用。
2 楼 ray_linn 2014-07-21  
1. 万物皆文本 --- 这句话不知道你是不是从书里抄来的,但正确的应该是万物皆文件(File),而不是文本(Text)。 这也不是  Linux 的特点,unix 也是如此,甚至 Windows 也是如此。在 Windows 内核中操作文件、目录、设备也不外就是NTOpenFile,NTCloseFile,NTReadFile。唯一不同的是,这种概念暴露给程序员也就罢了,暴露给一般用户纯属吃饱了撑的。


2.四处用脚本。从我的角度来说, shell script 和 linux 没有毛关系,Linux 就是内核操作系统,shell 不过就是内核的一个进程。所以对操作系统而言, csh不过和 Perl 一样,就是个脚本解释器。shell 可以运行在任何可能的操作系统上,包括 Windows.

3.4.5 都是软文,尤其是淘宝这位哥们算不算大湿,很值得怀疑。
1 楼 hawkon 2014-07-21  
  写的不错,顶起

相关推荐

    linux就是这个范儿

    "Linux就是这个范儿"很可能是一本深入浅出介绍Linux系统知识的书籍,旨在帮助读者理解并掌握Linux的使用和操作。 Linux的核心特点包括: 1. **开源与自由**:Linux源代码开放,任何人都可以查看、修改和分发。这种...

    linux就是这个范

    Linux是一种免费且开源的操作系统,它的出现为用户提供了一个强大的、灵活的以及安全的计算平台。Linux不仅适用于服务器,也被广泛应用于桌面环境,甚至在移动设备和嵌入式系统中也有广泛应用。本篇文章将围绕Linux...

    liunx就是这个范儿

    根据提供的信息,“liunx就是这个范儿”这一表述似乎是指Linux操作系统的一种文化和风格。由于提供的内容部分没有实质性的信息,我们将基于标题、描述以及标签中的“liunx”(推测为拼写错误,应为“Linux”)来展开...

    swift-高仿爱范儿3.0的一个App

    在Swift编程语言中,开发一个高仿爱范儿3.0的App涉及到多个技术层面,包括界面设计、数据处理、网络请求、响应式编程、以及iOS应用架构等。以下是一些核心的知识点: 1. **Swift语言基础**:Swift是Apple为iOS、...

    盒范儿TV视频大集合

    盒范儿TV视频大集合,聚合了互联网众多适配于电视端、互联网端的直播和点播软件。

    操作系统.zip(7本相关)

    Advanced_Programming_in_the_UNIX_Environment.pdf APUE.pdf Computer Systems_ A Programmer's Perspective-Pearson (2015).pdf ...CSAPP.pdf Linux就是这个范儿.pdf UNIX环境高级编程.pdf

    ios-仿 爱范儿 客户端.zip

    仿 爱范儿 客户端,使用UIViewController容器、UIScrollView实现,使用 SnapKit 布局。 实现左右滚动,顶部标题滚动,缩小视图,下拉刷新(上拉加载未实现)。 说明:由于水平和思路的差异导致视觉效果上有些...

    黄色简约范儿PPT模板.pptx

    "黄色简约范儿PPT模板"便是这一理念的具体体现,它将简洁的元素与明亮的黄色调相结合,以创造一种既专业又引人注目的视觉效果。 1. **何为简约** 简约设计,又称为极简主义设计,源自于20世纪60年代的艺术和建筑...

    哥是江南范儿PPT模板.ppt

    - "哥是江南范儿"表明了对江南区时尚奢华生活的认同或者对《江南Style》歌曲的热爱,这个主题被融入到了PPT模板中,为使用者提供了一种展现个性的方式。 这个PPT模板可以用于各种与流行文化、韩国文化或娱乐相关的...

    适合企业介绍的扁平化有范儿ppt模板.rar

    标题中的“适合企业介绍的扁平化有范儿ppt模板.rar”表明这是一款设计独特的PPT模板,专门用于企业的自我展示。扁平化设计是一种现代且流行的设计趋势,它摒弃了过度装饰,强调简洁、清晰和易用性。这种风格在企业...

    喜欢漫画的哈日少女,长大后做了个卡通范儿的减肥App.pdf

    喜欢漫画的哈日少女,长大后做了个卡通范儿的减肥App.pdf

    文玩范儿项目策划方案.doc

    文玩范儿项目策划方案.doc

    Open VR(虚拟现实开发软件、bin文件放着编译好的动态链接库,包含linux32、linux64、mac、win32和win64)

    包括一个bin文件、header文件、controller_callouts文件、lib文件、samples(示例)文件、src文件; OpenVR 是由 Valve 公司开发的一套 VR 设备通用 API ,换而言之,不管是 Oculus Rift 或 HTC Vive 甚至是其他 VR...

    某地产范儿出走事件策划方案.pptx

    某地产范儿出走事件策划方案.pptx

    饭范儿-赖正伟—1600943361.zip

    很抱歉,根据您提供的信息,"饭范儿-赖正伟—1600943361.zip"这个压缩包的描述过于简洁,没有提供具体的IT知识点内容。标签为空,同样无法提供额外的线索。文件名称列表只有一个条目:"用户体验作业",这表明可能...

    扁平化有范儿企业介绍ppt模板.pptx

    扁平化有范儿企业介绍ppt模板.pptx

    最美的美化版eMedia媒体范儿EMLOG模板源码.txt

    最美的美化版eMedia媒体范儿EMLOG模板源码

    初中语文文摘历史科学家也有文艺范儿

    标题“初中语文文摘历史科学家也有文艺范儿”揭示了一个有趣的现象,即历史上的一些著名科学家在专注于科研工作的同时,也展现出浓厚的人文情怀和艺术才华。这个标题旨在打破公众对科学家刻板的印象,即他们只是埋头...

    初中语文文摘社会我们的旅游范儿养成了吗

    初中语文文摘社会我们的旅游范儿养成了吗

Global site tag (gtag.js) - Google Analytics