2008-09-23 2 views
6

C#은 여러면에서 자바의 직접적인 파생물이므로 C#에 관해 상당히 합리적인 지식을 습득 한 후에 Java를 배우는 데 어떤 이점이 있는지 궁금해했습니다.C#을 이미 잘 알고 있으면 Java를 배울 가치가 있습니까?

참고 : SO 가이드 라인에 맞게 토론하기보다는 명확하고 직접적인 조언을 제공하십시오.

답변

0

물론입니다. 많은 일자리가 구체적으로 자바를 원합니다. Java를 배우고 이력서에 설득력있게 넣을 수 있다는 것은 많은 단서가없는 HR 및 채용 담당자와 논쟁 할 필요가 없다는 것을 의미합니다.

그리고 몇 곳을 제외하고는 둘 다 동일하거나 그보다 적기 때문에 투자 수익이 매우 좋습니다. 말할 것도없이 다른 프레임 워크를 사용할 수있는 가능성을 열어줍니다.

8

Java로 프로그래밍하려면 Java를 배우십시오. 정말 간단합니다.

패턴, 알고리즘 및 디자인 아이디어가 다르기 때문에 언어 학습 자체만으로 충분히 보상을받을 수 없습니다.

그러나 Java는 C#보다 훨씬 더 많은 플랫폼에서 잘 실행됩니다 (단, 모노가 변경됨). 따라서 플랫폼 독립적 인 코드에 발을 담그고 싶다면 Java를 사용해보십시오. 당신은 내가 주로 자바 사람이야하지만 여기 저기에 약간의 C#을 수행 한이 가장자리 주위에 약간 거친입니다 알 수 있지만, C++에가는 것을 좋아하지 않거나 C.

-Adam

4

. IMO 두 프로그래밍 언어 사이의 차이점이 충분하지 않기 때문에 프로그래밍 관점을 확대하여 많은 이점을 얻을 수 있습니다. 일반적으로 새로운 언어를 배우려고 할 때 나는 다른 관점에서 프로그램을 보도록 강제 할 무언가를 찾고 싶습니다. Java의 관점은 기본적으로 C#과 동일합니다. 일부 고급 언어 기능이 작동하는 방식과 API가 어떤 점에서 어떻게 다른지에 약간의 차이점이 있지만 전반적인 Java와 C#은 메모리 관리되고 정적으로 입력 된 OO 언어입니다.

0

C#과 Java 사이의 유사점을 사용하면 Java를 오히려 빨리 알 수 있습니다. 원칙은 동일하며 직업을 검색하거나 프로젝트의 상업적 측면과 확장 성 문제에 따라 프로젝트에 더 적합한 플랫폼을 선택하여 자신의 프로젝트를 수행 할 때 경쟁 우위를 확보하게됩니다. 추가 라이센스 비용없이 Linux 서버에서 Java를 확장 할 수 있습니다.

0

저는 Java를 꽤 잘 알고 있으며, 업무용 프로젝트를 위해 C#을 배워야했습니다. 그것은 매우 고통 스러웠습니다. 그리고 많은 것을 배웠습니다 과정에서 모두 개의 언어가 있습니다.

Java는 또한 'write once, run everywhere'를 제공하고 unix/linux 서버 기반 통합 프로젝트 수행 경로를 제공합니다.

+2

* 기침 * 모노 * 기침 * – FlySwat

+1

FlySwat, Linux의 Mono는 Visual Studio로 작성된 C# 프로그램을 실행할 수 있습니까? –

5

Java에서 발견 할 수없는 [] 태그와 같은 많은 .NET 특정 코드를 얻을 수 있지만 두 언어의 통사 차이는 크지 않습니다. 하지만 API와 개발 방식이 아주 다른 것을 발견했습니다. 각각의 백엔드는 다른 것과 매우 다르며 .NET에서 효율적이고 잘 작동하는 일부 코드는 Java에 적합하지 않을 수 있으며 그 반대도 마찬가지입니다.

