我是如何学习一门编程技术的?

前言

给大家说说我的学习经验,也许不是最好,但是够真实。

本文将会从以下几个方面讲述:

  1. 为什么要学习新技术?
  2. 如何选择一门技术?
  3. 如何快速学习并使用?

为什么要学习新技术

不学习新技术很可能你就失业了

现在编程环境日新月异,对于新人来说,可能上个学会的框架还没用熟练,市场上又出了一个新框架并且比老框架更加的优秀。

同时,在招聘市场上也会逐渐向新技术靠拢。

比如17年之前最火的前端技术是JQuery,但随之而来的Vue,React,给了前端程序猿新人一个重击。那段时期如果你看招聘,都会写着掌握Vue或React优先!

如果不去掌握新技术,那么就面临着失业了。

所以,为什么要学习新技术?

当然是为了更好的搬砖了。。。

那么,是不是所有的新技术都需要去学习呢?

不是的!

如何选择一门技术

先说个我一直信奉的:选择大于努力

我选择新技术的标准就一个:

对目前及以后有影响的,并且半衰期长的技术

本人是从事PHP开发的,我将从PHP的角度来讲述如何选择一门值得学习的技术。

不知道从什么时候开始,Laravel这个框架在国内的地位越来越高。

那时,我在公司使用的还是tp之类的。

但是,随着Laravel刷屏的次数越来越多,并且招聘市场也在朝着Laravel靠拢

这给了我一个讯号,如果未来我不掌握Laravel,这将成为我应聘的一个短板。

所幸,我的判断是正确的。

如今我的薪水已经涨幅35%。

程序猿吃的是技术饭,需要我们时刻洞察市场的动态,你才能不被市场淘汰

如何快速学习并使用

确定了学习哪门技术后,要如何开始学习呢?

程序猿的空闲时间是非常少的,毕竟上辈子的福报够深

如何花更短的时间掌握新技术呢?

  1. 先了解
  2. 找资料
  3. “埋头学”
  • 先了解

我的经验告诉我,学习任何一门技术之前,先去了解它的产生原因,解决了什么问题是更加利于学习的。

所以,我把了解排在第一位。

举个例子,近期我发现,大部分的公司都在要求掌握Swoole技术。

那么我们先分析一下,Swoole是什么,以及它为什么出现,解决了什么问题?

Swoole是国人开发一个用于PHPer的异步网络通信扩展。

因为PHP的经典架构是Lnmp,nginx接受一个请求转发到php-fpm处理,在这期间是PHP-fpm同步阻塞的。并且处理完一个请求后会销毁内存用于下个请求。

如果我们的PHP程序是常驻内存,并且是非阻塞的会怎样呢?

性能会大大的提升。

swoole作者测试过,在一台普通的1核1G的服务器上,lnmp架构的并发只有几十,而用了swoole的并发普遍在上千左右。

这意味着,老板能省下一大笔服务器的费用。

所以要求掌握swoole的公司会越来越多的。

  • 找资料

确定了这门技术在现在和未来对于我们来说是非常有必要去掌握的,那么我们要如何开始学习呢?

第一,先大致过一遍官方文档。

官方文档是最准确并且最全的,其他的资料可以不用去找了。

碰到不理解的地方也不要停下来,先看完一遍再说。

在看完一遍之后,再去着重的把不理解的地方进行google。

第二,找视频教程。

我认为,视频教程优于文字教程。

大脑对于图像的记忆远远大于文字。

那么,从哪些渠道可以找到比较好的视频教程呢?

  • 慕课网 --专注程序猿
  • youtube --你懂得,一般国内的教程也会被发布在这
  • 51CTO --不怎么去,但也是比较好的
  • 网易云课堂 --不是专注编程的,但也有部分教程比较好
  • 中国大学Mooc --各名牌大学的公开课,比较系统化
  • 网易公开课 --全世界大学的公开课
  • B站 -- 老司机,你懂的

如果有需要付费的,而你恰恰囊中羞涩,咸鱼,youtube是个好地方。

找到视频先看一两个,对比出哪个教程适合你。

毕竟,适合自己的才有兴趣去学。

  • “埋头学”

我是如何学习laravel的呢,找到我想要的视频教程后,我每天会在固定的时间点进行学习。

比如我晚上学习效率高,我就放在晚上进行学习。

但是千万不要三心二意,决定这个点学习就专注于它

一个人成就会如何,绝大部分的差距体现在专注时间的长短上

每个人的高效时间点是不同的,你要去发现它。

大概三天我就学习完了,接下来是最重要的。

用学到的东西去实现一个小项目

这期间,碰到不会的,千万不要第一时间去看视频

先查文档,不会的再进行google

实在没办法了再去看视频。

程序猿长久来看靠的都是自我解决问题的能力。

搞完这个小项目后,大部分已经入门了。

如果还不会,再重复一遍。

没有什么是重复掌握不了的


PS:你的赞是我创作的动力!

为什么同是9年义务教育别人就那么优秀?

想知道请关注订阅号:Buger(关注送 laravel,linux,nginx 等学习资料!!!)

回复'学习',推荐你2本书。

回复'资源',获取我收集到的一些优质资源。

三海

本帖由系统于 1个月前 自动加精
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 18
Chasers9527

然而看到最后也没看到 YouTube 上,Swoole 教程哪个好~ 哈哈哈

1个月前 评论

@Chasers9527 :joy: 目前我也没发现很好的,但是现在的一些教程用来入门还是可以的,像慕课网上的那个swoole教程。

1个月前 评论
Bard

直接上手册就完事了嗷

1个月前 评论
张闯Json

直接了解数据结构,看看判断demo的差异,怎么连接数据库,怎么发送sql,增删改查一套,开撸

1个月前 评论
Rubto

视频再加个B站 :smile:

3周前 评论

大概三天我就学习完了????? +1: :+1: :+1:

1周前 评论

@bing_ 只是看完视频教程哟。。

1周前 评论

@Bug_tu 我看过很多php 的视频教程,一边看一边抄,还是学不会,只知道大概怎么回事。
之前我学过一段时间tp, 可没找到比较深入的教程,一直停留在最基本的操作。
一群里的管理员推荐我学社区里的这套书,我看过书的内容,觉得功能挺多的,然后全天专注学习,可没想到跟之前学的东西都不大一样,感觉又要从头再来,很多地方根本不理解,都是照抄,学得很费劲,都一个月过去了,L01 L02 我都还没学会。
可我必须要学会编程,所以只能像你说的那样 埋头学。
对于我这种有学编程困难症患者,你还有什么建议吗?

1周前 评论

@bing_ 照抄是战术上的错误。学只是第一步,最重要的在于实践和总结。不能用勤奋代替思维上的懒惰。

1周前 评论

@Bug_tu 谢谢!这两天我开始有点进入状态了。

1周前 评论

@bing_ 也没帮到你什么,学习都是因人而异,你进入状态就说明你找到了适合你的学习姿势 :grinning:

1周前 评论

@Bug_tu 思维上的懒惰。你的这句话提醒了我,要脑袋比手更勤快。脑袋勤快懂得快啊。

1周前 评论

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!