杂谈 ·

致纯纯的小白

前言

群中会有在这条路上走了或长或短的一段的朋友,也肯定会有想入门或刚入门的朋友,感谢你的加入,希望在这里大家有问题可以一起吃讨论,没问题时也能一起嗨,毕竟生活不只有眼前的苟且以及日常的码代码,还有诗和远方。

本文不会告诉你Java是什么,也不会涉及各种环境变量的配置,只对群里最常见的“如何入门”系列问题给一点初学的建议。争取同时推荐文档、视频和书籍,以照顾不同人群。由于我本人是java后端出身,所以路线更偏向JavaWeb,非这方面的仅供参考。

如果你是在校学生,请务必学好学校设开的那些专业基础课(比如计算机系统、算法、编译原理等等),这些可能很难也很枯燥,可能会感觉现在编程课中用不到它们,但当你某一天不想只停留在表面做一些搬砖的工作时,你会感谢现在努力学习的自己。这里推荐一下网易云课堂的大学计算机体系,当枕头书看不下去时可以考虑看看里面的相关视频。非在校的朋友可以留在以后慢慢了解,毕竟这些不会影响你入门Java.

入门

一、java基础

首先找一个Java基础教程学习,文档可以选菜鸟教程视频网易云课堂慕课网极客学院,培训机构里的视频就不知道了,有知道的可以推荐;书籍可以是《Java核心技术(原书第10版) 卷Ⅰ》,有人可能会看到有推荐《Java编程思想》(《Think in Java》)的,但我感觉真想看最好等后期有了经验后再来看这本。不管你选择什么途径,希望你能从一而终,坚持把一个教程看到底。学习基础时尽量多动手,想当然的结果和真正写出来时运行的结果不一定一致。当学完教程后,你应该对Java有一个基本的了解了,你可以用Java语言写出一些简单的程序。最好留几天,巩固一下基础。

1.1 helloworld小黑窗

在各种入门教程中,你可能经常看到在cmd命令窗口执行如下命令:

$ javac HelloWorld.java
$ java HelloWorld
Hello World

这个主要是在展示java最基本的编译-运行的过程,了解过后就可以直接在IDE中编写自己的代码了,没必要长期纠结在记事本编写+cmd等终端命令行运行上。

1.2 Eclipse和IDEA

这两个都是常用的IDE,用于编写Java的工具。平时选自己最喜欢、用的最熟练最顺手的就好,不要花太多时间在选择工具这件事情上。刚开始可以都下下来找下感觉,尽快确定下来,入门阶段就不要轻易更换了。

1.3 Git与笔记

建议从初学就养成记笔记的习惯,可以写博客,也可以记在云笔记等地方,从而逐渐整理出自己的知识体系,也方便后期遇到类似问题时查找解决方案。

推荐各位在码云或者Github注册个账号,将平时练手的代码传到上面保存,这样就可以顺便学习一下git。

Git 是现在主流的版本管理工具之一,本项目发布在公司的Git仓库中。为了能更好地协作,建议你安装Git客户端管理和发布代码。

可以从 下载 Git 获得最新版的git工具。

Git的中文学习资料可以参考: git代码管理原理Pro Git 中文版Pro Git 第二版 简体中文易百 Git 教程搬进 Github

资料很多,但不要贪杯哦,时间有限,选择最适合自己的一个教程去学,莫要贪多

二、Web开发

主要是Web开发相关的内容,包括HTML/CSS/JS(前端页面)、Servlet/JSP(J2EE)以及Mysql(数据库)相关的知识。它们的学习顺序应该是从前到后,因此最先学习的应该是HTML/CSS/JS(前端页面,基础的前端技术),这部分内容推荐w3school。对于Java后端来说,不是重点,但至少要达到可以用上面基础的前端技术自己写出一些简单页面的水平。前端方面想在深入点的话,可以考虑看下目前主流框架vue,走进vue你会发现一个新的天地,至于jquery 现在用的比较少了,可以大致了解下怎么用,但不建议深入。

重点应放在Servlet/JSP(J2EE)部分,关于Servlet/Jsp部分视频的选择,据说业界比较认可马士兵的视频,因此推荐给大家。但我个人没看过,所以不好说的太绝对,如果大家自己有更好的选择,可以坚持自己的,愿意分享出来的也可以将分享链接传到群中。

最后一步,你需要学会使用数据库,mysql是个不错的入门选择,而且Java领域里主流的关系型数据库就是mysql。这部分一般在你学习Servlet/Jsp的时候,就会接触到的,其中的JDBC部分就是数据库相关的部分。你不仅要学会使用JDBC操作数据库,还要学会使用数据库客户端工具,比如navicat,sqlyog,二选一即可。

三、开发框架

公司里为了提高开发的效率,会使用一些Java Web框架,因此你还需要学习一些开发框架。目前比较主流的是SSM框架,即spring、springmvc、mybatis。你需要学会这三个框架的搭建,并用它们做出一个简单的增删改查的Web项目。你可以不理解那些配置都是什么含义,以及为什么要这么做,这些留着后面你去了解(关于Spring的书可以看《Spring实战》)。

但你一定要可以快速的利用它们三个搭建出一个Web框架,你可以记录下你第一次搭建的过程,相信我,你一定会用到的。还要提一句的是,你在搭建SSM的过程中,可能会经常接触到一个叫maven的工具。这个工具也是你以后工作当中几乎是必须要使用的工具,所以你在搭建SSM的过程中,也可以顺便了解一下maven的知识。在你目前这个阶段,你只需要在网络上了解一下maven基本的使用方法即可,一些高端的用法随着你工作经验的增加,会逐渐接触到的。

当然现在SpringBoot也是比较流行的了,但此时不是特别需要看,先通过ssm框架打好框架这块的基础,再看SpringBoot你会发现很简单,因为SpringBoot封装了一些默认配置,从而减少了程序中的xml配置文件以及依赖包的引入等。

当你完成开发框架的学习以后,就可以考虑找工作的事情了。之后的进阶这里就不写了,想了解的可以先看下一位资深程序员大牛给予Java初学者的学习路线建议

结语

最后会往群空间中分享几个关于二和三的视频和文件。如果你属于纯纯的小白,希望这篇文章能让你有一点收获。第一次写怎么入门的东西,如果我说的有什么不好或错误的也欢迎大家指正,也欢迎提出各种有意义的见解或补充。

参与评论