在本科阶段应该如何学习编程?本人大二,之前一直在学习新的开发技术比如 Android ,前端。也写过几个 app 和网页,但是貌似学习到一定阶段,感觉编程就是不断的复制粘贴,所谓的面向 google ,面向 github ,面向 stackoverflow 编程。
这让我感到疑惑,这种编程貌似是个人都能做,本科生和培训的人的差距在哪里?在于算法数据结构吗?在于操作系统?
可是在实际开发中基本不会涉及到高深的算法和数据结构,基本的大家都会, google 一下都没问题。
所以我有点困惑,究竟应该怎么学。继续不断研究开发技术做项目?还是好好研究本科基础课程,比如算法 操作系统 和计算机网络?
1
shippo7 2016-03-11 20:58:03 +08:00
你是想学编程还是想学计算机?
随着软件技术的发展,现在程序开发的门槛越来越低了,开发 SDK 中打包了算法,线程管理,内存管理, UI 等各种框架,让开发者可以把更多精力放在功能设计上,而不是基础计算机理论。所以给人感觉,上个培训班学个编程语言就是懂计算机了。但是这样和学个 Photoshop 在照相馆打工没什么区别,在照相馆里 PS 照片很熟练的打工小妹真的懂艺术和构图吗? 为什么 Google, Amazon 这样的大公司面试时如此看重算法,如果你需要将 Google 的搜索相应时间减少 10%,难道不需要懂得高深的算法?那时你需要自己发明更高效的数据结构了。 将计算机科学学习到多深,在于你想做什么类型的工作,做什么层次的开发。 |