怎样做一名高效率程序员

怎样做一名高效率程序员,第1张

总结了几条提高效率的要点

第一,要学会时间管理

一天就24小时,总要吃饭睡觉,用于工作的时间总是有限的,如何提高效率就变得十分重要了。

时间管理的关键是要事第一原则。在时间管理矩阵中,按照重要性和紧急性可以把事情分为四类:重要紧急、重要不紧急、不紧急重要、不紧急不重要。大量的时间应该花在那些重要不紧急的事情上,因为只有这样紧急的事情才会不断减少。

第二,要学会授权

学会工作授权不仅仅是leader要做的,普通的一线程序员也要有这个意识,否则会被大量紧急不重要或者不紧急也不重要的事情缠身,效率也不可能高。

很多新当上leader的程序员不敢放手,很多事情压倒自己身上,造成了过重的负担,要知道leader需要在自己的职责范围内提升整体效率,而非忙于处理各种杂事;

对于一线程序员,也会遇到很多的不重要的杂事,比如一会儿产品问你个事情,一会儿项目问你个事情,或者让你参加一些不必要的会议,一定要明确职责范围,该拒绝的拒绝,让他们去找职责范围内的人去处理。

千万不要当老好人,烂好人。

第三,动手前要明确需求和项目细节

程序员作为实现需求的一方,需要在需求方(不管是产品还是运营还是老板)传达需求的时候充分理解需求,遇到需求不明确的一定要让对方先明确了,有了明确的需求文档了再开发。

相信大家都遇到过不靠谱的产品或者运营或者项目经理,如果不在实际开发之前都明确了需求,理顺了,后面再返工的话,这样浪费了很多时间,效率必定低下。

你可以说是因为需求方不靠谱导致的,但是如果程序员本身有这个意识,会避免很多的风险。

另外,在开发过程中遇到了不明确的地方,感觉有风险的地方,要及时跟相关人反馈沟通,不要拖延。

第四,不重复造轮子

不重复造轮子 这个道理程序员应该都懂,为了快速完成需求已有的功能可以拿来封装和复用,不必重新进行开发。

其实真正能够造轮子的人还是少得可怜,能够把成熟的轮子使用的非常熟练并且在这个基础上能够做到精准的定制就非常不错了,毕竟日常工作中还是应用层面居多。

那是因为你太安逸了,技术没怎么提高,工作也没有什么挑战。这时候你需要在能力上有所提升,因此还是建议业余时间多学习点东西吧。

你可以看下这里,有很多技术资料,希望对你的能力提升有帮助,谢谢!

作为一个每台笔记本都是win+ubuntu 的半吊子伪程序员学生说说自己的看法。

当年自己往那台上网本里塞ubuntu 的时候一开始是抱着win 7 实在是拖不动了听说Linux 对系统要求低我来试试的想法干的,然后发现中文输入法不支持模糊音除了好好学习别的都干不了了。于是大一的时候我每次要写程序作业或者干正事的时候就换上ubuntu。

但是现在呢?嗯中文输入法支持模糊音了(虽然还是要吐槽一下一个无法输入“ue”的大bug),steam 里支持Linux的游戏越来越多了,我可以在ubuntu 下刷微博刷知乎刷bilibili 刷上一整天。唉我真讨厌我自己。

当然我觉得对于我这个半吊子程序员学生来说ubuntu 还是有个无与伦比的优势,一个屏幕看terminal 的结果一个屏幕debug 效率实在是高。

当然不知道是不是错觉我总觉得imageJ 在win 下的速度比在Linux 下快,而R的话貌似也是这样,所以有时候只能trade off 一下了。

------------------以上是扯淡--------------

// 以下是答案

窃以为,程序员的效率只跟deadline 还剩几天有关,和OS 无关。

理工男给人的印象往往是戴着大眼镜,宅,成天面对着电脑蓬头垢面,不修边幅。这都是表面现象,我们不要以貌取人,但很多人实际交流下来,确实发现理工男比较死板,想法比较怪,这又是为什么呢?其他理工行业我没法说,当了几年的程序员,我可以谈谈为什么程序员会给人感觉比较死板。

第一点,理工的世界不存在感觉,只存在逻辑和推理,而且这种思维是经过刻意训练过的。

普通人感觉世界总的来说两种渠道,一种是眼见为实,看到的,真实存在的,另外一种是我感受的,我相信上帝,我觉得这里很美。

显然,如果当程序员你有多过的时间在思考,我觉得这里应该这么写,我觉得这块的逻辑有问题,是效率很低的。比如有bug这事,他们需要debug,程序跟踪才可以确定问题所在。长此以往,他们必须刻意去训练自己的逻辑思维,必须去相信事实而不是感觉,所以他们感受的能力,退化了。

