当前位置: 首页 > news >正文

自学 Java 需要具备哪些基本条件或技能?

新手初学者在自己学习Java时,需要注意两个方面,一个是学习方面,一个是知识点方面!

学习方面:

1、做学习计划并保持自律

在我们学习Java的过程中,尽量减少干扰,把自己的全部注意力集中在Java上。无论你注意力的持续时间是多久,都应该将全部精力放在Java上。

2、通过编码来学习

很多新手在学习Java时都会经历一个阶段,那就是看书、看视频,一段时间后感觉自己都会了,但是真的要写代码却怎么都写不出来,这种情况除了多练习!多练习!多练习!以外,没有其他方法了。

3、手写代码

在电脑上敲代码也很好,当然不反对这种学习方式。但在我们在手写代码的时候,会激活机械记忆,能帮助你更好地记住东西。此外,在面试中,很多公司的笔试都会让你在纸上写代码。所以在学习过程中这是初学者一定要具备的专业技能了。

4、学习产出

可以将你自己写的一些代码、小项目等发布在公共论坛上,虽然有时候网友给出很严厉的评价,但也能进一步指出你的不足,从而加以改正。

5、坚持编码

一定要坚持练习编码,从小项目做起,然后慢慢扩大你的项目范围。例如:先完成一项基本任务,然后是一系列的任务;先做一个简单的游戏,然后是一个完整的应用程序。请记住,当你迟疑的时候,坚持用代码码出你的出路。

知识点方面:

1、熟练的使用Java语言进行面向对象程序设计,有良好的编程习惯,熟悉常用的JavaAPI,包括集合框架、多线程(并发编程)、I/O(NIO)、Socket、JDBC、XML、反射等。

2、学会使用数据库,mysql是个不错的入门选择,而且Java领域里主流的关系型数据库就是mysql。

熟悉常用的关系型数据库产品(MySQL、Oracle),熟练的使用SQL和PL/SQL进行数据库编程。这部分一般在你学习Servlet/Jsp的时候,就会接触到的,其中的JDBC部分就是数据库相关的部分。

你不仅要学会使用JDBC操作数据库,还要学会使用数据库客户端工具,比如navicat,sqlyog,二选一即可。

3、对Spring的IoC容器和AOP原理有深入了解,熟练的运用Spring框架管理各种Web组件及其依赖关系,熟练的使用Spring进行事务、日志、安全性等的管理,有使用SpringMVC作为表示层技术以及使用Spring提供的持久化支持进行Web项目开发的经验,熟悉Spring对其他框架的整合。

4、熟练的使用Hibernate、MyBatis等ORM框架,熟悉Hibernate和MyBatis的核心API,对Hibernate的关联映射、继承映射、组件映射、缓存机制、事务管理以及性能调优等有深入的理解。

5、熟练的使用HTML、CSS和JavaScript进行Web前端开发,熟悉jQuery和Bootstrap,对Ajax技术在Web项目中的应用有深入理解,有使用前端MVC框架(AngularJS)和JavaScript模板引擎(HandleBars)进行项目开发的经验。

spring、springmvc、mybatis,你需要学会这三个框架的搭建,并用它们做出一个简单的增删改查的Web项目。你可以不理解那些配置都是什么含义,以及为什么要这么做,这些留着后面你去了解。

6、在搭建SSM的过程中,可能会经常接触到一个叫maven的工具。这个工具也是你以后工作当中几乎是必须要使用的工具,所以你在搭建SSM的过程中,也可以顺便了解一下maven的知识。

在你目前这个阶段,你只需要在网络上了解一下maven基本的使用方法即可,一些高端的用法随着你工作经验的增加,会逐渐接触到的。

7、熟悉面向对象的设计原则,对GoF设计模式和企业应用架构模式有深入的了解和实际开发的相关经验,熟练的使用UML进行面向对象的分析和设计,有TDD(测试驱动开发)和DDD(领域驱动设计)的经验。

8、熟悉Apache、NginX、Tomcat、WildFly、Weblogic等Web服务器和应用服务器的使用,熟悉多种服务器整合、集群和负载均衡的配置。

9、熟练的使用产品原型工具Axure,熟练的使用设计建模工具PowerDesigner和EnterpriseArchitect,Eclipse和IntelliJ、WebStorm、SVN和Git,熟练的使用项目构建和管理工具Maven和Gradle。

10、一些其他拓展知识:

前端:html/js/css以及jquery,一套以上ui框框(easyui或者layui)能够熟悉使用(小全栈)。有能力可以接触vue,react等流行js。

算法:各个大厂对工程师的数据结构和算法要求都挺高,建议可以刷letcode,剑指offer(牛客),pat(牛客),这些算法在面试会经常问到或者出现在笔试。喜欢的也可以刷hdu,poj增强算法思维和能力。

爬虫:当前爬虫算是一个比较火但是不太拿的上台面的一门技术。可以通过爬虫(python/Java都可以)增强对接口的认识。为自己工作的反爬做做准备。并且在课余之际也可以做些有趣的东西。

黑马程序员Java零基础视频教程_上部(Java入门,含斯坦福大学练习题+力扣算法题和大厂java面试题)

黑马程序员Java零基础视频教程_下部(Java入门,含斯坦福大学练习题+力扣算法题和大厂java面试题)

​​​​​​

http://www.lryc.cn/news/171266.html

相关文章:

  • [激光原理与应用-68]:如何消除50Hz工频干扰和差分信号应对工频干扰
  • 【力扣-每日一题】LCP 06. 拿硬币
  • 【JAVA-Day32】精通Java函数:定义、调用和主函数的完整指南
  • springboot相关操作学习汇总
  • 如何在微信上制作自己的小程序卖东西
  • 24.Xaml ListView控件-----显示数据
  • YoloV5改进实战:使用MPDIoU改进YoloV5
  • 从电大搜题到上海开放大学,广播电视大学引领学习新风尚
  • DC/DC开关电源学习笔记(九)Buck降压拓扑原理
  • 【浏览器】主流浏览器伪元素一览
  • 国内首个潮玩行业沉浸式IP主题乐园,泡泡玛特城市乐园即将开园
  • 编译工具:CMake(八) | cmake 常用指令
  • 什么是GPT磁盘?介绍GPT(GUID 分区表)磁盘及其优势!
  • 直播视频处理过程
  • CGI与FastCGI的区别在哪里,FastCGI的应用场景讲解
  • 记录selenium和chrome使用socks代理打开网页以及查看selenium的版本
  • 2023 年最新 Docker 容器技术基础详细教程(更新中)
  • 初学phar反序列化
  • 嵌入式web项目框架解读
  • MySQL什么情况下会死锁,发生了死锁怎么处理呢?
  • 数字孪生行业相关政策梳理--智慧水利领域相关政策(可下载)
  • SQL plus简单使用
  • pnpm入门教程
  • JADE盲分离算法仿真
  • CMake教程-第 1 步:基本起点
  • Linux 或者 Docker 容器通过 date 设置系统时间
  • Docker 容器中运行 Kibana
  • 【23种设计模式】建造者模式【⭐⭐⭐】
  • 进阶指针(一)
  • Linux: code: name: void dev_deactivate(struct net_device *dev)