程序员如何能提高自己的编程水平?

Posted 程序员小范

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了程序员如何能提高自己的编程水平?相关的知识,希望对你有一定的参考价值。

这些实用的小建议,能帮你迅速地提高编程水平:

不要做无意义的奋斗

拒绝喊口号和无意义的奋斗,包括但不限于:
①做了计划表却从未有执行的一天;
②每天都是最早来、最晚走,但是工作进度趋近于0;
③买了一堆的工具书和教程,却从来没有打开过;
④收藏了这篇文章,却从来没有真正行动起来;
……

最重要的一点,无论你采取什么策略提升自己的编程水平,都给我迅速行动起来!努力了不一定有收获,但不努力一定没有收获。

切切实实地刷题

刷题是最快的巩固编程水平的方式,在刷题的过程中如果遇到问题,就应该停下来去回顾一下相应的算法与数据结构知识点,及时查漏补缺。

推荐大家可以先刷《剑指offer》的题库,有详有略,覆盖的范围也比较广,对于萌新刷题来说很有帮助。如果你是一个纯纯的小白,还可以刷这套《新手必刷编程题库50题》,题目比较简单,便于建立自信心。

刷题网站的话,像是LeetCode和杭电的OJ都还不错。

好好感受一下外面世界的残酷

想要让自己变强大,就得先意识到自己的无知。

当你学不下去的时候,可以先去看看大厂的JD,去刷刷外包私活的岗位要求,你就会发现人外有人,天外有天,还需要付出更加艰苦卓绝的努力。

如果你觉得自己的编程水平还不错,可以去做这两件事:

①去投递一些你dream company的岗位,看看是否能通过简历的初筛和面试,了解自己的行情。

②试图去接一些外包私活,完成一些你已经很久没有接触过的项目,在和甲方对接的过程中磨砺自己的技术水平,同时还可以获得一笔不错的收入。

外包平台可以选择程序员客栈、码市、程序邦、devnors等。

多读书,多思考

读书破万卷,下笔如有神,虽然网上有各种各样的视频教学和技术博客,但我个人觉得它还是过于零散而不成体系,那些优秀的技术书籍能作为一本工具书,让你随时查漏补缺,从而实现编程水平质的提升。

我个人比较推荐的是《算法导论》(必读)、《算法图解》(辅助)、《算法竞赛入门经典》(竞赛专用)、《大话数据结构》(有趣)。

这些书大家都可以先去试读和看一看大纲和目录,选择自己看得下去的和感兴趣的书籍来阅读,等到看完以后也要时不时地翻阅,毕竟好记性不如烂笔头。当然,这里的书只是抛砖引玉,具体的还得根据每个人的岗位、编程语言来筛选更适合自己的书籍。

一些实用的小建议

最后,还有几个实用的小建议送给大家:
①不要问自己这样做有什么意义,找到一个目标,做就对了。
②不要只收藏不行动,只有行动起来你才能有进步。
③学习是一件痛苦的事,而持久地不学习使自己的能力下降,是会痛苦一辈子的事情。
④不要拖延不要拖延不要拖延!
⑤不要相信别人的计划表、别人的知识体系,只有自己消化吸收了,才是属于自己的。
⑥既然选择了远方,就只顾风雨兼程。
⑦打开离你最近的一本工具书、选择一道你没做过的算法题,从现在开始努力。
⑧多看看GitHub,上面也有不少宝藏。

希望屏幕前的各位越来越好~

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

程序员基本每天都要噼里啪啦敲键盘,键盘的使用效率虽然不能决定一个程序员的水平,但是如果利用好键盘往往可以事半功倍,提升自身的编程水平;

要想高效的使用键盘,可以从以下几个方面入手:提高打字速度,使用快捷键,vim操作等

1、影响一个人打字速度的因素有很多,不过一般做到以下两点基本上不会因为打字速度而影响编程效率了:

    (1)键位记不准,打字速度就会慢,出错率也大,对于这方面基础差的人可以把手机输入法键盘调成26键模式,日常聊天就可以记键位。不过程序员打字主要是靠手部对键盘的机械记忆,所以需要去主动学习正确的打字姿势,勤加练习才能做到高效的盲打。其实古老的金山打字通软件就比较好用;初学者务必学习打字常识,这样在日常写代码时明确手指分工,能减少打字疲劳提高打字速度。

技术图片

   如果用金山打字通练习的话,推荐练习英文打字,毕竟写代码都是用英文的。技术图片

(2)取名字是一件很麻烦的事,函数名,变量名的选取也是很影响打字速度的。命名首要的就是可读性,可以用合适的英文单词及缩写来命名,尽量不要采用中文拼音的形式,不利于与他人协同合作。

常用的命名规则有帕斯卡命名法和驼峰命名法,

帕斯卡命名法简单地说就是:多个单词组成一个名称时,每个单词的首字母大写。比如:

public void SendMessage ();

驼峰命名法和帕斯卡命名法很类似,多个单词组成一个名称时,第一个单词全部小写,后面单词首字母大写。比如:

var sendMessage = function () ;

另外一些变量命名时,首字母可以用i,b,d来分别表示int,bool,double型的变量,这样看到这个变量名就知道属于哪种类型了。


2、要想提高键盘的使用效率,还需要熟练掌握一些常用快捷键;不同的IDE的快捷键可能是不一样的,这需要日常的积累。由于我之前写C++主要用VS2019,推荐一些比较常用的VS2019的快捷键:

编辑操作:

Ctrl+C            复制  不选中时可复制当前行
Ctrl+V            粘贴
Ctrl+X            剪切  不选中时可剪切当前行
Ctrl+Z            撤销
Ctrl+D            复制一行

Alt+向上键        上移行
Alt+向下键        下移行

Shift + End = 从头到尾选择整行

Shift + Home = 从尾到头选择整行

Ctrl + Delete = 删除光标右侧的所有字

Ctrl+Tab            切换活动窗口
Ctrl + G             跳转到行号或行

 Ctrl+F            快速查找    

Ctrl+H            快速替换    

F12 = 转到定义

调试:

F5            开始调试(遇到断点会进入debug状态)

Shift+F5            停止调试    
Ctrl+F5            开始执行不调试
F10            单步执行    
F11            逐语句    
Shift+F11            跳出    
Ctrl+F10            运行到光标处

Ctrl+Shift+F10        设置下一语句    
F9            设置并切换断点    
Ctrl+F9            禁用断点    
Ctrl+Shift+F9        删除所有断点

日常学习一些新软件的快捷键也不难,对于需要用鼠标点击的常用操作,基本都有对应的快捷键,用到哪个记哪个就好,不需要刻意去记,用的多的很快就记住了,不长用的一段时间可能就忘了。

以上是关于程序员如何能提高自己的编程水平?的主要内容,如果未能解决你的问题,请参考以下文章

程序员职场算法,一条真正的发展捷径

成为大数据顶尖程序员,先过了这些Hadoop面试题!(附答案解析)

成为大数据顶尖程序员,先过了这些Hadoop面试题!(附答案解析)

程序员面试的刷题网站都在这了,想要的赶紧拿走!

面试了一个 35 岁程序员,满是辛酸与无奈,30岁以上的程序员如何玩转职场?

程序员面试都会遇到的问题:进程和线程的区别,你该如何回答?