第二点,(好吧,这种逐条分析确实太理工太死板了),计算机的发展,让人们把简单问题复杂化。

你去问一个上世纪五六十年代的人,说我有一百个数,随机排列,我现在要把它们从小到大排序该怎么做,他们一定一脸懵逼,这很容易啊,我就排呗,给我笔纸,一会给你排好。这时理工男肯定要说,那我给你一万个数,你又要怎么排呢?他肯定回答,你傻啊,一万个数怎么排啊,累死个人啊。

这倒无关紧要,问题是有了计算机这样一个弱智儿童的存在,就必须要程序员大哥哥去帮这位只认识俩数的孩子,去做人类的事情。所以程序员就在不断探索,一些人类本能就能很简单实现的任务,教一个弱智儿童去做。

这是底层,源于我刚才听到的对话。一个码农在思考如何去判断两张是同一张。这事如果放在上世纪五十年代他一定觉得你疯了,或者在跟一个弱智儿童对话。而事实上,让计算机去识别两张是否相同还真不是件容易的事情。

说了这么多,由于程序员需要在工作中不断地去刻意训练自己如何去教会弱智儿童做事情,所以他们不知道如何跟非弱智成年人打交道。

如果你是文科生,存在不理解理工男的情况,我希望本文可以帮你走进他们的世界。

如果你是理工男码农,第一,注意个人卫生不要损毁程序员的形象,第二,感性一些,这个世界的美好不仅存于逻辑严谨之中。

ChatGPT是一个非常强大的语言模型,但它并不是万能的,在生成代码的场景下还需要人工编程和检查,所以一定程度上ChatGPT的使用是需要依赖程序员的护航,才能确保完成应用。说替代程序员的,着实是过度解读了。

ChatGPT的爆火,让我想起,同样会提高程序员开发效率的低代码平台,它的出现也同样被人类污名化,职业威胁程序员。

通过低代码平台,只需要通过拖拽的方式,或者是编辑几行基础代码,就能快速的开发出各类应用系统。最关键的是低代码改变了传统开发对专业技能的要求,现在只要掌握一些基础的代码知识,甚至不需要任何基础,就可以进行应用系统的开发!作为国内主流的JNPF低代码平台服务商,JNPF低代码平台负责人认为:低代码的本质是解放开发者的双手,让他们从重复的代码工作中解放出来,低代码在这个过程中扮演的是“辅助者”角色,而并非“替代者”。因为永远有一些容易被忽略的边缘性技术问题,需要程序员去解决,这是低代码不能替代的。

而且低代码并不意味着完全就抛弃代码,相反在平台无法满足一些复杂的业务场景时,就需要代码的辅助,当然这个过程的代码量要可控,否则就违背了低代码开发的本质。

而像市场上一些无代码平台,确实做到了看不见任何代码,但是当平台需要去应对复杂业务逻辑系统的开发时,便会显得力不从心,JNPF保留了这种灵活的开发机制,当需要更深层次的处理业务逻辑时,如果平台开发不能完全匹配,就需要程序员通过代码开发实现相关能力与服务。

而这种二次开发的需求已经超过了应用创建者的能力范围,这就需要专业的程序员基于平台去开发。

所以,与其无深究低代码是否会让程序员失业,不如去想如何通过低代码技术的加持,让程序员变得更有含金量,让低代码成为程序员工作的润滑剂。

最后,普通人如何不被OpenAI 取代。

在某些方面强于普通人的,特别是对于重复性智力劳动,如重复性写套话、写代码、画图,那么怎么不被取代?还是需要多学习、多主动思考、多实践、看更多书,做更多有挑战的事情,在认知上避免被取代的关键是不断学习和提高自己的能力,并努力适应新的环境和挑战。

为什么没有人说JVM呢?

C/C++是直接运行在机器上,而java编译后产生class文件是运行在java虚拟机上在(JVM),经过JVM解译再放到真实机器上运行。JVM相当于用软件构造了一个计算机,有自己的CPU(假的),内存(也是假的)。

C/C++(exe)->机器

java(class)->JVM->机器

这样java程序比c++运行效率低,但是因为有JVM做中介,一个 *** 作系统下编译的class可以运行在其它的 *** 作系统下,(当然要装不同 *** 作系统下的JVM)。这是所谓的(compile once,run anywhere)

还有一点C++比C慢,可只有10%,不像JAVA和"C系列"的差别那么大。

以上就是关于怎样做一名高效率程序员全部的内容,包括:怎样做一名高效率程序员、我是一个IT程序员,工作一年了,感觉上班的时候效率不高。没有学的什么东西。郁闷,我该怎么办、使用ubuntu能提高一名程序员的效率吗,如果能是怎么做到的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9324896.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存