之前学习Java的时候走过一些弯路,一直想写一篇文章来总结下自己对自学Java的认识。趁着这次开通专栏的机会整理一篇文章,既可以巩固所学,也可以为后来境遇相同的人做个参考。

首先提出几个问题

  • Java能用来干什么
  • Java学的是什么

Java能用来干什么

很多初学者一开始根本就没弄明白Java的应用领域。小时候我对计算机的主要想法其实是学习网络安全成为黑客大牛,后来在大学期间不知不觉的进入了Java领域。

在目前的软件开发市场,Java主要用于服务器端的开发(虽然Java还提供了开发手机应用和电脑桌面应用,但早已不成为主流了),服务器即是处理你对软件的操作并响应结果。这里说的软件主要有网站、手机app、电脑桌面应用等,通常将软件称为客户端。

下面用一张图表示主流Java程序的体系架构

Java学的是什么

根据上面说的体系架构,学习Java同时还要涉及其他技术。这里以javaEE来说,主要有三大模块。

  • web前端
  • Java
  • 数据库

一些坑

相信很多人在打算自学Java的时候,并没有去仔细了解Java的应用方向,更没有去研究过Java的知识体系。懵懵懂懂上路,兜兜转转,不得要害,甚是痛苦!

当我们零基础打算自学Java的时候,很多人第一反应是去百度自学Java,或者去知乎搜自学Java,找个高票答案,听信一些所谓大佬的话买一堆书籍如:《Java核心技术卷》、《Java编程思想》、《Effective Java》等等。事实上这些书并不适合小白,然后多半是从入门到放弃。

百度得到的信息资源也是五花八门让人眼花缭乱,甚至是过时的内容。

接下来进入正题。为帮助选择困难症的同学,这里不会让大家做太多选择。

各阶段教程推荐

1.JavaSE

A.刘意27天Java基础视频

B.马士兵Java学习视频

Java基础内容基本上没多大变化,主要变化也是随着jdk版本的升级带来的新特性,这些内容后期有基础了再自行百度查找相关文档学习。

个人还是比较推荐A套视频的,B套视频可用于辅助。毕向东的视频没看过也没有资源,所以不做评论。

关注公众号回复JavaSE获取视频资源

2.JavaWeb

JavaWeb视频教程_王泽(广陵散)+崔希凡

这套视频一直是经典,知识点讲解全面且清晰,甚至包含了web前端的基础知识和数据库相关知识。这里也就不再推荐其他视频了。

关注公众号回复JavaWeb获取视频资源

3.主流框架

Spring:Spring4.x入门视频教程_王泽(广陵散)

关注公众号回复Spring获取视频资源

Mybatis:Mybatis由浅入深教程

关注公众号回复Mybatis获取视频资源

SpringMvc:Springmvc由浅入深教程

关注公众号回复SpringMvc获取视频资源

IDE选择:

初学者一开始不必太在意使用哪种开发工具,初学Java基础最好使用submit、记事本等文本编辑器然后用命令行编译和运行Java程序,不然总是习惯开发工具提供的代码提示最后连Java基本关键都无法手写出来。掌握Java基本语法和命令行开发后再选择eclipse、Myeclipse、idea等工具。



如果文章有错的地方欢迎指正,大家互相交流。感谢关注公众号JsjCoding

最新文章

  1. openvpn 启动
  2. jquery实现input输入框实时输入触发事件代码(点击历史记录也会触发)
  3. POJMatrix(二维树状数组)
  4. excel如何设置输入数字后单元格自动填充颜色
  5. rocketmq总结
  6. mysql 利用binlog增量备份,还原实例
  7. 【Zend Studio】10.6.0版本设置默认编码为UTF-8
  8. System.Data.SqlClient.SqlError: 备份集中的数据库备份与现有的 'XXX' 数据库不同
  9. Codeforces Round #207 (Div. 2)C
  10. Live555中RTP包的打包与发送过程分析
  11. Android调用第三方应用
  12. 【常用小命令】解决windows下有些文件文件名识别不了导致删除不了的问题
  13. C语言入门(14)——结构体
  14. idea中,发现某个java语法在低版本中不支持时的解决办法
  15. 关于如何使用xposed来hook微信软件
  16. Ubuntu 16.04安装Nginx
  17. Linux Hung Task分析
  18. [UOJ317]【NOI2017】游戏 题解
  19. "美女相册"的 js 实现代码
  20. String类的常用方法详解

热门文章

  1. oracle data guard备库备份恢复
  2. 模态对话框测试 MFC中的模态对话框与非模态对话框
  3. 减少Qt编译时间暨简单Qt裁剪
  4. uva10883_Supermean_数学
  5. IO多路复用与异步非阻塞
  6. CodeSmith使用SQLite Provider找不到请求的 .Net Framework 数据提供程序
  7. Nodejs操作MySQL - 增删改查
  8. 多线程与高并发(三)synchronized关键字
  9. 【设计模式】行为型09访问者模式(Visitor Pattern)
  10. 【设计模式】行为型04迭代器模式(Iterator Pattern)