Java编程之学习技巧
**本人博客网站 **IT小神 www.itxiaoshen.com
找到技术点
首先得知道自己要学习技术是什么?不管是来自同事、技术大牛推荐还是通过搜索引擎得到,或者另有出处如、技术交流群、技术论坛或社区或订阅一些IT报刊,此外还可以通过一些大厂或新兴行业公司招聘信息获取新兴技术
优选官网熟悉
比如Spring官网、Redis官网、Spark官网,Docker官网,学习官网是最正规最有效的方式,当然需自己克服对阅读英文文档的恐惧,前期可借助翻译软件辅助完成,且目前越来越多支持中文网站
越来越主流实用的优秀的开源框架或组件项目是国人研发的值得我们骄傲,比如Mybatis-Plus、Dubbo,Nacos、SkyWalking、ShardingSphere等
官网可以先从Getting Started开始体验,从搭建基础环境到第一个demo后有了基本的了解,进而系统学习框架组件,再针对需要应用的技术点重点详细阅读、理解和应用
其次选择源码网站
国外Github和国内Gitee是两个专门存放开源项目源码的地方,可以进一步学习应用,源码中一般带有较多应用场景demo源文件、Doc文档以及框架组件底层原理、架构;
阅读Java源码最好能有Java反射、注解、动态代理、链式与函数式编程、Lambada、以及少量常用设计模式的基础
阅读源码技巧
先抓主干、粗读跳过大部分分支,切记不要一上来就精读这样容易把自己绕晕,经验丰富的大都可以采用静态源码阅读方式,而源码阅读经验较少足者可通过借助源码调试方式找到调用栈的整个执行流程推导
每一次带有目的性去阅读源码比如Spring框架是怎么解决Bean循环依赖跟进源码追踪其处理方法
同步画流程图做笔记加深印象,阅读源码主要目的也是为了吸取其优秀设计思想,进而提高自身实战编程能力
关注Apache软件基金会
大名鼎鼎的Apache软件基金会,其诞生不少原生开发项目及其他优秀的开源项目的捐助,目前查阅Apache官网已有373个项目,如Hadoop、Flink、Maven、Tomcat等我们熟知的开源项目
注册技术交流账号
国外Stackoverflow、国内CSDN、博客园、开源中国等很多技术分享社区,程序猿有时间可以逛逛溜达和灌灌水,遇到难题可提出等待回复,个人有时间也可解答别人问题
视频或教程直播学习
现在越来越多机构从事直播培训教程,像国外YouToBe和国内的哔哩哔哩,不乏有很多培训机构或个人创作者提供有价值的技术培训视频课程、新产品技术发布和软件高峰会等录制视频,还有如腾讯课堂等在线直播授课等方式越来越受人喜爱。
搜索引擎使用
大部分伙伴这块就是常用使用手段了,个人认为如果作为已学习目的为主来说这个渠道要能有一定甄别和筛选能力,辅助参考和快速尝试解决问题的一种方式
再说一个番外话
业界上常有一种说法,一流公司定标准定规范,二流公司依据标准、规范开发框架、三流公司使用框架;技术无贵贱,只有是否适合企业或个人自身发展要求才是真正的得道者。
这里想表达的是作为以学习为主要目的的伙伴们,有时间可以关注和了解谷歌论文的发布,比如分布式崛起时代Haddop起源就不得不说起谷歌发表的Google FS、MapReduce、BigTable这三大论文,也俗称谷歌三驾马车
有条件和能力者可以研究一些有名开源项目并申请加入开源项目维护当中
最后,我个人非常赞同很多从师者授人以鱼不如授人以渔的教学方式,分享更多的是学习的心态和方法,深造者还是需自身脚踏实地的专研,当你比别人勤奋并持续坚持的时候注定你比别人博学
Java编程之学习技巧的更多相关文章
- Java编程风格学习(二)
二.格式规范 在上一篇的Java编程风格学习(一)中我们讲述了在Java编码中的一般原则,虽然这些原则并不涉及具体的代码规范,但是这些原则却是我们在Java开发过程中所应该遵循的规范与思想.今天我们将 ...
- Java编程风格学习(三)
在上一篇的java编程风格学习(二)中我们学习了一些在Java编码过程中的格式规范,遵循这些规范毋庸置疑是我们的书写高质量代码的前提与基础.今天我们更进一步,一起来学习Java编程的命名规范,向着编写 ...
- [Java编程思想-学习笔记]第3章 操作符
3.1 更简单的打印语句 学习编程语言的通许遇到的第一个程序无非打印"Hello, world"了,然而在Java中要写成 System.out.println("He ...
- Java编程思想学习(八) 内部类
可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类的定义是简单的,但是它的语法确实很是复杂,让人不是很好理解.下面就内部类做一个小结. 一.内部类的分类 总的来讲内部类分为普通内部类,匿 ...
- Java编程风格学习(一)
最近在看一本有关Java编程规范的书,书中精炼阐述了使用java语言时应该遵循的一些原则.接下来的一段时间我将在这里总结我的学习内容,也希望这一系列文章能够对有需要的人有所帮助.不考虑任何编码规范的代 ...
- java编程思想--学习心得
学习Java编程思想,需要了解语言特性,对于各种名词,能够借助项目代码,解释其含义,不借助搜索工具,明白其在什么样场景下使用,会带来什么样的问题,能否避免这类问题. 学习的过程,与软件开发相同,一样是 ...
- Java编程思想学习(一)----对象导论中多态的理解
1.1抽象过程 1)万物皆对象. 2)程序是对象的集合,他们通过发送消息来告知彼此所要求做的. 3)每个对象都有自己的由其他对象所构成的存储. 4)每个对象都拥有其类型. 5)某一特定类型的所有对象都 ...
- Java编程思想学习(十) 正则表达式
正则表达式是一种强大的文本处理工具,使用正则表达式我们可以以编程的方法,构造复杂的文本模式,并且对输入的字符串进行搜索.在我看来,所谓正则表达式就是我们自己定义一些规则,然后就可以验证输入的字符串是不 ...
- Java编程思想 学习笔记1
一.对象导论 1.抽象过程 Alan Kay曾经总结了第一个成功的面向对象语言.同时也是Java所基于的语言之一的Smalltalk的五个基本特性,这些特性表现了纯粹的面向对象程序设计方式 1)万物皆 ...
随机推荐
- Hadoop面试题总结(三)——MapReduce
1.谈谈Hadoop序列化和反序列化及自定义bean对象实现序列化? 1)序列化和反序列化 (1)序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储(持久化)和网络传输. (2) ...
- AIApe问答机器人Scrum Meeting 4.27
Scrum Meeting 3 日期:2021年4月27日 会议主要内容概述:汇报两日工作. 一.进度情况 组员 负责 两日内已完成的工作 后两日计划完成的工作 工作中遇到的困难 李明昕 后端 Tas ...
- BUAA软件工程个人博客作业
软件工程个人博客作业 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 个人博客作业 我在这个课程的目标 团队完成好的软件,并对自己作出规划 这个作 ...
- spring social实现百度登录
在早期我写过一篇spring social理解的文章,介绍了一些spring social的概念,但是没有提供一个例子.在这篇博客中,提供一个简单的spring social的例子,实现 百度登录,那 ...
- LVDS DP等显示器接口简介
LVDS 产品传输速率从几百Mbps到2Gbps.它是电流驱动的,他通过在接收端放置一个负载而得到的电压,当电流正向流动,接收端输出为1,反之为0,它的摆幅250mV-450mV. lvds 即低压差 ...
- HITS算法简介
1.算法名称 超文本敏感标题搜索 (Hyperlink-Induced Topic Search) 2.算法背景 HITS 算法是由康奈尔大学的Jon Kleinberg 博士于1997 年首先提出的 ...
- distinct-subsequences leetcode C++
Given a string S and a string T, count the number of distinct subsequences of T in S. A subsequence ...
- word-break leetcoder C++
Given a string s and a dictionary of words dict, determine if s can be segmented into a space-separa ...
- Luogu P1563 [NOIp2016提高组]玩具谜题 | 模拟
题目链接 纯模拟题,没啥好说的,就是要判断地方有点多,一定要注意细节. #include<iostream> #include<cstdio> #include<fstr ...
- Shadertoy 教程 Part 4 - 绘制多个2D图形和混入
Note: This series blog was translated from Nathan Vaughn's Shaders Language Tutorial and has been au ...