注意:例如我是C#开发人员,我使用.NET而不知道任何VB(当然WF 4.0使用VB语句,所以我拒绝任何涉及WF 4.0的项目:))。
总结I:感谢大家的回答。现在我可以告诉人们可以在不知道Java(语言)的情况下使用这些语言。现在我有另一个问题:如何从Java(JVM)生态系统开始?什么是初学者,中级和高级知识库(包!)?老实说,Java生态系统对我来说总是有点混乱,因此为学习(曲线!)JVM提供一些“参考参考”和“事实教程”会非常有帮助。 (好的!我会把它作为另一个问题发布!)
答案 0 :(得分:14)
Scala和Clojure更是如此,它们与Java完全不同。他们唯一的共同点是它们在Java虚拟机上运行。您不需要知道要在Scala或Clojure中编程的Java编程语言。但是,了解Java生态系统(Java虚拟机和运行时环境)是很有用的。
答案 1 :(得分:4)
当然可以。您最初缺乏标准库的知识,但是当您开始使用新语言时,这不是一个大问题。 Clojure&然而,Scala非常重视Java互操作,并且不会试图隐藏原始的Java内容,因此您可能需要在某些时候更多地了解Java(而不是语言 - Java平台)以便最大限度地利用它语言和底层平台。
答案 2 :(得分:3)
从了解Java和Clojure(但不是Scala)的角度讲,你可以在不知道Java的情况下使用Clojure。您可以访问功能齐全的核心语言和库(例如clojure-contrib)。
然而,使用Clojure(与其他lisps相比)的一大好处是可以访问Java生态系统 - 库,调试器,JVM等。
所以,是的,你可以有效地使用Clojure,我不会让缺乏Java的知识阻碍你,但是如果你最终开始学习足够的Java来利用它,你会增加你的技巧。
答案 3 :(得分:3)
好吧,Clojure已被移植到CLR。由于您是.NET开发人员,因此可能比完全跳转到JVM更容易。 :)
答案 4 :(得分:1)
除了当我需要一个愚蠢的简单摇摆gui时,对我来说并没有太大的问题。多数民众赞成我不得不回去看看java。
答案 5 :(得分:0)
Scala与java完全不同。所以是的,你当然可以在不知道java的情况下使用scala(当然你必须首先学习scala)。即使知道java(或任何OO语言)+一些函数式语言,也更容易理解scala。
答案 6 :(得分:0)
您是否考虑过使用f#的可能性?它具有ML风格的功能,具有丰富的类型系统(然后更接近scala而不是clojure)并且它包含在.net中的开箱即用