现实中程序员是怎样飞快敲代码的?
这需要练习打字速度,别人打字快是因为对键盘很熟悉,而且经常敲代码,所以敲的很快。
提高打字速度方法:
1. 提高击键的频率
在训练中我们常纠正每个人的击键方法,反复强调要弹击不要按键,物理课讲过“弹性碰撞”,去的快回来也快,我们提倡瞬间发力就是这个道理。手指对键的冲击力劲要合适,速度也要快,而按键只是手指在机械地使劲,既没足够的后劲又没有弹性。正确的击键动作从分指法阶段就应养成。在练习过程中我们常选择长度相同的单字,并做适当的配乐练习,目的是感觉打字中的内在节奏,以击键动作仿效弹琴并创造一种氛围。
提高速度比较好的办法是将一篇打字稿反复打,比如100个常用单词,第一遍5分钟打完,再练几遍可能3分钟就打完,几天以后再练习时发现不到2分钟就打完了,这就是技能训练的特点。提高击键频率要训练眼、脑、手之间信号传递的速度,它们之间的时间差越小越好,眼睛看到了一个字母马上传给大脑然后到手,这时眼睛仍要不停顿地向后面的字母飞快扫描。
2. 训练加强紧迫感
在九年义务教育中开展电脑打字课时已有十二个年头了,它是作为一种技能训练走上课堂教学的,当初并没有想到指法会与中文打字有什么关系,中国人在电脑上工作最离不开的还是中文,而任何一种键盘输入法都与指法息息相关。指法训练有一定的速度要求,对素质教育也是一大推动。打字需要艰苦训练克服惰性,速度与质量的要求对每个人是一种挑战,在打字过程中要专心,也要有紧迫感,既要稳重,也要有竞争意识。训练紧迫感的一个好方法是参加打字比赛,有些英文软件可以模拟比赛的环境提供给使用者训练。
这里编写速度指的是把代码敲入编辑器的速度,而不包括程序构思过程。我现在感觉自己敲代码很慢,10 个字母里面会出现 2 个字母打错。尤其是一些特殊符号,比如 < ,我使用的是搜狗,搜狗和英文切换是 shift 键,但有时候极容易弄错所处状态,很少去观察是中文状态还是英文状态,因为切换的太频繁了,比如经常会把 < 打成《, 打成 》。中文环境下打字,很快,几乎不会出现按错字母的现象,而英文状态下就经常会出现。有的人一天写几万行代码,而自己一天一直在那些也就是几百行,有时候需要撤销的时候,发现很多不撤销都是撤销的自己打错字母的操作,感觉效率很低。-----------------------------------------------------万行代码这个有些扯,只能说应该干活麻利些。敲键盘快是个很不错的特效,就像吉他手solo秀手速一样, 我觉得每个程序员都应该追求一下。远离鼠标鼠标的定位功能远没有键盘精准。用光标键移动几下,和鼠标移动几十个像素,速度上完全不能比。并且敲键盘是讲究节奏的,当你双手都放在键盘上的时候,如果为了某些操作,而去拿鼠标,就会破坏这个节奏,这样会影响你的输入速度。所以能不用鼠标就不用鼠标标准键盘指法这个不多说,混这碗饭吃的,这个都不会就说不过去了熟悉编辑器常用操作1. 控制光标的基本操作行首,行尾,页首,页尾, 整词移动,常用的书签功能2. shift键的含义在编辑器中,shift键可以理解成取反(不只是编辑器,大部分环境下都是如此)所以按住shift移动光标就是高亮显示VC中ctrl+U是将选中字符小写,ctrl+shift+u就是全大写3. 行选取。所谓行选取,就是shift+下移光标,这样选取的一行,就是带有换行符的了。再粘贴到别的地方的时候,就不用自己粘回车了。这里比较容易发生的套路是:光标移动到要复制的行,然后两下home键,将光标移动到行首,然后按shift键同时下移光标(这是vc的操作哈,也许有不太一样的)4. 复制粘贴复制粘贴经常用的是ctrl+c和ctrl+v。 这里有强烈推荐的操作方式复制:ctrl+insert, 粘贴:shift+insert。�0�2这个方案的好处是两只手来操作,容易保持节奏,并且不容易犯错。中文的问题避免不了会输入中文,但不要把中文设成默认输入法,并且把ctrl+space的输入法切换快捷键改成生僻一些的,避免误操作切换出来远离IDE的函数提示(这个有争议,可以不认同)现在的IDE都很人性化,你输一个字母,就会出来一堆提示让你选, 甚至输一个括号,就自动帮你把另一半括号给敲出来了。 远离这些, 能关都关掉,否则你永远连一个函数都拼不出来。 这东西是破坏你输入节奏的元凶之一。
敲代码很快有几个条件1.对项目代码和结构非常熟悉,知道整个数据流的在代码中的流动过程和变化过程。知道当前新增的代码在整个项目处于哪个位置,对于数据会有产生什么新的变化。这些要心理有数。也就是从架构层面去思考代码的编写。
2.对于需求理解的很透。这样业务逻辑转成代码逻辑就不会有任何不清楚的地方。
3.已经解决了技术难点,也就是说前期测试性代码已经写过了弄清楚了,避免了突然出现的技术性难点
4.新增的代码和新增的数据结构已经仔细思考过了,并设计好。也清楚引入这些新的代码和数据结构对现有代码的整体影响
5.异常点的位置的处理方案已经安排好了。写代码一部分是正常业务流程,算法过程,但是另外一大块就是处理各种异常。当异常出现之后,是代码重试,报错后忽略,还是报错之后停止代码,还是报错后清理代码并重新恢复上一个状态,等等。这些都是要心理有数。
6.对于如何新增源代码文件,命名函数,命名文件名,命名类名,命名变量名有一整套方案。有时候想个函数名或者变量名都要卡好几分钟,就不算飞快了。别笑,想个变量名,百度十来分钟的时候多了去了。
7.外部环境已经准备好了。IDE稳定,数据库结构稳定,数据稳定,网络稳定,访问网页顺畅,准备好免打扰的牌子。准备好刷卡提需求的二维码,准备好板砖和大刀,预防产品经理提需求和改需求。
现实中程序员大多是结合快捷键敲代码的,因为长时间的锻炼,程序员敲代码的速度越来越快。从慢到快,每个程序员都付出了很多。
首先介绍的就是我觉得应该熟悉 Mac 内置的一些软件及配置。
trackpad 配置
1. 启用 Tap to click:在 System Preferences -> Trackpad 中启用, 用 tap 替换 click 的操作,明明轻轻 tap 就可以完成的, 为何还要用力点击才 OK。现在偶尔用其他人电脑非得用力 click 就太纠结了。同时,还有 "右键"功能,Secondary click,用两个手指 tap 弹出右键菜单。
2. 开启单词选词查询:选中某个中英文单词后,三指 tab 会弹出词典释义。这个在石头哥之前的文章中也有介绍。
3. Scroll 方向: 这个自己用习惯了就好。由于我刚开始从 Win 转向 Mac 的时候习惯用 Win 的那种方式,于是就没有开启 Scroll direction: natural,然后也一直沿用至今。
4. 其他手势:有必要熟悉一下,比如知道在 Win 环境下用 win+d
资深码农一枚,身边的经验告诉我,只要不停的ctrl+c 然后 ctrl+v就能打得很快。(滑稽狗头)
言归正传,复制粘贴确实是很多代码量的来源,但是也确实很多程序员能够很快速的自己敲完代码,那是怎么做到的呢?
让老白来分享下我平时是如何飞快的敲键盘的吧
一直以来,我个人倾向于写代码只是体力活的观点,但是写代码前的思考和设计确实程序员价值的体现。一般来说,我在开始写代码前会搞清楚需求是什么,细抠到每个关键点。比方说要做一个促销打折的功能,那么就要考虑清楚是哪种促销,是一个产品的单独促销还是多个产品的绑定促销,是不是所有产品都可以促销,降价的方式是直接降多少钱还是降百分比,用户打算如何使用这个功能等等。一旦将这些信息搞清楚了之后,就可以开始设计功能了。这里的设计不是闭着眼睛空想或者直接照抄别人的,而是要根据自己产品的产品模型,已有的框架来进行思考,寻找出一条灵活的而且相对改动不会特别大的方案。在这个过程中就会涉及到我们课本中学到的类图流程图等等。一旦有了这些信息,我们就可以很清晰的知道我们需要在哪些地方做哪些改动,大致的工作量是多少。然后,我们就可以开始干体力活了,也就是敲代码。一般来说对于自己常用的语言以及代码库都是有一定的熟练程度,而且也知道了自己所需要的改动,因此具体写起来的时候,基本只需要照着之前设计好的设计图写就行了。如果功能不是很复杂,很困难整个设计思路都已经在脑中,大家就能看到电视剧或者电影中那种飞快的敲击画面了。
当然了,老白也是从小白成长过来的,最开始的时候也是一路copy/paste,但是即使是copy/paste也希望大家可以知道为什么人家是这样写的,这样能够帮助自己更好的成长。
资深码农一枚,身边的经验告诉我,只要不停的ctrl+c 然后 ctrl+v就能打得很快。(滑稽狗头)言归正传,复制粘贴确实是很多代码量的来源,但是也确实很多程序员能够很快速的自己敲完代码,那是怎么做到的呢?让老白来分享下我平时是如何飞快的敲键盘的吧一直以来,我个人倾向于写代码只是体力活的观点,但是写代码前的思考和设计确实程序员价值的体现。一般来说,我在开始写代码前会搞清楚需求是什么,细抠到每个关键点。比方说要做一个促销打折的功能,那么就要考虑清楚是哪种促销,是一个产品的单独促销还是多个产品的绑定促销,是不是所有产品都可以促销,降价的方式是直接降多少钱还是降百分比,用户打算如何使用这个功能等等。一旦将这些信息搞清楚了之后,就可以开始设计功能了。这里的设计不是闭着眼睛空想或者直接照抄别人的,而是要根据自己产品的产品模型,已有的框架来进行思考,寻找出一条灵活的而且相对改动不会特别大的方案。在这个过程中就会涉及到我们课本中学到的类图流程图等等。一旦有了这些信息,我们就可以很清晰的知道我们需要在哪些地方做哪些改动,大致的工作量是多少。然后,我们就可以开始干体力活了,也就是敲代码。一般来说对于自己常用的语言以及代码库都是有一定的熟练程度,而且也知道了自己所需要的改动,因此具体写起来的时候,基本只需要照着之前设计好的设计图写就行了。如果功能不是很复杂,很困难整个设计思路都已经在脑中,大家就能看到电视剧或者电影中那种飞快的敲击画面了。当然了,老白也是从小白成长过来的,最开始的时候也是一路copy/paste,但是即使是copy/paste也希望大家可以知道为什么人家是这样写的,这样能够帮助自己更好的成长。
现实中程序员是怎样飞快敲代码的?
1.对项目代码和结构非常熟悉,知道整个数据流的在代码中的流动过程和变化过程。知道当前新增的代码在整个项目处于哪个位置,对于数据会有产生什么新的变化。这些要心理有数。也就是从架构层面去思考代码的编写。2.对于需求理解的很透。这样业务逻辑转成代码逻辑就不会有任何不清楚的地方。3.已经解决了技术...
怎样飞一样的写代码
最好能在一定的时间内整理出自己的库备用,另外就是实际做一些真正有用的程序,比如您平常经常用到的一些不错的程序,想想看它是如何实现的,从无到有的过程,检验自己到底掌握了多少,功力又如何呢,最后就是程序员的看家本领,调试程序的能力,尤其是在刚拿过来一个程序,在不运行程序的情况下,通过...
程序员一天都在写代码吗?程序员的一天除了敲代码还有做什么?
如果程序员的一天都在写代码,这就说明了公司的需求明确,老板的战略完美,产品经理也不会天天找人撕B,技术Leader已经把框架制定好了,大家都安心编码,安心做有创造力的工作。在这种情况之下,程序员的成长也是飞快的,心无旁骛的驰骋在代码王国。然鹅。人生不如意事常八九。那八九不如意的时间,大多数程...
程序员的工资这么高,为什么还会有人离职?
1.团队暮气太重,产品方向不明、市场不明,改需求改到天荒地老。2.老板的总是跟你谈理想,画大饼,让加班,给低工资,还说这是历练,熬过去就好了。3.压榨得太厉害,加班太厉害,一直掉头发,快秃头了。没有培训,连程序员自己自学的时间都被加班占用,身体和技术很难提升。4.此外,不少的程序员...
为什么都说悲剧的程序员?程序员很悲剧吗?
程序员加班很恐怖,工作制通常是996,即早9晚9周六还要上班,晚9下班还是早的,一般到晚上十点。你想那时夜深人静了人家都休息抱着老婆睡觉了,你还在工作中,是不是很崩溃?程序员耗脑太严重。工作中需要十几个小时大脑不停地运转。需要设计算法,不断地把代码改来改去来适应客户一天几变的需求。
深圳华为当程序员50万和当飞行员怎么选
选华为程序员。1、相比于飞行员来说,在深圳华为当程序员比较稳定,并且有很大的晋升机会。2、虽然飞行员待遇很高,但是淘汰率太高不稳定。
程序员未来前景如何?大龄程序员出路在哪里?
世界逐步进入5G时代,对于程序员来说即是挑战也是机遇,5G时代到来必将会带了新的技术升级,也必将淘汰旧的技术,所以说对于程序员即是挑战也是机遇,只有不断地学习你才能把我好这一机遇,雷军说:“站在风口上,猪都能飞”。但首先你得是有准备的猪 。 对于大龄程序员,我是这样子想的,等我年龄大了,不可能一直处...
普通的程序员和大神级的程序员有什么区别?
多隆在公司大多数时间是沉默的,从2000年加入阿里以来只专注于写代码,现在多隆在阿里的层级是P11。多隆不爱带团队,团队一般沟通成本高、水平参差不齐,而他一个人就能顶一个高效顶尖的团队。作为淘宝最早的程序员之一,很多产品早期就是他一个人开发维护的,文件系统tfs、key-value系统tair,cache、搜索...
程序员需要具备什么能力?
程序员8本经典神作都在读它 先从基本功代码开始 1.本书提供了作者在多年软件开发工作中发现和总结的大量有用技巧,从正面和反面同时展现其对于代码质量的影响,为读者提炼出一条条能够让代码变得更好、更干净的规则。学习和遵循这些规则,你的代码质量一定能够得到极大的飞跃,代码能力获得巨大提升!2.《...
百万年薪CTO罗生门(二)|3万月薪的菜鸡程序员是怎么来的?
同行业内的薪酬天壤之别引人深思:在大公司的外包团队,顶尖程序员月薪9K,而在小公司,同样的职位可能翻10倍。大公司试图通过严密的成本控制,如60万人力成本对60人团队,但现实中,菜鸟程序员的薪水是这一数字的两倍,技术团队成本远超预期。对于用户量小的企业,这种架构似乎缺乏实际价值。高薪架构的...
谷荔维沙: 以Eclipse为例: 1、输入main 2、按Alt+/ 3、按Enter即可
五华区17888415416: 程序猿真实的生活是怎样的?程序猿真实的生活是怎样的,很辛苦的吗? ?
谷荔维沙: 程序员基本每天都要敲代码,找错误,常人来看确实很辛苦. 想要做程序员,兴趣是最重要的,如果没有对编程的兴趣,那你每天的工作就是煎熬; 因此有兴趣就是适合做程序员,没有兴趣建议不要做程序员.
五华区17888415416: 程序员的工作是不是天天敲代码的 - ?
谷荔维沙: 程序员的工作是项目经理安排的,不一定是每天都安排,经理可能会说,这个星期你要完成什么事情,这三天你要完成什么时候,工作非常具体明确,他不会管你写多少代码,他要的是,某某功能什么时间能完成,如果你速度快,一天完成了一个星期的工作量,那你就可以玩了,当然这种事情几乎不存在啊
五华区17888415416: vs编程的时候怎么敲{}比较快? - ?
谷荔维沙: 一般都是敲完整的花括号然后左移换行,老师敲得快可能是敲得多了,就熟练了,也有很多软件支持打前半个花括号然后换行自动补全(vs是有这个功能的吧)
五华区17888415416: 程序员是怎么工作的? - ?
谷荔维沙: 程序员是从事程序开发、维护的专业人员.一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国.软件从业人员分为初级程序员、高级程序员、系统分析员,系统架构师,测试工程师五大类. 程序员负责软件项目的详细设计、编码和内部测试的组织实施,对小型软件项目兼任系统分析工作,完成分配项目的实施和技术支持工作.参与需求调研、项目可行性分析、技术可行性分析和需求分析.
五华区17888415416: 软件开发人员怎样提高工作效率 - ?
谷荔维沙: 1、键盘功底要扎实. 敲键盘时要使用标准指法.可能你认为这是程序员的基本功,可是我发现其实很多程序员都做不到这点.看着他们敲代码时那笨拙的指法我就心急.其实炼成标准指法不难,相当年我还是一指禅,打字极慢,痛定思定,在...
五华区17888415416: 程序员如何摆脱“码农”的称谓 - ?
谷荔维沙: 首先,程序员和这些民工、矿工一样,都是使用非常简单的工具,典型的就是vim/emacs加make,典型的活动就是使用这些工具一个字符一个字符地敲代码,这和使用榔头的农民没有本质的区别.要摆脱码农的命运,就需要使用更加先进的工具...
五华区17888415416: 如何提高编程效率 - ?
谷荔维沙: 本文写给那些认为在项目上所花时间和效率成正比的程序员.我要说的是,事实并非如此.虽然你需要在电脑前敲键盘输入东西,但这只和编程沾上一点边.那么,程序员该如何利用时间呢?步骤/方法 编写单元测试,提高效率 这是一个十分基...
五华区17888415416: 如何沉下心来敲代码? - ?
谷荔维沙: 首先,你现在在做的是你感兴趣的方面,不论你是做安卓、ios、后台、前端还是大数据,不管你用C、C++、java、PHP还是其他技术,你要是对这方面有兴趣研究下去,那你就能够沉下来去学、去敲,再者,找个感兴趣的需求或者是新的技术,自己慢慢摸索着做出来就会很有成就感,做的过程中也能沉下心.
五华区17888415416: 程序员最重要的是敲代码,思维是敲代码,敲出来的吗? - ?
谷荔维沙: 一个开发者,当他接触的项目到一定的程度之后,他的思维,思路已经得到了升华,项目的需求也决定着开发者的提升程度,如果开发者每天写的都是hello world ,那也是没有什么作用的哦,主要是多接触不同的项目,各种各样的客户需求能够让开发者快速的提升自己的开发经验,开发水平,到这个层次之后,只要客户提出明确的需求,开发者就可以轻松的在脑海中构思出功能效果.编程必须要有明确的思路,没有思路写东西是很累的.当开发者遇到提升瓶颈,则需要更高难道的功能来刺激他,敲代码只能作为练习,毕竟做开发的目的也是为了实现某个目的.不然开发这玩意做啥呢.