老杜告诉你java小白到大神是怎么炼成的

1. 学习前的准备

一个好的学习方法(应该怎么学习更高效);

      • 一个合格的程序员应该具备两个能力

      • 有一个很好的指法速度(敲代码快)

      • 有一个很好的编程思想(编程思路:能够使用编程的思路去解决现实生活中问题的一种能力)

      • 指法速度

      • 键盘的手势要正确,左手:asdf,右手:jkl;,如果你的手势不对,从现在开始纠正它。

      • 刚开始的时候比较麻烦,还没有二指禅快呢,但是随着时间的推移,你的代码速度会有很明显的提升。只要坚持下来。一开始的时候一定要坚持盲打(强迫自己不看键盘)。

      • 可以安装一个金山打字通。可以练习打字。当然,也可以在敲代码的过程中去练习,都是可以的。

      • 练习到什么级别?肌肉记忆!!!!

      • 编程思想的形成

      • 编程思想就是编程思路,有很多同学问我:老师,我现在听课能听懂,但是你让我解决一个实际的问题,我不会,不知道该怎么下手!!!

      • 千万不要照抄代码,没用。或者说作用很小,如此下去可能会导致你对学习的厌烦。本来是有兴趣的,但是兴趣没了!只有一个程序可以抄写:HelloWorld,大家都知道HelloWorld是我们学习过程中的第一个程序,为什么这个程序可以照抄呢?因为HelloWorld程序的编写是为了测试本地的java环境是否搭建成功了。并不需要理解HelloWorld代码的含义。所以这个程序是可以严格照抄的。

      • 结论验证法

      • 听课的过程当中一定要把笔记记录下来。笔记当中只记忆重点的结论。

      • 课下第一件事不是慌着做作业。作业是次要的。首要的第一件事是消化课堂上的结论。比如老师说了:if语句后面有一个小括号,小括号当中的数据类型只允许是布尔类型:true或者false不能是其它数据类型。

      • 课下尝试编写属于自己的程序,想尽一切方法去推翻这个结论,如果你无法推翻,那么只能选择接受这个结论,采用这种方式测试之后,发现结论记住了。并且同时也锻炼了编程的思路!

一个好用的截图工具

      • Snipaste

一个好的记笔记的软件

      • 笔记中一定是只记忆重点结论。没有废话。

      • 课堂上笔记记简笔,没有时间记那么详细,课下的时候自己再整理。整理各种结论。

      • 图文并茂。

      • 推荐使用微软的onenote。专门的记笔记的工具。

      • 课下第一件事:是编写属于自己的程序,去推翻课堂上的结论。将每个知识点都学透彻!

一台好一点的电脑

      • 建议的配置:酷睿i7九代以上,至少16G内存。因为现在的开发,启动的环境太多,太吃内存,另外电子产品更新换代太频繁,所以建议配置稍微高一些!能多用几年。另外,开发效率也高。

      • 开发的过程中需要启动:数据库的服务、IDEA工具、虚拟机、虚拟机中的Linux系统等.....

2. 开启你的学习之旅(学习路线)

javase

      • Java语言的基础,是Java的最基本的库。基础语法加常用类库。

数据库

      • mysql(或者oracle),数据库是所有程序员都需要学习的,因为不管是C语言,还是C++,还是Java,或者其他,软件最终都是操作数据,而数据存储在数据库当中,所以数据库是必须要学习的,大学中大部分都是学习微软的SQLServer,但是企业中,尤其是互联网公司大部分使用的都是mysql数据库,对于数据库来说,除了mysql之外,大家如果还有精力的话,可以再学习一下oracle数据库。

      • jdbc:Java语言连接数据库。(使用java语言对数据库中数据进行增删改查等操作。)

web前端

      • 对于系统结构来说,常见的有两种:第一种是CS结构,第二种是BS结构。BS结构是目前的主流。所谓的BS其实就是:Browser / Server,浏览器访问服务器的形式。

      • 浏览器B端的就是web前端,在浏览器上运行的语言包括:HTML、CSS、JavaScript【JS最重要】

      • 先学习HTML,再学习CSS,最后学习JavaScript。

javaweb(web后端)

      • BS结构,我们主要进行的是S端,S端是Server端(服务器端),服务器端可以是C语言,可以是PHP,当然也可以是Java。目前Java居多,占大部分!

      • 先学习Servlet,再学习JSP。

web进阶

      • AJAX(发送一步请求的一个技术)

      • jQuery(是一个JavaScript语言的高级框架)

javaweb项目实战

      • 基于Servlet + JSP + MySQL + JDBC + HTML + CSS + JavaScript + jQuery + AJAX能做一个web项目。

SSM三大框架(额外可选学SSH)

      • Spring + SpringMVC + MyBatis

      • 建议的学习顺序:先学习MyBatis,再学习Spring,最后学习SpringMVC。

      • 如果自己还有多余的时间,大家可以选学以下SSH:Spring + Struts2 + Hibernate

      • 建议SSH的学习顺序:Hibernate、Spring、Struts2

互联网分布式

      • Dubbo

      • MQ

      • redis

      • zookeeper

      • fastDFS

      • Nginx

      • SpringBoot

      • SpringCloud

      • .....

分布式项目实战

    • 最好能有一个商业级的项目对以上内容有一个练习。实战操作。

    • 然后你就可以出山了。(大概需要7个月的时间!如果参加培训面授的话,5个月的时间!)

