怎样学习才能达到架构的层次呢?(代码片段)

诗水人间 诗水人间     2022-12-25     503

关键词:

架构应该是怎样的?
如何成为一名架构师?


这些问题一直困扰我、此时的我没法解答这些问题,我所在的高度所产生的言论不足以让人信服。


在自己思考和自我解答的过程中,我觉得需要先做到下面两件事,然后就能更接近我所思考的问题。

  1. 我应该了解架构师的工作职责
  2. 架构师所拥有的知识广度、深度、能力。

简而言之就是架构师能做那些事情、需要掌握哪些技能(前端、后端、运维、行业知识等)。


在成长的过程中,如果想要更好的、更快的成长起来,最好的办法就是认识很多比自己强很多的人,以对方为参考价值,根据之间的差距,进行自我提升,尽快的能达到他们那一个层次的水平。


谈谈自己的过往

自己的大学期间学过非常多的知识,靠着大学里通宵学习视频、读源码、写代码的那股劲,让我在大学的四年中过的很充实。

四年的耕耘也的确有了收获,在学校的4年里学过非常多的知识,写过很多代码。

大学的前两年里平平无奇,我除了努力也只剩下努力。

大三和大四的两年是我技术突飞猛涨的时光,大二上学期开设了java课,利用自己平时和假期的时间学习知识(java、前端、运维等方面的知识)。
可以说起初的学习我没有太多目的,但我觉得学这些东西都对我有帮助,兴许 前端 或 运维 更适合自己,抱着这种心态,我靠着毅力 和 尚硅谷 官网通过网盘分享出来的前端、运维、java整套资料。我一个一个学,期间也认识了很多讲的很好的老师,康师傅、阳哥、雷神、韩顺平、大海哥、李明 等老师。

知识的学习是枯燥的,在学习的过程中,我经常是听着视频睡着了,很多人觉得自己没有学进去,而且感觉学不进去,看视频总会睡着犯困。
我也一样犯困,但我的心态却不同,即使是睡着了我也喜欢放着视频带着耳机听着阳哥、康师傅涛涛不绝的讲解。
睡着了听视频我就当作是适应阳哥、康师傅的声音,听的多了,实际上也就不会排斥了,实际上到了后面你听进去了,是睡不着的,因为很有意思。

如果你在学习的过程中你处于排斥学习的状态(也就是听视频会犯困,学不进去)。

不用担心,这种状态会随着你的成长会慢慢的变弱,慢慢的你就会变得愿意接受学习。

学到后面你会发现你会喜欢学习,喜欢研究。


现状

技术角度来看我应该现处于的状态大概是中级到高级工程师之间。
从工作经验来说,虽然我确实是毕业生身份,但奈何我学的多,从尚硅谷的那些老师中也学到了很多工作经验,加之自己也喜欢捣鼓专研技术。
也和很多人交流过,有一些工作了3-4年左右的开发人员,看到我的博客后,也会觉得我的技术水平还不错、甚至觉得在某些方面比他们自己还要强。

现状的我一心只想把事业做好,目前在一家外企工作,待遇还不错,最喜欢的还是不加班的环境,965的工作机制,上班时间也很宽松,保证每天8小时的工作强度就行,晚点上班可以晚点下班,加班可以抵消工时,例如今天上了10小时,明天可以上6小时,总的工作时长不变就行。很舒适的环境,有很多时间去用来提升自己的能力。

未来

基于现状,在近1-2年的时间里,准备好好的看下spring的框架源码,很多人不明白为什么要看spring源码,就是感觉很牛,想要看,跟风。

与人不同的是,我知道自己的现状,我需要提升自己,所以需要阅读spring源码。
在阅读源码的时候,很多人会把自己学习的目标弄错,认为学习spring的目的就是去了解spring工作机制,spring内部的一些设计模式。主要目的就是为了应对面试。实则不然,如果只是这种心态学习spring,那么只能止步不前。

而我的想法是,阅读spring源码,提升自己对程序的设计能力,从架构层,从代码层都做到相应的提高。而最终的目标是即使在没有spring的情况下,自己也能动手去创造一个spring。
之所以产生这个想法的原因是,在阅读spring之前我就有阅读过jdk类库源码的经历,这段经历让我后面在写代码的时候得到了很多帮助,受益匪浅。

