8年开发经验告诉你,编程新手如何提高编程能力?

怎么提高程序设计能力?可以参考程序-设计原则,程序-设计模式 怎么提高程序设计能力? 简单说下我的方式方法: 【程序架构】 借鉴设计模式和设计原则 【程序业务】 多理解客户需求,理解后,做竞品逻辑分析,分析出其逻辑结构,和数据结构 ; 再根据客户需求结合竞品分析出的数据,设计客户所需的数据结构和程序业务 【总结】 满足上面两种方法后,做下面的就轻松多了 阅读详情

语言都有想通的地方,尤其是计算机编程语言。计算机语言是一种应用科学,应用科学就是你硬着头发也要用的一门学科

我们来看一下有哪些方法可以只要你坚持去做,你是一定能够快速的提高你的代码能力的。

 

 

首先 learn by doing,你是一定要不要你站在岸上,你是不可能学会游泳的,你天天先看着别人吃饭,你自己是不可能长胖的。所以我们来举一个例子,比如说你接到一个任务,这个任务是想让你设计一个contact form,就是一个这样的的一个表格,你就要想这个时候你都不需要掏出你的电脑,好,你就坐在那,你就可以开始想,我要设计一个表格,表格的功能是什么?是方便用户来跟我联系的。为了实现这个功能,在这个表格里面我要填入哪些内容呢?

比如说我需要知道他的title,他是男性还是女性,或他是博士或者是什么,有有没有其他的title,然后它的名字是什么?以及它的 EMAIL是什么?除了这些以外,你可以想得再高级一点,比如说你所你所在的区域需不需要数据保护?

然后当我设计完这个表格之后,你就要想,这个表格是方便用户跟我们来联系的,我到底把它放在哪里,我是把它放在网页的官网的 landing page,我还是把它放在一个单独的页面。你就先想一想,在你想的过程中,你是可以强化你的逻辑,是可以强化你的思维的,等你把握问题,每一个环节都想清楚了,等你在下笔的时候,你其实心里就有数了,能不能写出来是一回事,但我脑子里是清晰的,是另外一回事。这个就是learning by doing。

第二个如果你现在有能够实现代码的能力,你就争取自己去写一写。在你写的过程中你会发现很多问题,但是不要怕这些问题其实是在帮助你成长的。

好,第二点就是你尽量要把你的从长远来看,你尽量要把你的基础打好一点,为什么这么说?你就之前我看到有人讲,很多码农一半的时间都是在Google上抄代码,另外一半的时间是在stack overflow上抄代码,或者是在 Git Hub上抄代码。好,那么这个问题的本质是靠抄代码能不能成为一个程序员?我觉得从实操的角度是可以的,但是靠抄别人的代码能不能成为一个好的程序员,我觉得这个答案是否定的。

你比如说我们先不说以写代码为生或者是怎么样,在你学一门东西的时候,比如说你学任何语言,你最基本的一些问题你是要搞得很清楚的。比如说你的生态 x它的基本语法是什么?都不用很复杂的,就是很基本的语法到底是什么。第二个就是你要知道数据类型有哪些?第三三个就是数据结构到底是用有哪些,它们分别是什么样的?如果连接这些最基础的东西,你都整不明白的话,在往后的学习过程当中,当你看到越来越复杂的代码,你自己心里是慌的,你心里越慌你就越没有自信,越读不懂,然后这就会变成一个恶性循环,所以尽量我们在学习的过程中尽量是把基础打扎实一点。

至少比如说可能几个月之后,复杂的代码我现在写不出来,但是我能读懂,我大概知道他这一块他在说什么,他为什么要这么做。

第三点就是尽量去手写代码,我不是想要把你逼疯,我知道现在有很多的市面上有很很多的ID E可以方便你去写代码,哪怕你只给他一个字母,它都给你跳出几十个选择来让你选择相应的的命令但为什么在这种在 ID E这么方便的时候,我还是建议你去手写。

很简单,第一,在你比如说你去面试的时候,或者是你在学校里面考试的时候,你是很难在电脑上写的,一般你的面试官都会要求你,都会要求你手写一段代码,是大概写一段,然后实现一个功能。第二个那就是在你手写的过程中,你才会知道自己到底会不会比如说

 

我认为手写代码有几个好处

