首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么有些项目不使用泛型?

为什么有些项目不使用泛型?
EN

Software Engineering用户
提问于 2010-12-15 02:01:20
回答 4查看 1.6K关注 0票数 3

我一直在研究许多OSS项目,其中一些项目仍然没有采用泛型。他们使用的是原始类型(例如List foo),而不是泛型类型(例如List<string> foo)。其他项目在过去几年才开始使用泛型,甚至认为它们已经存在了很长一段时间。

我很想知道为什么人们和项目避免使用泛型,因为(在我看来)现在使用泛型(而不是rawtype)有缺点。对于那些使用java,但不使用泛型的人来说,什么(如果有的话)会使您切换?

EN

回答 4

Software Engineering用户

发布于 2010-12-15 02:27:54

有些项目必须在较旧的JVM上运行。例如,一些项目甚至可能还不能使用assert (Java1.4中引入的),因为它们仍然需要在Java1.3JVM上工作。

另一个因素是简单的惯性:如果代码已经编写好了,并且在不添加泛型的情况下执行得很好,那么就没有理由冒更改代码的风险了。但是今天,有几种自动工具可以帮助您迁移Java代码以使用泛型。

票数 8
EN

Software Engineering用户

发布于 2010-12-15 02:19:10

在尝试理解这样的东西时,将一种语言的每一个新版本看作一种不同的语言是很有帮助的。不同的特征,不同的习语,不同的用户.

当然,对于上一版本的用户来说,新版本是一种相当容易使用的语言.但有些程序员--实际上有相当多的程序员--学习一种语言,然后停下来。无论是K&R C,80年代后期的C++,VB5,Java1.4,还是C# 1.1.你会发现程序员,甚至整个商店,他们学会了一种语言的一个版本,买了一本参考书,把它放在书架上,然后开始使用它。建议他们花更多的时间跟踪并将每一个新标准整合到他们的工作中,这比建议他们一边打一边玩橘子,或者开始使用Scala --这似乎是不必要的--荒谬得多。

考虑到这一点,请阅读:我如何向我的团队介绍新技术?

票数 5
EN

Software Engineering用户

发布于 2010-12-15 03:18:25

另一个答案是,一些程序员并不真正理解他们在做什么。Java是一种非常容易使用的语言,它不可避免地会导致人们学习Java,使其达到“可用”的程度,而且永远不会有进一步的进展。我知道,作为一个16岁的孩子,我对Java也有足够的了解

票数 2
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/26530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档