IT专家对程序员的问答活动

     

 开源中国社区 高手问答邀请疯狂软件李刚老师 和大家一起探讨关于 Java 的问题。

  李刚,十余年的软件开发从业经验,疯狂软件教育中心教学总监,疯狂 Java 实训营创始人,疯狂 Java 体系原创图书作者。李刚老师作为国内著名高端 IT 技术作家,已出版《疯狂Java讲义》、《疯狂Android讲义》、《轻量级Java EE企业应用实战》、《经典Java EE企业应用实战》、《Struts 2.x权威指南》、《疯狂HTML 5/CSS 3/JavaScript讲义》等著作。

  Java 从诞生至今,便一直长盛不衰,作为一门长期霸占编程语言排行榜前列的语言,它有何独特之处呢?我们可以列出许多因素,比如 Java 是工业级别的编程语言,它的标准和规范都是面向对象编程的代表;比如 Java 的生态相当成熟,社区活跃度高,无论什么样的问题基本都有现成的开源解决方案。

  而且恰恰是由于 Java 的流行和开放性,在 Java 平台之上还衍生出了很多轻量级的编程语言,比如 Scala、Groovy、Kotlin 等等,这些语言都可以运行在 JVM 之上,形成了极具生命力的生态环境。而这种反哺的关系使得 Java 生态越来越壮大。

       问:jdk7升jdk8要注意哪些问题
  疯狂软件李刚: 主要是接口变化比较大。 另外Lambada表达式非常方便,很好用。另外流式编程也是一大利器。

  网友问:李老师,请问您一下,Java相比于PHP语言,最大的优势是什么,劣势又是什么
  疯狂软件李刚: Java和PHP根本不是同一个方向的东西呀,Java主要用于开发高并发、高可靠的应用,当然Java也能做小应用 而PHP则主要用于做一些中小型的应用。典型场景就是,taobao当年就是靠一套PHP起家,但用户多了之后只能改为用Java。

  网友问:老师你好!我自己是一个在小公司成长的人,自己的技术很杂,从毕业到现在基本都是独立负责项目(小项目),开发到是也满足了公司的需要,在公司,领导和同事也觉得我能力不错,但是我发现自己现在不能找到技术方向突破,也就是多而不 精。我应该怎样找到方向呢?另外个人学习能力还行,每天基本保证2小时学习量。
  疯狂软件李刚: 那挺好呀。按你的描述,我也觉得你的能力挺不错的。 你可以从两个方向着手。 1. 尝试学习一些更底层、更原理性的东西。 2. 尝试去大公司学习一些软件开发的相关规范、流程。

  问:我想了解一下Java在近未来还会一直这样流行下去吗?
  疯狂软件李刚: 实际上,喜欢讨论”xxx语言要被淘汰了“这种话题的,本身通常就是刚入行的小菜鸟,通常是因为觉得自己要学习某个语言太难,才会说淘汰这种话题。对一个真正成熟的开发者而言,用哪个语言不是用?编程语言本是末技,他会选择自己喜欢、适合自己的编程语言。
  疯狂软件李刚: 看看C/C++,很多问题,但由于它的现实,所以它一直坚挺。 Java也一样,现在世界上绝大部分的银行、通讯、航空、电力、交通、公共安全等领域的核心系统,都是Java写的。 据我观察,从2004年以来,每隔1~2年就会听到有不少初学者会谈论“Java要被淘汰了”,但实际情况是是Java一直排在第一位。

  问:老师,我是一个刚刚从事java一年多的小白,以前也不是学这方面的,不知道如何能够快速成长,最让我头疼的就是算法方面的,这个要如何学习啊?
  疯狂软件李刚: 首先要搞清是广义的算法,还是狭义的算法。 狭义的算法就是一般计算机专业所学的各种排序、线性表、树、图等,这些内容都有固定的知识,按照书学习就是了。我有一本《疯狂java程序员基本修养》的书是介绍这些内容的。 广义的算法指的是软件背后的算法逻辑,也就是人们所说的业务知识,这些内容只能靠你在行业慢慢积累。

  问:java在未来的发展方向在哪里?面对社会竞争压力,以及新进入该行业的人才,如何让自己能够立于不被淘汰之地?除了本身的技能的强大之外,还需要具备哪些能力?有人说,程序员是吃青春饭的,您怎么看待这个问题?
  疯狂软件李刚: 程序员吃青春饭——这个问题也是每段时间就被各种菜鸟传一遍。其实很荒谬,一来中国软件行业历史本来就短。一个现在60岁的人,他30岁才1988年,他想编程也编不了呀。从行业来看,你今天看到的互联网大佬,除马云之外,你看看谁不是从编程干出来的? 2周前疯狂软件李刚: 现在世界上绝大部分的银行、通讯、航空、电力、交通、公共安全等领域的核心系统,都是Java写的。换掉Java,意味着这些系统全部都用重写,谁能有这么大的财力和物力去干这个事情?

  网友问:老师,你好,请问当下正处于人工智能兴起阶段,以前应用开发热门阶段已经过去了,当下我们应如何通过学习Java以迎接人工智能时代。
  疯狂软件李刚: 说得好。人工智能时代必然到来,软件行业必然更加蓬勃——据我的观察,第三次工业革命(信息产业根明)现在正刚刚开始。Java作为目前应用在各行业核心系统应用最广的语言,拥有无可比拟的竞争力,认真掌握Java是一项基础技能。 与此同时,也应该注意学习Python

  网友问:请问李刚老师,着手学习一门新语言或新框架,像Kotlin,springcloud等,一般的步骤是怎么样的?或者有没有什么好的方法
  疯狂软件李刚: 学习一门编程语言,其实蛮简单的,你仔细体会《疯狂Java讲义》的知识体系:变量->数据类型->流程控制->函数(如果有)->类->对象->属性->方法->构造和析构->封装->继承、多态->下标(如果有)->监听、委托(如果有)->扩展(如果有)。当你把编程语言的这些本质弄清楚了,你学任何编程语言都非常快——因为编程语言只是末技。

  网友问:李老师您好,我现在是一个四年Java后台开发。我想问:1、Groovy,Kotlin,scala等jvm语言有没有必要去学习研究,有的话选择哪个比较好。2、四年这个阶段,自己学习的话,适合朝哪些方向深度学习。3、如果是在一个IT不发达的小城市,除了自学还有哪些途径可以提高自己呢。非常感谢李老师!!!
  疯狂软件李刚: 1. 为什么不学习Java呢?其实没有一个真正的程序员永远只用Java,如果你只用Java开发,你怎么理解Java的优秀,怎么体会Java的不足。而且学习一门语言并不难。 2. 一方面可以单纯地从技术角度深挖;另一方面也可从业务方向提高。 3. 无论你在哪里。技术的提高都是靠自己。现在是互联网时代,即使你在深山,你依然与世界同步。

  网友问:老师你好,我也买了你的书,现在我大四,不知道做java还有没有前景,好迷茫啊,外面各种培训机构培训java,导致很多转行做java,竞争又大
  疯狂软件李刚: 1. 经过20多年的发展,Java已经发展成为各行业核心系统必选的开发语言,Java拥有异常强大的生命力和广泛的引用。选择做Java程序员是一份职业,不仅是一份工作。 2. 外面各种培训Java,正好也说明了Java的就业前景好。 3. 竞争激烈是必然的。任何一个有前景的行业,自然有很多人希望进入,竞争自然激烈——因为我们中国最不缺少的就是人。如果你单纯地因为害怕竞争而退出,有一天你会发现无路可退。

  网友问:李老师你好,我毕业后一直做Android开发,大概三年了,越来越觉得移动前端没什么上升空间,想转热门些的Python或js又觉得语言不太熟悉,一直对服务器很有好感,是否立马转Java服务器开发是最好的选择?有什么好的转行建议吗?是否加入一个小公司接触些项目经验比较好转行?
  疯狂软件李刚: 你的问题很普遍,很多开发者当初为了快速入行,或当初android人才比较缺乏时选择了android,后面很多人都会慢慢地转服务端开发——这是客观事实造成了,Android开发需要的人就那么多、android开发的发挥空间就那么大(对于一个普通android开发者而言,android其实相当于一个Java框架),而Java服务端开发的内容就多太多了。

转载于:https://www.cnblogs.com/jpbag/p/8677657.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值