洽谈会

因每一个人的情况不一样,有很多非科班非专业对口的人转行到 IT 可能已经工作了几年了的 java 老手。

像我这种状态这种大学学的就是软件工程,在学校里又是异常努力学习的,基础又非常扎实的 java 程序员,在市面上占的比例不高。

很多大学生大四的时候就开始找实习,虽然他们可能学过各种框架,大学期间参加各种比赛,拿各种大奖。
因为自己也经历过,了解这些内部的门道,除了算法类编程比赛,其他的比赛奖就没什么含金量,我之所以这样说的原因是,大学生很多都是在大二才开始真正入门,学校繁重的学习任务要完成,加之比赛一般都是短期需要交一个作品,一个初级选手怎么可能完成这些?
而算法类的编程题是考验一个人解决问题的能力,需要在规定的时间完成,常常在一些大厂面试中会出现。

如果你是一名大学生,或许可以参考一下我的路线。

从这些年学习给与我的经验来看;

  1. 我建议大学生首要目的是扩宽自己的视野,知识面(自己一定要有自己的主要目标,例如:我以后很大概率就是做java开发的,那么你可以重点转研java,而作为前端,运维方向的技能也要去学一下,或许前端 或 运维更适合自己呢?你说呢?)
  2. 自己确定了要走某一条路线,例如:java ,那么就要好好的把基础打牢,不要盲目学习框架,框架要学,但选择性的学习,市面上框架那么多,小众化的和会被淘汰的就不要花时间,学框架的主要作用就是在工作的过程中要能干活。对于一些特别重要的框架,要重点关注,思考底层的原理,用的过程中要一步一步深入进去。
  3. 向优秀的人学习,阅读框架源码更要注重去创造框架的能力。
  4. 要学会总结,每一个优秀的人都有一套适合自己的学习方法。例如有些人固执、强迫症、一些习惯都是他们持续进步的原因。因此在不断探索的过程中,要找到适合自己的方法。
每一个人都有一套自己的学习方法,找到这些方法的关键就是勇于接受和大胆尝试,借鉴优秀的人他们的方法,然后摸索出适合自己的方法。

推荐文章:
《论源码阅读的必要性。JDK14SourceCodeInterpretation》

推荐专栏:

  1. JDK源码专栏
  2. JVM专栏
  3. JUC专栏
  4. java设计模式

除了java领域外,前端和linux也是我比较擅长的,欢迎互相学习

是否需要遍历 boost rtree 的层次结构才能达到最大效率?

】是否需要遍历boostrtree的层次结构才能达到最大效率?【英文标题】:DoIneedtotraversethehierarchyoftheboostrtreetoachievemaximumefficiency?【发布时间】:2019-08-2216:40:47【问题描述】:经过一番阅读,我了解到层次结构遍历,尽管boostrtree没... 查看详情

0基础学python,如何才能快速达到年薪30w的水平?(代码片段)

...#xff0c;是为了规划好学习路径,建立学习地图。3,怎样学?解决这个问题,是为了找到高效学习的方法。1选择好方向我要学习python的目的不是为了解这门语言,而是为了要学会运用这门语言来解决问题。但pytho... 查看详情

程序员怎样才能达到编程的最高境界

     程序员怎样才能达到编程的最高境界?最高境界绝对不是你去编两行代码,或者是几分钟能写几行代码,或者是用什么所谓的可视化工具产生最少的代码这些工作,这都不是真正的高手境界。即使是这样的... 查看详情

低层次“努力学习”和学习的本质

?什么是“低层次努力”??你把握住学习的本质了吗??你享受学习过程吗?声明:本文部分引自 你这么努力,为何还如此焦虑?1.什么是“低层次努力”? 低层次的努力,其实就是看起来很努力,一般是本身对某个事物... 查看详情

学习分类文本(代码片段)

监督式分类性别鉴定答下列问题:(1)怎样才能识别出语言数据中明显用于分类的特征?(2)怎样才能构建用于自动执行语言处理任务的语言模型?(3)从这些模型中我们可以学到哪些关于语言的知识?决策树,朴素贝叶... 查看详情

