`
xiaonuomi
  • 浏览: 507 次
  • 性别: Icon_minigender_1
  • 来自: 南京
最近访客 更多访客>>
社区版块
存档分类
最新评论

那些活在记忆或现实中的程序设计语言

阅读更多

       程序设计语言是学习计算机的重要组成部分。首先声明,我这里不会对任何两种语言作对比,也不会评价哪个语言怎么样,仅仅是谈谈我在学习过程中的一些感受。
      很多人对语言有着一定的宗教情节,一般来说是第一种语言或者花时间最多的语言。就像很多人总是对初恋恋恋不忘一样,同样第一门语言也难以忘怀,不管记忆是美好的还是痛苦的,不管是享受还是受虐。最终的结果也无外乎几种,相守相伴大半生,或者只是匆匆过客另寻新欢,或者爱太痛,最终想爱不敢爱。我想大多数人的第一门编程语言会是C/C++,显然她并不是一个很温顺而任人摆布的人,当然如果你足够强大足够魅力的话就另当别论。在这其中很多人会找到自己的真爱,而可能有很大部分的人会感觉不会再爱了。像张小娴写的,在对的时间,遇见对的人,是一种幸福;在对的时间,遇见错的人,是一种悲伤;在错的时间,遇见对的人,是一声叹息 在错的时间,遇见错的人,是一种无奈。也许是本来就是错的人,又或许只是时间不对。对于刚上大学的很多学生之前除了上网聊天看电影打游戏外基本没多少接触计算机,对编程更是知之甚少。对于编程语言来说,有的是对计算机更亲近 更友好,就如C/C++,而有的对人类更亲近更友好,如Ruby,Python。因此对于之前基础知识缺乏的人来说,这个时间显然是不对的。
       但是,现实生活中一见钟情并不是大多数,感情是可以慢慢培养的,当你对一个人充分了解和熟悉后或许你会对其态度有很大的转变,当然也不排除更加坚定你当初的想法。因此很多人开始去了解C/C++的全部,了解其过去,了解其成长经历,了解她的好,也了解她的小脾气。于是你慢慢发现原来她是这么温顺还带一些可爱,她发脾气只是因为你不够了解她惹她生气了。当然她也不会是完美的,因为她就像某一群体的人一样,是不允许有错的,错都是你犯得。但程序始终只是程序,不要因此指望程序员会在生活中仍然认为错都是自己犯的,总会能发现自己的不足。
      同样我学的第一门语言是C++,大一的时候这一门课本来是没开的,但是发了一本书,是我们院老师自己编的《C++程序设计》。受好奇心的驱使,就翻翻看,然后就在网上搜搜,发现这个东西虽然看起来不能吃,但是很厉害的样子。在网上的推荐下,在图书馆借了本《易学C++》回去,在寒假时候看了看,同时也试着运行书上的例子。最开始的时候以为只要看完了就应该可以自己搞个什么软件了吧,估计很多同学当初有和我一样的看法,认为编程就得要弄出个图形界面什么的。最后直至书看完了,也没发现有这么个东西,这个时候就有点失望加迷茫了啊,到底要怎么才能弄出那个东西了(很多同学是不是也想过)。于是去网上搜啊搜,就看到些关于Windows编程啊或者MFC之类的东西,但同时也看到说学C++和用C++做GUI编程不是一回事,学好C++才是王道。后来借了一些C++方面的书来看,比如老大Bjarne Stroustrup写的《C++程序设计语言》啊,虽然不大看的懂,但也在迷迷糊糊的看。那时候存在一种错误的倾向,把大量时间用来关注其语法细节,而不是用其来完成一些事情,导致的结果就是学了很久,虽然也考了个二级,但我深知我的水平仍然停留在HelloWorld级别。因此这个学期选了C++的课,打算经过系统训练来达到提高自己水平的目的。借用一句话,C++虐我千百遍,我待C++如初恋。
      大二时候突发奇想,买了本《Head first Java》来看,说实话这本书比较二(想知为什么自己去搜),而且讲的也不太系统,但仍不可否认这是一本入门级的好书。看着书上的讲解和运行着书上的事例,也或多或少对Java有一点了解,但我觉得收获最多的是,自己终于知道GUI编程是个什么东西了。同样借用一句话,Java很优雅,但我却并没有继续深入,一个原因是半期过后作业铺天盖地而来,一个是我还是喜欢学C++,毕竟得有始有终啊。
      因为特别原因在一个小广告公司上过几天班,学了点Photoshop,当时足以应付公司的需求了。说明一下,这个当然不是我水平高,而是他们的业务需求不高。其中两个难点我一直没有突破,一个是特效,一个是鼠绘,所以我只是一个会简简单单使用工具完成一些小需求而已,毕竟昵图网还是有很多资源只要花少量人民币就可以轻松拥有。当然上班时候这方面的技术需求少了,你就的干点别的,于是就的使用写真机,喷绘机,亲自操作,独立完成。在这过程中也懂了点油墨色彩什么的。大二时,同宿舍的同学上了网页方面的课。于是有着攻城师梦想且早已深知HTML是必备技能的我,眼看时机成熟就开始学,因为刚开学,没有太多任务,可以自由安排。
      于是又去图书馆借了本书《深入浅出HTML》,说实话,我智商真心不高,刚开始的时候看的不是太懂,加上我的好读书不求甚解的精神。但是慢慢的还是有所了解了,知道网页的三个主要组成部分,HTML、CSS、JavaScript。学完HTML,又看《CSS基础教程》,最后马马虎虎完成了一个课程作业,是真的马虎,没有谦虚。然后又去开始找JavaScript方面的书,刚开始的书感觉都不大适合我这样的初学者。就像我看《Python基础教程》的时候一头雾水一样,当然可能是我水平有限,而无关翻译或是原书的问题。后来找到本《循序渐进Javascript》,李强翻译(李强翻译过《JavaScript The Definitive Guide》第5版,第六版是淘宝UED翻译的)。看完《循序渐进Javascript》对JavaScript有了点了解,于是又买了本《JavaScript DOM 编程艺术》,看完后对DOM有了一定了解。接着看《JavaScript高级程序设计》有了更深刻的了解,当然接下来还看了一些书,就不一一列举。我也明白书看的再多,不如实践来的深刻。我的桌子上还躺着《JavaScript The Definitive Guide》最新影印版等着我完成了。
      不得不说一下我对JavaScript的一些看法,我觉得和PHP有一些相似,都是一个从屌丝到高富帅的逆袭过程。而且JavaScript毫无疑问已经是浏览器平台的霸主,其已经是目前浏览器端唯一的编程语言。而目前由于Node.js的出现,在服务器端也是独树一帜。当然也可以跑在Java虚拟机上了。
      很多人对JavaScript有一些误解,一个常见的是关于和Java的,有的说毫无关系,有的认为是其子集(这个错的离谱)。其实《JavaScript The Definitive Guide》已经说的很清楚,JavaScript语法源于Java(在设计时候也要求让其看起来像Java),其函数式编程来自Scheme(Lisp的主要方言之一),其基于原型的继承方式来自Self。JavaScript中不太好的特性比较多,而且很多东西比较迷惑人,但总体来说,是很容易上手的。
      因此我现在觉得学编程的比较好的方式是从HTMl+CSS+JavaScript开始。然后再学习一些较底层的语言或者其他语言,有很多人推荐从Ruby或是Python开始,我也觉得挺好;也有很多人推荐从函数式语言开始,但我对函数式语言不了解,《计算机程序的构造和解释》也只是翻了几页,所知的只是JavaScript中的那些。
     PHP也学过一点,跟着书上例子实现过,但总体来说,也是HelloWorld水平。然后Ruby最近看了点,我很喜欢,打算好好学习,因为我喜欢web方向,也想研究下Rails。
     不得不说,以上的过程正好是在暴露我的缺点,什么都想去玩一下,到最后什么都不会,但幸好我最终还是发现了这一点,而且以前想学的东西都了解过了,就不再像当初那样什么都想玩一下。而且现在招聘更看重基础能力,算法、数据结构,计算机网络,操作系统等等之类的。因此修炼内功才是关键,也玩够了,该定下来了。当然最重要的是,我希望这些话不只是说说而已,而是必须付诸实践。路已经选择,能做的是怎么走的更好。
     路漫漫其修远兮。

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics