博客源地址 http://www.codertown.cn/blog/?p=128
想把自己学习到的东西记录下来,同时也给你们一些参考;
我们这一辈学习编程已经够晚了,22岁才接触编程,那时候前人已经有了很多经验,即时如此,我们还是走的比较艰难;
看起来,似乎这是一条平坦大道,总是有经验的人给你指导,但是仅限于知识的堆砌,而不是方法的累积。
故此,想写一些东西,留给自己,也留给你们!同时,望大神勿喷。我相信喷的都不是大神,因为大神才懒得跟我一般见识!
前面的文字,已经提到了几个关键的地方,编程、经验、大神。
我理解的编程是,用机器能识别的语言来解决特定的问题,就是你写几句话用计算机执行,就能得到你想要的结果;可能还是表达不够,欢迎讨论。
经验,无非就是做了大型的项目,或者做了很多项目,形成了自己的思维方式或者套路来解决问题;或者遇到同类问题,可以很快的找到解决思路。所以在编程的过程中,我们要积累的就是经验。
大神,通常我们会觉得黑客就是大神,算法牛逼的就是大神,不同人眼中的大神不一样。我想说的就是,隔行看谁都是大神,同意否?
废话太多,这里就是想想有哪些话题可以聊聊。对有不同编程经验的人,可能觉得我废话很多,对于初学者可能问题多的时候才会觉得有用。我的思维就是遇到什么不明白就问为什么,比如为什么我们要学编程,好吧,这个以后慢慢说。
入门选择C语言,这是当初做的最明智的决定,因为下到硬件可以操作,上到图形界面都可以写,可以说无所不能。不过呢,现在C语言的功能一般属于底层操作,需要交互一般都用C++或者Java或者OC等,他们更有效率。
这里又有问题了,什么是底层,什么是上层?当你在做技术的时候能保持这么一颗好奇心,不用别人教,自己就能变的很强,经常听到一句话,高级别的程序员都是自学来的。
底层和上层是相对而言的,项目不同,那么理解也不同。
单片机中,几乎所有的编程都能算作底层,上层主要指业务逻辑;
而嵌入式的底层,一个是跟硬件有关,一个是跟操作系统有关的编程;
对于交互占比大的软件开发中,交互部分是上层,底层就是调用操作系统的部分内容。
我本身的工作是嵌入式开发,当然此系列文章主题是C语言,那么当然底层的说法就会多些。
刚开始学C语言,一般都是谭浩强的书,VC6.0走起,黑框框走起,这些其实足够学C语言,但是并不能更好的理解C语言相关的内容;如果想要理解好C语言,那么在linux下的C编程则是我个人看好的方法。
好了,总结一下后面要说的,编程环境:linux(redhat enterprise 5.0) + C
C中能写一写的部分蛮多的,写完了再总结吧。
碎觉,下次再写。