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


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

    【全文相关】

    猿龄: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架构),以下是运行截图:

    登陆界面

    用户界面 

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

      

      

      

      

      

     三套习题的题目与打印

      

      

      

      

      

      

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

    速度:抽晚间时间写的

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

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

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

  • 相关阅读:
    树上问题
    Windows Server 2012 安装dll到GAC
    一妹子开车发现车不动,男友听完她电话崩溃了
    各浏览器对 window.open() 的窗口特征 sFeatures 参数支持程度存在差异
    FullCalendar日历插件说明文档
    Request url 各种属性值
    Your Job Is Not to Write Code
    Nice way for strip_tags a like
    sqlserver 三种恢复模式
    ASP.NET路由
  • 原文地址:https://www.cnblogs.com/ustca/p/11564404.html
Copyright © 2020-2023  润新知