使用jquery时老是提示$未定义?
是否正确导入jquery,jquery导入应在其它js之前导入
避免重复导入jquery,重复导入会导致代码报错
按照jquery官方API正确使用,有可能是代码写错了导致$报错
怎么觉得JS和CSS重叠的东西太多了?
所谓 JS 实现和 CSS 实现改的不还是同一个东西么?
区别只在于编程的接口不一样,
CSS 是一个声明式的接口,
JS 里操作 style 属性/元素、
CSSOM 是指令式的罢了。
java学习除了数据库,框架,html,js,jquery,se别的知识还需要掌握吗?
关于Java学习,除了题主所说的,就我个人理解应该是Java Web方向的开发。下面我结合我个人的经历来说说除了上述还需要掌握那些,由于所在公司,工作经历等方面的限制,所思所想有所局限,望各位读者斟酌理解。
在我看来,还需要掌握什么,这个取决于你所在的公司以及你个人对自己的定位。如果在小公司或者说初创公司,那么你就需要懂的非常全,因为你需要兼职做很多东西,从数据库到Java Web开发,从前端到后端,从部署运维到迭代升级,都需要懂,或者说可以做相关方面的事情。我刚好就经历过类似的阶段,你需要掌握常用的数据库工具和数据库设计,如Orcale、mysql等;你需要使用常用的Java Web开发框架,比较流行的是Spring MVC和Spring Boot;你需要学习使用常用的中间件工具,如搜索引擎elasticsearch、消息队列MQ、分布式缓存Redis、协同管理工具Zookeeper等;你需要掌握项目管理工具,常见的是maven和gradle;你需要了解常见的分布式或微服务架构,我接触到的有Dubbo和Spring Cloud;你需要了解较新的前端开发技术,如React、Redux、vue等;你需要具备部署运维方面的基础能力,如Linux基本操作、Docker容器化运维等。总之,在小公司或小团队,你懂的需要尽可能的全,因为你不知道下一个项目,你需要做或兼职哪个角色。
而你想在Java Web的开发方面有所成就,并且身处大公司的话,大家的职责相对来说都是比较固定的,涉及到的角色一般都固定下来,比如在项目开发中只负责后端开发,设计和提供对外服务的HTTP接口,几乎在所有的项目中都是类似的角色。那么就不需要你懂的那么全了,你可以朝着精的这一方向走,你需要对JDK和Spring源码有一定的阅读,并且有一定心得,尽可能的将你提供的接口的性能进行优化,你需要对所使用的中间件,如elasticsearch的内在原理有一个精准的把握,优化与之相关的搜索查询,如MQ重复消费等问题的原理和相关解决方案有自己的认识,你需要对提供的HTTP接口的风格和相关接口文档有自己的认识和理解,并且形成自己的风格。总之,在此时你需要做的精,重在原理,并通过原理能够解决你生产过程中遇到的种种奇葩的问题。
综上所述,Java Web开发需要不间断的学习,小团队注重全,各方面的都需要懂,大公司注重精,在某一方面能够拿得出手。一般来说,IT从业者都需要不间断的学习,其更新换代快,场景不断复杂,与之相对应的,新知识层出不群,新技能不断涌现,学习,永远在路上。
Java学习需要掌握还有很多,上述只是java初级阶段。
- Linux运维知识。Linux环境下软件安装,配置文件修改,日志查看,端口开启关闭等等基本Linux运维知识是java开发人员需要学习的。
- java高级知识。nginx负载均衡、反向代理的配置,消息机制如activeMQ的应用,redis或memcache缓存机制等。
- java性能调优。设计模式的使用,JVM性能调优,MySQL事务隔离机制等。
- 高级架构。dubbo分布式服务架构,zookeeper分布式协调服务,SpringBoot微服务框架。
- 算法。注意数学的学习,像线性代数概率统计、傅里叶变换等,以后转行大数据或机器学习非常有用。
需要的。一个合格的Java后端,不仅要有过硬的Java基础,还需要熟悉开发中常用的其它技术点,例如:Ajax请求,DOM渲染,前段框架,数据缓存,字符串编解码,单点登录,系统微服务化,服务负载均衡,大数据存储与分析,机器学习,推荐算法... 需要学的知识很多,但需要根据自身业务进行技术选型。
谢谢邀请,反复读了数遍问题,个人认为提问者的问题应该是 要从事互联网方面的Java开发需要掌握哪些知识?
Java本身只是一种语言,掌握即可,与HTML,js等是一个概念,只不过是否解释性语言的区别。
如果要涉及互联网方面的知识,那就很多了,分 前端,后端。先分清要学习的重点,如果前端,那么前端框架要掌握。如果后端,则类似后端服务器或架构要掌握。甚至于想要做一个全栈,那么两者都要,总之,一步步来,一开始接触太多不见得消化的了。
请问java如何学习?
首先,对于IT行业来说,基础最重要。万丈高楼平地起,不论什么技术、中间件、工具,都是由基础知识为根基搭建起来的。就像建造大楼,没有水泥、钢筋、混凝土,也建不起来。
基础知识是所有技术的根基,应该花足够的时间学习、巩固。
Java开发方面的知识不少,总结了一下:
- 计算机基础,计算机原理、数据结构、算法基础、网络原理、操作系统原理、数据库原理、汇编原理等等;
- 编程语言基础,Java基础知识、JVM内存模型、GC原理、性能调优、设计模式、数据结构Java版等;
- 架系列,Spring系列如Spring Framework、Spring Security、Spring Boot、Spring Cloud等、Redis、MongoDB、ActiveMQ/JMS/RocketMQ/RabbitMQ/Kafka、zookeeper、dubbo等框架、中间件;
- 架构基础,CAP原理、BASE原理、Paxos、Raft算法、高性能架构理论、负载均衡算法、网关、流量削峰等等;
- 容器化,Docker原理、k8s、DevOps原理与实践等;
- 高级技术,大数据、区块链
一定要自主学习
我们都是从学生时代过来的,可以说我们一生之中的知识巅峰时期,正是高中那三年,确切的来说,是高三那一年。各种资料、书籍、试卷堆积如山,一周一小考,一月一大考,反复强化记忆。
这说明,我们的大脑是健忘的,需要我们持续不断的去复习,去巩固。但是,其遗忘也是有规律的。一天后,只剩余了所记忆内容的四成,甚至更低。随着时间的推移,遗忘的速度会加快。
所以,我们要做的,就是持续不断的学习、复习、巩固。第二天复习巩固一下第一天的内容,一周后复习本周的所有内容。为的就是能记住这些东西,对抗遗忘。
抓住碎时间,挤出长时间
上班族最大的问题就是没有时间,偶尔过个周末、放个假,还想歇一会儿,或者追个剧。那怎么办呢?其实,我们可以利用碎片时间。比如,在公交车上,地铁上,路上,我们都可以以各种形式记忆知识,比如听音频内容。
但是,碎片化时间毕竟有限,我们要做的,还是需要挤出来长一些的时间,多学习复杂的知识,可以看视频教程,也可以自己研究、自己实践。周末了,拿着电脑,去咖啡店,一坐一天。
固化知识
主动学习的效果是最好的。那作为Java开发者,我们该怎么主动学习呢?
此时不要觉得你已经学到了Java的知识。其实不然,这些知识知识在你闹钟游离,随时都有可能离去,而我们要做的,就是要固化这些知识,让他们彻彻底底的变成自己的资产。
而此时,笔记、博客等都是很好的方式。
把我们平时遇到的问题,归纳总结,然后组织语言描述出来,发到博客上,一方面巩固了自己的知识,另一方面也帮助了他人,何乐而不为呢?
实践里面出真知
光说不练假把式,掌握再多的理论知识终归无用,还是要看动手能力的。在学了这些理论知识之后,一定要试着自己做一些挑战性的项目,或者试着参与一些开源项目。
下面就是笔者花了1个月的时间,做的一个开源的定时任务调度框架开源项目,已经212颗星星了,发布之处,还获得了一周热门推荐:
总而言之,就是多参与到实践当中去,只有多实践,才能把我们所掌握的理论知识最大化的固化到我们的脑海中,形成我们自己的知识体系。
祝早日成为大神!
关注 银河架构师,发现更多科技精彩内容。