第一个就是学习效率更高,你不容易分心,如果说你用电脑来写的话,你很可能这个太普遍。变了你很可能我听一会儿歌,然后刷一会儿抖音再刷,待会推特,然后一不小心看个YouTube一下午就过去了。然后你本来该做的事情一样都没有做。

第二个,你不太容易会被假象误导,我们的大脑经常会欺骗我们,我看到一个东西我觉得简单,我就以为我会了,但你不会就像我看王刚老师做饭一样,我觉得这么简单,我觉得我会了,但每次当我亲手去做的时候,基本上就等于灾难现场,所以是尽量的不要被自己的大脑欺骗,不要被自己脑子里的幻想欺骗。如果你写不出来,那就说明你不会,如果你真的会了,你是一定写的出来的。

好,我们除了 code by hand,我们还要注意什么?我们还可以大胆的ask for help,就是我不是说让你什么问题,我不是想让你当一个伸手党,比如说你遇到了一个问题,题你想不明白,你想了5分钟想不明白没关系,这个时候你可以坚持一下,再想一想,搞不好第10分钟的时候你就想明白了。

但是如果一个问题已经让你一天两天睡不着觉,你已经查过了各种方法,你就是搞不定,这个时候你不要再逼你自己了,可能你陷入了一个盲区,或者说可能你实力还没有到那里,确实不会就不会没有关系,这个时候我们就要我们可以去问一下身边的老师,或者是问一下身边的同学或者是身边的牛人,然后或者是我们还可以 seek out,我们看一看官网上有没有解答,或者是其他的方面有没有解答。

但是你不要把这些问题就埋在心里,有些人会喜欢把所有问题埋在心里,然后企图自己去解决。但是你不是我们都是人,你不是神,就是人是可以犯错误的,人是可以有不知道的问题的。所以这个时候我们就大胆的提问就好了。

刚刚我讲了你可以可以大胆的提问,如果你身边既没有老师也没有牛人,你怎么办?你可以这样,首先这不是说针对你,这是世界上全世界所有的码农都在做的事情,如果你有问题,你可以上stack overflow上去找一找。

因为你要相信作为一个初学者,或者是作为一个水平中等的人,你所遇到的问题基本上都被前人都遇到过,那么前人遇到过的问题一定会有前人的解答,只是说你需要的就是说找到去命中那个问题,你直接在stack overflow上,基本上你输入你命,你问题的关键词基本上就会能蹦出一大堆答案来。如果你在cycle over flow上找不到,你可以去滴滴踏步厂找一找,因为滴滴踏步厂很多人愿意去开源他们的代码出来,然后他们的comments我觉得他们的注释写的也很不错,如果你能读懂注释,读懂他们的代码的话,可能会给你一些新的思路或解决方法,再不行你还去直接可以直接Google,遇事不决问谷歌,让谷歌告帮你去找。

如果说你有follow一些,比如说大的 up主你可以你可以从他们的技术博客里面学,学到一些很有意思的东西,但是我觉得最保险最稳妥的方法就是绝大多数问题你都可以在官方文档里面找到。

我个人觉得如果你正在学这门编程语言,你就尽量去读英文的文档,因为我认为他们官方文档写大部分官方文档写的质量还是非常不错的,但如果你的英文能力是在有一些欠缺的,你去读中文的也没有问题,这个就是帮助你怎么样去寻找一些 online resources,最后一点,刚刚我提到了,大家要经常的去读官方文档,然后经常的去 cycle overflow上去,去找一些例子怎么样的。

当你读到这个标准代码的时候,就simple code文档也好或者是例子也好,他会给你举一个例子,你读了这个例子你你弄明白了他是什么意思,然后你大脑就会觉得我会了,但这个时候你不要停下来,你尽量去,比如说你捅不捅过他,修改他比如加一点东西,捡一点东西看还能不能实现。如果不能实现,这个时候是非常好的,你就要问你自己为什么不能实现,我到底是哪错了。

 

我之前就遇到过有一个学生,他来问我问题,然后我看了他的代码,我就直接问他,我说你知道你自己写的这是什么东西吗?他说我知道,我说好,你来给我解释一下,这一段是什么意思,然后他就解释不出来,千万不要让你的大脑欺骗你。最后在我们学习的过程中也是一个不断接受打击,然后不断经常自我怀疑,然后经常陷入困境的这样一个经历,就是对天才也好,或者是对资质普通的人也好来说都是一样的。

 

