【字娱字乐】编程到底怎么编?!

来源:互联网 发布:mac卸载app怎么清理 编辑:程序博客网 时间:2024/03/29 13:37

本文绝非帮大家解决这个同样困扰我的问题,所以希望在这里找《葵花宝典》秘诀的还请绕行!

笔者仅仅是在自学了一段时间Java之后,想要总结一下学习过程中一点一滴的体会,一个是为了记录自己的足迹,一个也是让热心的同仁多多批评指正!

下面的顺序没有什么大纲而言,仅仅是个人想到什么就加进来的,后续本文会一直更新下去,只要有新的心得体会就往这里加,编号顺着加,真心希望有人批评指正!

 

第一部分  形而上

1.语言的特性只可意会,不可言传!

无论你是要学面向过程或者面向对象语言,还是要学其他类面向对象或者类面向过程语言,请千万不要相信能够找到一段文字描述给你解释清楚这个语言是这样这样这样的,或者是那样那样那样的;笔者看了一些教学视频,从来都没有人花很多时间来讲解什么是面向对象,什么是面向过程;相反,都是开篇讲解一下其大致概念和主要特点,然后就开始coding;开始笔者学Java也郁闷,到底尼玛什么是面向对象啊?!但是这里要说的是,如果你坚持coding下去,你会在过程中去意会什么是面向对象。至于意会到什么程度,就要看你的灵性了,当然跟你coding的数量也是有关系的。如果你是一个Java程序员,大多数的问题你都能顺手的解决并且不会有太大的代码返工率,那可能你对面向对象已经意会的差不多了;但是笔者相信让你跟一个才接触Java的人讲什么是面向对象,你还是讲不出来!这个跟讲解1+1=2不一样,反而跟一个亿万富翁试图说服穷屌丝有钱也不是那么美好的事情一样。--added by Light 20150113 , 到后来,才发现,传说中的只可意会不可言传意思就是说,不能眼高手低,不仅要多看还要多动手联系。。。

2.对自己的代码饱含热情!

当你着手写一个项目时,你就要把你的coding的热情倾注到其中;你要有一种看着自己的项目日臻完善而自娱自乐的心境,要热爱你亲手coding出来的东东~~笔者在写第一个勉强算的上小项目的项目——坦克大战,在开始时,看到自己的坦克能够根据键盘指令动起来,激动的在QQ好友(有不少都是Java程序员,被鄙视的不行)里炫耀一圈;难道笔者不知道这是Java程序员开始学时都会做的吗?那笔者为何还向那些好友“炫耀”?是的,笔者根本没有要跟他们比,笔者只是沉浸在自己对这段代码的热爱中。正是这份热爱,让笔者接下来两个星期,一直在不断的完善坦克大战的功能和修复一下BUG;每次打开eclipse,都忍不住运行一下,把里面的功能使用一遍,像是对自己的一种肯定;真的希望自己永远都能保留这份热爱。

3.不要闭门造车!

牛顿说,如果我看的远一些,那是因为我站在巨人的肩膀上。笔者想说的是,我们一定要争取站在巨人的头顶上,因为如果巨人不是残疾的话,站在头顶上看的更远。此时想起笔者前几日看过的一篇文章,其中有一条总结就是:在IT行业内,全局中的问题的解决方案往往比局域环境中问题出现的要早,千万不要让已经在其他地方被攻克的难题把自己击倒!说白了,不要认为coding中有抄袭部分很不耻,相反,如果所有代码都是你自己憋出来的倒是有点可耻(顶级大神开发算法除外),因为你肯定耽误了进度。比如,在坦克大战游戏开发中,笔者想要增加坦克的攻击性,那直接问一下度娘和谷姐,将各种算法综合审视一下,然后变换到自己的项目中,这一点也不减少成就感;因为对于这种已经有相对成熟并且没有实际价值的东西,即使你憋了很久,想出了一个算法,又何必呢?!

4.勇于分享,勇于献丑!

在上一小标题的基础之上,在“开门造车”之后,还要勇于将“车”展示出来,这样会让更多的“车友”看到你的成品;那些跟你一样勇于分享的同仁们会分享他们的意见和建议;那些格尼一样不喜欢闭门造车的同仁们会得到他们的“材料”;你自己可以获得提升;一举多得,何乐而不为?!

5.个人总结学习编程语言注意点(待完善整理)

0.当前编程语言所编写的程序运行的原理,即如何从面向程序员的明文代码到CPU执行指令、CPU处理结果再反馈给console或者客户端的;这是基础中的基础;

a.注重学习其数据类型,必要时将其中的数据类型与你已经掌握的编程语言中的数据类型做比较,总结出异同点;学习的内容包括但不仅限于:数据类型的声明、赋值以及赋值时内存的分配;

b.运算,包含但不仅包含四则运算、逻辑运算……

c.复杂类型(声明、初始化、赋值、赋值时内存的分配),此处单独同a区别开来是有必要的,这当然是笔者个人的感受,因人而异吧;

d.对语言的特性深入理解,比如:java的封装、继承和多态;一定要抓住语言的特性不断的从各个角度和纬度去深入学习和理解,终究会受益匪浅的;

e.持续不断的编程,持续不断的看别人的代码 —— 这里会锻炼 语言自身的语法、一般书写规范、设计模式;当然设计模式可能需要看一些进阶的书籍;但不可否认,即使是书籍中的设计模式,也是前人无数次编程总结出来的宝贵的经验,我们去看书籍只是让我们自己更快的站在“巨人的肩膀上”。

 

第二部分 形而下

1.异常处理和else(default)处理!

在coding中,随手对异常处理或者else/default等分支进行简单的输出操作,可能会对你调试起到很大作用。因为最头疼的是,当你启动程序时,啥反映也没有,如果这样你基本上要从头缕一遍,费时费力,事倍功半!当然,在工程代码中,这些帮助你DEBUG的代码要在提交前注释掉,不然你老大会找你谈心的。

2.try块中打开资源一定要在finally中关闭

这个常识也是在开始写代码时一定要记住的,后面才能不断强化印象;这里列出来同样是因为如果没关闭资源会使程序崩溃,会使你自己万劫不复!!!

未完待续……

0 0
原创粉丝点击