几周内搞定Java的10个方法
不要将Java与JavaScript弄混了,Java的目标是“一次编译,到处调试”(呃,不对,是“到处运行”)。简单来说,就是Java程序可以直接在任何设备上运行。
Java语言是什么?
不管我们是否意识到,实际上我们基本每天都在与Java打交道。在浏览网页时,可能会弹出一个提示,要求必须安装Java才能继续浏览。这种情况一般发生在使用flash或者是通过某种方式将flash组件集成到核心系统的站点。
Java并不是那种通常在新电脑上直接下载下来就能用的程序。我不能确定有没有操作系统将Java作为默认的可执行程序。虽然历史上Java在安全方面有过问题,但这也让Java变得更加成熟。现如今,早已有安全加密保护技术,在安全方面可以为Java提供安全解决方案!
从笔记本到数据中心、从游戏机到科学家的超级计算机、从手机到互联网,Java无处不在!
97%的企业桌面运行Java
美国89%的计算机运行着Java
世界共有9百万Java开发者
Java是开发者的首选
头号开发平台
三十亿部手机运行着Java
所有的蓝光播放器中都含有Java
有五十亿Java Cards在使用中
1.25亿的TV设备运行着Java
5个最大的OEM商都安装Java ME
从上述的统计中可以看到,Java语言非常受追捧而且Java的市场也很大。
Java开发者的薪酬
我想简要讨论下Java的薪酬,即全职的Java开发者在合理的时间内能赚多少钱。
该表是全美国范围的薪酬统计报告,大致在8万5千美元上下。由于我们能够免费学习Java,所以这个工资是相当高的。下面就来介绍能在短短几周内免费学习Java的资源。
Java入门
前一阵子我发布了这门在线课程,并收到了许多反馈。大部分人都说课程中介绍的方式学起Java太费时了,他们想在几周内就搞定Java。我同意这个观点,因此在这里我添加一些你应该了解的额外课程。
这些课程有些需要付费,但通过这些课程可以接触到一些独立的社区,会发现有35000名学生在学习这门课程。课程的内容超过10个小时,100多篇讲义,还有数百个针对疑难问题的讨论。
没有比这些课程能更好的学习Java了,学习Java最好的途径是在实践中成长为专家,但这样很难完成。另外,我很乐意在课程中回答问题。
Java基础
学习哪一门语言并不重要,任何一门语言都是要从基础学期,Java也不例外。值得庆幸的是, Oracle官方(拥有Java的公司 )网站有一个大量关于Java的介绍,解释Java是什么,展示Java是如何工作的基本知识。
读者还会发现还有许多可供进一步阅读的资源。但最重要的是,这些页面会帮你获得开始学习Java所需的所有工具和相关内容。
Java编程入门
这是另一个非常优秀的资源,不仅仅是因为这份资源由世界顶尖的大学出版。而是因为你肯定会发现这门课的质量非常高。在通过这门课学习Java的过程中会迫使你阅读大量的资料。
这门课程广受好评,虽然刚开始学习可能有点偏理论,但依然被认为是最适合初学者学习的Java资料。课程中有完整的图片、例子、代码和文档。
在线学习Java
近年来,交互式教程越来越多。所以我觉得有必要介绍一些网上的交互式课程。说实话,我们不会完整学完整个交互式课程,但我建议在用书本学习之前,先接触下这些交互式课程。
另外,交互式课程不用打开IDE就能载入并测试一些代码。
笨方法学Java
这是我推荐的唯一一本需要付费购买的书。因为这本书非常有用,很适合初学者。所以我认为还是值得买一本的,20刀。(译注:貌似没有中文版)。
读者可以在网上免费阅读前16章,链接在此。我想许多人都会喜欢上这本书的,该书的组织非常合理,有合适的练习题。不能要求再高了。
自己动手学Java
这个网站的作者与前面那本书的作者是同一个人,那本书的灵感即来自该网站。刚开始的时候会发现许多不需要大量编程技能就能解决的问题,但随着学习的深入,问题会越来越难。
我一直坚信,学习某个东西的最好途径就是先去做一遍,然后测试一下,再重新过一遍。所以选取上面列出的任何一个教程或书籍开始学习吧。
零基础学Java
有些人喜欢通过视频学习。在很忙的时候,视频可以随时重放,掌握其中关键的知识。
Udemy上的课程是免费的(但需要注册一个帐号才能观看),这门Java课程已经有超过10万人注册学习,是该网站上最火的课程之一。讲解者是John Purcell,他是拥有多年Java开发经验的软件工程师。
这门课有20多小时的内容,超过70篇讲义。加入Udemy,就能获得一个非常庞大的支持社区(所有学习该课程的学生都在这个社区里),Udemy还有内置的支持系统,可以提问。
CodingBat
不要让设计欺骗你,这会让你分心。 CodingBat(之前的JavaBat)是在浏览器中免费交互式学习Java的最佳途径之一。这是第二个推荐的交互式学习网站,我认为它比前一个网站更好。
与Codecademy不同,CodingBat中对所有内容都是从入门到深入,手把手的指导。CodingBat更多的是让你做你知道的事情,并安排你有能力进一步学习的内容。不要误认为这是没组织好,其中每节有大量的教程,学习起来会很快。
Java(初学者)编程教程
(译者注:需要自备梯子)
YouTube上的The New Boston用户发布了许多编程语言的视频教程,其中也包含Java,这些视频是已知最全面的介绍。里面有80部手把手教你学Java的教程,但可能有点旧了(视频使用的是Java 7)。
不要因为我说有点旧就放弃这个教程。对于那些下定决心学习Java的读者来说,这个资源依然非常有用。另外, 与Udemy不同,观看这个视频不需要注册。视频中的留言也非常有用。
Java面向对象编程
这是另一门大学课程,总计耗时6周。非常适合初学者,所有操作都可以在浏览器中完成。这门课程还有一个非常好的教程,介绍如何安装Java和相关工具。在课程中会学到计算机编程基础、算法,以及使用Java进行面向对象开发。
这门课程还有第二部分,同样为期六周。所以总计需要12-13周的时间来学习。完成课程后,应该学会如何构建自己的应用,如何以Java开发者的思维进行思考。这样就可以更进一步,更加深入的探索语Java言。
Java编程练习
最后给出一个用于练习编程的网站,该网站专注于Java,每个练习题都有解答。实际练习是非常重要的,特别是像Java这样的语言,这种语言并不能在一开始就熟练掌握。
这里总共有30个练习,如果遇到了难题,可以过一段时间再来看看,也许到时候就能找到解答方法。
学习Java的10种方法
这篇文章可能比不上我之前介绍的学习Python那篇文章。我认为这是因为Java并不是易学的编程语言,需要高度关注其中的细节。Java在今年的流程编程语言当中,背后有庞大的社区。
还有一个建议,就是多去类似StackOverflow和Reddit这样的站点看看,从中可以找到常见问题的答案、通过提问学习到更多的知识。不问问题,仅仅意味着目前不需要解决方案,但并非会一直如此。初次之外,提前多了解下应用安全加密技术,防患于未然,在此推荐爱加密,专业的安卓应用加密技术,可以让你跟你的应用免除后顾之忧!
我希望这些资源、书籍、和网站能帮到你。无论你是否会成为Java资深开发者,将这些资源转给你周围希望加入开发社区的人都是不错的选择。祝你好运!
几周内搞定Java的10个方法的更多相关文章
- 怎样在两小时内搞定 OpenStack 部署?(转)
怎样在两小时内搞定 OpenStack 部署? OpenStack的安装是一个难题,组件众多,非常麻烦.如果手工部署OpenStack,可能需要好几天,使用RDO,就是几个命令,再加一两个小时的等待. ...
- 一分钟搞定Java高频面试题
一分钟搞定Java高频面试题 一.变量赋值和计算 题目: public static void main(String[] args) { int i = 1; i = i++; int j = i+ ...
- 10分钟搞定 Java 并发队列好吗?好的
| 好看请赞,养成习惯 你有一个思想,我有一个思想,我们交换后,一个人就有两个思想 If you can NOT explain it simply, you do NOT understand it ...
- Java异常详解——一篇文章搞定Java异常
目录 1. 异常的体系结构 2. 常见的异常 2.1 运行时异常 2.2 编译时异常 (编译时异常必须进行处理否则无法运行) 3. 异常的抓抛模型原理 4. 异常的处理 4.1 try - catch ...
- 【第一期百题计划进行中,快来打卡学习】吃透java、细化到知识点的练习题及笔试题,助你轻松搞定java
[快来免费打卡学习]参与方式 本期百题计划开始时间:2022-02-09,今日打卡题已在文中标红. 0.本文文末评论区打卡,需要登录才可以打卡以及查看其他人的打卡记录 1.以下练习题,请用对应的知识点 ...
- 一文搞懂--Java中重写equals方法为什么要重写hashcode方法?
Java中重写equals方法为什么要重写hashcode方法? 直接看下面的例子: 首先我们只重写equals()方法 public class Test { public static void ...
- 【搞定 Java 并发面试】面试最常问的 Java 并发进阶常见面试题总结!
本文为 SnailClimb 的原创,目前已经收录自我开源的 JavaGuide 中(61.5 k Star![Java学习+面试指南] 一份涵盖大部分Java程序员所需要掌握的核心知识.觉得内容不错 ...
- 一篇搞定Java集合类原理
Java集合类实现原理 1.Iterable接口 定义了迭代集合的迭代方法 iterator() forEach() 对1.8的Lambda表达式提供了支持 2. Collection接口 定义了集合 ...
- 【搞定 Java 并发面试】面试最常问的 Java 并发基础常见面试题总结!
本文为 SnailClimb 的原创,目前已经收录自我开源的 JavaGuide 中(61.5 k Star![Java学习+面试指南] 一份涵盖大部分Java程序员所需要掌握的核心知识.欢迎 Sta ...
随机推荐
- Mysql干货收集
mysql优化:https://www.cnblogs.com/duanxz/tag/mysql/default.html?page=1
- java实验程序基础中的问题总结 java图形化界面
一,课程中的问题 1,知道程序实现的大体框架,但是不能具体到每一个细节,这需要平时的积累. 2,在不同文件夹中定义的类之间有没有联系,类与类之间可以通过接口相互联系. 3,如何在一个对话框中显示文本, ...
- URL中一些特殊符号的替代符
下表中列出了一些URL特殊符号及编码 十六进制值 1.+ URL 中+号表示空格 %2B 2.空格 URL中的空格可以用+号或者编码 %20 3./ 分隔目录和子目录 %2F 4.? 分隔实际的 UR ...
- How-to-quick-getting-started-for-Frontend
一转眼已一年多不专注前端方面的开发工作,这一年前端方面的技术又是新天地,偶然接到内部团队邀请我给他们做一个前端的讲座,希望能帮助他们快速.且深刻了解前端这个行业以及行业内的知识,这可真有点让我为难,由 ...
- jsonp实现原理
jquery 封装在 ajax方法 里面的jsonp jsonp跨域的原理 1:使用script 标签发送请求,这个标签支持跨域访问 2:在script 标签里面给服务器端传递 ...
- NoReferencedTableError: Foreign key associated with column ** with which to generate a foreign key to target column 'id'
1.使用 python flask 框架做项目时,在实体类中配置了 映射关系, message: id = db.Column(db.Integer, primary_key=True)message ...
- Codeforces Round #274 (Div. 2) 解题报告
题目地址:http://codeforces.com/contest/479 这次自己又仅仅能做出4道题来. A题:Expression 水题. 枚举六种情况求最大值就可以. 代码例如以下: #inc ...
- app-framework学习--nav的Scroller禁用与启用
app-framewor(jqmobi) nav的Scroller禁用与启用 写在panel 的 data-load 方法里 禁用 $.ui.scrollingDivs.menu_scroller. ...
- node09---中间件
如果我的的get.post回调函数中,没有next参数,那么就匹配上第一个路由,就不会往下匹配了. 如果想往下匹配的话,那么需要写next() 1app.get("/",funct ...
- bzoj1797: [Ahoi2009]Mincut 最小割(最小割+强联通tarjan)
1797: [Ahoi2009]Mincut 最小割 题目:传送门 题解: 感觉是一道肥肠好的题目. 第二问其实比第一问简单? 用残余网络跑强联通,流量大于0才访问. 那么如果两个点所属的联通分量分别 ...