编程经验分享:大神学编程居然从抄代码开始!你敢信?

说说学编程的一些经验

程序员学的知识分为两种,一种是偏理论的,例如计算机原理,计算机网络、数据库原理、以及操作系统原理,这些知识都是以理论为基础,注重的理解能力。

另一部分主要以实践为主,就是平常当工具用的,例如 linux 日常命令工具、数据库SQL操作、还有写代码,这些知识学起来没什么技巧,ctrl c ctrl v,拿到教程就是照着抄,唯手熟尔。

不过照着抄代码需要做到3点:

第一步:理解,如果照着教程敲代码没有建立在理解基础之上,那叫瞎抄,就跟上学的时候差等生抄别人作业没啥区别,抄完之后,考试出一模一样的题目你都不知道写。

第二步:验证,跟着把敲出来,验证别人说的是不是对的,带着怀疑的精神验证每一行代码,很多时候我们就算照着抄也有可能会抄错,也许别人的代码有错,如果最后输出结果跟预期理解的不一致,这就考验你解决问题的能力了。怎么办?多思考,多请教,多总结。

第三步:举一反三,这步是最重要的,举一反三会把知识变成自己的,把每一行代码按照自己的思考进行修改,例如:既然这样可行,那换种方式看看有什么不一样的效果。

关于抄代码,我只服一人,就是Openresty 的作者春哥,可以看下对他的一则访谈:

回过头看,抄书是我自学编程的法宝。话说抄书这种学习方法是我意外间发现的。初三时,我酷爱化学,总是缠着当时的初中化学老师提各种奇怪的问题,老师拗不过,借给我一本他当年大学时用的课本《分析化学》。我如获至宝,爱不释手,但借的书总要还,但又不能立马消化,于是我便抄书,抄了整个暑假,结果意外地发现了抄书的奥妙——那就是延缓阅读速度,不至遗漏每一个重要的细节:眼到,手到,心到。 其实不仅书抄得,代码也抄得。记得我刚进入淘宝时,想学习 Nginx 源码。于是白天上班就对着 Kindle 抄 C 源,同时就已暗记于心;晚上回家在房子里来回踱步,在脑海中反复回放白天抄过的源码,直至融会贯通,深得其奥妙。

大神都有独门绝技,不是我等随随便便能学会的,好在勤能补拙,与各位共勉。

另外想要成为一个优秀的、有能力程序员的话,其实作为一个开发者或者编程学习者,有一个学习的氛围跟一个交流圈子特别重要!这里我要推荐一个C语言 c++交流Q群,7-4-1-8-1-8-6-5-2,不管你是大牛还是小白,大家都一起成长进步。

群里有位小伙伴说道:我不是程序员,没有计算机基础,也不懂前端后端,更不知道框架,分布式等等的,平时不知道学编程有什么用,觉着相关工作也比较少。

问及为什么要学编程时,他说只想给他的职业生涯加加分,如果这样能学好编程我就不信邪了,他说他是搞金融的,那为啥不学些对工作有帮助的东西呢?比如数据分析、量化交易什么的,学点即学即用的东西才是正事,别特么瞎学了。

原文地址:https://www.cnblogs.com/L928/p/10679067.html

时间: 2024-10-01 03:44:28

编程经验分享:大神学编程居然从抄代码开始!你敢信?的相关文章

20年资深程序员编程经验分享

原文作者乔纳森·丹尼可(Jonathan Danylko)是一位自由职业的web架构师和程序员,编程经验已超过20年,涉足领域有电子商务.生物技术.房地产.医疗.保险和公用事业. 从11岁时,我就一直在编程,并且一直都很喜欢技术和编程.这些年来,我积累了一些艰难又容易的经验.作为一名程序员,你或许还没这些经验,但我会把它们献给那些想从中学到更多的朋友. 虽然我想我会持续更新这些经验,可能还会有更多的感想,但就我这20年来看,我想下面这个列表中基本不需要增添额外的东西了.下面就是我至今最难忘的经验

12 条编程经验分享

从小白到入门,从入门到进阶,从进阶到高级,从高级到资深,再从资深走不同到路线.这条路可以说是大多数程序员的发展路线,在这个过程中经验就显得尤为重要,尤其是后期,经验可以占据很大的优势. 1. 从小事做起,然后再扩展 无论是创建一个新的系统,还是在现有的系统中添加新的功能,我总是从一个简单到几乎没有任何所需功能的版本开始,然后再一步一步地解决问题,直到满意为止.我从来没有妄想过能够一步登天.相反,我一边开发一边学习,同时新掌握的信息还可以用于解决方案中. 我很喜欢 John Gall 的这句话:“

