用哲学的思想来学习C++

作者: acd8eef1b5d7 | 来源:发表于2017-05-20 16:17 被阅读86次

    之前说了C++的重要性,现在就可以来关注另外一个关键话题:如何轻松的学懂它?

    两个重点:1是轻松;2是学懂;

    C++的语法细节非常多,很多书上也拘泥于这些纷繁复杂的细节,然后加上本来就有一些不太合理的东西(初学者是不敢怀疑它的问题,如:很容易出现错误的多继承,这在比如PHP中就去掉了,使用接口来优化),使得C++变得扑朔迷离,初学者更是学的云里雾里。

    它和C语言的难点不同,C语言的难度在于语法原始,开发起来很不友好,C++的难度在于抽象+不太友好的使用。

    这是C++与生俱来固有的特点;

    对于重点之一“轻松”,建议灵活的学习,用哲学的思想来学习C++:

    1:辩证唯物主义来看待。

    它有好也有不好,不要一遇到看不懂的就怀疑自己的能力,要坚信它之所以要发展,就是因为它之前不够优秀,那就是一个相对论了。你能理解多少就理解多少,能更多理解就更多理解,不要有挫折感。

    2:要敢于怀疑它

    编程其实没有标准答案,只有更好(这体现在功能实现上和代码质量上的相对论)。如果有矛盾了或者想不通了,那就应该怀疑它,要敢于怀疑它,自己去寻找能解释它的理由,起码能自圆其说的可行性答案,这种答案不限于C++本身,可以是其他编程语言的启发,可以是其他科目的启发,甚至可以是客观世界的认识和道理。

    这样学C++就变成了一种自我修炼了,更深刻的认识世界,一举两得,你也就不会过度的纠结于那些苦涩无味的语法细节,比如:引用,比如:多态。通过去懂得客观世界的道理,不但有利于提升你的精神财富,还能轻松理解而学懂。更重要的是:它会变得亲切可爱了,因为它就融在你的日常生活之中。

    3:物极必反,不要走极端,需要的是坚韧和坚持

    对C++的学习其实就好比打太极拳,你来我往,酷似螺旋上升。它不能一下子打趴你,因为你至少也知道if,else,for这些单词,也算走进了它的世界。但你也不能一下子把它吃完。不要因为某个小问题把自己折磨的死去活来,需要的是经常、反复、坚持。

    不要走极端,要俯瞰它,最好做到“一些漫不经心的说话,将我抑或揭开”的境界。巧妙的多角度的去接触它,坚持到底,水滴石穿,持之以恒。久而久之,慢慢的合二为一,你就会看的到它的可爱了。

    4:抓西瓜丢芝麻

    不要面面俱到,不要把自己训练成百科全书。要有的放矢,要抓重点。C++中的西瓜就是对面向对象编程思想的渊源和发展以及表现形式的理解,至于它的库什么的都只是编程思想的应用而已。对于一个编程认识不够的新人,要善于抛开次要,抓住重点。当你懂了编程思想之后,其他的也就能很快的理解了。

    5:去伪存真,通过现象看本质,要敢于说“不会”:

    我本科学的是电子,从大一开始就接触编程,硕士的时候也是科班专业,继续接触编程,一直到现在也有十多年了。软硬件都学过。但我现在越来越喜欢说“不会”这个词。因为面对客观的知识,学的越多,你会发现你会越来越渺小,需要学的还有很多很多。

    所以,“不会”二字是很客观的尊重知识的表现。初学的时候不会,是因为真的不会,想要探索进而去入门;深入的时候不会,是因为尊重客观、想要百尺竿头更进一步。中间那种境界的时候是很不喜欢这个词。而这一层是很容易就到了,又很难走出来。

    所以你有很多的时候在这一层,不敢说是因为没底,但这样会阻碍你巨大的学习潜力,所以要敢于说“不会”。这是让你最真实的展现在客观科技的世界中,因为它客观,所以要你客观,才能融会贯通。

    对于重点之二“学懂”,建议开始关注自己的学习心情了,这样才能在编程世界中游刃有余,走的长远。

    我本身也不喜欢拿它的纷繁复杂的语法细节来吓晕初学者,因为那样没有任何意义,因为你已经就怕它了。懂,才是硬道理。在我的所有上课中都以它为宗旨。

    只有这样,一切教学行为才变得有意义。真正的高手不是把简单的东西变复杂,而是把复杂的东西变简单...

    相关文章

      网友评论

        本文标题:用哲学的思想来学习C++

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