有关“非计算机专业如何转行做程序员”的一点思考

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m_mm121/article/details/52826360

XXX:员员好,我是12届的大先生,读了一所还可以的大学,但所学专业我很不爱好,我由于性情较外向同时又感慨编程的神奇,所以很想进入这一行,但 我去面试几家后发现就算是练习岗亭也需求一些根底,虽说大学学过C言语但觉得也根本不会用,那些面试单元是建议我去进修这方面常识再去找他,但我又对这些 培训机构不太担心,怕破费了一大笔膏火后果却欠好,如今我有些渺茫不晓得该去找找其它任务(人才市场许多多是些发卖和工场的一些岗亭)照样去进修,愿望广 大的员员们给我些指点,十分感激。

看完照样有一些感受的。作为一个科班盘算机系卒业,第一份任务就是软件开辟,然后又在征询和发卖范畴任务了许多年,再回归到开辟范畴的老码农,老汉关于该同窗的纠结心境长短常了解的。然则,要把一份任务继续地做下去,光有热忱是不敷的,假如你老是不克不及把工作做得比你身边的人更好,你的热忱就会渐渐地衰退,会开端疑心本人的决议能否准确,本人的保持能否有意义。所以,我的建议是给本人一段工夫打好根底,也借此进程验证本人的决议能否明智,就算最初的谜底能否定的,学会一些编程的技巧也会对培育本人剖析成绩的思绪有所协助。

好了,说到正题,非盘算机专业的同窗若何为成为一个程序员打根底呢?我建议走如下的步调:

  • 1. 学会一门编程言语。随意什么言语都可以,其实python很合适初学者,有本书叫《与孩子一同学编程》用的就是它。不外思索到步调2,照样选个盛行的教授教养言语吧,比方C++或许Java。
  • 2. 学好团圆数学,重点是初等代数、数理逻辑、聚集论、图论,最好再学会概率论。盘算机迷信的实质是团圆数学,不控制这些常识你若何能真正了解矢量、逻辑运算、最短途径、涂色算法这些概念呢?
  • 3. 十分十分十分十分十分十分仔细地进修《数据构造》这门课。你作为程序员功力几何,很大水平上取决于你在这方面的成就。
  • 4. 本人做一个小项目,尽能够把你学会的器械都用上。这不只能向雇用者展现你的功力,也是一个把所学常识融合贯穿的进程,只要做了一个项目,你学的常识才真正酿成为了你控制的技巧。

有人看到这里能够要说了,码农对编程言语熟习就行了,学那么多不相关的又何须呢?

老汉打个不太适当的比如,团圆数学和数据构造就像一个武林高手的内功,编程言语则是招式。内功不可,就算会许多招式,可以恐吓恐吓武功普通的人,然则碰着打硬仗这些花拳绣腿就不论用,会死得很惨。惋惜如今许多人不注重内功,不少盘算机专业卒业生连客栈和队列是怎样回事都不晓得,更别提二叉树、链表、图构造了。不论碰着什么需求,下去就界说几个大数组,你能期望他编出多高效的代码?比方如今互联网抢手的大数据,算法效力是中心成绩,假如谁整出个O(n^2)的算法,信不信老板分分钟砍死他?

再说远一点,学会一门编程言语轻易,通晓很难,难就难在了解它的精华。有许多开辟者热衷于最新潮的技巧,明天玩玩NoSQL,今天搞搞Html 5,说起来头头是道,然则都深化不下去,历来没有真正没有了解这些技巧的精华,也就做不出一个能发扬出它们真正优势的产物来。这常常就是由于内功不可而心态又很急躁。(弥补一篇文章:《叶正盛:再次写给我们这些急躁的程序员》)然则程序员是靠代码措辞的,只是擅长对某个技巧侃侃而谈没有任何价值。Linux和Git之父Linus Torvalds说过:“Talk is cheap. Show me the code.”(空口说无价值。拿你的代码来看看。)所以老汉要说,作为一个程序员,不先练好内功就写不出优雅的代码,如许是走不远的。

怎样学呢?这些不需求花许多钱去培训机构,并且从我面试过的许多培训黉舍学员的表示来看,绝大局部人学完了连MVC的概念都没搞明确,花半年工夫就学会了if…else,何须去浪费这钱呢?如今一些大学有旁听的学分课程,花几百块钱就可以听一门课,还可以交功课做试验(比方:http://zhidao.baidu.com/question/245256206.html)。建议你尽能够去选最好的黉舍,不只仅是教师程度高,症结是同窗的高程度会促使你对本人有更高请求,这和培训黉舍的气氛是完整分歧的。

假如你在以上4步都做得很好,那么你应当可以在码农这个行业取得一些时机,剩下的就看你在任务中的表示和积聚了。码农的修行是一个临时进程,盘算机范畴每年都有新技巧呈现。做了码农,就得活到老学到老,注定一辈子苦兮兮的。假如你爱好这种觉得,那么你的选择能够就是准确的。

展开阅读全文

没有更多推荐了,返回首页