如何高效使用掘金博客资源?

92 阅读8分钟

01 前置声明

01 本文结构

image.png

02 本文作用

以初级工程师写代码的视角来进行写作,高效利用掘金资源。而不是配置环境,工具使用等等

02 应用

01 需求分析

写代码写到多了,都会很明确的两个东西。

分别是实践机制知识体系化

image.png

  • 实践机制是什么?

是基于自己长期写代码所形成的机制,这个机制用来规避自己以前犯过的错误,高效利用自己现有知识(不仅包括怎么用,还要结合原理底层逻辑进行高效使用),针对特定的业务场景的最佳实践。

  • 知识体系化是什么?

是自己长期学习的各种知识点进行整理分类,来明确你自己现有掌握知识点,建立内在逻辑,结构清晰的知识网络。可以快速清晰了解不足或者可以优化地方

  • 二者的作用是什么?

实践机制是帮助我们在面对复杂业务的场景,以一条逻辑线快速帮助我们梳理逻辑,快速知道我们要做什么,怎么宏观处理

知识体系是知道我们有什么,毕竟人的脑容量有限,脑子也不可能全部装着编程的知识,在写代码的时候,可能会忘记某个知识点的使用,导致原本简单的事情需要复杂处理。回顾自己的知识体系,可以快速自己有什么东西可以用。

02 各方作用

那就要先将网课,书籍,AI三者的对于知识学习与实践作用先讲清楚,当然现实生活还有其他的渠道帮助我们学习与实践,不多赘述。

image.png

01 网课

  • 网课大部分针对的层次和目的是什么?

是大部分针对小白,初级程序员,中级程序员。而且希望尽可能的压缩时间,简化知识的复杂度,简化复杂业务环境,尽可能让你快速上手的。

  • 所以大部分网课的优点是什么?

可以快速帮你构建一个简单的知识体系,也可以快速知道程序运行的预期的作用与效果。

  • 所以大部分网课的缺点是什么?

知识体系太过于简单,实际上有很多高阶知识没讲的,或者针对一个知识点纯粹的是投入时间不够多,有些知识的确需要很多时间来进行学习。说白了,知识体系还相对比较简单,也不够全面

02 书籍

  • 从初级知识输入方面来看,相对于网课或者课堂来讲,的确效率很低。更适合看完网课在巩固学习。
  • 从知识输出方面来看,好的书籍会给你一个好的结构梳理方向(通过目录进行总结梳理)
  • 高质量书籍,计算机底层原理全而详细,枯燥无味,但质量佳

03 Ai

  • 名词解释角度 -- 能够快速了解相关概念
  • 逻辑分析角度 -- 快速获取一些宏观方向或者简单流程方案
  • 工具角度 -- 快速获取一些忘记的工具指令
  • 代码分析角度 -- 可以快速分析代码的作用(当然在命名比较规范的时候)
  • 编程角度 -- 快速获取一个demo,构建一个基本的框架,梳理一些基本的方向

04 所以博客作用

  • 博客非常适合分享具体案例与实践经验,可谓是直面大家真实之痛,例如某项技术的实际应用、某个项目的开发过程等。
  • 博客相对书籍和网课更加便捷观看与使用,但存在的问题在于零散化
  • 博客基本上是起码基础知识有一定要求,不是真正完整面对小白的

03 掘金有什么

image.png

非技术类的宝贵经验:

  • 有大家的生存经验和生活经验,人生感悟,年终总结

完善自己的知识体系的

  • 有大量关于面试的

新工具

  • 有大量新工具的介绍与使用

进阶知识与具体业务

  • 有具体知识点的进阶使用
  • 有针对具体场景的技术讨论与技术选型与具体解决
  • 有针对具体场景的犯过错误与优化

原理底层

  • 有工具或框架的底层原理讨论

04 具体怎么做

01 别只收藏,要看要吸收

这个很重要的,不能只是看一眼,觉得好,然后收藏之后,长时间不看了

这是不行的,要看要吸收,虽然我也没做到

image.png

02 两个宏观方向来吸收

看一个博客的时候,想好两个问题

它是否有助于自己的知识体系的搭建

他是否有助于将自己的写代码的实践机制形成好

image.png

03 扩展怎么做

本质上给自己提问题,不断为难自己

如果是知识应用类(把运用到具体场景的时候)

  • 熟练度低的时候

    • 抄,无脑的抄,本来自己能力有限。别人能搬出的解决方案一般都是作者要么深思熟虑的,要么就是在实践中使用的。
    • 当然,你可以用薄弱的知识体系,想想作者用的一些知识原理是什么?他的写法规避那些问题?抄别人现成的解决方案,融入自己的知识体系和实践机制.
  • 熟练度高的时候

    • 那么作者为什么要选用这个技术栈?这个业务场景的要求是什么?是稳定性?还是一致性?。。。等等要思考的问题
    • 你认为的优缺点是什么?使用这个技术栈可能会出现什么样的问题?可不可以用其他的技术栈进行代替?别的技术栈可能出现的问题是什么?

如果是知识原理类的

  • 那你了解这个原理,违反这个原理常见的做法是什么?
  • 你写代码的时候要怎么规避违反这个原理的做法呢?
  • 写代码的时候怎么利用这个原理底层来提高自己代码的质量呢?
  • 怎么融入自己个人的知识体系和实践机制?

犯错与注意事项类(别人犯错的经验教训)

  • 如果是运用知识发生错误的经验分享,那作者的排除逻辑机制大概是什么?
  • 怎么进行改错的?错误的原因又是什么?你自己留下具体的经验是什么?
  • 怎么融入自己个人的知识体系和实践机制?

image.png

05 具体例子

01 具体文章

这是掘金作者志字辈小蚂蚁的一篇文章

都说 SpringBoot 启动慢 ,你知道慢在哪里吗?

这是掘金Ai的总结文章文字稿

文章围绕SpringBoot启动慢的原因展开。先从宏观路线指出prepareEnvironmentrefreshContext耗时最多。细节上,前者主要是内存处理,后者是Bean加载核心流程。生产级项目因多容器环境、配置监听、大量Bean加载等更慢。还给出统计源码。总结表明,外部资源加载如Client连接和配置读取最耗时,后续将关注新版本及其他组件的解决办法。

02 思考逻辑

Q:这是什么类型的知识文章?

A:这是知识原理的类型

Q:违反这个原理常见的做法是什么?

A:导入无意义的依赖包,包里有无意义的装配类或者自己写一个无意义的装配类,更或者有没有使用资源链接

Q:你写代码的时候要怎么规避违反这个原理的做法呢?

A:

  • 尽可能多了解使用依赖包,尽可能排除无意义的依赖包。
  • 如果是包封装的装配类没有使用或者自己写的,启动类里面 Exclude 掉,限制扫描的范围
  • 自己不太熟练处理是否会资源资源连接,只能无脑懒加载

Q:怎么融入自己个人的知识体系和实践机制?

A: 融入自己的实践机制。当正式运行自己的项目的时候,对自己以下反问?

  • 进行包查询,反问自己每一个依赖包是否都使用?
  • 包里的装配类是否都使用了?能不能排除无必要的?
  • 资源链接方面,App.java是否使用懒加载注解?

03 迭代优化

01 能优化的

html 格式优化

02 具体的迭代

第01版于2025年4月23日,基本搭建初步的框架