⑴ 工作快一年的程序员,感觉自己的技术提升很慢很慢,很捉急。
那你为什么还是要总是拷贝代码呢?这个习惯慢慢改,你就有提升。
自己用的框架会搭建吗?引用的包知道是干啥用的不?
⑵ 程序员为什么总是加班
程序员为什么要加班
首先,假设这个程序员是一位职场新手甲。他刚大学毕业,没有工作经验。来自产品的需求,他要理解很久才能做。然后开发的过程中会遇到各种问题,如果经验不足以支撑他快速完成任务,那么只能求助于网络,书籍,熟人。如果这些都帮助不了他。他需要求助于同事。但是次数频繁,同事会厌倦于帮他解答;他也会羞于咨询。这时,他一天下来,基本都会卡在一个很简单的问题上。下班了,他还没有完成任务。没错,他需要加班了,因为他的编程能力非常差。
大概没有人会知道他是因为需要处理一个并非高科技的问题。不懂技术的上司以为他是个勤奋的员工,非常看重他。可是,这什么进度还是会这么慢呢?创业的公司可等不起。这一切,如果招到一个有经验的开发人员,这一切的加班似乎都不需要。
好吧,公司开除了这名程序员或者他因“个人原因”辞职了或者公司再招到一个相对有经验的程序员乙。当然,有经验的代价就是公司要付双倍的薪水。所有之前的需求在他这边都没有遇到过加班的情况。他是一名非常有经验的程序员,他在过去的二年时间一直在处理相关的开发工作。到这边来,所有的问题都是小意思。他的优秀表现让公司惊喜和意外,公司觉得即使再招十个之前的员工也比不过他一个人。所以,双倍的薪水又有什么呢?
一段时间后,公司开始提各种各样的需求,他终于开始加班了。加班不是因为某段时间需求的总量多了。而是因为随着公司的快速发展,需求也越来越多样化。他的知识储备不足以令他总能轻松应付。他变得和第一个程序员一样,也加班了。只不过加班的原因不一样,第一个程序员是因为一些代码的调试的原因,而这位有经验的程序员是因为一些从没听说过的技术。他的加班让公司同样对他很重视,甚至认为是一位好伙伴。
与此同时,公司在招他的时候也招进来了一名优秀的毕业生。他同样是一名没有经验的程序员,但是他有很好的学习能力。开发进度缓慢让产品人员和运营人员都难以接受。但是他总能在最后关头交付代码,尽管上线后需要修修补补。他经常加班来学习以便攻克技术难点,公司对加班的员工表示欢迎,因为没有人让他们加班,也不需要给他们加班费或者调休。公司为所有加班的人员提供良好的晚餐。他可以接大大小小的各种需求,只是,开发时间要比较长。但是他不会遇到那种代码调试不通过的简单的问题。相比程序员乙,程序员丙由于经常拖慢进度经常被产品和运营建议开除或者调岗。
可是后来,公司对他欣赏有加。原因有二:一是他终于可以用和程序员乙接近的时间来做任务;二是在程序员乙那里看似不可能的任务,程序员丙总能在最近关头给出解决方案和代码,只是时间比较长。产品和运营的观点发生了改变,向公司建议开除程序员乙。程序员丙是一个学习型的员工,时间让他有经验后,他成长成为一名更优秀的员工。
公司有过教训后,终于不惜花重金去请各种优秀的程序员。因为只要有一名这样的程序员,就可以少请许多败坏项目的程序员。于是,公司有了程序员丁。他在过去的一段时间里有着不错的工作经历,帮助过所在的公司完成了各种重大的项目解决了相当多的行业技术难点。他的到来为公司带来了很好的活力,所有之前遇到的问题都不复存在。他成为了所有程序员的主管。后来,他还是加班了。因为公司的良好发展,于是聘请了更多的产品和运营。开发团队忙不过来了,他作为主管要求大家一起加班。
为了缓解这种局面,他向公司申请增加程序员。公司答应了并再招了二各分别类似乙和丙的程序员,没错,公司不会再招聘类似甲的程序员。团队不需要加班了。
好景持续不长久,一段时间后,加班的情况再次出现了,因为竞争对手的努力,让产品和运营提出更多的需求。他发现产品和运营的需求源源不断地输入。可是有些需求可能用户永远用不到或者三天后就变化了。为了解决这种局面,他找来领导和各部门的负责人来商讨解决的办法。有人提出走敏捷开发。公司决定新成立一个小团队来做测试。于是公司每一个敏捷开发团队成立了。时间证明了,这个新团队终于可以不加班了。而对需求的完成总体让产品和运营满意。
乐观的局面总不能持续很久,因为线上出了一个令用户急剧下降的bug。他们需要加班通宵,或者回退代码,或者修复这个bug。没有使用很好的版本回退办法,只能是一场恶梦。持续集成和自动发布加入到他们的团队。没错,程序员丁开始在团队里实施非常好的项目管理的方案。起码发新版后,非工作时间在线上出bug,任何有权限的人员都可以轻松地一键回退。剩下的,上班再说。 ... ...
这就是我要讲的程序员为什么要加班的几个故事,欢迎各位补充。以后我也会补充更多的故事。其实所有的后面都不重要,我只希望各位创业者,在招聘程序员时,避免遇到程序员甲,争取找到程序员丁。作为开发人员的我们,也要努力成为程序员丁,保证自己的职场竞争力。还是那句话,软件开发不是高科技的东西,这世上并没有软件科学家一说。我们能做的是让开发更像一门艺术。
PS:不过高质量了,供大家看吧。
⑶ 我是程序员,做事很慢,写东西一大堆漏洞怎么办
花更多的时间去做...
做事慢通常是思路不顺.
对每个问题应该在有限的时间内, 尽可能去厘清原理及细节, 这个过程是学习的一部分. 如果每次都只是堪用即可, 不知道为何, 不知道如何, 自然会出现一大堆漏洞.
剩下的, 就是经验, 也是要靠时间及大量练习, 做累积.
小细节从为何应该使用这个型别, 其他型别行不行, 不同型别的限制在哪里, 大一点到模组类别间关系的处理方式, 为何要这样, 如何做到, 甚至于系统架构, 运行环境, 效能等等, 都是要不断思考的; 只有经过思索原理与差异, 并大量练习累积经验, 才能很快速的对每一个细节选定适合的作法. 如此不断精进, 才是真正的提升速度, 而不是虚有其表, 华而不实.
⑷ 程序员怎么才能提高代码编写速度
方法很多,说说我的想法
电子文档,可修改性强,想到方案,觉得差不多,就去做。因为复杂的程序,靠单纯思考是做不出来的。
例如你现在正在看的回答。我看到这个问题时,脑子里有很多想法,但不知道怎么写才能通俗易懂,所以我就一个一个列出来,
然后一个一个完善,然后调整顺序,不需要的还得删除。而代码也是如此,在写与改的过程中,你会有更好的方案,这也是一个练习的过程。
善于利用软件,使用写代码的专业软件。像 VS Code、eclipse等。有很多功能,我都不知道,但我知道vscode可以搜索文件内容,当你在一堆文件里找一个文件,或文件里找某个函数时,在知道名字的情况下用搜索功能,能帮你省很多时间,还减轻眼睛负担。用好手中软件。对开发十分便利。
记不住文件名,可以建个txt文件备忘。txt是个好东西。很多记不住的都可以用txt,只是得规划好。别建了一堆txt,自己都分不清。当然这规划也需要时间历练。
有空还可以了解一下命令行,脚本文件。有些固定的操作可以写成脚本。不需要专门去学,只要了解一下,知道有哪些功能,就行了。具体编写可以网络。
注意休息,疲劳的状态肯定是跑不快的。早睡也许觉得没有更精神,但熬夜会更没有精神。早睡睡不着??可以试试早起,强迫自己早起,到了晚上不信睡不着。工作期间记得每小时休息几分钟,放松放松精神,活动活动身体。注意饮食,马无夜草还不肥呢,要按时吃好饭。适当运动,运动能改善体液循环,下蹲、俯卧撑、仰卧起坐。这些可以早上在室内做,只要二十分钟。
看完这些可能还是一脸懵逼。能写的还有很多,但世上没有完全相同的两个人,一切还得靠自己。自己观察时间耗在哪里,总结,寻找解决方案。然后实行。
从意识到,到了解,到改变,到掌握是需要时间的,耐心点会有回报的。
⑸ 自己公司的程序员经常被业务部门吐槽,说开发的系统太慢,怎么办
那可能他们没有使用习惯吧,那如果很多人都吐槽的话,那可能是这个程序员确实水平一般吧,应该提高业务啊,或者说换一个程序啊,换一个高手再招聘一些能力强的。