|
发表于 2017-2-11 16:48:27
|
显示全部楼层
你的情况到这里已经即将接近一个分支了,和我情况差不多!
所谓基础依然还有很多扩展!
具体看这里:http://bbs.fishc.com/thread-25330-1-1.html
不过,对于C的加强来说,数据结构和算法建议找点内容看看。但是算法一定会涉及数学:《概率》、《离散数学》,《线性代数》。这些是偏向编软件的,主要是逻辑和数字操作的方法!建议看看《算法导论》的附录B,我还没看完,里面有需要用到的概率,线性代数,离散数学的知识。鄙人认为,数学不一定要学全,除非有兴趣。所以基础部分,我这种后来才开始学编程的,就只有碰到问题再学了。但是要点是理解,你必须理解概率分布,离散数列,矩阵运算的基本思维方式!如果以后碰到专业软件,可能你还需要了解积分的思维方式!
所以,看看上面的帖子你知道你少的东西其实还很多!
另,如果要马上开始应用层面的玩法,选一个适合的高级语言吧!很快能上手,而且可以写出一些方便的工具!
另另,绝望的事实是:C入门后最多,顶多,你能解决数学计算公式,或者简单的文件处理,哪怕能编一个俄罗斯方块,已经很极限了。没有网络基础,你搞不了网络应用。没有计算机原理课,汇编知识,硬件开发搞不了(单片机尤其需要这些)。没有上面帖子里的诸如“数电”,“计算机组成原理”,“计算机网络”等基础,我们这种半路学编程的,顶多就是多了一个比excel更方便的工具!所谓,专业基础,指的就是这些!就像搞建筑设计的不懂力学,顶多能设计建筑的外形而已!虽然不是没办法找高级语言解决这种底层问题,但是很多时候,你必须懂得其运作方式的基础概念才行!
虽然事实很绝望,但是并非所有人都需要了解底层知识,关键看取舍点。高级语言能解决大多底层运用问题,你不需要了解计算机如何计算1+1=2,你只需要了解如何使用加法就行了!(当然,了解计算机运作的人永远比你多一种方法,这是肯定的!)所以,上面帖子里的知识点,如果仅限于编程做软件的话,除了算法外,其他都是只需了解即可!当然如果你要走硬件方面,或者操作系统内核方面。那么,就必须深入了!
总结:
进路选择:
· 硬件方向:汇编,数据结构,算法,计算机原理,数电,操作系统原理,计算机网络……
· 软件方向:汇编,数据结构,算法,高级语言,计算机网络
好吧,上面路子介绍的差不多了。那么加油吧! 一入编程深似海,哪有学得全的知识…… |
评分
-
查看全部评分
|