Java进阶的道路,怎么成为大牛?
已然励志在java路上走的更远,那就有必要了解java的途径。先看图
image.png
愈加细化的细节如下
一: 编程基础
不管是C仍是C++,不管是Java仍是PHP,想成为一名合格的程序员,根柢的数据结构和算法基础仍是要有的。下面几篇文章从思想到完毕,为你梳理出常用的数据结构和经典算法。
1-1 常用数据结构
数组、链表、堆、栈、部队、Hash表、二叉树等
1-2 算法思想
算法时间复杂度和空间复杂度的剖析核算
算法思想:递推、递归、穷举、贪心、分治、动态规划、迭代、分枝距离
1-3 经典算法
经典排序:插入排序、冒泡排序、快排(分划沟通排序)、直接挑选排序、堆排序、吞并排序
经典查找:次序查找、二分查找、二叉排序树查找
1-4 高档数据结构
B+/B-数、红黑树、图等
1-5 高档算法
图的深度优先查找、图的广度优先查找、拓扑排序、Dijkstra算法(单源最短途径)、霍夫曼编码、曲折相除法、最小生成树等
二:Java言语基础
诞生不过二十余年的Java言语仰仗其跨途径、面向政策、适合于分布式核算的特性,广泛运用于Web网站、移动设备、桌面运用中,而且现已接连多年稳居TOBIE编程言语排行榜前列,最近更是登上冠军宝座。Java有哪些优异而又异乎寻常的当地首要必定要清楚。
2-1 基础语法
Java语法格式,常量和变量,变量的作用域,方法和方法的重载,运算符,程序流程控制,各种根柢数据类型及包装类
2-2 重要:集结类
Collection以及各种List、Set、Queue、Map的完毕以及集成联络,完毕原理
Collections和Arrays
2-3 其他JavaAPI
String和StringBuffer,System和Runtime类,Date和DateFomat类
java.lang包
java.util包(集结类体系、规矩表达式、zip,以及时间、随机数、特征、资源和Timer等)
java.math包
java.net包
java.text包(各种格式化类等)
java.security包
2-4 面向政策、面向接口
政策的三大特性:封装、继承和多态,优缺点
怎样规划类,类的规划原则
this关键字,final关键字,static关键字(hbLfgrbw)
政策的实例化进程
方法的重写和重载;方法和方法的参数传递进程
结构函数
内部类,抽象类,接口
政策的多态性(子类和父类之间的转化、父类纸箱子类的引用),抽象类和接口在多态中的运用
2-5 JVM内存模型、废物回收
2-6 关于失常
Throwable/Error/Exception,Checked Exception vs. Unchecked Exception,失常的捕捉和抛出,失常捕捉的原则,finally的运用
2-7 多线程
线程和进程的概念
怎样在程序中创立多线程,线程安全问题,线程之间的通讯
线程的同步
死锁问题的剖析
线程池
2-8 IO
java.io包,了解IO体系的根据管道模型的规划思路以及常用IO类的特性和运用场合。
File及相关类,字节省InputStream和OutputStream,字符流Reader和Writer,以及相应缓冲流和管道流,字节和字符的转化流,包装流,以及常用包装类运用
剖析IO功用
2-9XML
了解SAX、DOM以及JDOM的优缺点而且能够运用其间的一种完毕XML的解析及内容处理;这几种解析方法的原理
2-10 一些高档特性
反射、署理、泛型、枚举、Java正则表达式
2-11 网络编程
网络通讯协议原理及适用场景,Socket编程,WEB服务器的作业原理
2-11 JDK1.5、JDK1.6、JDK1.7、JDK1.8每个版别都比前面一个版别添加了哪些新特性,进行了哪些行进
三:数据库相关
前面说到了数据结构,数据库简略来说就像是电子化的档案柜,是依照必定的数据结构来组织、存储和处理数据的库房。
3-1理论基础
数据库规划原则和范式
事务(ACID、作业原理、事务的隔绝等级、锁、事务的传达机制)
3-2 各种数据库优缺点、运用场景剖析
MySQL/SQLServer/Oracle以及各种NoSQL(Redis、MongoDB、Memcached、HBase、CouchDB等)
3-2 SQL句子
数据库创立,权限分配,表的创立,增修改查,联接,子查询
触发器、存储进程、事务控制
3-3 优化
索引原理及适用,大表查询优化,多表联接查询优化,子查询优化等
3-4 分库、分表、备份、搬家
导入、导出,分库、分表,冷备热备,主从备份、双机热备、纵向扩展、横向扩展
3-5 JDBC
JDBC Connection、Statement、PreparedStatement、CallableStatement、ResultSet等不同类的运用
联接池(装备运用、完毕原理)
ORM,DAO
四:JavaWeb中心技术(包含部分前端)
Html5/Css/JS原生/jQuery
Ajax(跨域等)
JSP/JavaBean/Servlet/EL/JSTL/TabLib
JSF
JSON
EJB
序列化和反序列化
规矩引擎
查找引擎
模板引擎
缓存
身份认证
查验
集群
耐久化
生成静态页技术
高功用
安全
事务JTA
其他需求了解的,如:处理JMX、安全JCCA/JAAS、集成JCA、通讯JNDI/JMS/JavaMain/JAF、SSI技术
五、干流结构及东西
Struts1/Struts2
Spring(IoC、AOP等),SpringMVC
耐久化:Hibernate/MyBatis
日志:Log4j
单元查验:JUnit
音讯部队:(haLujian)ActiveMQ、RabbitMQ等
负载均衡:Nginx/HaProxy
Web服务器:Tomcat、JBoss、Jetty、Resin、WebLogic、WebSphere等
通讯:WebService(cxf的soap、restful协议)
缓存:Redis、Memcached
作业流:Activity、JBPM
查找引擎:lucene,根据lucene封装的solr
模板引擎:Velocity、FreeMaker
大数据:Hadoop(HDFS和MapReduce)
构建东西:Ant/Maven
六、JavaWeb体系规划与架构
Java规划方法
JAVA与UML建模
面向服务架构:SOA/SCA/ESB/OSGI/EAI,微服务
面向资源架构:ROA/REST
面向云架构:COA/Saas/云核算
大型网站负载均衡、体系调优等
七、More
排错才调:
应该能够根据失常信息比较快速的定位问题的原因和大致方位
优化才调
代码规范、代码处理:
有自己的代码规范体系,代码可读性好
常识面广:
懂各种网络产品及特性,懂各种中间件,能够知道坑在哪儿,深谙各种技术计划的优缺点,懂整合各种资源并抵达最优....了解各种技术及运用场景,有满足的作业经历处理集成中遇到的各种奇葩问题
技术处理/技术总监:
产品处理、项目处理、团队建造、团队行进
CTO:
发展战略
总结:现在的我和我的政策还有很大的距离,希望每逢过一段时间就来看看这些东西,看看自己是否又行进了一步。java大神任而道远,路在脚下,加油。
Java进阶的道路,怎么成为大牛?的更多相关文章
- Java 进阶 hello world! - 中级程序员之路
Java 进阶 hello world! - 中级程序员之路 Java是一种跨平台的语言,号称:"一次编写,到处运行",在世界编程语言排行榜中稳居第二名(TIOBE index). ...
- Java进阶(五)Java I/O模型从BIO到NIO和Reactor模式
原创文章,同步发自作者个人博客,http://www.jasongj.com/java/nio_reactor/ Java I/O模型 同步 vs. 异步 同步I/O 每个请求必须逐个地被处理,一个请 ...
- Java线程间通信方式剖析——Java进阶(四)
原创文章,同步发自作者个人博客,转载请在文章开头处以超链接注明出处 http://www.jasongj.com/java/thread_communication/ CountDownLatch C ...
- Java进阶(三)多线程开发关键技术
原创文章,同步发自作者个人博客,转载请务必以超链接形式在文章开头处注明出处http://www.jasongj.com/java/multi_thread/. sleep和wait到底什么区别 其实这 ...
- 当我们说线程安全时,到底在说什么——Java进阶系列(二)
原创文章,同步发自作者个人博客,转载请以超链接形式在文章开头处注明出处http://www.jasongj.com/java/thread_safe/ 多线程编程中的三个核心概念 原子性 这一点,跟数 ...
- Java进阶03 IO基础
链接地址:http://www.cnblogs.com/vamei/archive/2013/04/11/3000905.html 作者:Vamei 出处:http://www.cnblogs.com ...
- Java进阶01 String类
链接地址:http://www.cnblogs.com/vamei/archive/2013/04/08/3000914.html 作者:Vamei 出处:http://www.cnblogs.com ...
- 从ConcurrentHashMap的演进看Java多线程核心技术 Java进阶(六)
本文分析了HashMap的实现原理,以及resize可能引起死循环和Fast-fail等线程不安全行为.同时结合源码从数据结构,寻址方式,同步方式,计算size等角度分析了JDK 1.7和JDK 1. ...
- Java进阶(七)正确理解Thread Local的原理与适用场景
原创文章,始自发作者个人博客,转载请务必将下面这段话置于文章开头处(保留超链接). 本文转发自技术世界,原文链接 http://www.jasongj.com/java/threadlocal/ Th ...
随机推荐
- AcWing 32. 调整数组顺序使奇数位于偶数前面
习题地址 https://www.acwing.com/solution/acwing/content/2921/ 输入一个整数数组,实现一个函数来调整该数组中数字的顺序. 使得所有的奇数位于数组的前 ...
- 3. 语法"陷阱"
1. C运算符优先级 运算符(优先级从高到低) 结合律 ++(后置).--(后置).()(函数调用).[].{}.(复合字面量).. .-> 从左往右 ++(前置).--(前置).-.+.~.! ...
- CSP-S 2019文澜中学游记(11.15~11.17)
前言 今年的\(CSP-S\),本以为自己的实力与去年的\(NOIP\)相比,能有较大的提升的. 没想到,菜是原罪,弱就是弱,依然逃脱不了被吊锤的命运. \(Nov\ 15th\):\(Day\ 0\ ...
- 如何使用PHP的生成器yield处理大量数据业务
官方解释yield yield生成器是php5.5之后出现的,官方文档这样解释:yield提供了一种更容易的方法来实现简单的迭代对象,相比较定义类实现 Iterator 接口的方式,性能开销和复杂性大 ...
- Python的定时执行
最近手把手教妹子写Python,被一篇博客误导了,这里记录一下. 妹子需要的是一个定时闹钟,到点往钉钉群里推个消息.她一顿搜索猛如虎,参照着其他人的博客,搞了一个while: target_time ...
- 黄聪:不使用 webpack,vuejs 异步加载模板
webpack 打包不会玩,整了这么个小玩具 一段 vue 绑定代码,关键点在 gmallComponent 1.异步加载外部 vue 文件(非 .vue) 2.按一定规则拆分 template.sc ...
- Koa + GraphQL 示例
初始化项目 创建 graphql-example 文件夹进入后初始化一个 package.json 文件. $ mkdir graphql-example && cd $_ $ yar ...
- python爬取网站视频保存到本地
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: Woo_home PS:如有需要Python学习资料的小伙伴可以加点 ...
- CSS3 动画--- CSS3 animation
动画是CSS3中具有颠覆性的特征之一,可通过设置多个节点来精确控制一个或一组动画,常用来实现复杂的动画效果. 语法格式: animation:动画名称 花费时间 运动曲线 何时开始 播放次数 是否反方 ...
- Java基础--常用API--IO流相关API
一.IO流 1.定义: IO流指的是Input/Output流,即输入流/输出流. 输入流:将外界信息写入程序,即从外界获取信息,属于读操作. 输出流:将程序数据发送给外界,即向外界传输数据,属于写操 ...