我是如何学习一门新技术的

简介: 我是如何学习一门新技术的

Hello Everyone ~

因为近期在业余时间看了一些书和文章,而且也都让自己颇有些心得,以前的快乐是打几把游戏现在的快乐是学会一个新知识,写一篇博客,享受写的这一个过程,所以今天又突然想写一篇感想类的文章,也是对自己的学习路上的一个小总结,因为本人也是正处于“IT工程师伟大发展之路”的初级阶段,所以平时还是要用大量的时间来学习积累。我一直认为不是所有的学习都有方法可言,都有捷径可走,即使我们每个人都希望自己能高效的学习,但是每个人的头脑和学习方式都可能是独一无二的,因此在这里我不讨论什么高效的方法,只讲讲自己学习每个知识点的一个小过程,不喜勿喷哦。

下面开始正文:


1 发现需求

在有一次我做项目到Maven仓库寻找依赖的时候发现的一个页面:mvnrepository.com/tags

网络异常,图片无法展示
|


有人会不禁感叹,这么多技术我们到底学那个好…

我觉得答案应该是:看需求。不要去盲目的学习,而是有目标的学习,而我认为需求可以来源于以下几个方面:

  • 为完成工作或是学业或是比赛必不可少的技术。
  • 对当前工作有更好提升的技术。比如能更加高效开发的技术,更加节省资源的技术,更加对业务实现和优化的技术等等。
  • 能帮助自己找工作的技术。比如面向招聘信息学习等等。
  • 感兴趣的技术。

因此,我们在学习技术之前要想一想为什么要学习这门技术,而不是盲目从众式的学习技术

2 了解技术的大概

简单来说就是这个技术能做什么,属于哪个领域,能实现什么业务或者对什么业务有帮助,还有一些核心概念等等。

  • 能做什么,能实现什么功能(业务)
  • 属于哪个领域或方面
  • 核心概念

3 认真研读官方文档,找出最佳实践和使用套路

我们所学习的技术都是有一份官方文档的,如果没有,那也会在GitHub上有一个显眼的README.md文件进行介绍和使用流程的描述,我们只需要在搜索引擎中输入相关的关键字很方便的就能找到哦。

除此之外,每个技术的官方文档上都会有一个小demo,就是最佳的使用实践,看完基础概念后一般就可以理解下来,然后我们就在demo中总结下基础的使用套路。

  • 官方文档
  • 官方GitHub地址
  • 最佳实践和使用套路

4 引入需求场景,总结使用流程

所谓的需求场景,最好就是应用在我们的实际工作项目的业务研发中,如果是一枚学生,就放在自己的学期末项目或者比赛和毕业设计项目中,反正就是不能白学,而是真正的放在有用的地方去实际的应用一次,然后就可以总结一下这个技术的使用流程,可以加深下印象。

  • 带入实际使用场景

5 探究原理并合理输出

到了学习这门技术的深层次阶段,当然不能说是最后阶段,因为技术的学习没有终点。到这个阶段就是深究原理,站在巨人的肩膀上,了解其背后的思想,为什么这门做?还能怎么做?为什么这样做是最优的?相信经过深层次的挖掘之后我们心中一定会有自己的答案,当然挖掘原理的前提是能够熟练的使用该技术,挖掘原理的方式可以是看源码、读博客、看视频等等,最好是能够有自己的理解并写成文章分享出去。

  • 熟练使用,探究原理
  • 理解思想,扩展思想,善于分享

最后总结下:

在自己学习技术的道路上也遇到过很多良师益友,曾经有一名老师说的话对我的印象很深,只有短短的四个字:学会取舍,这句话可以说在我们的生活中也是非常常见的,无论做什么事情都很难让自己完全满意,因此我们就要学会取舍。还曾读过一篇文章,可以说是一位资深的技术人对新人的忠告,也有一句话非常好,他说不要害怕学习一门新的技术栈,任何技术栈除了几个特性以外,其他都是相通的,学习每个技术栈最重要的就是掌握该技术栈的那几个特性

彩蛋:分享下我是如何学习Go语言的

(1)发现需求

学习Go语言的原因主要有两个,一是真的感兴趣,因为Go语言号称是“为并发而生”,因此就是伴随着好奇心去探索;二是因为想模仿技术大牛,因为当时在极客时间上看了几门课,有一门叫做《许世伟的架构课》,还有一门叫做《左耳听风》(PS:真的不是打广告,但是你如果也想买课的话留言联系我可以有优惠),这两位老师都是在行业中非常厉害的存在,而且他们都很擅长使用Go语言,所以就想也扩展下自己的技术栈,向大牛们看齐!

