写点什么

学新技术的 6 大问题及应对策略

  • 2020-04-10
  • 本文字数:1214 字

    阅读完需:约 4 分钟

学新技术的6大问题及应对策略

一、学习新技术的 6 个问题阶段

我根据从学到用的顺序,总结了学习新技术时遇到问题的 6 个阶段,见下图。


这 6 个阶段是:


不知道学什么、不知道从哪里开始学。比如音视频,是从编解码开始,还是从 Demux 开始?


找不到学习资料。


看不懂知识,看不明白用法。比如看不懂 H.265 的 spec,看不明白 ffmpeg 里怎么添加新的解码器。


写代码时不会用。知识貌似懂了,代码写不出来,或者写出来后没法与其他输入输出模块整合在一起。


设计模块搞不清用哪些功能、模块、接口等。比如用 ffmpeg 渲染时,不知道选 SDL 还是 OpenGL。


遇到 Bug 不知道怎么解。产品发布,出了问题,不知道从何下手去解决。


你可以先看看自己的问题是在哪个阶段。

二、不同阶段的精进策略

接下来咱们说不同阶段的应对策略。


第 1 个问题阶段,不知道学什么不知道从哪里开始学。


有两种策略,一是问题导向,你要解决什么问题,就从问题入手,倒推需要学什么。比如你要转码,那就先了解常见的编解码格式,从 ffmpeg 或者 vlc 的转码功能看起。


第二种策略是以既有知识体系为基础进行学习,比如买一本音视频的书,系统去看。


第 2 个问题阶段,找不到学习资料。


学习资料分为文章、图书、论文、标准、课程等,可以到图书网站搜书,可以到常见的在线教育平台搜课,可以用 Google、百度等搜关键字,还可以到专业论坛浏览帖子或文章……


第 3 个问题阶段,看不懂知识,看不明白用法。


同一个知识,可能有不同讲法,有的人讲的通俗易懂,有的人讲的云山雾罩。所以首先尝试更换学习资料,寻找讲得更好的资料。


另一种策略是先看别人的 demo,看这些 demo 运转起来是怎么回事儿,再看它怎么用那些知识,从应用往回倒推,去理解知识、技术点。


还有一种策略,就是找人给你讲。


第 4 个问题阶段,写代码时不会用。


这往往是在使用具体知识点、接口、类库时出现的。此时的常见策略,是找同一个知识点,看别人怎么用的。


比如有些小伙伴学习 LibVLC,写代码时,不知道 libvlc_media_new_callbacks 这个方法该怎么写,各种 callback 怎么定义,内部怎么实现,那就看例子怎么用的,看别人怎么用。


先模仿,再自己写,调试着看……反复这么练,慢慢就搞明白了。


第 5 个问题阶段,设计模块搞不清用哪些功能、模块、接口等。


这往往是因为不大了解某种技术实现同一目的的不同手段各自的应用场景和具体特性,需要逐一去了解,然后匹配你的目标,匹配你模块提供给外界的接口,比较着去选择。


第 6 个问题阶段,遇到 Bug 不知道怎么解。


一般解 Bug,三种策略:


  • 利用日志查找线索

  • 分析逻辑,走读源码,定位问题

  • 调试跟踪


这些都要求你熟悉业务、熟悉设计、熟悉源码、熟悉具体技术的特性或原理,所以想要更好的解决 Bug,其实有很多基本功要练。另外还要有分析问题的能力。

三、问题的反面是成长的契机

我提供的一般性思路,不一定能解决你的问题,但我却也希望,你不要就此放弃。


有问题,有挑战,才有成长。


本文转载自 程序视界公众号。


原文链接:https://mp.weixin.qq.com/s/dN5pulWlNU3kjGRyD8t77w


2020-04-10 17:37445

评论

发布
暂无评论
发现更多内容

兆骑科创创业大赛竞赛平台,双创服务,投融资对接

兆骑科创凤阁

兆骑科创创新创业大赛平台,人才引进,项目路演

兆骑科创凤阁

Github爆火!程序员疯抢的Java面试宝典(PDF版)限时开源

Java工程师

Java 面试 大厂

太厉害了!华为大牛终于把MySQL讲的明明白白(基础+优化+架构)

冉然学Java

Java MySQL 编程 架构 微服务

vivo手机上的系统级消息推送平台的架构设计实践

JackJiang

网络编程 架构设计 消息推送 即时通讯 即时通讯IM

真香现场!全网首发Spring5秘籍手册+架构导图,我爱了.

冉然学Java

Spring5 技术栈 笔记 java 日志 构架

结合实际聊聊电平转换电路(常用电平转换电路总结)

矜辰所致

电路设计 8月月更 电平转换电路

看完腾讯大佬90天整理的“Redis深度笔记”,我直接当场膜拜

Java工程师

Java redis 源码

Dapp系统开发及智能合约部署技术

薇電13242772558

智能合约 dapp

6大论坛,30+技术干货议题,2022首届阿里巴巴开源开放周来了!

阿里技术

数据库 云计算 大数据 #开源

大咖说·对话生态|当Confluent遇见云:实时流动的数据更有价值

大咖说

数字化转型 Confluent 大数据应用

Python零基础入门的第一天——开发环境的搭建

北极的三哈

学习 后端 开发语言 Python.

关于使用WebStorm两年所总结的一些常用插件和功能

安安安

前端 webstorm

R7 6800H标压处理器+RTX 3050独显 无畏Pro15锐龙版高能开卖

科技热闻

暴雨天,看天翼云如何“快准稳”防涝

天翼云开发者社区

云计算 大数据 云平台

MySQL 原理与优化:Limit 查询优化

老崔说架构

走得通,看得见!你的交通“好帮手”

天翼云开发者社区

云计算 大数据 AI

【超级账本开发者系列】专访——肖慧 : 不忘初心,方得始终

旺链科技

区块链 技术 超级账本

.NET现代应用的产品设计 - DDD实践

MASA技术团队

.net DDD 实战 MASA Framewrok

从函数计算到 Serverless 架构

hum建应用专家

云计算 Serverless

防汛添利器,数字技术筑起抗洪“大堤”

天翼云开发者社区

云计算 大数据

深入理解Linux I/O系统

C++后台开发

性能优化 Linux内核 网络io C/C++后台开发 C/C++开发

玩转云端 | 天翼云电脑的百变玩法

天翼云开发者社区

云平台 云电脑

6大论坛,30+技术干货议题,2022首届阿里巴巴开源开放周来了!

阿里云数据库开源

阿里巴巴 开源 开源数据库 阿里巴巴开源开放周 阿里技术

学新技术的6大问题及应对策略_文化 & 方法_程序视界_InfoQ精选文章