Minecraft(我的世界)中文论坛

 找回密码
 注册(register)

!header_login!

只需一步,立刻登录

查看: 2760|回复: 25

[软件开发讨论] 重新梳理对Java的看法

[复制链接]
Debug.Twilight 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
268
钻石
性别
保密
注册时间
2016-1-8
查看详细资料
发表于 2016-1-11 18:33:19 | 显示全部楼层 |阅读模式

您尚未登录,立即登录享受更好的浏览体验!

您需要 登录 才可以下载或查看,没有帐号?注册(register)

x
本帖最后由 Debug.Twilight 于 2018-4-3 18:24 编辑

这次重写是对一年前的旧帖重新思考,之所以重写是因为我发现竟然还有人在看这贴。
首先我要收回我两年前的口出狂言,事实上我那时才刚读了史蒂夫雅各的书(没错,就是那本《程序员的呐喊》),对事情看法是一时脑抽的。
现在两年过去了,写了无数Java之后我也有了自己的看法(没错,我又回去写Java了,不过还用过了其他很多的语言,所以阅历丰富了很多)

在比对了我写的Java代码和其他代码之后,我发现Java作为一门编程语言其实也是很好的,Oracle几年来对Java的精雕细琢后也让它好用了很多。

但Java对于编程界的新理念的接收实在是有点慢,最新的Java10加入了类型推断的能力,可这个特性出现在其他语言中已经很久了。

但我惊讶地发现,社区对新特性热烈欢迎,这也说明Java社区其实也没有史蒂夫说的那么保守,大概是Oracle对新特性的思考太迟钝了吧。

不管怎么说,Java还是一门好语言的,学好它吧,但别忘了看看窗外的风景,用不同角度看问题往往能磨练你的思维。
土球球 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
12368
钻石
性别
保密
注册时间
2015-8-23
查看详细资料
发表于 2016-1-12 11:31:33 | 显示全部楼层
纯面向对象是Java的特色,Java已经有了一些语法糖(比如匿名内部类)来简化类的创建等操作。
Java本身就是上个世纪八十年代对于企业快速开发网络应用的需求产生的,本身是一门相对严谨的语言,语法糖很少、语法盐比较多,强大的类库为企业级应用的开发(你想想要是C语言,要引用多少库)和兼容性的调整(还是C语言,平台相关性比较强)节省了不少时间,本身其实是很容易维护的(你试试Scala丰富的语法糖),当然这就导致的就是代码的庞大,但是为了易于维护这点来说是非常值得的。
另外,如果说即编即用,其实不应该选择Java,楼主应该选择一行Hello World的语言,楼主列举的语言之一Python就很不错。
回复

使用道具 举报

xpen 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
737
钻石
性别
保密
注册时间
2015-9-18
查看详细资料
发表于 2016-1-12 18:04:04 来自手机 | 显示全部楼层
最流行的编程语言之一。看看淘宝网,京东都是用java做的,还有安卓手机的app,一些优秀的数据库软件如Oracle db2,大数据现在正红,都是用java做的,语言无绝对的优劣之分。
回复

使用道具 举报

Debug.Twilight 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
268
钻石
性别
保密
注册时间
2016-1-8
查看详细资料
 楼主| 发表于 2016-1-12 18:33:09 | 显示全部楼层
ustc_zzzz 发表于 2016-1-12 11:31
纯面向对象是Java的特色,Java已经有了一些语法糖(比如匿名内部类)来简化类的创建等操作。
Java本身就是 ...

是的,我现在用Python来开发,除了Python的缩进问题,他都是一个极好的语言。
回复

使用道具 举报

Debug.Twilight 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
268
钻石
性别
保密
注册时间
2016-1-8
查看详细资料
 楼主| 发表于 2016-1-12 18:37:50 | 显示全部楼层
xpen 发表于 2016-1-12 18:04
最流行的编程语言之一。看看淘宝网,京东都是用java做的,还有安卓手机的app,一些优秀的数据库软件如Oracl ...

语言都是没有优差之分的,但是Java真的不适合初学者,或者是繁琐的程序。它太“面向对象”了。
回复

使用道具 举报

zmdd 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
1825
钻石
性别
保密
注册时间
2013-3-12
查看详细资料
发表于 2016-1-16 09:08:15 | 显示全部楼层
但是同样的东西,java实现了后比php实现了后效率要高很多,不是吗
回复

使用道具 举报

gonglinyuan 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
1417
钻石
性别
保密
注册时间
2013-8-7
查看详细资料
发表于 2016-1-16 09:40:26 | 显示全部楼层
至少用Java写的代码比较规范,会Java的人都看得懂。像是python、ruby之类的,同样的功能写法太多,不同人写的代码看起来都不像同一种语言。C语言不支持面向对象,而且是纯编译执行,虽然效率很高但是非常不易维护。因此Minecraft用Java开发是很明智的。
回复