架构方面学习笔记-前端架构设计(代码片段)

...更多的内容。References:前端领域的“干净架构”架构方面学习笔记(3)–前端架构设计文章目录架构方面学习笔记(3)--前端架构设计整洁架构DDD(DesignDrivenDesign)领域驱动设计DDD相对于三层架构有什么提升?整... 查看详情

微服务课程_springcloud_01(代码片段)

...架构逐渐演变为现在流行的微服务架构。这些架构之间有怎样的差别呢?1.0.学习目标了解微服务架构的优缺点1.1.单体架构单体架构:将业务的所有功能集中在一个项目中开发 查看详情

企业架构设计实战3怎样进行系统逻辑架构?(代码片段)

有没有一种方法在大产品和小团队之间的缺口上架起一座桥梁呢?答案是肯定的,有!那就是架构。架构最重要的一点,就是它能把难以处理的大问题分解成便于管理的小问题。-- Eric Brechner,《代码之道》 ... 查看详情

高并发高并发分布式锁架构解密,不是所有的锁都是分布式锁!!(代码片段)

写在前面最近,很多小伙伴留言说,在学习高并发编程时,不太明白分布式锁是用来解决什么问题的,还有不少小伙伴甚至连分布式锁是什么都不太明白。明明在生产环境上使用了自己开发的分布式锁,为什么还会出现问题呢?... 查看详情

计算机网络学习笔记04网络体系架构与网络协议(代码片段)

【计算机网络学习笔记04】网络体系架构与网络协议一、网络协议的概念和要素网络协议是计算机网络相互通信的对等层实体之间,用来交换信息时必须遵守的规则或约定的集合。这些为网络数据交换而制定的通信规则、约... 查看详情

我怎样才能转移不同的 .putextras 以达到某种目的?

】我怎样才能转移不同的.putextras以达到某种目的?【英文标题】:HowcanItransferdifferent.putextrasforsomeintent?【发布时间】:2020-06-1922:29:42【问题描述】:所以我有一些标记和自定义信息窗口和putextras。我不知道如何使用putextras,但... 查看详情

成为网络安全工程师需要哪些技能?又该如何系统的学习才能达到标准呢?

...;成为网络安全工程师需要哪些技能?又该如何系统的学习才能达到标准呢?这两个问题展开。众所周知,从前段时间国家大力推行反诈APP我们可以见微知著,从国家层面开始越来越重视网络安全。作为网络安全岗... 查看详情

https学习笔记02(代码片段)

怎样给一个网站办法安全证书呢?以tomcat为例,我们正常访问localhost:8080都是不安全的网站,那么怎样使得这个网站安全呢?首先我先全局说一下,我们需要先下载openssl,然后使用openssl下载和配置我们需... 查看详情

sh我怎样才能获得当前的工作目录?(代码片段)

查看详情

阿里架构师浅析负载均衡:怎样提升系统的横向扩展能力?(代码片段)

本文已收录GitHub,更有互联网大厂面试真题,面试攻略,高效学习资料等之前曾写过高并发系统设计的三个通用方法:缓存、异步和横向扩展,到目前为止,你接触到了缓存的使用姿势,也了解了,如何使用消息队列异步处理业... 查看详情

docker架构拆解

...有思考过,当使用这些命令时究竟发生了什么?它是一个怎样的执行流程、它的架构又是怎样呢?一起来了解一下吧。Docker架构?Docker使用了传统的cs架构模式(cilent-s 查看详情

socket(代码片段)

...视频客户端才能看它的视频)C/S架构与socket的关系:我们学习socket就是为了完成C/S架构的开发二、osi七层1、引子须知一个完整的计算机系统是由硬件、操作系统、应用软件三者 查看详情

系统架构实战:支付平台的架构设计(代码片段)

...和架构师而言,只有在了解架构背后的原理后,才能写出更高质量的代码,才能设计出更好的方案,才能在错综复杂的平台架构下产出价值,才能在各种场景下快速发现问题、快速定位问题、快速解决问题。... 查看详情