没思维能力怎么学java?

学习路线图往往是学习一样技术的入门指南。网上搜到的Java学习路线图也是一抓一大把。

今天我只选一张图,仅此一图,足以包罗Java后端技术的知识点。所谓不求最好,但求最全,学习Java后端的同学完全可以参考这张图进行学习路线安排。

当然,有一些知识点是可选的,并不是说上面有的你都要会啦。我在复习秋招的过程中就是基于此图进行复习的,感觉效果还是不错的。

闲言少叙,我们还是看看这张图上都包含哪些有价值的信息吧。再次说明,本文只对路线图做一个简单地解读,仅供参考。大家可以根据自身情况来指定合理的学习计划,相信也会大有裨益。

由于图片比较大,如果觉得看不清楚,可以点击原文链接查看原图。

知识体系整理好(学习视频等资料),有需要的可以私信我领取,资料获取方式:关注+转发后,私信关键词【架构】即可获取!重要的事情说三遍,转发、转发、转发后再发私信,才可以拿到!

1计算机基础

这部分内容是计算机相关专业同学的课程,但是非科班的小伙伴(譬如在下)就需要花时间恶补了。特别是计算机网络,操作系统,数据结构这三门课程。

至于编译原理,个人大概懂一点就行了,我也只看过简单的概念和状态机相关的内容,并不是特别重要。

2Java编程

这里的Java编程部分包含了很多内容。我们可以分别看看,大概归纳一下就是这几个部分。

Java基础

这里的Java基础包括基本语法,集合类框架,以及一些高级特性,比如反射,注解等等。

Java基础的知识点非常多,所以要真正搞懂也没有那么简单,另外,随着时间推移,一些新特性也需要得到我们的重视,比如时下流行的JDK8。

设计模式

我一直觉得设计模式可以和Java基础一块学,所以我也把它放在这里。当然,一些真正使用到设计模式的地方,譬如JDK的集合类,IO流等等,也需要你足够重视。

JavaWeb技术

JavaWeb技术包括J2EE,以及web框架,乃至一系列常用的组件。

1J2EE主要包括的就是servlet,jsp这些比较复古的web开发组件了。虽然现在直接用它们的情况比较少,但是我们还是需要花一些时间去掌握它们的。

2web框架常用的就是Spring了,相应的,hibernate和mybatis也需要了解一下。

3同时,JavaWeb开发时的常用类库,比如jnuit单元测试,log4j日志工具,以及构建工具maven,都属于我们要掌握的范畴。

4最后,要注意的是,Web相关的一些基本知识,比如HTTP协议,网络安全基础,也是我们要考虑的部分。

Java并发技术

Java的并发技术泛指Java的多线程技术,以及JUC包里的并发类,比如线程池,并发工具类,阻塞队列等等。

Java并发技术完全可以独立出来学习,是Java进阶知识的一大重点。

Java网络编程和服务器

这一块内容是Java中比较复杂但也很重要的一块内容。比如BIO,NIO,AIO的一些使用和原理,以及tomcat这类web服务器,甚至是netty这种网络编程框架,都是可以去了解和学习的内容。

Jvm基础与调优

JVM是提供Java程序运行的一个进程,学习JVM知识,也是我们的必经之路。除了看懂《深入理解jvm虚拟机》以外,我们还要学习的内容就是JVM调优,使用合适的工具诊断问题,最后解决问题。

这部分内容在面试中呈现的不仅仅是GC,内存分区,以及类加载器,也包括了我所说的JVM调优问题。

3Linux

作为后台同学,常年被面试官问linux相关的问题,所以觉得学好linux还是蛮重要的,除了基本命令以外,最好还能了解一些shell脚本,甚至是内核相关的知识,这方面是我的一个弱项。

4数据相关

在这个路线图里,数据部分囊括了非常多的数据源,我们可以来看看都有哪些是我们需要掌握的。

关系数据库Mysql

这个不必多说,人手都要会,不管是基础的crud,索引,抑或是进阶的存储引擎,分布式方案等,我们都需要对应掌握。

缓存

如Redis,mcache一类的缓存,作为后端开发者的我们也需要对应掌握,当然,它们的高级特性,以及分布式方案,也是必备的知识点。

搜索引擎

基于Lucene的solr,elasticsearch这类搜索引擎,本质上也是数据源,但是并不是后端必备的内容,不过学一学也没有坏处啦。

大数据

海量数据处理的场景越来越多,大数据技术如hadoop,storm等也越来越火,但是大数据应用一般会由专业的大数据工程师来做,所以我们学一些基本内容也就足够了。

5算法和数据结构

算法一直是校招同学面前的一座大山,作为后端同学来讲,除了基本的数据结构算法以外,也要会一些高级的算法,譬如dp,搜索,贪心等等。

另外,通过LeetCode等题库来刷题的方式来巩固算法也是公认的好办法了。

6分布式

最后一个部分,也是内容最多,覆盖面最广泛的部分了。分布式相关的技术实在太多了,我们这里也会做一下简单的归纳。

web架构

先了解web架构的发展会对分布式的学习有更好的理解,毕竟架构的发展也对应着分布式技术的发展。

分布式理论

这部分内容包括分布式的发展演化,base理论和cap理论等等,学习分布式技术之前,最好能对这部分概念有一定了解。

一致性问题

强一致性的解决方案:事务和锁,弱一致性的方案:消息队列。

分布式session

一个常见的问题,也有多种解决方案

分布式缓存

和上面说的缓存一样,只不过这里侧重缓存的分布式方案

分布式数据库

这里指的数据库的分布式方案,也包括hbase这种分布式数据库。

