(学习笔记)JAVA开发需要掌握哪些技术?

据统计,目前从业软件开发的人数近2700万,其中大约520万使用JAVA作为主要开发语言。

        java是一种面向对象计算机编程语言,相对C#它的语法要简单一点,通过编程语言可以让计算机按你的需求执行相关的操作。

        跟编程语言相关的还有:数据库,缓存,服务器通信等等都需要掌握的知识,才能带入工作。等你的技术有一定的积累可以进阶到并发编程,分布式架构,微服务等等复杂一点的技术。

        这些技术每一项都包含了一个体系的知识,而这些年的工作经验告诉我,都掌握是不可能的,技术在不断创新和迭代,变牛逼的方式只有一个,比大多人会的更多!你懂吧?

        最近有几个学弟问我,想学习java开发需要掌握哪些开发技术呢?正好今天有空,就简单梳理一下。简单总结了以下几点:

JAVA基础

计算机基础知识,java SE基础知识,比如计算机如何从磁盘中读取数据,服务器之间如何通信(restful,rpc);java中的基础数据类型,语法,继承封装多态,线程,try-catch,反射等等。

这些基础是必然要掌握的。

1.JVM

三年开发面试必问,这是你编好的程序如何在计算机内存中操作数据的重要知识模块,jvm内存模型,类加载机制,垃圾回收机制,内存调优。。。理解越深你的段位越高!

2.Linux命令

mkdir,rm-rf(这个不能瞎整),free,top,tail等等一大堆哈哈

3.主流开发框架

开发框架:spring,MVC模式,springboot,springcloud等等

持久层框架:ibatis,struts,hibernate,mybatis等等(ibatis和struts了解发展历史即可)

工作流框架:activiti等等

4.数据库

主流的几种:Oracle,MySql,SqlServer,MongoDB,Redis

要掌握:sql语法基础,sql优化方案,存储过程基本读写,索引原理及优化,底层读写原理等等。

5.消息中间件

RabbitMQ,RocketMQ,Kafka等

6.代码管理仓库

常用的就是SVN和GIT。

学会这些,基本上开发一个项目没什么问题了!罗列这么多技术点不知道会不会给人劝退哈哈!

JAVA进阶

1.并发编程

线程锁,分布式事务解决方案,限流削峰方案,秒杀系统设计,FIFO队列,缓存服务器,水平垂直扩展等等。。

2.缓存

a.客户端缓存,b.服务端缓存,c.网络缓存,

其中服务端缓存:本地LocalCache,分布式缓存(Redis、Memcached等nosql),数据库缓存。

3.性能调优

老手都未必能掌握的一个技术高点!

a.服务架构调优

b.数据库调优

c.JVM调优

不断丰富自身技术栈的宽度和高度,提升自我价值才能让你脱颖而出!

想到哪里写到哪里,可能有点乱,等有时间了再好好整理。

  • 3
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值