美文网首页编程交流
程序员拿着高薪抄代码,学编程从抄代码开始!

程序员拿着高薪抄代码,学编程从抄代码开始!

作者: 6dd77184077e | 来源:发表于2019-04-16 22:07 被阅读0次

    说说学编程的一些经验

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

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

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

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

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

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

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

    回过头看,抄书是我自学编程的法宝。话说抄书这种学习方法是我意外间发现的。初三时,我酷爱化学,总是缠着当时的初中化学老师提各种奇怪的问题,老师拗不过,借给我一本他当年大学时用的课本。

    我如获至宝,爱不释手,但借的书总要还,但又不能立马消化,于是我便抄书,抄了整个暑假,结果意外地发现了抄书的奥妙——那就是延缓阅读速度,不至遗漏每一个重要的细节:眼到,手到,心到。 其实不仅书抄得,代码也抄得。记得我刚学习 Nginx 源码时。白天上班就对着 Kindle 抄 C 源,同时就已暗记于心;晚上回家在房子里来回踱步,在脑海中反复回放白天抄过的源码,直至融会贯通,深得其奥妙。

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

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

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

    你们知道程序员最熟悉,最熟练,最常用的两个快捷键是哪两个吗?没错,估计你现在心中所想的就是:ctrl+c 和 ctrl+v ,俗名为:复制和粘贴。

    对于大部分程序员来说:复制和粘贴就是他敲代码,写程序员创造伟大产品的左膀和右臂,而复制和粘贴更是形影不离的好兄弟。

    学编程最重要的是实践,就是写代码、看别人写的代码、再写代码,你看再多的书,不写代码,你还是不会编程。但是写代码也要讲究方法循序渐进,不能刚学了几天语法,就想写个操作系统什么的,树立这种不切实际的目标只会让你的自信受到严重打击迷失自我。

    抄袭代码是否正确

    所谓,天下代码一大抄,亦不过在程序员心中就是复制和粘贴。那么这么做到底对不对呢?

    首先需要肯定的是在软件开发中代码复用情况是非常普遍的,判断这种代码复用是否是抄袭行为的标准,要根据被复用的代码版权协议。这种行为非但不应该受到批评,而且应该受到肯定。只要他抄代码的时候遵守了被抄袭的代码的知识产权或分发协议。

    从社会角度而言,这个世界上,最应该受到批评的不是抄袭;恰恰相反,应该是重复劳动。重复劳动是对宝贵社会资源(人力物力财力精力时间等)的极大浪费。

    目前,我们身处在共享经济当中,可是殊不知我们这是一个伪共享的时代。共享单车,共享汽车,乃至共享充电宝都不是真正的共享,所谓共享就是把闲置和剩余资源利用起来,进行分享,以达到资源利用,资源价值的最大化。现在的共享经济,都不是把闲置和剩余资源的重复再利用,而是花钱买好的,每天,每月正在造成更大的资源浪费。

    什么是开源代码?

    众所周知,所有的软件都用源码编写,并通过编译最终生成系统或应用。开放源码软件保证所有人可以得到这些代码。这意味着没有一个公司可以完全独占它。开放源码意味着自由选择的权力,而自由选择意味着激发更多创新的能量。

    它把控制权交还给使用者和客户。您可以查看系统运作的所有源码,或进行修改,或从中汲取相关的知识。系统缺陷和漏洞可以更快地被发现并加以修正。并且,当客户不满意一个供应商的服务,他们可以选择更好的服务提供商来建设他们的信息基础设施。没有技术的壁垒,也没有市场的垄断。

    开源代码的价值

    对于学生来说:如果做项目不借鉴别人的基本不可能,因为很多原理毕竟不看别人的代码是很难懂得,而开源的出现,最大的好处就是降低了学习编程的门槛,让这种学校里面的小白能更早的接触许多不错的代码

    对于程序员来说:好用,开发速度快,bug少。可以加快开发效率,完成了自己的工作,这样的方式简单快捷,不需要思考如何提取抽象。

    对于社会来说:开放源码有利于开发更高质量,更稳定可靠的软件系统。它可以几何级数地提升各个公司的开发能力。大家协同工作,最好的软件将获得认可和胜利。我们不再局限于一个公司的小范围开发,我们在基于互联网的世界范围的合作团体和社区内工作,并通过互联网即时地传递新的想法和代码,促进整个软件开发的进步和繁荣。

    因此,开放源码的模式可以帮助开发出更高质量,更安全,更易用的集成软件。它的确使软件开发的步伐迈得更加快速,并有效降低了成本。

    但是,代码的开源,技术的开源可以说是真正的共享,但是还不属于经济,毕竟开源太多都是免费的,所以,我们技术开源才是真正的共享鼻祖。

    开源库的正确用法

    我们应该得感觉和意识到一些开源许可证的使用,应该正确使用开源库以及开源代码才可以。不知道有多少开发者意识到了开源库的正确使用方法?我相信现在几乎每个程序员开发的项目中都使用了 GitHub 上的开源库,但是你们尊重开源和版权了吗?一般在应用中应该声明一下使用了哪些开源库,以开源许可证等信息。只要不违反原作者的版权协议,那么借鉴是完全可以的。

    抄袭也是技术活

    能从千百万行代码中找到自己想用的那一段,稍作修改变成自己需要的功能,这本身就是一种于百万军中取上将首级的本事。若不对那段代码无比熟悉,至少架构了然于胸,不然他怎么抄?若不是基础比较扎实,经过了大量训练,他又怎么改呢?

    总结

    干净利落的抄代码不算本事,你要拿着别人的代码来解决自己的问题那才是本事。所谓天下代码一大抄,但是抄也应该正确的抄,也应该正确的用,在规则和许可下玩才行。不要在没声明的情况下,整体的复制粘贴到你的代码库里,不尊重作者,感觉是你做的似的

    文章最后

    怎么快速学C/C++,有什么方法,打算深入了解这个行业的朋友,可以加C/C++学习群:648778840,不管你是小白还是大牛,小编我都欢迎,不定期分享干货,包括小编自己整理的一份2019最新的C/C++资料和0基础入门教程,欢迎初学和进阶中的小伙伴。

    每天晚上20:00我都会开直播给大家分享C/C++编程学习知识和路线方法,群里会不定期更新最新的教程和学习方法,大家都是学习C/C++的,或是转行,或是大学生,还有工作中想提升自己能力的前端党,如果你是正在学习C/C++的小伙伴可以加入学习。最后祝所有程序员都能够走上人生巅峰,让代码将梦想照进现实,非常适合新手学习,有不懂的问题可以随时问我,工作不忙的时候希望可以给大家解惑。

    相关文章

      网友评论

        本文标题:程序员拿着高薪抄代码,学编程从抄代码开始!

        本文链接:https://www.haomeiwen.com/subject/lgxwwqtx.html