使用道具 举报

Debug.Twilight 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
268
钻石
性别
保密
注册时间
2016-1-8
查看详细资料
 楼主| 发表于 2016-1-16 15:13:30 | 显示全部楼层
gonglinyuan 发表于 2016-1-16 09:40
至少用Java写的代码比较规范,会Java的人都看得懂。像是python、ruby之类的,同样的功能写法太多,不同人写 ...

C#,Go,Perl,Delphi,PHP的代码质量也很好,为什么不用它们。[fishing_rod]
回复

使用道具 举报

tdiant 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
4262
钻石
性别
保密
注册时间
2014-2-5
查看详细资料
发表于 2016-1-17 11:24:18 | 显示全部楼层
楼上在说什么呢都
我就问你们,MC是用什么做的,这是啥版,小朋友为啥要学Java(最后还学不会
完美の结贴
回复

使用道具 举报

Debug.Twilight 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
268
钻石
性别
保密
注册时间
2016-1-8
查看详细资料
 楼主| 发表于 2016-1-17 12:33:41 | 显示全部楼层
本帖最后由 Debug.Twilight 于 2016-1-17 12:42 编辑
tdiant 发表于 2016-1-17 11:24
楼上在说什么呢都
我就问你们,MC是用什么做的,这是啥版,小朋友为啥要学Java(最后还学不会
完 ...

大哥,我13岁。初二。。。。。(java的关建字背烦了,公共空间太混乱了

评分

参与人数 3金粒 +3 收起 理由
1963326665 + 1 大哥,我一岁,什么都没有上233.
ufof + 1 关键字哪要背
andylizi + 1 大哥,我12岁,6年级。。

查看全部评分

回复

使用道具 举报

123654l 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
1846
钻石
性别
保密
注册时间
2013-3-19
查看详细资料
发表于 2016-1-17 13:32:24 | 显示全部楼层
都是高玩。。。
回复

使用道具 举报

SCARLET_SUMMER 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
50
钻石
性别
保密
注册时间
2014-12-27
查看详细资料
发表于 2016-1-17 22:06:29 | 显示全部楼层
各种语言都有优劣应当是正常的。
我现在初三,oier,面向对象的语言只是接触过java而已。仅就java而言,我的感觉是,学起来并不是很难(毕竟不完全是从0开始),我作为初学者感觉挺容易上手(可能是一直停留于mc的mod上没有对其它特性深入研究)//。并没有仔细从头学过java,只是对mc的mod感兴趣就打算做点什么,之后在模仿和调试中就明白很多,(包括面向对象的特点)。我的感觉,关键字没必要去背,学习过程中要用时去查,用熟了自然就背下来了
回复

使用道具 举报

Debug.Twilight 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
268
钻石
性别
保密
注册时间
2016-1-8
查看详细资料
 楼主| 发表于 2016-1-18 18:28:53 | 显示全部楼层
SCARLET_SUMMER 发表于 2016-1-17 22:06
各种语言都有优劣应当是正常的。
我现在初三,oier,面向对象的语言只是接触过java而已。仅就java而言,我 ...

java的库很多,极大地减少了程序猿写代码的烦恼
回复

使用道具 举报

andylizi 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
15812
钻石
性别
保密
注册时间
2014-4-26
查看详细资料
发表于 2016-1-18 19:31:34 | 显示全部楼层
语言无绝对的优劣之分。
然而我觉得java最有趣的部分就是面向对象。不管怎么说,面向对象都比面向过程和面向机器好吧?“为了一个很小的动作就要类”这哪一点不好呢?ide的代码提示和javadoc一起可以完整的显示出一个类中所有的方法,而c,php之类的。。
回复

使用道具 举报

Debug.Twilight 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
268
钻石
性别
保密
注册时间
2016-1-8
查看详细资料
 楼主| 发表于 2016-1-20 20:55:11 | 显示全部楼层
andylizi 发表于 2016-1-18 19:31
然而我觉得java最有趣的部分就是面向对象。不管怎么说,面向对象都比面向过程和面向机器好吧?“为了一个很 ...

java几乎把动词逼上了绝境
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册(register)

本版积分规则

Archiver|小黑屋|Mcbbs.net ( 京ICP备15023768号-1 ) | 京公网安备 11010502037624号 | 手机版

GMT+8, 2020-2-27 19:07 , Processed in 0.064294 second(s), Total 25, Slave 23 queries, Release: Build.2020.01.19.1840, Gzip On, MemCached On.

"Minecraft"以及"我的世界"为Mojang Synergies AB的商标 本站与Mojang以及微软公司没有从属关系

© 2010-2020 我的世界中文论坛 版权所有 本站原创图文内容版权属于原创作者,未经许可不得转载

快速回复 返回顶部 返回列表