文档章节

JCF框架源码分析系列-开头篇(一)

Ambitor
 Ambitor
发布于 2015/10/30 11:27
字数 824
阅读 194
收藏 1

唠叨

  前两天第一次写博客,发布第一天就突破1000的访问量了,还被oschina首页推荐了,想想也是开心极了,这给我坚持写博文提供了动力 ,毕竟分享技术观点和大家一起讨论是一件非常有意义的事情。

装逼(不要打我)

  • 先聊聊为什么突然想去看JDK源码吧
    因为本人暂时的目标是2年内做到架构师,于是我试图学习和了解各种框架、技术且找机会在项目中不断应用,如cache、nosql、MQ,设计模式、服务器架构等等,可是学着学着越发的发现基础(实现原理)的重要性,知其然不知其所以然是做不好一个程序猿的,所以想把底层的一些实现看看,我想通往架构师这条路也就是从 学会使用 —> 了解原理 —> 自己能实现 吧。

  • 再聊聊为什么要看JCF框架吧
    这个问题其实不必多说大家都知道重要性,比如他是java变成最基本、最常用的数据结构类集,再比如高级程序员的面试都可能问到,还有我认为它也是JDK比较通俗易懂的代码,种种理由让我们都必须去看它

  • 最后聊聊JCF框架我怎么去看的吧

    • 需要看哪些类 
      只针对最常用类,后面会重点分析 IterableIteratorCollectionListArrayListLinkedListSetHashSetMapHashMapQueueProxyQueueDelayQueueBlockingQueue(暂时这么多了,如果大家还有其他常用类需要了解,提出来我去看看源码)

    • 从哪些方面分析 
      这些常用类 底层数据结构重要方法怎么实现之间的关系...

    • 推荐一些值得借鉴的代码编写方式或思路

UML类图


  让我们先来看一张简单的JCF框架图(图是网上找的,原谅我一生不羁放纵没工具画图,大家有没有比较好的画图工具推荐啊。)这张图相对来说还是比较正确的,虽然少了点东西,比如说Collection上面还有Iterable、下面还有跟List并列的Queue接口等,但相比网上其他一些图片还是相对比较准确,至少不会把Map划在Collection下面。相信很多人跟我开始一样很难记住个结构,想想前两年开始学java的时候还喜欢背这些的时候就想笑,所以学习还是要找到方式,好啦,这篇文章就先介绍到这吧,后续的文章会一个个书写,当然本人java2年经验,有分析不对的地方还请各位大侠拍砖。

注:非常感谢oschina的童鞋告诉了我Markdown规范,感觉棒棒哒
版权所有转载请注明出处http://my.oschina.net/u/926166/blog/523951


© 著作权归作者所有

Ambitor
粉丝 74
博文 33
码字总数 33366
作品 0
深圳
技术主管
私信 提问
加载中

评论(2)

Ambitor
Ambitor 博主

引用来自“天使broken”的评论

我发觉真正的理解 是在实际的工作中使用 在业务逻辑中需要的时候才能产生很深刻的印象。
当然! 阅读只能是让你了解,实际如何择取及应用才能让你理解精髓和优劣。
天使broken
天使broken
我发觉真正的理解 是在实际的工作中使用 在业务逻辑中需要的时候才能产生很深刻的印象。
Prism研究(for WPF & Silverlight)6.StockTrader RI研究

这套项目源码是Prism框架自带的,涵盖了我们在进行Prism开发时所遇到的绝大部分实际问题。以下若干篇是我近半个月对StockTrader RI(简称RI)研究的系列文章集合,预计共有15篇左右,一并附属...

andrewniu
2018/05/25
0
0
从react-start到co源码(三)

react作为当前十分流行的前端框架,相信很多前端er都有蠢蠢欲动的学习它的想法。工欲善其事,必先利其器。这篇文章就简单的给大家介绍一下如何我快速的搭建一个前端开发环境。主要针对于小白...

2json
09/29
0
0
MySQL数据库实操教程(35)——完结篇

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 https://blog.csdn.net/lfdfhl/article/details/99707521 自定义View系列教程00–推翻自己和...

谷哥的小弟
08/18
0
0
Android 7 源码分析系列导读

关于作者 郭孝星,程序员,吉他手,主要从事Android平台基础架构方面的工作,欢迎交流技术方面的问题,可以去我的Github提issue或者发邮件至guoxiaoxingse@163.com与我交流。 文章目录 一 基...

郭孝星
2017/10/09
0
0
Dart语法进阶篇(一)-- Dart源码的排序算法详解

版权声明:本文为博主原创文章,未经博主允许不得转载。https://www.jianshu.com/p/44ae73a58ebc 转载请标明出处: https://www.jianshu.com/p/44ae73a58ebc 本文出自 AWeiLoveAndroid的博客...

AWeiLoveAndroid
07/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

【在 Nervos CKB 上做开发】Nervos CKB 脚本编程简介[3]:自定义代币

原文作者:Xuejie 原文链接:https://xuejie.space/2019_09_06_introduction_to_ckb_script_programming_udt/ Nervos CKB 脚本编程简介[3]:自定义代币 CKB 的 Cell 模型和 VM 支持许多新的用...

NervosCommunity
50分钟前
4
0
通过OAuth2.0 获取授权访问SF 用户数据

通过OAuth2.0 获取授权访问SF 用户数据 OAuth2.0 相关知识 深入了解 Salesforce 中的 OAuth 2.0(SF官方) OAuth 2.0 的一个简单解释(阮一峰大神) OAuth 2.0 的四种方式(阮一峰大神) GitHub OA...

在山的那边
56分钟前
7
0
编写程序:从键盘上接受一个三位数(首先要确保是三位数),计算出各位之和输出。

#include<stdio.h> int main() { int a,sum=0; printf("请输入一个三位数:\n"); scanf("%d",&a); sum=a/100+a%100/10+a%10; printf("这三个数的和:%d",sum); return 0; }......

201905021729吴建森
今天
7
0
如何离开/退出/停用Python virtualenv

我正在使用virtualenv和virtualenvwrapper。 我可以使用workon命令在virtualenv之间切换。 me@mymachine:~$ workon env1(env1)me@mymachine:~$ workon env2(env2)me@mymachine:~$ workon e......

技术盛宴
今天
7
0
成长之路 万事坚持难

任何事情开了头,想要更好的发展下去,不忘初心,就一定要坚持下去。 以前自己坚持了一些事情,比如早睡不吃东西,由于中途断了,没有及时止损,导致又接着恶习断了几天。所以 及时的反省和调...

T型人才追梦者
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部