2010-06-07 6 views
9
  1. 개발자는 Java를 몰라도 스칼라를 사용할 수 있습니까?
  2. 개발자는 Java를 모르더라도 Clojure를 사용할 수 있습니까?

참고 : 예를 들어 저는 C# 개발자이며 VB를 모르는 상태에서 .NET을 사용합니다 (Of-course WF 4.0에서는 VB 용 문을 사용하므로 WF 4.0과 관련된 모든 프로젝트를 거절합니다).스칼라 - Java =? (또는 Clojure-Java =?)

요약 I : 답장을 보내 주셔서 감사합니다. 이제는 Java (The Language)를 모른 채 이러한 언어를 사용할 수 있다고 말할 수 있습니다. 이제 또 다른 질문이 있습니다. Java (JVM) 생태계로 어떻게 시작할 수 있습니까? 초급, 중급 및 고급 지식 기반 (가방!)은 무엇입니까? 정직한 자바 생태계는 항상 나에게 약간 혼란 스러웠다. 그래서 JVM을 배우기위한 "참조 레퍼런스"와 "실습 튜토리얼"을 제공하는 것이 매우 도움이 될 것이다. (확인! 나는 또 다른 질문으로 게시 할 것입니다!)

+1

나는 자바 배경을 가지고 있었지만 자바 상호 운용성에 도달 할 때까지는 Clojure를 전혀 필요로하지 않는다는 것을 알았다. 그 시점에서 자바는 C#과 너무 가깝기 때문에 문제가있을 것이라고 생각하지 않습니다. – mikera

+3

스칼라 - Java = Scalaz –

+0

새 질문에 대한 링크를 제공 할 수 있습니까? – BenjaminJackman

답변

14

스칼라 및 Clojure의는 더욱 더, 자바는 완전히 다른 언어입니다. 공통점은 Java 가상 머신에서 실행된다는 것입니다. Scala 또는 Clojure에서 프로그래밍 할 Java 프로그래밍 언어를 알 필요가 없습니다. 그러나 Java 에코 시스템 (Java 가상 머신 및 런타임 환경)에 대해 알고있는 것이 유용 할 것입니다.

+0

Clojure는 특히 Java를 전혀 모르는 사람들을 끌어들이는 것으로 보입니다. Leingingen은 이전보다 훨씬 쉽게 작업을 수행하지만, Java에서 사용할 수있는 많은 시간을 절약 할 수있는 유용한 많은 것들이 여전히 있습니다. – Bill

0

스칼라는 자바와 완전히 다른 언어입니다. 그렇습니다. 물론 자바를 알지 못해도 스칼라를 사용할 수 있습니다 (물론 스칼라를 먼저 배워야합니다). 비록 자바 (또는 임의의 객체 지향 언어) + 일부 함수 언어를 알면 스칼라를 더 쉽게 이해할 수 있습니다.

3

자바와 Clojure (스칼라는 아는)의 관점에서 말하자면 Clojure는 Java를 모르더라도 잘 사용할 수있다. 모든 기능을 갖춘 핵심 언어와 라이브러리 (예 : clojure-contrib)에 액세스 할 수 있습니다. '예 효과적으로 Clojure에서 사용할 수 있습니다 내가 같으면, 그래서

라이브러리, 디버거, JVM 등 -

그러나, Clojure의 사용의 큰 장점 (다른 lisps 대) 중 하나가 자바 생태계에 액세스 할 수 있습니다 Java에 대한 지식 부족으로 인해 어려움을 겪지 만, Java를 충분히 익히기 시작하면 마침내 속임수를 쓰게됩니다.

+0

제 경험상, C#을 익힌 경험이있는 사람이라면 Java 그들은 매우 비슷합니다. 그래서 OP는 Clojure 나 Scala에서 사용하는 것이 유일한 목적이라 할지라도 C# 환경을 Java 라이브러리를 사용하는 데 많이 활용할 수 있습니다. – mikera

3

글쎄, Clojure는 CLR에 이식되었습니다. 아마 당신이 .NET 개발자이기 때문에 아마 JVM에 전체 점프보다 쉽게. :)

http://github.com/richhickey/clojure-clr

+2

CLR에 대한 스칼라도 있지만, 오랫동안 잘 유지되지 못했습니다. – Jesper

+0

멋지다, 잘 모르겠다. :) JVM에서 실행되는 모든 것이 잠재적으로 CLR에서 실행될 수 있으므로 아무런 이유가 없습니다 :) –

4

물론 가능합니다. 처음에는 표준 라이브러리에 대한 지식이 부족합니다. 그러나 어쨌든 새로운 언어로 시작할 때 큰 문제는 아닙니다. 그러나 Clojure & 스칼라는 Java 상호 운용성에 중점을두고 원시 자바 물건을 숨기려고하지 않으므로 언젠가는 Java (언어가 아닌 Java 플랫폼)에 대해 더 많이 배워야 할 것입니다 언어와 기본 플랫폼의 최대 사용.

1

네, 저예요!

내가 바보 같은 단순한 스윙 GUI를 필요로 할 때를 제외하고는별로 저에게 문제가되지 않았습니다. 그 때 돌아가서 자바를 검토해야만했다.

0

f #을 사용할 가능성이 있습니까? 그것은 풍부한 형식의 시스템 (clojure보다 스칼라에 더 가깝다)을 가진 ML 스타일에서 기능적이며 그것은 out-of-the-box에 포함되어있다.net

+0

F #을 언급 해 주셔서 감사 드리며 일부 프로젝트에서 F #을 즐겁게 사용하고 있습니다. 내 문제는 새로운 프로젝트입니다. 물론 초기 단계에 있고 완전히 버려진 것일 수도 있습니다. GAE에서 개발 될 것입니다. (파이썬을 좋아하지는 않지만 동시에 C#은 충분히 자바가 있습니다. 자바 (나를 위해) - 그래서 스칼라에 대해 듣고 몇 가지 자습서를 읽고 그것은 매우 실용적이고 멋지다. –

+0

jum 당신이 gae에 대해 프로그래밍하는 경우 clojure가 인터넷 주위에 떠있는 문서가 더 있다고 생각합니다 (적어도 나는 더 많은 참조를 발견했습니다 : http://www.diigo.com/user/jneira/clojure%20appengine) – jneira