谈谈多门程序语言的学习策略之一 导言

作为一名程序首先要选好一门程序语言,这重要性好比找对一个老婆重要,可是,程序语言毕竟只是一门工具,不像老婆那样选了就很难换了(当然不合适离了不也一样..呵呵),有时候,在实际需求中我们需要,一定程度的"外遇"才能满足各种需求,但是,"外遇"不是每个屌丝都能碰到的好运,还好我们程序员要碰"外遇"太简单了,直接上官网,下文档,接下来,就是开个房间...苦读文档...补充一下寻找"外遇"之前先把"老婆"找到,不然就不叫外遇了...

当年的"老婆"现在的"小三"

如果,我们都把美女的渴望,放到对程序语言的学习上面的话,估计没啥是学不好的...

竟然,我们是有"家室之人",不是当年一样啥都不懂的"年轻少年".作为有着一定经验的男人而已,竟然,开房了我们就要一看到底...

"老婆" "小三"

java lua

在经历一段比较漫长的事情后,我们终于有了一个"老婆"其中的艰辛,当然只有我们心里清楚,我们为了以后能更方便的找到"外遇",作为一个立志于建立"后宫"的程序员,我们要好好思考,我们是怎么把"老婆"搞到手的.

作为一门程序语言,我是这么想的:

文件后缀 -> 关键字 -> 程序输入输出 -> 高级数据类型(即数据结构) -> api

说得挺抽象的,当年,我是这样追现在的"老婆"

程序文件后缀

  1. java的文件需要以.java文件保存,然后通过对.java文件进行编译,生成最终用来运行的.class文件

    例如有如下一段代码 
    public class Hello{ 
    public static void main(String[] args){ System.out.println("Hello world!"); } } 将这段代码保存为

    .java文件!

    接着我们编译代码 
    javac Hello.java //编译代码 
    Java Hello //运行代码

从这里我们可以知道,一个程序代码一般而言是需要通过一次编译(手动(编译语言),或者自动(脚本语言))才能执行,简单来说就是需要一个"玩意"(编译器)把我们写的类似于自然语言的东西,通过这么一个"玩意"(编译器)编译成机器代码以后,我们写的程序才能真正运行起来!

接下来,我们面对"小三"的时候,还需要搞清楚这点吗?我们直接开敲就好!

print("Hello world !")

这样,我们就开始了我们的"外遇"之旅,额,应该是lua学习之旅,现在,我们还需要搞清楚lua的文件后缀是多少,怎么编译的吗?"女人"不都一样吗!

关键字

当年,我们追我们"老婆"的时候,需要知道"老婆"的脾气,爱好,等等东西,总结起来就是,找"小三"的时候,我们也需要这么做,例如,lua

and break do else elseif end false for function if in local nil not or repeat return then true until while

从这个lua小三爱好表里面看到,我们可以看出,有些"爱好"跟我们追"老婆"的时候不也一样,if,else..那么,我们只要针对一些我们"老婆"没有的爱好进行调查,例如

function,nil,local 等

当然有些"爱好"是相同的,例如,我的"老婆"喜欢善良的男人,"小三"也喜欢善良的男人,但是这个善良的男人该善良到何种程度才算得上是,"老婆"或者"小三"喜欢的类型,这个就需要我们自行琢磨了...就好比

java的else if跟lua elseif 是一样的吗(注意关键字!)?虽然,做的事情都是一样的.当然,这些不应该成为我们需要花时间的地方,我们应该把更多的时间放在"小三"跟老婆不一样的地方.

所以,最后,我们只要学习一下,一些新增的关键字就足矣!

程序输入输出

我们把以上几点搞清楚以后,我们就可以更"小三"进行一些papa(打键盘的声音)的事情了,我们一个程序的运行其实,干的就是这么一件事情

接收我们输入的参数 -> 处理我们的参数 -> 输出我们期望的参数

那么,根据,我们当年追"老婆"的时候,经过,一番通过的学习以后,我们可以搞清楚输入无非有如下情况

