如何提高程序员的键盘使用效率

如何提高程序员的键盘使用效率

【全文相关】

猿龄:4年;

第一年:那年刚进大学,一次社团聚会上手机没电了,问同学借充电宝,同桌文院的老师打趣说:学计算机的出门不带充电宝的吗?一时尴尬;

第二年:大一新生要换笔记本,问我编程用游戏本还是办公本,我说办公本。他问游戏本性能会不会好点,我说办公本;

第三年:水友先后换了机械键盘,安利我也换换。机械键盘的手感跟我敲代码八字不合,现在依然敲着巧克力键盘,要不是嫌占地方,甚至还想买个薄膜键盘;

第四年:有个同学打字速度快到飞起,十分羡慕,四年里我尝试过练习打字,心想可以提高编码效率;

互联网以前有个梗,世界上有三种人,男人女人程序猿;

程序猿要用程序猿的观点看自己,而不是其他行业人的观点;

第一年:第二次聚会,我还是没带充电宝;

第二年:看到不少背着游戏本取暖写”Hello Word“的习武之人;

第三年:水友机械键盘用的最多的地方就是2K;

 第四年:现在主要欠缺的应该不是打字速度;

程序员 使用键盘/输入 最常用的技能有些?

1、顺手的键盘

2、顺眼的输入法(win10推荐自带输入法)

3、语言关键字

4、Windows快捷键

5、IDE的选取

  编程:优秀的IED > 能用的IDE > 文本编辑器 > 不友好的IDE

  学习:文本编辑器 > 能用的IDE > 优秀的IDE

6、IDE快捷键

7、VIM命令

8、输入速度

9、ctrl+S/Z/X/C/V...

常用的是这些,可能还有其他的,但基本要么不常用,要么目前自己编程水平用不到;

如何训练这些技能?

技能1-6:

  首先要知道这些概念,然后熟能生巧,平时多用用就会了;

技能7:

  不要为了用VIM而用VIM,不要为了用VIM命令去用VIM;

技能8:

  好比游戏本和机械键盘,诸如此类还有内存条和固态盘(现在一般不用自己考虑了),我自己之前只加过内存条,当时需要开Matlab,又想学安卓,所以对内存有需求。没加固态盘是当时感觉,电脑开机慢点就慢点好了(因为完全休眠,其实win8开机也很快,不过除了这个win8没什么友好的了),软件开慢点就慢点好了,写hello word又不急,i3处理器一样可以跑AndroidStudio。主要的是目前都在学东西,所以物理硬件的延迟并不是什么问题,cpu跑的再慢,都比人学习的时间用的少,在跑程序的时候完全可以去回顾下代码的逻辑,急着看到运行成果,不理解代码的内部运行,是有些得不偿失的; 

  其实现在的IDE大部分都挺友好的,并没有什么输入量;

  所以在IDE的加成下,输入速度对于学习者来说,是远远过盛的; 

  以前看过一篇博文,虽不能以偏概全,但也很是受用:

  https://blog.csdn.net/csdnsevenn/article/details/82935038 

  当你感觉你的手速匹配不上技术的时候,再单独去练习手速;

  当你感觉你的硬件匹配不上技术的时候,再单独去提升硬件; 

  大学期间有位挺敬佩的一位学长,打字没我快,技术第一,十指不全;

  对于我自己而言,通用技能不是主要因素,因为对我来说都足够了;

技能9:

  ctrl+S很重要,不是每个编辑器都天生会自动保存;

  ctrl+C/V学习的时候用不到,但在学习之后的很长一段时间,可能写点东西就靠这个了;

达到什么程度才算合格?

  还是匹配程度的问题,当你的技能匹配上你的技术的时候,就合格了;

  对于初次接触编程的大一新生来说,知道怎么打字就合格了;

  不过前提是技能和技术要同步增长,并不是说初次接触编程的大一新生以后也只需要懂如何打字;

推荐训练这些的技能的游戏或工具或练习题,并给出完成训练以后达到的熟练程度

(量化指标如正确率、速度等)

  综上所诉,以此类推,对程序猿来说,输入训练是为了开发速度,不是为了输入速度;

  推荐训练的游戏:编程;

  推荐训练的工具:自己会用的IDE或者编辑器;

  推荐训练的练习题:自己学过的,会做想做,需要用代码实现的东西;

  

  训练士兵的时候,如果痛感减弱,死后复活,最好的训练方式当然是实战;

  不仅教官最乐意接受,士兵也会最乐意接受(跟VR游戏一样);

  程序猿的输入完全满足以上条件,所以尽管实战,大不了重启;

给出完成训练以后达到的熟练程度

写了课上选做的程序化输出计算题(B/S架构),以下是运行截图:

登陆界面

用户界面 

 创建三套不同类型习题的过程截图

  

  

  

  

  

 三套习题的题目与打印

  

  

  

  

  

  

正确率:基本实现了的都能用

速度:抽晚间时间写的

上面两个指标是用于评价输入的,对于实战,量化指标可以参照敏捷开发;

就我认识的而言,并没见过会写项目但手速跟不上的程序员;

但是打字飞快,开发很慢的程序员太多了;

原文地址:https://www.cnblogs.com/ustca/p/11564404.html