当程序员并不是说你会计算机对这方面有研究就可以当的计算机这一个工作非常的枯燥,而且是需要你有一定的耐心和忍耐力的。很多兴趣都是一开始让心满满,到最后却被困难给打倒了。程序员这项工作,我身边就有同学在做,一开始也是觉得自己是很牛的,他后面还不是被现实所打败了。
我大学有个同学刚开始入学的时候,他对计算机和编程都非常的有研究,没有跟老师说过,将来想要当一个程序员,可是当他实际操作的时候,却不是这么一回事,老师让他去机房里面管一些数据和调一些编程,会发现很多的小毛病,虽然说只是错了一个数字,但是你整个程序全部都要重新改,非常的麻烦,看上去很简单,但是却要有很多的耐心去条数据。
而且听老师说,程序员这份工作是需要经常熬夜的,当你有任务十就一定要把它弄好,不然可能整个公司都要等你这一个程序,所以熬夜加班是经常的事情,我们都会看到很多程序员都秃顶,也是因为工作的压力,还有长期的熬夜才导致的,不仅仅是工作上的枯燥,你可能还要接受外貌上的改变。
在使用计算机和调程序上肯定是很酷的,但你一定要有心理准备,你将来会变成什么样?我建议你可以去网上搜索一下程序员工作五年之后的状态,如果你能接受,那么我觉得你就合适当程序员。
1. 逻辑思维力(或推衍的能力):这个是做称职程序员的底线。比如不能写的代码出个Exception就抓瞎不知道哪里出了问题,而是有能力从Exception顺藤摸瓜反推出哪里出了问题。Code即逻辑,Code有问题即逻辑有问题。没有逻辑的人是无法找到逻辑漏洞的,也写不出条理清晰的代码。2. 抽象思维力:这个能力大体可以决定一个程序员的上限。没有这个能力是做不出一切皆文件这种抽象的,可以试试学习函数式编程,如果无法理解并使用高阶函数,你不适合做程序员。再来几个更初级的例子。如果你学写代码的过程中,理解指针的指针的指针这个东西的时间超过了一天,那你不适合当程序员。. 专注力:我理解的专注力只是兴趣的衍生品,你打Dota打CS打个几个小时能越打越精神,为什么?因为你觉得有趣儿。如果也觉得写代码有意思,那专注自然就不是个事儿。4. 想象力与记忆力:这个不是说过目不忘的那种,只是说你大概记得有什么类,都有什么函数,每个函数里的大体过程是什么样的。然后走路、坐地铁的时候就可以用想象力在脑子里做代码的重构啦,找Bug啦什么的,然后回到电脑前就噼里啪啦敲代码。我听说有人在梦里也能写代码,我还没有锻炼出这个技能。当然,这些能力不是必须的,你随身带个笔记本也行,就是效率低些,影响职业成长的上限。5. 英语:很遗憾地,目前多数有价值的东西都是英文的。所以无障碍阅读Stackoverflow的回答是起码的。
首先你得问问自己喜不喜欢枯燥的坐着,其次要问问自己对计算机编程语言感不感兴趣,想一想能不能接受加班到深夜,连续加班大半年,再者看看自己的家在哪里,如果想做程序员的话得去大城市,离远了家中父母是否同意;如果你不反感枯燥的生活,对计算机编程语言感兴趣,也能接受强度的加班,父母也同意你外出闯荡,那么,你就合适当一个程序员
第一兴趣是最好的老师,首先要你哦,判断自己是否对计算机行业感兴趣,如果说自己非常喜欢这一行业,那么这第一个条件就比较符合,第二是看自己是否能吃得了,每天加班到深夜的苦。996工作,这都已是程序员的常态,甚至还会有000。如果你符合以上两个条件的话,那么个人感觉还是比较适合做程序员的。
我觉得既然是计算机专业那就当程序员没问题,是顺其自然的东西。普通程序员就基本功编程算法学好就行,就能有不错的收入,要是想做高级一点的人才就要有创造力,多读一些书会有帮助,当一个程序员的条件可能就是要聪明一点,耐心一点。