前言
孟宁老师在我们第一次上课的时候说过让我感触颇深的一段话:打字速度和使用键盘的效率是我们程序员的一项基础工作,从根本上决定了一个程序员的工作效率和编程速度。这就好像在施工单位现场,地基打不牢,那能建的起来高楼大厦吗?显然是不可能的。由此可见,程序员使用键盘的效率是衡量这个人基础编程技巧是否可靠的标准之一。
结合个人日常的编程经验和使用键盘的一些技巧,在此分享一下个人的一点心得体会,欢迎大家交流讨论。
使用键盘的常用技能
对于使用键盘而言,打字指法是第一要素。所谓打字指法,是指把键盘上的所有按键合理高效的分配给十个手指,且规定十个手指应该对那些按键,当然这些规定基本上源于原来英文打字机的分配方式,如下图所示:
打字指法图示
在键盘中,第三排键中的A、S、D、F和J、K、L、;这8个键称为基本键(也叫基准键)。基本键是十个手指常驻的位置,其它键都是根据基本键的键位来定位的。在打字过程中,每只手指只能打指法图上规定的键,不要击打规定以外的键,不正规的手指分工对后期速度提升是一个很大的障碍。
空格键由两个大拇指负责,左手打完字符键后需要击空格时用右手拇指打空格,右手打完字符键后需要击空格时用左手拇指打空格。
SHIFT键是用来的进行大小写及其它多字符键转换的,左手的字符键用右手按SHIFT,右手的字符键用左手按SHIFT键在键盘中,第三排键中的A、S、D、F和J、K、L、;这8个键称为基本键(也叫基准键)。基本键是十个手指常驻的位置,其它键都是根据基本键的键位来定位的。在打字过程中,每只手指只能打指法图上规定的键,不要击打规定以外的键,不正规的手指分工对后期速度提升是一个很大的障碍。
空格键由两个大拇指负责,左手打完字符键后需要击空格时用右手拇指打空格,右手打完字符键后需要击空格时用左手拇指打空格。
SHIFT键是用来的进行大小写及其它多字符键转换的,左手的字符键用右手按SHIFT,右手的字符键用左手按SHIFT键。
常用快捷键和VIM命令
列出以下的常用的CTRL组合键 : Ctrl + A 全选 Ctrl + B 整理 收藏夹 Ctrl + C 复制 Ctrl + D 删除/添加收藏 (在Word中是修改选定字符格式在IE及傲游中是保存为收藏) Ctrl + E 搜索助理 在Word中是段落居中 Ctrl + F 查找 Ctrl+ G 在Word中是定位 Ctrl + H 历史记录 在Word中是替换 Ctrl + I 收藏夹 Ctrl + J IE7.0里的源 Ctrl + K 在Word中是插入链接 Ctrl + L =Ctrl+O 打开 Ctrl + M 网页搜索框中的确定(等于回车)在Word中是调整整段缩进 Ctrl + N 新窗口 Ctrl + P 打印 在Word中是等于Ctrl+Shift+F12 Ctrl + R 刷新 在Word中可使段落右对齐 Ctrl + S 保存 Ctrl+T IE7.0打开新选项卡 Ctrl+U 在Word中是给所选内容加下划线 Ctrl + V 粘贴 Ctrl + W 关闭当前窗口 Ctrl + X 剪切 Ctrl + Y 恢复上一步操作 Ctrl + Z 撤消上一步操作
Vim有许多有用的功能,可以与现代文本编辑器竞争,如Sublime Text,Atom,UltraEdit或jEdit,其直观的命令图示如下:
vim命令图示
训练方法&个人心得
练习是最主要的是提高打字的下限,保证思路清晰是提高你的上限。下限的意思式是,同时打一句hello world你的速度有多快,上限是你多久可以想到这里需要一条helloworld代码。
在起步阶段很多时候是上下限都不快,我刚开始也苦于觉得要打字快才行,总是没有突破,直到工作后代码量真正上来了才感觉下限好一些,这个时候阻碍自己的是上限。当编程水平又上升到一定阶段时,你可能看一眼需求就能知道大段大段甚至整体的代码,那这个时候就又会回到到下限是阻碍点,如此反复循环,直到保持一个相对正常的平衡点。我之前找到过一个练习敲代码的打字练习网站,不过用了一会儿感觉就是噱头。
(1)将输入法默认英文,中文情况下也默认使用英文标点,这样你在打类似双引号和点的时候不会来回切换
(2)之前大写总是小学时候老师给养成的习惯用大写灯,后来硬板过来用shift好了很多(如果不编程,可能这个恶习我一直都会在)
(3)找一个趁手的ide,每天适当了解一些快捷键,这个过程比较漫长但也不会很慢,随着开发三个月足够熟悉大部分快捷键(比如批量变量重命名,快速打印,查找引用等一系列)有时候真的不是实打实的敲才算快
(4)再有就是看你还在大学,先估计你代码技术还在起步阶段(如果不是其实也不影响观点)这个阶段有时候看视频课里可以留意下老程序员的一些编程操作,敲同样一行代码一旦某个操作你发现比你快,记下来。
(5)最后,说这么多废话还是得练习再练习。先敲5万行代码,回过头再看这个问题可能你会更侧重于我说的那个快捷键的技巧思路。
这里强烈安利大家一个针对程序员的英文打字速度练习网站:https://www.keybr.com/,通过这个免费的在线打字导师,打字速度测试,练习你的触摸打字技巧,学习打字更快,错误更少。
这里给出大家展示几个练习过程的示例,可以根据实际的练习效果参考一下:
-
实施例1,在15天的过程中练习4小时20分钟后,从30到70的WPM
-
实施例2,在12天的过程中练习2小时20分钟后,从35到70的WPM
-
例3,在11天的练习中练习5小时30分钟后,从不到20到8个WPM的体面跳跃
-
实施例4,在11天的练习中进行2小时10分钟后,打字速度保持在~70 WPM(已经很高),但精度提高了
-
实施例5,在22天的练习中约10小时后从20到45的WPM(是的,有时需要更长的时间)