极客时间架构师训练营 - week8 - 作业 2

用户头像
jjn0703
关注
发布于: 2020 年 07 月 29 日

根据当周学习情况,完成一篇学习总结

本周的课程主题依旧是“性能优化是架构师展现自己技能全面性的时刻”,第一次课的主要内容是数据结构与算法,第二次课的主要内容是网络与数据库。这些内容无疑是每个与程序打交道的人都必须深刻掌握与理解的!

数据结构与算法,是每个人的积累与内功的体现,也是大厂面试的重中之重。正如李老师说,算法与数据结构是进入大厂的门槛,在实际工作里不直接体现,却是个很好的筛选工具。这里呢,首先要搞明白的是时间复杂度与空间复杂度的计算,基于这个理论,我们才能评判出算法设计的优劣。其次呢,是熟悉各种常见的数据结构,包括数组、链表、哈希表、栈、队列、树(二叉排序树、红黑树)、跳表等,明白其结构的特点与适用场景、适用原因等等。最后呢,是熟悉一些经典的算法,包括穷举算法、递归算法、贪心算法、动态规划等等。明白了这些知识,有利于我们更好地去理解一些中间件的设计,按照实际情况作出更好地选择等等。

网络与数据库部分,也是很基础的、每个从业者都应该掌握的内容。首先讲解的是网络部分,涉及内容包括OSI七层模型与TCP/IP四层模型、TCP/IP协议、HTTP协议等。我们要熟悉每一层都进行了哪些操作,涉及到了哪些协议。后面重点介绍了非阻塞网络IO,对比了传统的Java IO与NIO的处理差别。最后一部分内容是数据架构原理与性能优化,包括数据库的架构及各个组成、PrepareStatement的优势,B树与B+树,索引与事务等。在答疑阶段,印象比较深刻的一个问题是关于分布式事务的处理的,李老师建议采用主动的异常补偿的方法来进行,通过这种方式来保证事务。

最后,课程里我印象很深刻的一点是,李老师分享的个人学习方法论——每个知识点都去设身处地的猜想,如果是自己去设计、去实现,自己会怎么去设计与实现。毕竟每个人的精力有限,很难去钻各种技术的细节,要学会从宏观角度把握!

以上!

发布于: 2020 年 07 月 29 日 阅读数: 25
用户头像

jjn0703

关注

Java工程师/终身学习者 2018.03.26 加入

USTC硕士/健身健美爱好者/Java工程师.

评论

发布
暂无评论
极客时间架构师训练营 - week8 - 作业2