输入 
1. 控制台输入 
2. 文件输入 
3. 变量输入

输出 
1. 控制台输出 
2. 文件输出 
3. 变量输出

这个过程,应该在我们当年搞"老婆"的时候已经烂熟与心,现在搞"小三"的时候,只不过是变了一点而已,例如,以前"老婆"的是B杯,现在的"小三"变成了F杯而已... 例如当年我们控制台输出的时候是这样写的

Scanner s = new Scanner(System.in); 
String s2 = s.next(); 
System.out.println(s2);

现在Lua变成了这样而已

a = io.read("*number") 
print(a)

只是一些语法的改变的,"胸"(IO流)还是那样的"胸"("IO流")所以,男人们改变一下手法即可!当然,要摸熟则需要一定的时间

高级数据类型(即数据结构)

对于,基本数据类型,其实,是门程序一样都不会有太大的改变,不过,对于高级数据类型就可能有些变化,例如,java的数组,就肯定没有php的数组强大,例如,java有专门的泛型,php则是万物皆是泛型就好比一些女人是M属性一些女人是S属性,一些女人则是SM属性...还是拿java说事,在C语言的年代,我们需要深刻理解什么是list,stack,map才能写出相应的代码不过在java 已经打包好实现,我们自己使用就好!

无论语言如何变化,对于我们知道list,stack,map 是怎么一回事有影响吗?我们知道list,stack,map该怎么用就好,语言本身实现了,我们直接就调用,没有的google一下找实现,还没有的自己写一套..不过,一般google一下都有实现了吧...还没有的话,莫非是你自己自创的语言?

List arraryList = new ArrayList(); 
arrayList.add("oh yeah"); 剩下的自己领会吧...

一切的基础API

到最后,最激动人心的一部分了!当我们,基本把一个"小三"搞到手以后,就是开始细致了解她的时候了,至于怎么了解,当然就是在日常生活中慢慢深入,对于一门程序语言而已,API是必须学习的一部分,基本上,要算的上熟悉一门语言,API是必须烂熟于心,这样才不会把时间浪费在一些重复制作轮子上,也可以在这个基础上,把轮子做得更好!例如,学习C语言的,你没把C99标准库里面所有库函数搞明白,都不好意思说自己是学C语言的(印象中C99标准库没几个函数,当然这个是跟java的api比较)

API这种东西,我们不需要专门去学习!只不过是当我们遇到某件事的时候,第一时间是找API文档,而不是GOOGLE一下!这样,一门语言在不断使用过程中就掌握了,至于以后可能很长一段时间不用,也可以从API文档中迅速回到状态,因为API是一门语言的基本所在,掌握了API基本一门语言也就掌握了. 
当然,你对API不屑一顾的话,那就证明你已经达到了一种更高的层次,看破红尘,世事如烟...

貌似都说完了,还会有之二吗?

本文转自 liam2199 博客,原文链接:http://blog.51cto.com/youxilua/907467   如需转载请自行联系原作者