老杜告诉你java小白到大神是怎么炼成的(转载)的更多相关文章

  1. 【同行说技术】iOS程序员从小白到大神必读资料汇总

    在文章<iOS程序员从小白到大神必读资料汇总(一)>里面介绍了很多iOS入门学习的资料,今天小编就发几篇技术进阶的文章,快来看看吧! 一.iOS后台模式开发指南 这个教程会教你在什么时候怎 ...

  2. 关于Java8 Stream流的利与弊 Java初学者,大神勿喷

    题目需求: 1:第一个队伍只要名字为3个字成员的姓名,存储到新集合 2:第一个队伍筛选之后只要前3人:存储到一个新集合 3:第2个队伍只要姓张的成员姓名:存储到一个新集合 4:第2个队伍不要前2人,存 ...

  3. JAVA理论概念大神之概念汇总

    我个人觉得,JAVA之所以能够经久不衰,有一个很重要的原因就是:JAVA的理论总是给人一种,虽然不知道是什么,但是感觉很厉害的样子.就单是这一点,他就已经超越许多其他语言了,至少吹牛的时候谈资总是很多 ...

  4. 小白到大神,Python 密集知识点汇总

    Python 基础 1. 变量 你可以把变量想象成一个用来存储值的单词.我们看个例子. Python 中定义一个变量并为它赋值是很容易的.假如你想存储数字 1 到变量 "one" ...

  5. linux下鼠标穿透和取消穿透--linux小白,大神无视

    最近在用qt写一个跨平台的软件,因为设置了无边框,并且我自己给程序窗口加了阴影,阴影范围又比较大 所以必须给阴影区域加上鼠标穿透才能有更好的体验. 上网查了一下,在windows下使用SetWindo ...

  6. AtCoder从小白到大神的进阶攻略

    前言 现在全球最大的编程比赛记分网站非CodeForces和AtCoder莫属了,@ezoixx130大佬已经在去年介绍过CodeForces了(传送门),那么现在我们主要谈一下AtCoder. 简介 ...

  7. mui初级入门教程(四)— 再谈webview,从小白变“大神”!

    文章来源:小青年原创发布时间:2016-06-05关键词:mui,html5+,webview转载需标注本文原始地址: http://zhaomenghuan.github.io/#!/blog/20 ...

  8. 自学python,从小白到大神,需要多久?

    2020年10月 TIOBE 排行榜超过了 Java, 历史上首次 Python 超越了 Java ,再次让许多朋友对 Python 产生了兴趣,今天我们来梳理下学习 Python 几个阶段或者级别, ...

  9. Java,来源于大神

    也许你学习了那么久的Java了,但如果有人问你什么是JavaEE?你会怎么回答他呢?在此我来谈谈关于JavaEE的相关技术.(仅是个人见解) 在谈JavaEE时,我们首先来了解一下Java平台.目前, ...

随机推荐

  1. 9、zabbix监控

    9.1.监控: 1.初级(凡人): (1)识别监控的对象: (2)理解监控的对象: (3)细分监控对象的指标: (4)确定告警的基准线: 2.预中级(飞仙): (1)工具化和监控分离: (2)监控对象 ...

  2. docker部署的nginx非80端口无法访问

    请检查nginx容器是否只开启了80端口映射!!! 请检查nginx容器是否只开启了80端口映射!!! 请检查nginx容器是否只开启了80端口映射!!! 如果你访问的端口在nignx容器已经开启了端 ...

  3. 基于uni-app全端弹框组件uaPopup「兼容h5+小程序+app端|nvue」

    uniapp兼容多端自定义模态弹框组件UAPopup ua-popup 一款轻量级的uniapp自定义弹窗组件.汇集了android.ios和微信弹窗效果(msg消息.alert提示框.dialog对 ...

  4. Maven安装、配置及基础

    简介: Maven是Apache公司的开源项目,是项目构建工具,用来管理依赖. Maven的优点: 同样的代码实现相同的功能,Maven项目没有Jar包,项目大小更小. maven的优点如何实现: 没 ...

  5. DRF之权限和频率限制

    一.权限 权限可以限制用户对视图的访问和对具体数据对象的访问. 在执行视图的dispatch方法前,会先进行视图访问权限的判断 在通过get_object获取对象时,会进行模型对象访问权限的判断 源码 ...

  6. Java读取文件创建时间和最后修改时间

    import java.io.BufferedReader; import java.io.File; import java.io.IOException; import java.io.Input ...

  7. Thread对象 既传入了Runnable对象又重写了run()方法

    Thread本身是一个类,其run(): 正常情况下, target(即传入的new Runnable()对象)不为空,就是执行target里面的run方法 但是,重新run()方法之后,就不会在执行 ...

  8. ESP32构建系统 (传统 GNU Make)

    概述: 一个 ESP-IDF 项目可以看作是多个不同组件的集合,ESP-IDF 可以显式地指定和配置每个组件.在构建项目的时候,构建系统会前往 ESP-IDF 目录.项目目录和用户自定义目录(可选)中 ...

  9. DNS部署与安全

    1.DNS Domain Name Service 域名服务 作用: 为客户机提供域名解析服务器 2.域名组成 2.1 域名组成概述 如"www.baidu.com"是一个域名,从 ...

  10. 『与善仁』Appium基础 — 1、Android系统的测试环境搭建

    目录 1.Android操作系统简介 (1)Android系统诞生 (2)Android系统的结构 (3)Android测试环境搭建整体思路 2.Java环境安装 (1)JDK8下载 (2)安装JDK ...