• 懒羊羊闲话1


    1、十年编程的生涯

            一晃2023年就快要见底了,算起来我的编程生涯也将近十来年了,我也从一个青年步入了中年。可惜的是,我并没有如愿成为所谓的大牛,和绝大数奋战在一线的coder一样,C++仅仅是脱离了入门级,勉强算得上是一个中手。工资一年到头算上来也就不到30万,在深圳来讲仅仅够养家糊口而已。

            一路上都是自己一个人摸索,没有所谓的师傅领入门,一直游走在小公司之间;也没能像武侠小说那样看到某个秘籍,忽然间功力就大增。

            十年无师自通,时间也真是奇妙的东西,以前挤破脑袋也想不明白的设计模式或者一些设计框架,突然有一天就稍微看看就懂了。代码规范性也越来越好,完成业务也不像初学的时候拿到需求就迫不及待地想编码,已经能做到想半天,再写半天的代码。

            这种打通了任督二脉的感觉,是让人觉得倍儿爽,但又有点悲从中来,因为领悟到这些技巧的时候我已将近40岁了。说一千道一万,我还是比较佛系,不太愿意主动去学习新东西,或者说我可能是最近才掌握了学习的技巧。

            我愿意将我的一些经验分享一下,也算是我来CSDN这么多年一个小结,若是你能从中触动,也就不枉我花费这么多时间码字了。

    2、给我印象最深刻的几本书

          《失控》凯文凯利

            第一次看到这本书的时候惊为天书,当时看它是因为张小龙的推荐书单上有。

            作者涉猎的知识范围很广、天文地理都略懂一些。通过大量的例子去证明生物这个复杂的机器内在是什么,有什么样的无形之手让生物机器能保持如此之稳定。

           分布式去中心化和模块化,我们生活中的例子网络就是一个分布式去中心化的系统,所以如此多姿多彩,我们大脑也是一个分布式系统,所以即使遇到什么打击或者损伤仍可以运行良好。大部分新手写代码的习惯都是,拿到需求,就把大任务分解成小任务,然后火急火燎地去网上搜索解决方案,这样凑起来的代码健壮性会很差的,搞点压力测试就摇摇欲坠了。

            高手其实平常就做大量的小模块积累,完成一个新业务不过是把以前打磨好的小模块修改一下就可以拿来上线了,系统运行起来自然就稳定得很。 正确编程的办法是自下而上,而不是自上而下。就是平常得注意多积累这些小模块,反复把它打磨好,真到用的时候才能做到不慌张,而且这样可以用最多的精力去完成业务功能,而不是纠缠于技术的细节当中。

            若是想有创新,就应该鼓励犯错误,大的创新是对以前想法的颠覆,换句话说这个就是一条无人之路,那么错误的概率自然会特别高!

           不求最优,但求多目标,与其费力把某个功能打磨得特别好,不如把绝大部分的功能打磨得还可以。一个大的复杂系统是相互纠缠的,它能成功的原因可能连它当初的创造者都不能说清楚。

            

         《技术的本质》

            有点怀疑该作者有看过《失控》,技术的本质可以概率为2句话

            无论多么复杂的技术,都是由最基础不可分割的技术排列组合而成的

            最基础不可分割的技术并不是无中生有的,它必然有个自然现象相对应

    3、选择比努力重要

           很多人认为努力,不断地给自己打鸡血,或者说兢兢业业为公司劳作,就能获得成功。

           其实不经思考的努力实际是另外一种形式的懒惰,他们努力只不过为了减轻自己的焦虑而已。

           比方说薪酬,并不是由于你的技术或者能力决定的,而是由你的技术能力在该行业所创造的价值决定的。找到符合自己的赛道很重要!蔡志忠他说过,画画他算不上最厉害的,理解老子他也不是最厉害的,但是又会画画,又懂老子的人可能就几乎没有人了。

    4、让自己一直处于拉伸区

            为啥有的公司能让我们突飞猛进,有的公司即使干个5年,我们的技术水平好像还是原地踏步。《认知觉醒》里提到,每个人都有自己的认知圈,如果一直处于舒适区,我们就没法获得成长。但是要是贸然进入困难区,我们又会不断打击自己信心。最好的办法是让自己一直处于拉伸区,就是这个事情或者学习可能刚刚好是自己不太熟悉但是又有点基础的,这样成长是最快的。

    魏书生的教学里很重要的办法就是让学生一直处于他们各自的拉伸区! 

    5、程序员的工具箱

           网络笔记,把代码模块化先前尝试过git,但是效果很差,因为需要把代码运行起来就能看到效果。而且没有注解的代码也没什么利用价值,因为很多代码需要配套很多其它东西

           XMind脑图,比EA画那些西里古怪的UML图好用太多了,因为设计代码的时候我们会不断地推翻前面的工作,EA太重了,用起来一点都不轻松!

           EA,实在是太复杂的代码,可能还是需要用EA分析一下,不过说实在话,若是一个代码靠EA来分析,这个代码也够烂的了。

           CHATGPT 写代码的利器,而且找对了网站,生成的代码可靠性还是非常高的。以前写代码大部分时间都是花在搜索代码上。

  • 相关阅读:
    Java 成员内部类
    IDEA中.gitignore配置不生效的解决方案
    cmake配置opencv与boost库
    C# System.Threading.Timer 详解及示例
    音频基础知识
    JAVA线程池1.0
    Leetcode101对称的二叉树
    Java 16 新特性:record类
    【Note】二叉树的遍历
    Cisco简单配置(七)—组建一个简单局域网
  • 原文地址:https://blog.csdn.net/tajon1226/article/details/134300032