谈谈多门程序语言的学习策略之一相关推荐

  1. 谈谈Java程序员进阶的那些知识和方向

    谈谈Java程序员进阶的那些知识和方向 记得前段时间看过一篇文章谈到一种程序员叫野生程序员,战斗力极强,可以搞定一切问题,但是通常看问题抓不到本质,或者说是google/baidu/stackover ...

  2. python程序只能使用源代码进行运行吗-谈谈 Python 程序的运行原理

    因为我的个人网站 restran.net 已经启用,博客园的内容已经不再更新.请访问我的个人网站获取这篇文章的最新内容,谈谈 Python 程序的运行原理 这篇文章准确说是『Python 源码剖析』的 ...

  3. 谈谈 Python 程序的运行原理

    谈谈 Python 程序的运行原理 这篇文章准确说是『Python 源码剖析』的读书笔记,整理完之后才发现很长,那就将就看吧. 1. 简单的例子 先从一个简单的例子说起,包含了两个文件 foo.py ...

  4. python程序运行原理_谈谈 Python 程序的运行原理

    因为我的个人网站 restran.net 已经启用,博客园的内容已经不再更新.请访问我的个人网站获取这篇文章的最新内容,谈谈 Python 程序的运行原理 这篇文章准确说是『Python 源码剖析』的 ...

  5. 谈谈Windows程序中的字符编码

    sourece:http://www.fmddlmyy.cn/text7.html 谈谈Windows程序中的字符编码 写这篇文章的起因是这么一个问题:我们在使用和安装Windows程序时,有时会看到 ...

  6. 关于C#开发山寨操作系统,程序语言,浏览器,IDE,Office,Photoshop等大型程序的可行性歪论及意义...

    首先,起这么个大标题不是为了眼球,也决非本人自大,本人对技术是很一般的也就是个普通人.不过因为受一些言论,贴子,新闻等综合思考而产生. 有些人认为C#这不行那不行,只能做做"企业管理&quo ...

  7. 56岁潘石屹下定决心学Python,60多岁程序语言之父们还在敲代码,你还敢懈怠吗?...

    十三 发自 凹非寺 量子位 报道 | 公众号 QbitAI 比你成功的人,比你还努力. 上周,SOHO中国董事长.地产大亨潘石屹,56岁生日当天发布微博宣布进军编程语言Python. 紧接着第二天,又 ...

  8. 从程序语言排行榜来解读IT及Web的发展

    预测行业的发展不能是凭空预测,而需要有根据.因为预测本身就是个不太准的事情,再没根据的话,那就更是浮云了.下面,我尝试从程序语言排行榜来解读一下IT的发展方向及Web的未来.<2012年4月份编 ...

  9. [C++程序语言设计笔记一]面向对象编程抽象,继承,重写基本介绍

    今天是个不错的日子,不仅有人收了我做徒弟从此传授我有关C++的一些知识,由于前一段时间喜欢上了外挂的研究也用到了一些MFC的知识及一些Windows APIs编程,但是对C++还是没有从根本上认识.我 ...

最新文章

  1. Practical Java 摘录(四)--多线程
  2. 编译php7.0.17报错提示 undefined reference to `libiconv_open'
  3. java演练 猜奇偶小游戏开发 DB游戏必输的设计
  4. python selenium-9 grid模式
  5. Shutdown Abort :亚马逊成功迁移物流业务中最后一个Oracle数据库
  6. 【Go】优雅的读取http请求或响应的数据-续
  7. C++--第9课 - 构造与析构 - 上
  8. azkaban 入门简介
  9. python怎么提取百度首页链接_python如何获取百度搜索结果的真实URL
  10. 【Autosar RTM】
  11. 实例 -- Loadrunner实现Android / IOS 手机APP压力测试
  12. java串口rxtx_Java串口操作RXTX
  13. 图音80系列车载导航/DVD分体机安装DSA
  14. 百度云下载的压缩吧损坏问题解决
  15. jsp教师档案信息管理系统ssh
  16. Thinkpad E430 移除网卡白名单
  17. 《关于长沙.NET技术社区未来发展规划》问卷调查结果公布
  18. h5微信f分享链接给对方获取对方手机号_免费微信电子贺卡制作|微请柬
  19. 【数据挖掘】啤酒与尿布
  20. 关于Dev-C++下载及国语转换

热门文章

  1. GeneXus学习记录——创建KB(KnowledgeBase/知识库)
  2. python loadlibrary_Python ctypes cdll.LoadLibrary,实例化一个对象,执...
  3. 有些人,有些事,一转身就是一辈子
  4. mysql书单推荐_MySQL必看书籍推荐
  5. JAVA File类、IO流体验与简介(字节流、字符流、序列流、打印流、编码、递归)
  6. python彩票生成_python3学习--随机生成密码、随机生成彩票号
  7. JavaWeb图书商城-实现逻辑
  8. CSS3 input 输入框蓝光特效
  9. 阿里云IoT办公园区解决方案 附下载
  10. PEG功能化涂层修饰载玻片(生物芯片)