分享

非程序员学习编程的难度有多大

 蝶花云月 2018-07-21

没有天生的程序员,所有的程序员,都是从不会写程序学会的。难度有多大呢?难度也不大。我是12岁,初中的时候,父母经不住蹿腾,给我买了一个学习机,其实就是小霸王游戏机+键盘。那个时代买学习机的很多家庭,其实都是孩子的诡计,直接买游戏机,家里不同意,买来了,反正也一样可以玩游戏。

不过我更着迷的是怎么写程序。那里面有一个很简单的Basic。我拿着一本说明书学会了怎么写程序。无非是,想让学习机说1,那么就用命令 print 1。想让变量A=1,然后说A等于几,无非是先A = 1,然后print A。然后无非就是循环,条件判断,子程序等等。

实话说,那个basic有点简陋,按照今天的标准。但是入门是个不错的选择。我的看法是,你们可以买一堆游戏盘,我自己可以写游戏,其实马里奥没啥难的,我也可以写,当然我写出来的马里奥简单了一点,也没有做到有多少关卡,但是我知道是咋写出来。


其实C语言也不难,现在各种新型的语言就更简单了。我们当年还经历过,没有互联网,买本计算机编程书还要进城才买得到的年代呢。还不是一样的学。

我曾经给非程序猿讲过课,一些企业员工过来学习html5,最大的障碍是建立程序逻辑的思维方,这是第一关。

看到一个问题能想到如何用程序的流程来解决。绝大部分大学毕业生只到这个程度。

然后是学习程序设计,形成自己的风格,这里对于面向对象程序猿的要求就是能看懂并运用《设计模式》。能做事的程序猿大概如此。

再然后是敏捷开发灵活运用,不再拘泥于设计模式,对测试和重构熟练掌握,对代码整体构架了然于胸,这是主程?

已经有很多前辈说了他们的真知灼见,我就聊一些浅显的东西吧。编程和别的学科一样,难度都是层层递进的,编程入门非常好入,网上资源很多,保持良好的编程习惯,一个月就能用的不错了,至于熟练掌握,再到精通,就需要在你原来的基础上不断做扩展。

就好比扎好根后,要用扎实的基础铸成结实的树干,然后用进阶知识拓展出一个个主干,最后通过完成一个个项目,生成茂密的树叶和果实。期间,什么都可以耽误,就是练习一定不能断,要逼迫自己去写代码,去理解。

可能有人会说:这样强迫着学,会不会产生厌恶感啊。会,但是,相信我,在这样的情况下,程序调试通过带来的满足感也是成倍增长的。我觉得抱着“不把它调试出来我就不XXX了”这种心态去学习不太好,也太难维持了,抱着“调试完这个我就放弃”的心态反而会比较长久;人是会自我怀疑的,可能因为当时的困境而有放弃的念头,但成功解决一个问题后,又会有“其实也没那么糟”的想法,现在这种想法被网友戏称为“真香定理”,虽然是调侃,但是,一定要找一个让自己坚持的方法。

其实,到了后期,你的编程之路就没有之前那么枯燥了,你已经能够总结出学习新知识的方法了,主要的难点集中在如何让自己跟上编程快速更迭的速度。

其实,说了这么多,就总结为一个字“练”,对于编程来说,勤奋是唯一重要的标准。

难度 在于你对学习编程的期望值以及个人学习能力决定。期望值在于你想学来干嘛,能力嘛在于对自己长期来自学的能力分析。如果只是想锻炼下自己,顺手解决点自己的需求,这个难度应该不大。但是要想做一个合格程序员,要学的东西很多。非程序员转行最大的问题在于学习不够系统,很多对于科班出身来说显而易见的问题到你这儿可能是个大坑。不过,编程又是最容易自学的东西之一,满互联网上应该说到处都是资料。我倒是建议,多看看相关基础知识,给自己定个小目标,然后学学试试看。没准喜欢上了,没准放弃了。先做后决定不失为一个好路线。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多