从零基础到高级程序员需要走多久?

来源:互联网 发布:柳州有mac魅可专柜吗 编辑:程序博客网 时间:2024/04/27 01:52

原文:从零基础到高级程序员需要走多久?

绝大多数计算机专业的学生是零基础,即时通讯软件 其中不乏被调剂的。等到毕业之际,有的成了大神,进入BAT或者google微软,有的还是零基础……

我高中搞竞赛,编程基础还算可以。上大学以后,对计算机专业的课程安排非常失望,这还是在专业号称比较好的某个大学。

大一的时候学校不教编程思维,而是硬巴巴的教个C语言,JAVASCRIPT;直到大二才讲数据结构和算法,但是质量不敢恭维,学生准备考试居然在抄写“什么是算法”以及“什么算动态规划”和“递归和分治的区别”这种几乎没什么意义的问题(当然不是这些问题没意义,而是一群连简单背包都不太懂的人背这些问题的答案没意义)。题主可能听不太懂这些,无所谓只是举个例子。你不能只靠学校。

大一最重要的是学会写程序。C语言也好,python也好,你得学会把自己的思考用程序实现。我更推荐用C,更简单直接,适合写程序。举个例子,你想制定计划表,安排自己的时间,那这个问题就可以写个程序来实现;你想做笔记、管理自己的文件,这也是一个程序。从简单的、直接的几行十几行程序开始,比如计算器;到复杂的小工具,比如大数计算器。这个过程中你逐渐明白数组、指针、内存布局、函数,了解递归、栈、链表,然后学基本的数据结构。之后再写程序,你需要考虑代码的优雅、简单、时间空间效率高,使用什么样的方式来实现最好。最后你学会了复用,学会了调用系统API,学会了想什么就能用代码实现什么或者知道它不能被实现,你就学会了编程。

至于看什么书,先看基础的C语言教材,一定要看国外的,c primer还是什么,然后结合写程序,可以去某些在线测试平台做一些简单的编程题目。我现在用手机不太方便输入,回头补充。

学会编程当然只是第一步,不过我觉得学会编程之后的路就不用别人指导了。你是去研究什么方面、偏重什么领域都看你的了。

女生学编程最大的问题是一群傻逼男生默认女生不行以及绝大多数女生的不争气,我相信知乎有很多女神程序员,不是噱头那种,是真正职业且牛逼的程序员。我周围也有好多女生兴致勃勃的问我怎么写好程序,可惜几乎没有坚持下来的,二十行代码都坚持不了。真是需要兴趣啊。

希望楼主努力,一直坚持,同时找到编程的乐趣。以后当一个快乐幸福的女程序员。

补充:最开始千万不要写什么贪吃蛇、俄罗斯方块,也尽量不要着迷图形界面,那这玩意儿都是虚的,等你学好算法,学好数据结构。写代码多了,看看接口,分分钟搞定。初学者搞那个纯属浪费时间。

添加一些具体的事情: 
看经典的好书,比如《深入理解计算机系统》、《C和指针》、《linux程序设计(第四版)》等,这是能实打实帮助理解和学习编程的。兴趣的培养也有很多好书,不过我觉得学习编程带来的成就感就已经能培养起兴趣了,希望所有计算机专业的学生都能真正热爱计算机科学技术,把自己的一生贡献给它(听着变味儿了呢???)。

再补充: 有人说我上面推荐的书有点不太基础了,想想也是。
《C语言程序设计》第二版,比较薄,只有256页,是C语言之父写的第一版。当之无愧的C语言第一书。
《算法》红皮的书,可惜是用java做实例的。
《算法竞赛入门经典》刘汝佳写的。不想看上边那个可以看这个。
《程序员的数学》,日本人写的,很入门。

关于C还是python,我认为还是C吧。python对于开发者是很方便的,但是学生不是开发人员,是要学习编程而不是快速开发软件。list不是基础,指针才是。python可以代领入门,也可以用来学习如何写程序,但是用多了会有惰性,学会C和指针了才能知道那些东西到底是如何实现的。


0 0