少儿编程发展趋势少儿编程经验分享scratch编程猫

少儿编程发展趋势 2017年7月 ×××印发人工智能发展规划,将少儿编程教育提升为国家战略2017年12月 山东省在其最新出版的小学信息技术六年级教材中,加入了编程的内容. 2018年1月 教育部公布高中新课标,编程.计算思维成必修内容.以少儿编程为代表的信息技术学科将被纳入高考,编程地位直线上升,成了高中孩子的必修科目. 2018年4月 南京教育局将编程列入南京中考特招生的范畴. 在发达国家,少儿编程教育早就已成为国家重点推动的教育学科,而我国近年来也在逐步布局发展少儿编程教育. 电子化和程序

前端编程经验的总结

功能界面设计,涉及到的技术有前端的CSS+DIV布局,以前布局使用表格,框架,现在布局基本上 使用区块的浮动布局. 功能界面实际的一般思路是: >1. 首先是要有项目的需求分析,完成需求说明的文档,这个部分右需求分析是完成. >2. 功能界面的设计,这部分由美工和网站策划师完成. >3. 前端工程师完成功能界面的实现,必须分毫不差的实现美工的效果. >4. 布局完成,渲染完成之后,即可以为表单添加特效,校验及其他的特效等,也就是      前端工程师的脚本编程. >5. 有些

运维经验分享(四)--关于 java进程管理的服务控制脚本编程思路分析

运维经验分享作为一个专题,目前共7篇文章 <运维经验分享(一)-- Linux Shell之ChatterServer服务控制脚本> <运维经验分享(二)-- Linux Shell之ChatterServer服务控制脚本二次优化> <运维经验分享(三)-- 解决Ubuntu下crontab不能正确执行Shell脚本的问题(一)> <运维经验分享(四)--关于 java进程管理的服务控制脚本编程思路分析> <运维经验分享(五)-- 改进的java进程管

Python/Numpy大数据编程经验

Python/Numpy大数据编程经验 1.边处理边保存数据,不要处理完了一次性保存.不然程序跑了几小时甚至几天后挂了,就啥也没有了.即使部分结果不能实用,也可以分析程序流程的问题或者数据的特点. 2. 及时用 del 释放大块内存.Python缺省是在变量范围(variablescope)之外才释放一个变量,哪怕这个变量在后面的代码没有再被用到,所以需要手动释放大的array. 注意所有对数组的引用都del之后,数组才会被del.这些引用包括A[2:]这样的view,即使np.split也只是

20年来我得到的20条编程经验(转)

我从11岁开始编程,并且一直都很喜欢技术和编程.这些是我一直以来获得的经验教训.作为一个程序员,你可能需要这样的忠告.我更希望每个人在获取这些忠告的同时能够学到更多. 我将会不间断地更新这里,我可能会有更多的要写,但是就我这20年来看,我认为没有什么更多的需要加在这个清单下了.:-) 这就是至今为止我印象最深的一些教训. 1.解决问题时估算你所需要的时间.C'mon,admit it! 我曾见过一些程序员为了解决一个特殊的问题而连续坐在显示器前面8小时,我会像下一个会成为这样的程序员一样感到内疚

大数据经验分享

大数据经验分享 随着互联网的发展,尤其是近期互联网大会召开,再一次谈到大数据,大数据发展趋势已经成为一种必然.那么我们怎样去迎接这样一个新的数据时代?我们可以看到越来越多的人想学习大数据,可是却无从下手,根据自己的经验为大家分享一下大数据的知识: 一.大数据是什么?它的特征? 大数据指一般的软件工具难以捕捉.管理和分析的大容量数据. 大数据有4V特征:Volume(大量).Velocity(实时).Variety(多样).Value(价值). 大数据(big data),或称海量资料,指的是所涉

零基础学大数据编程需要哪些基础?

零基础学大数据编程需要哪些基础?程序员薪酬高.工作环境好,是很多同学向往的职业,让很多非计算机专业的同学羡慕不已.非计算机专业难道就不能成为程序员了吗? 一.零基础学大数据编程需要基础: 1.数学基础 从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的.因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了. 2.逻辑思维能力的培养 学程序设计要有一定的逻辑思维能力,逻思力的培养要长时间的实践锻炼. 要想成为一名优秀的程序员