经常从我不想做我做不到,我试试,最后发现慢慢的我居然做到了。所以在这个过程中千万不要觉得沮丧或者是灰心,就是不止你一个人有情绪,只要你学习写代码,你都会有情绪的。所以对于这样一个普遍的问题,我建议大家最好 keep Calm,冷静下来,如果觉得这个脑袋过热了,我们就去冷静冷静一下,吃个冰淇淋,然后喝杯咖啡,然后继续。最重要的一点就是keep going,不要停下来。一旦你停下来,只要你停下来了,你是不可能达到终点的。

好,我希望你继续加油,继续努力

 

学习不要走马观花的学,每个知识重点大纲,就是学习路线都是根据每一天市场上多数公司用到的新技术整理,在学习的时候还需要结合练习题来做

这里的话我也将我之前在学习过程中用到的一些学习资料整理成了文档,以及我自身之前的一个面试文案和知识点补充,有需要的朋友可以加我的QQ群   697888503   ,这里也希望大家最终都能够学有所成,学习编程不是一天两天的功夫,勤能补拙才是硬道理,祝大家最终都能成为一名合适开发攻城狮。 

 

转载于我的知乎回答: https://www.zhihu.com/question/27574436/answer/1581322741

如何有效地提高编程(特别是debug)能力 但当程序涉及的数据量很大,难以逐一确认时,就需要运用对程序的理解,来尝试从大量数据中挖掘出不对劲的地方了。一段程序在正确运行时,在程序的不同位置,各种数据往往需要满足各种各样的性质(例如:二叉搜索树的左子树的元素永远应当比父节点小)。以月兔为例,月兔会给我们提供很多的检查,例如,如果我们声明了一个标识符应当为变量,那么月兔会检查这个变量是否被修改,因为一种出错的场景就是在写循环的时候可能忘记对计数器进行迭代。除了 debug 自己写的程序,在协作开发时,可能还需要 debug 别人写的代码。 阅读详情

相关推荐

如何提高自己的编程能力

假如你和我一样是一只正在学习编程的菜鸟,本文能与你共勉,一起提高编程能力

增强编程能力的六种途径

1. 多运动, 坚持锻炼; 2. 培养整体性设计思维; 3. 阅读源代码; 4. 做一些关键性的编程训练; 5. 广泛涉猎文学、音乐、绘画、建筑等领域的优秀作品; 6. 冥思

瀞心:软件人生 2340

提高编程能力的10种方法

本文转自: http://heikezhi.com/2011/07/03/10-ways-to-improve-your-programming-skills/ 英文来源: http://www.antoarts.com/10-ways-to-improve-your-programming-skills/ 提高编程能力的10种方法 ...

weixin_30265171的博客 1415

提高计算机编程水平,写程序10大习惯和如何提高编程能力

如何提高自己的编程能力 1. 扎实的基础。数据结构、离散数学、编译原理,这些是所有计算机科学的基础,如果不掌握他们,很难写出高水平的程序。据我的观察,学计算机专业的人比学其他专业的人更能写出高质量的软件。程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要回过头来学学这些最基本的理论。不要一开始就去学OOP,即使你再精通OOP,遇到一些基本算法的时候可能也会束手无策。2. 丰...

weixin_33002763的博客 1392

怎样提升自己的编程能力

最近反思一个问题:自己编程多以来,为什么近期的编程能力没有较大的提升?日常自己也参与不少项目,gitHub 上提交了不少的代码,CSDN 上面也写了不少自己的见解。还是感觉编程中有些力不从心。过去一段时间中参与了若干开源项目,github 上也提交了不少代码。csdn 上主要记录自己编程中遇到的报错问题,和常用的库的介绍,和学习笔记等。

MichaelAn的博客 1万+

编程新手如何提高编程能力

提高编程能力需要长期的积累和实践。通过不断的学习、做项目、解决问题,你会逐步提升自己的编程水平。最重要的是保持热情,享受编程的乐趣,遇到挑战时不要气馁,持续进步。祝你编程之路越走越远!

recinzhang的博客 1559

什么是编程能力 | 计算机专业学生如何提高编程能力 | 如何自学编程