负载均衡

负载均衡也是一个值得探讨的话题,一般我们讨论的是七层和四层负载均衡。

消息队列

消息队列是一个比较复杂的分布式组件,我们可以了解常用消息队列比如amq,kafka等的实现。

服务化

服务化的核心包括rpc,服务注册中心等等。分布式服务相关技术也是后端同学必须掌握的内容。

虚拟化

虚拟化同样不是后端同学必须掌握的内容,只不过现在越来越多的服务部署方式使用的是docker和云服务的方式。所以了解一下也没有什么不好的。

知识体系整理好(学习视频等资料),有需要的可以私信我领取,资料获取方式:关注+转发后,私信关键词【架构】即可获取!重要的事情说三遍,转发、转发、转发后再发私信,才可以拿到!


没思维能为也可学习,只要有决心学,这是最关键的!学不什都是一样的,决心下定了,就有目标了,有目标了,就有动力了,有动力了,就会有兴趣,有兴趣了,就会有思维了。这个思维不是天生的,是指学习兴趣。有了兴趣,还有学不会的?


题主应该是问逻辑思维能力不太好的话,怎么学。

楼上有答主说了,码农码农的,Java程序员可能很多时候不太需要复杂的思考,但我觉得不能自己就这么认了,尤其是要成为优秀的程序员。

先说思维能力,跟写代码的能力一样,也是可以通过学习和练习改善的,学习中通过思维导图辅助自己的思路,通过记笔记加深印象,勤能补拙,熟能生巧。诸葛亮也不是天生就是神机妙算,也是有过学习的。

Java作为很流行的编程语言,可以说学习难度并不大,你首先要保持兴趣,小时候打得游戏再难,有兴趣照样也能过关取得胜利。

一开始学几句简单的语法,模仿着别人代码一行一行敲。理解,不懂就问,也可以问我。过了初期,可以自己看书,如<Java编程思想>,差不多了也可以去网易云课堂听课,很多免费好课。老师教的好,自己也容易学会。

祝你早日学成大牛,加油。


学java看的也不是思维能力,都说码农码农,那是做些固定的事就和农民一样干的苦力劳动一样,只不过这个更需要脑子前期把这些学会了,有些人没上大学照样学了,主要还是看有没有系统的学习过。

思维能力也不是你说没有就没有的,有些人只是没有去尝试,或者看了一些内容觉得想不出来就自我否定自己了,这点主要看自己有没有强大的动力和精力去学。

前期入门的话就先找些基础视频看,看一遍看不懂正常,多看几遍,跟着视频敲代码就好了,一般一天看个四五节课,在看的同时跟着敲代码,运行程序,了解基础语法后都有一定的功底后面学着都比较容易入手了。然后再慢慢深入学习自然而然学好了。


Java编程应用广泛,对于拥有Java技术的程序员来说,职业道路的选择十分的宽广,行业前景之广阔都是可以预见。成为一名Java程序员可以有这么多的方向,但是前提是必须要有过硬的Java技术。

一、先从Java基础开始

找一个Java的基础教程学一下,学习Java基础的时候,应该尽量多动手,很多时候,你想当然的事情,等你写出来运行一下,你就会发现不是这么回事儿,不信你就试试。

二、然后再学习开发框架

当你学会以上内容以后,这个时候你还不足以参加工作,你还需要继续JavaWeb框架,因此你还需要学习一些开发框架目前比较主流的是SSM框架,即spring、springmvc、mybatis。

三、找工作,历练自己

当你完成开发框架的学习以后,你就该找工作了,在校的找实习,毕业的找全职。与此同时,在找工作的同时,你不应该落下你的学习,准确的说,是你在以后都不能停下学习。

只有掌握真正的Java开发技术,才能逐渐成为高级Java开发工程师。Java开发的前景是毋庸置疑的,如果想进入这个“吸金”的领域,选择专业的学习方式是明智之举。


你好

不要随便给自己定义标签,特别是给自己定义错误的标签

你可能觉得自己平时反应慢,或者比较笨,就觉得自己的思维逻辑差,那你就大错特错了,至少,在开发这个岗位上,我们并不是这个界定的。

首先,虽然开发策略和设计模式源于生活却更高于生活,处于抽象一类,跟生活上的你完全么有关系。

所以你如果学习了JAVA,可以循序渐进,做错题了没关系的,熟悉思路,多学多写,很快就掌握了,只要你勤奋和努力。

当然,勤奋和努力的外在因素不可或缺,内在因素也是要有的,那就是天赋了,不过这个天赋人人都是有的,那就是对编程的热爱,你只有怀着一颗热爱的心,再加上勤奋,努力,那么JAVA很快就能学会了。

怎么?不信?

程序都是死的,只是使用的时候才是活的,至少可以保证你先把知识学到脑袋里,其次才是运用,运用有一部分看思维逻辑,但是更多的,还是经验和耐心。

所以,有志者,事竟成。

加油,JAVA实际上是真的不难,我在大学的时候学了一遍,然后就出来工作了,后来觉得基础有些弱了,又自学了一遍,现在感觉稍微巩固了很多,并不一定要完全掌握,但是一定要知道怎么用。

最后祝你学习愉快吧,关于JAVA有不懂的也可以问我。

点个赞吧~~


来个最简单的判断

对错turefalse还是会的吧?!

其实任何计算机语言都是0和1组成起来的只是越来越接近高级语言所谓高级语言就是我们平时所说的话。

理解能力差并不代表逻辑思维差。

学习语言纯粹靠兴趣没有兴趣再强也没用这是我的理解。。。


原始地址:/wenti/54329.html