这是个不是好回答的问题,但这确实是一个值得思考的问题,其关键在于到底是什么造成了计算机发展的迅猛,而工具在其中起到了什么关键作用?作为一个程序员,如何理解并应对这种发展?
而这些问题带给技术人员一个直接的焦虑便是技术的更新太过迅猛,对工具的追求更甚于理论,而不清楚什么才是核心的竞争力。
从使用键盘说起,键盘对于程序员来讲,是基本且几乎唯一的代码输入手段,任何源代码的来源应该都来自每一个程序员的敲打。所以打字的速度的确实是生产力的体现。
不过当我们实际编程的时候,对于大多数新手或者像我这样的学生而言,code的速度是完全依赖于思考的速度,或者说无论打字多快,对于code而言都是过剩的,很少会出现打字的速度跟不上思考的速度。
当然这也是根据情况而言,在编写java时,大部分初学者可能都会出现寻找快捷键的经历(java的编程特性在初次接触会照成大量的冗余,但功能却较少)。而编写C时经常出现想一想,写一写(防止内存泄漏)。而这两种不同语言的编写经历在某种程度上说明,键盘的效率关键是用来处理具有某种模式以及重复代码或者重复操作上具有明显提高。
但软件工程的一个关键原则是高内聚,低耦合。其中便包括减少重复,或者让重复的事情计算机来做。
而这也是大多数成功的设计所采用的原则,代码要精不要多。
而在迅猛的发展过程中留下的大部分是良好的,稳定的系统。而越是重复,冗余的代码都是在不断淘汰。
这也是计算机发展迅猛但依然生态良好的一个原因:劣品没有生存的空间
所以编写良好的program是我们程序员的目标。而工具,虽然重要,但他不是code,
code and poem ,they are the same
PS:原本想从一些编程经验讲起,不过因为大部分是好的设计和code,所以经验不具有参考性。而键盘的问题其实以个人观点在于如果有更好的输入方式代替,还是选择更好的输入方式。当年的五笔输入法
其实也侧面反映计算机领域很多技术的淘汰是转眼间的。
不过只关于键盘的问题,我个人建议是用Linux系统,用windows系统其实是不会养成熟练使用键盘的能力的
我个人其实是十分喜欢鼠标和图形化界面的,但关键的问题是
键盘的输入本质是一种字符流,而字符流是可以形式化的,这种形式化理论上意味着可以自动化,
大部分的服务器运维和构建都是基于字符的本质的一点是自动化,并且符号不存在鼠标和图形化的模糊性,所以键盘的关键不是键盘本身,而是其背后的字符流,而字符流是一种基本的概念和工具,是不会淘汰的,但键盘可能因为未来自然语言处理,或者专家系统等人工智能的出现而革新,但字符流是不会被淘汰的
其实从人机交互的角度看,键盘无疑是及其成功的设计,不仅考虑了一般用户,而某些热键其实是对残疾者设计的,而盲键也进一步给盲人的使用带来便利。
所以计算机文化中键盘无疑是不可替代的符号。
原文地址:https://www.cnblogs.com/KagariAtsuko/p/11529901.html