有干货、更有故事,微信搜索【编程指北】关注这个不一样的程序员,等你来撩~ 前言 开局两张图,剩下全靠吹了。 上面这两张图便是写这篇文章的原由。 对话框的另一边,是一位大二计算机科班在读的小姐姐,看似平静的文字背后透露着迷茫与困惑,还对未来的焦虑。 透过屏幕,似乎看到了大一时的自己,不会装环境、不知道怎么编译,报错也不会解决,更不知道除了计算水仙花数、打印乘法口诀表…还能写些什么。 感同身受让我觉得有必要认真的好好回答一下(其实是因为这是小姐姐问的????,也算是对大一时的自己一个隔空对话。 做公众号短

编程指北 8753

如何有效的快速提高自己的编程能力

The Key To Accelerating Your Coding Skills这篇blog会告诉我们如何提高自己的编码能力。感觉文章写的不错,特翻译下来,粘在博客中。 当你学会编程时,一切都会开始改变。在Firehose,我们喜欢称之为编码的拐点。 在此阶段之后,您作为开发人员的成长方式将大不相同。建立起拐点是在编程中变得自给自足的过程,直到你不再需要任何人手把手带。这可能是一种令人沮丧的...

qq_35716892的博客 7231

如何提高自己的 Python 编程能力

在当今这个数据驱动的时代,Python 已经成为了一种不可或缺的编程语言。无论是数据科学家、软件工程师还是机器学习研究员,Python 都是他们手中的利器。然而,掌握一门语言不仅仅是学会其语法,更重要的是能够高效地解决实际问题。那么,如何才能真正提高自己的 Python 编程能力呢?本文将从多个角度探讨这个问题,并给出一些实用的建议。

cda2024的博客 1174

学妹问我: 如何提高编程能力

“ 阅读本文大概需要 15 分钟。 ”聊天截图聊天截图前言开局两张图,剩下全靠吹了。上面这两张图便是写这篇文章的原由。对话框的另一边,是一位大二计算机科班在读的小姐姐,看似平静的文字背后...

静觅 770

如何提高Python编程能力

提高编程能力的唯一方法就是编程——写更多的代码!什么是编程能力?——,你的程序写的能让人读懂,这是编程能力;你的,这是编程能力;你的,质量很高,这是编程能力;你能快速理解一个小项目,小模块在做什么,怎么做的,这也是编程能力

q762459510的博客 680

8种编码游戏,可提高提高您的编程技能

编程是全球雇主中要求最高的职业。 我们每天都会看&#21...

专业的开发者“讨论” 2866

分享8开发经验,浅谈个人发展经历,明确自己发展方向

分享8开发经验,浅谈个人发展经历,明确自己发展方向 在中国有很多人都认为IT行为是吃青春饭的,如果过了30岁就很难有机会再发展下去!其实现实并不是这样子的,在下从事.NET及JAVA方面的开发的也有8的时间了,在这里在下想凭借自己的亲身经历,与大家一起探讨一下。 明确入行的目的 很多人干IT这一行都冲着“收入高”这一点的,因为只要学会一点HTML、DI

huangshulang1234的博客 4223

8种提升程序猿编程能力的方法+编程思维四个核心:分解、抽象、模式识别和算法

8种提升程序猿编程能力的方法 对于程序员来说,提高自己的编程能力,算是给自己定的职业发展目标之一,不过定一个成为编程大神的目标很容易,具体做起来可能就不是一件简单的事了。首先,既然决定“我要变得更好”,得先知道“更好”是什么样子的。另外,不能“想变得更好”,却没有任何具体可行的措施。 本文分享 8 个成为编程大神的可行经验,供读者参考。 1. 警惕“我了解”,“我知道”的学习态度 比如希望学习C语言,那第一步要意识到自己不懂 C语言,都懂的话,干嘛还学呢?这听起来像是一句废话,但是太多的计算机专业的学生毕

苏州程序大白的博客 8126

对于提高编程能力的见解

如何提高自己的编程能力,我自己讲太麻烦,所以就转了别人的帖子,学习编程开始是枯燥的,但是你一旦入门后,你就会发觉是一件有趣的事情。好好的努力。 1. 扎实的基础。数据结构、离散数学、编译原理,这些是所有计算机科学的基础,如果不掌握他们,很难写出高水平的程序。据我的观察,学计算机专业的人比学其他专业的人更能写出高质量的软件。程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要

Ms_ZHw的专栏 496
上一篇: 计算机专业的学生应该怎样提高自己的编程能力?
下一篇: 程序员面试前只因为做了这几件事,成功征服了一系列大厂面试官。
又是一个特殊的一天
博客等级 码龄7年 277粉丝 0原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值