在互联网行业中,Java软件开发一直占据着首要地位,很多人都有学习Java的意向,没有计算机基础能学Java吗?学java要多久?半年能学会Java吗?我整理了一些大家比较关注的问题,给大家一一解答。
没有计算机基础能学Java吗?
有人说自己不是计算机专业,不了解编程语言,只是听朋友介绍说IT行业挣钱多,所以想通过学习Java实现高薪就业。
答案肯定是可以的,需要注意的是,仅仅是C语言和数据结构基础没有打好,并不是完全没有,学Java,会比完全没有编程基础的人更快,对基础知识理解的更快,更深入。很多学校选择C语言作为程序语言入门基础,是因为其入门比较简单,语法相对较少,容易掌握,但其指针不知道弄蒙了多少个同学。Java能直接学习是因为其是一门高级编程语言,不用去担心指针、数据结构等内容,和我们日常使用的语言更为相似,也更好理解。
半年能学会Java吗?
如果你的学习能力比较强,有较强的动手能力,是很容易学会的,java是高级语言里比较容易学习的,很容易入门,但是要学的深入是很需要时间的,也没几个人敢说完全搞懂java。
一般正常人 1-2周能学会java的基础语法,大概每天2-4个小时,坚持下来三四个月就能做出一些像样的小项目了。一些高级应用就需要漫长的使用和经验积累过程了。
但是要解决实际问题需要的技术栈不仅仅是java ,web 开发 需要学 j2ee ,html ,js 等,gui可以学javaFX,但一般没人用java做图形画的界面,更多是用来做web程序后台。需要学习java web 框架方面、网络通信、服务器、数据库方面的知识
如果你真的想学建议你做好计划,这部分技术栈入门资料网上很容易找。
鉴于许多人缺少系统性的学习方式,今天免费给大家分享一套Alibaba出品的Java成长笔记,主要是将Java程序员按照年限来进行分层,清晰的标注着Java程序员应该按照怎样的路线来提升自己,需要去学习哪些技术点。
下面会介绍这份Java成长笔记的主要内容涵盖的知识点,由于文章篇幅,所以只展示了截图内容
如有需要完整版PDF文档,可到文末点击名片,扫码免费领取
Part1:0-1年入门
- Java基础复盘(面向对象+Java的超类+Java的反射机制+异常处理+集合+泛型+基础IO操作+多线程+网络编程+JDK新特性)
- Web编程初探(Servlet+MySQL数据库+商品管理系统实战)
- SSM从入门到精通(Spring+SpringMVC+Mybatis+商品管理系统实战-SSM版)
- SpringBoot快速上手(SpringBoot+基于SpringBoot的商品管理系统实战)
1.Java基础复盘
2.Web编程初探
3.SSM从入门到精通
4.SpringBoot快速上手
Part2:1-3年高工
- 并发编程进阶(并发工具类实战+CAS+显示锁解析+线程池内部机制+性能优化)
- JVM深度剖析(理解运行时数据区+堆外内存解读+JDK+内存泄漏问题排查+Arthas+GC算法和垃圾回收器+类加载机制等)
- MySQL深度进阶
- 深入Tomcat底层(线程模型+性能调优)
1.并发编程进阶
2.JVM深度剖析
3.MySQL深度进阶
4.深入Tomcat底层
Part3:3-5年资深
- 数据库(调优+事务+锁+集群+主从+缓存等)
- Linux(命令+生产环境+日志等)
- 中间件&分布式(dubbo+MQ/kafka、ElasticSearch、SpringCloud等组件)
1.数据库
2.Linux
3.中间件&分布式
Part4:5-7年架构
- 开源框架(Spring5源码+SpringMVC源码+Mybatis源码)
- 分布式架构(Zk实战+RabbitMQ+RocketMQ+Kafka)
- 高效存储(Redis+mongoDB+MySQL高可用+Mycat+Sharing-Sphere)
- 微服务架构(RPC+SpringBoot+SpringCloud Netflix+SpringCloud Alibaba+docker+k8s)
总结
虽然我个人也经常自嘲,十年之后要去成为外卖专员,但实际上依靠自身的努力,是能够减少三十五岁之后的焦虑的,毕竟好的架构师并不多。
架构师,是我们大部分技术人的职业目标,一名好的架构师来源于机遇(公司)、个人努力(吃得苦、肯钻研)、天分(真的热爱)的三者协作的结果,实践+机遇+努力才能助你成为优秀的架构师。
如果你也想成为一名好的架构师,那或许以上这份Java成长笔记你需要阅读阅读,希望能够对你的职业发展有所帮助。
上述完整PDF版已经整理好了,有需要的朋友可以点击下方名片,扫码可免费获取。