(2)了解技术大概

首先百度查下Go的历史,然后官网查看Go语言有哪些优雅的特性,以及都有哪些行业或公司在使用,都能用来做什么,实现哪些业务等等

(3)研读官方文档,找出最佳实践

当然官网可能是英文的,但是百度翻译总会用,有道词典、Google Chrome网页翻译就更方便了,然后边看文档边看视频敲出了很多语法和数据结构的使用。

然后学习Go的很多框架,比如Beego、Gin、gorm、viper等等都是差不多的流程。

(4)引入需求场景,总结使用流程

因为Go语言的并发特性和HTTP支持,自己在业余时间利用Go语言写了一个博客系统和Go整合Kafka搭建的日志收集系统,从中知道了Go语言和一些中间件比如MySQL、Redis、Kafka、Spring等的整合方式,还清楚了Go Modules的使用流程和一些常用命令。

(5)探究原理并合理输出

这个就要看我的专栏咯:

最后立个flag:因为Go是云原生的基础部分,因此熟练掌握之后下一步着手探索云原生技术!

OK今天的分享就到这里~


相关文章
|
6月前
|
机器学习/深度学习 人工智能 算法
学习人工智能的基础知识
学习人工智能的基础知识
111 1
|
3天前
|
机器学习/深度学习 人工智能 TensorFlow
人工智能浪潮下的自我修养:从Python编程入门到深度学习实践
【10月更文挑战第39天】本文旨在为初学者提供一条清晰的道路,从Python基础语法的掌握到深度学习领域的探索。我们将通过简明扼要的语言和实际代码示例,引导读者逐步构建起对人工智能技术的理解和应用能力。文章不仅涵盖Python编程的基础,还将深入探讨深度学习的核心概念、工具和实战技巧,帮助读者在AI的浪潮中找到自己的位置。
|
26天前
|
缓存 Java 数据库
后端开发的艺术与科学
在这篇文章中,我们将深入探讨后端开发的核心理念和技术。从基础的编程语言和框架到复杂的系统架构和性能优化,我们将一探究竟。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和实用的技巧。让我们一起走进后端开发的世界,探索它的艺术与科学。
|
1月前
|
前端开发 测试技术 持续交付
移动应用开发的艺术与科学:从概念到实现
【9月更文挑战第30天】在这篇文章中,我们将探索移动应用开发的旅程,从最初的灵感闪现到最终的应用发布。我们将通过一个实际案例,深入了解移动应用开发的过程,包括需求分析、设计、编码、测试和部署。我们的目标是为读者提供一个全面的视角,了解如何将一个想法转化为一个功能齐全的移动应用。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的见解和实用的技巧。
|
3月前
|
前端开发 数据可视化 数据挖掘
探索技术之路:我的编程旅程
【8月更文挑战第7天】在数字时代的浪潮中,编程已成为一种重要的技能。本文将分享我个人的编程学习经历,包括初识编程的喜悦、面对挑战时的困惑与坚持,以及在实践中不断成长的过程。通过这段旅程,我深刻体会到了编程的魅力和挑战,并希望我的经历能为同样热爱编程的你带来一些启示。让我们一起在编程的道路上不断前行,探索更广阔的技术世界。
73 11
|
3月前
|
Java 程序员
谈谈程序员如何学习新技术
文章分享了作者学习新技术的经验和方法,从确定学习目标、制定学习计划到学中坚持和学后应用,强调了持续学习的重要性,并鼓励程序员通过实践、写作、分享和开源贡献等方式不断成长和提升技术能力。
|
5月前
|
机器学习/深度学习 数据采集 算法
踏上机器学习之路:探索数据科学的奥秘与魅力
踏上机器学习之路:探索数据科学的奥秘与魅力
45 0
|
6月前
|
存储 算法 Java
揭秘计算机奥秘:基础知识大挑战,踏上科技探索之旅
揭秘计算机奥秘:基础知识大挑战,踏上科技探索之旅
27 0
|
6月前
|
存储 算法 数据库
编程与计算机技术的奥秘之旅
编程与计算机技术的奥秘之旅
|
敏捷开发 JavaScript 前端开发
程序员学习新技术的10个建议
程序员学习新技术的10个建议
115 0