저는 둘 다에서 일했습니다. Java로 작업 할 때 익숙해 져야하는 한계는 IDE에 있습니다. 밖에있는 IDE는 Visual Studio와 비교해 개발 속도가 빠르고 배포가 쉽습니다. (어쨌든 IMO).

저는 몇 가지 Java 프로젝트에서 많은 작업을했습니다. 다양한 프로그래밍 기법과 방법론을 배웁니다. 특히 J2EE에서 작업하는 것이 좋습니다. 차이점은 확실히 다른 언어와 기술로 작업하는 느낌을 줄 것입니다.

0

이 질문에 대한 대답은 언어 간의 유사성보다는 개인적인 상황에 더 의존합니다. 자바를 배울 시간이 있다면 좋은 생각이지만, 그 시간 동안 할 수있는 가치가있는 뭔가가 있습니다.

Microsoft 경로를 배우는 데 집중한다면 C#에서 훨씬 더 깊이 알기 위해 시간을 낭비하거나 Java를 배우는 것이 좋을 것입니다. .NET 3.5 프레임 워크의 새 항목 등.

대부분의 기업 환경에서 관련성이없는 언어를 배우지 않으면 .NET 세상에서 배우기에 충분합니다.

일반 의사가되는 것이 개발에 대한 더 넓은 전망을 제공하지만 전문가가되면 더 많은 돈을 직접 벌어들입니다.

1

여기에는 두 가지 고려 사항이 있습니다.

Java 환경에서 작업하기 위해 배우고 싶다면 Java를 배우는 것이 분명히 그 방향으로 나아가는 단계입니다. C#과 Java 사이의 실질적인 차이점은 비교적 작기 때문에 어떤면에서는 매우 솔직합니다. 정확히 어떤 기술을 사용하고 있는지에 따라 사용하는 지원 스택에 약간의 구현 차이가있을 수 있지만 원시 언어 용어에는 거의 차이가 없습니다.

그러나 개인 개발을 발전시키기 위해 Java를 배우고 싶다면 조금 더 스트레스를받는 학습에 시간을 투자하는 것이 더 낫다고 말할 수 있습니다. Python, Ruby 또는 Erlang과 같은 언어는 프로그래머로서의 지평을 넓힐 것입니다. 이들 각각은 Java 또는 C#에서 찾을 수있는 것보다 약간 다른 생각을 필요로합니다.

5

나머지 답변과는 다른 답변을 드리겠습니다. Windows 플랫폼 용 응용 프로그램을 작성하는 경우 이점이 없습니다. 내가 당신의 "일"이라고 말하는 이유는 그 플랫폼을 아는 데 달려 있습니다. 나는 당신의 일이 그 일에 달려 있다고 가정 할 수 있습니다. 그렇지 않다면 왜 그 일에 투자하게 될까요?

내 제안은 학습을 중단하는 것이 아니라 완전히 다른 관점을 제공 할 다른 것을 배우는 것입니다. 특히 동적 인 또는 기능적으로 뭔가를 배울 것을 제안합니다. 예를 들어 F # 일 수도 있고 Ruby 나 Python을 사용해 볼 수도 있습니다. 나는 그것이 시간에 더 나은 투자라고 생각한다.

My $ .02.

[하지 그렇게 많은 C#을 잘 자바를 아는 사람] 신선 인

3

-Keith, 난 당신이 제안합니다. 당신이 작업의 검색에있는 경우

:

는 C# & 자바의 차이를 학습에 자신을 투자. 이는 귀하의 가치를 높이고 직업을 찾는 데 소요되는 시간을 줄이기 때문입니다.

당신이 [자바에서 수행 할] 프로젝트를 위해 필요로하는 경우 : 다음

, 분명히 바로 배울 수있다! 당신이 새로운 기술의 검색에있는 경우

: 자바에서

청춘의 시간을 낭비, 파이썬, 루비 또는 얼랑에 대한 이동합니다. 이것은 C#과 Java 모두 80 %가 동일하고 나머지 20 % (최대 값) 만 배우므로 시간 낭비라고 생각하기 때문입니다.

관련 문제