关于技术学习的一些思考

Posted adventure.Li

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于技术学习的一些思考相关的知识,希望对你有一定的参考价值。

一、概述

自4.2知晓考研结果之后,便开始规划技术的学习,主要包括JVM、JUC、NIO及Java基础,SpringCloud方面的。期间也因为一些家境因素去寻找了一些中小企业的面试(包括焦点科技、海颐软件等),希望能够进行资金的补充。在这过程中,我越加明白了技术基础的重要性,为什么这么说?因为刚拿下携程Offer的我很自信地去面试焦点,缺被final关键字等一些基础概念不能够熟练回答,哈希冲突删除等问题而决绝,也在阿里巴巴编程之夏开源实习的提案评估之中回答一些面向失败设计、架构设计考虑的基础问题而感到自身基础功的薄弱,不过还好阿里给与我机会获取该提案,成功入选。

  1. 对于校招生来说最重要的是:

基本功(算法基础+计算机基础、八股文) + 项目(开源项目贡献、大厂实习) + 学历/竞赛 + CSDN/Git等附加输出

  1. 而长远来看:

职业的发展则是架构师(解决业务,需一定管理能力)/CTO 、技术专家(专攻基础、底层)

因此,无论如何 基本功是解决业务的关键!!,练好基本功才是长远发展的唯一好办法,是基石,而简单重复的实战、名誉、IP则是上层建筑。以下则想根据最近的一些想法而谈谈如何持续学习?

二、如何有效学习技术


对于Java后端的技术学习可以分解为 科学理论(基础设施(Linux等服务设施,JVM 物理层面)+ 算法 等逻辑层面) + 实践原则方法(设计经验) + 工艺性(个人设计思考)

科学理论:抽象软件实体,学习面向对象,例如类的结构,明晓 类是如何去定义,如何在JVM中进行加载、分布

实践原则:设计模式,DDD设计,在经验、实践的基础上去总结方法、有效编程。

工艺性:个人的创造性

归根结底的思维:设计分析能力(来源于经验、源码分析、设计思想,实战经验) + 编码能力(来源于编程语言及编程语言运行机制的熟悉)+ 实战实现、业务能力(来源于对业务的抽象分析、对业务的熟练及思考,即业务域的能力,应用框架的广泛应用及思考,基础设施(数据库、缓存、容器、操作系统)的熟练)

因此,正确的思维 = 扎实基础能力(含基本的代码设计、架构设计) → 广泛实战、多阅读参考有效开源项目(Apache、Spring、JDK、Alibaba下的开源项目) → 设计思考、分析业务、解决实际问题

以上是关于关于技术学习的一些思考的主要内容,如果未能解决你的问题,请参考以下文章

关于技术学习的一些思考

关于技术学习的一些思考

容器技术·10月刊:后容器时代的一些思考

关于技术的一些思考

linux学习的哲学层面的思考-架构

关于平台的几点思考