从0开始学编程,方法真的对了吗?( 二 )


再从中间件的角度去看信息的处理 。大厂有专岗负责中间件 。常见如,应用服务器、数据库、缓存、消息队列、数仓等等,还有很多 。同样,它们拿到的也是同一批“信息” 。应用服务器负责计算,数据库负责存储,缓存负责热点数据的加速,消息队列负责缓冲,数仓负责分析 。其中一些中间件的功能会有交集,但是他们擅长的领域不同,比如大学篮球队队长和我都会打篮球,队长和我也可能都会编程,但篮球比赛就是得他去打,编程的事就得我去做 。
如果你还是有些迷茫,很正常 。因为现在说的还是太抽象了 。我给你的完整理解的具体行动是这样的:
找到所有常用的技术中间件,列一个清单,随后通读他们的介绍,找到这几个问题的答案——他们叫什么,应用场景是什么,即可 。
如果是从零开始,列这么个清单就有点难,那么我抛砖引玉,来给你这么一个清单 。
技术名
场景
使用频率
域名
网站名

IP
主机标识

DNS
域名和IP的映射

负载均衡
将请求分流

路由器
外网与内网的中转站

交换机
内网与内网的中转站

服务器
一台电脑

数据库
放数据

业务应用
负责计算

缓存服务器
放热点数据

消息队列
先把数据丢进去,排队等着处理

文件存储
存文件

搜索引擎
类似数据库,但是能支持复杂的搜索

配置中心
专门放配置信息

邮件服务
发邮件

短信服务
发短信

Jenkins
帮你串命令自动化发布的工具

Java
你的编程语言

以上,是一些通俗的写法 。如果需要非常准确的定义,教科书里有一大把 。但我自己的学习过程中,往往是通过教科书中的阅读,随后总结成这么一句简单的话 。尽管不一定准确,但很实用 。并且,你也不要用我的总结作为你的总结,如果你能总结的更好,为什么不呢?
这里,我想到了一个《三傻大闹宝莱坞》的场景,非常的生动,建议大家有空可以看一下 。
再来看一眼表里的内容 。你能看到,其中大部分都是中频,甚至对于这些中频的技术,都可以通过封装的方式屏蔽其中的复杂度,对你来说只需要无脑调用即可 。那么,剩下的,就是如何学会那两个高频,Java和数据库 。问题是不是简化了不少 。
关键词三:哲学三问
你从哪儿来?现在在哪里?要到哪儿去?
我觉得我们务必要搞明白这些,这样才会有行动的动力 。拿我自己来说,我曾经是一名科幻爱好者,最喜欢的小说是《三体》,喜欢的电影有《星球大战》、《星际迷航》等 。既喜欢里面的科幻元素,也喜欢里面关乎勇气和探索的故事 。我自己也曾写过一些故事,感动了自己,也感动了一些我强行投喂的朋友 。
在写程序前,我是一个非常喜欢写故事的人,写程序后,终日在恐惧和不安中学习,满眼所及,永远是学不完的知识 。而学技术的过程也不再能体会到乐趣,只有焦虑,时刻担心被职场淘汰 。这些焦虑下的学习,不见得提升了我的价值,反而让我倍感疲惫,忘了初心 。如果你一生大部分的时间都是焦虑的,那么你一生就是不成功的 。
所以,现在的我相信人是最终的意义,我们所做的一切,都是为了让自己过的开心 。而我们的价值,也不是能解多少面试题,而是能处理多少的实际问题 。从人出发,满足人的需求,将这些需求层层细化,就成了你手里的业务问题 。这也是获取财富的逻辑 。
人生苦短,愿我们现在和以后,都能开开心心地工作和学习 。

【从0开始学编程,方法真的对了吗?】


推荐阅读