fender
21k
2017-03-20 07:07:47 작성 2017-03-20 07:08:14 수정됨
8
3557

스칼라를 하다가 C#을 하니 꽤 답답하네요


자바 언어를 꽤 오래했고 최근 3년 쯤은 스칼라로 전향해서 자바 같은 언어를 쓸 기회가 없었습니다.

요즘 시간이 날 때 유니티 때문에 틈틈이 C#을 하게 되었는데 다른 건 몰라도 믹스인을 못 쓰는 건 엄청나게 답답하더군요. 자바는 또 어떻게 그렇게 오래 썼나 싶기도 하고 그렇네요. 역시 사람은 써보기 전엔 없을 때의 불편함을 못느끼는 것 같습니다. 아마 조선 시대 사람들은 청나라 소식을 안방에서 화상으로 볼 수 없다고 답답해하진 않았겠죠...

여튼 믹스인은 정말 좋은 도구인 것 같습니다. 스칼라라면 그냥 자연스럽게 트레이트로 직관적이고 깔끔하게 처리될게 개별 컴포넌트를 너댓 개 씩 이어 붙여야하니 뭔가 지저분하고 자꾸 설계가 꼬이네요.

여담이지만 C# 개발하는데 유니티 스크립트 짤 정도라면 인텔리제이 기반 라이더(Rider)도 괜찮은 것 같습니다. 얼리어세스라 무료이기도 하고 리눅스에서도 되는데 모노 디벨롭(Mono Develop)보다 기능도 많고 단축키 새로 배울 필요도 없으니 꽤 마음에드네요.

0
  • 댓글 8

  • 늘근아빠
    3k
    2017-03-20 08:15:42

    리눅스에서 닷넷이 도나요?

    세상 많이 변한듯 ㅎ

  • fender
    21k
    2017-03-20 08:39:27 작성 2017-03-20 08:41:05 수정됨

    늘근아빠 // 네, 모노(Mono)라는 오픈소스 구현체가 상당히 오래전부터 존재했고, 유니티는 모노를 이용해서 C# 바인딩을 제공하고 있습니다.

    여담입니다만, 썬이 자바를 관리하던 시절엔 저는 모노에 대해 상당히 비판적이었는데, 오라클이 자바를 집어먹은 지금 시점에서는 더 이상 닷넷이나 모노보다 더 개방적이거나 오픈소스에 친화적이라고 이야기할 수가 없더군요.

    자바는 게임이나 데스크탑 시장에선 사실상 전멸했고 서버에서도 도전 받는 중에 오라클 덕에 이미지까지 치명타를 맞은 반면, 닷넷은 적어도 클라이언트와 서버 시장 모두 아직 자리를 잡고 있는 것을 보면 이래저래 자바의 미래가 밝아 보이지 않아 좀 마음이 무겁습니다.

    썬이 고집 부리지 말고 마이크로소프트나 IBM과 협력해서 클라이언트 시장을 개척했더라면, 아니면 하다 못해 망하는 시점에서라도 오라클 대신 IBM에 자바를 넘겼더라면 이 지경까지 되진 않았을 것 같다는 생각이 자주 들더군요.

  • 최첨단
    1k
    2017-03-20 09:12:50

    저랑은 반대네요. 저는 C#이 훨씬 깔끔한 언어이고 스칼라의 미래가 C#이라 생각하는데...

  • 하마
    6k
    2017-03-20 09:49:45 작성 2017-03-20 10:05:17 수정됨

    스칼라의 미래가 C# 이라니 어떤면에서 그러한지요.?

    자바의 미래가 스칼라 정도면 어느정도 수긍가지만 좀 황당스러워 여쭈어봅니다.

  • 최첨단
    1k
    2017-03-20 10:22:20

    흠..... 제가 두 언어를 잘 아는건 아니라서 왜에 대해서 합리적인 대답은 어렵습니다. 특히 언어 스팩에 대해서는...

    미천한 경험으로...

    스칼라는 기업 기반 협업에는 좋지 않은 언어라 생각 합니다. 멀티패러다임이라는게 개발자 취향이 강하게 반영 될 수 있기 때문에 서로가 이해하기 어려운 코드를 짤 가능성이 높습니다. 이런게 컨벤션과는 또 다른 문제라 한동안은 어려 울 것 같습니다. 위에서 언급된 트레이트도 많은 분쟁을 야기하는 기능이라 생각하고요.

     C#은 이에반해 정말 협업하기 좋은 언어 입니다. 생산성도 스칼라 못지 않게 훌륭하고요. 특히 함수형 언어가 아니라는게 장점이라면 장점 입니다.

     개인적으로는 스칼라는 너무 과학적인 언어라 생각합니다. 반면 C#은 공학적인 언어에 가깝고요. 현업에서 함수형 언어를 쓴다면 스칼라를 도입하기 보다는 클로저를 도입하는게 더 좋다고 개인적으로 생각하고, JAVA 대체재로는 코틀린을 더 선호 합니다.


    두서 없이 글을 쓰고보니 스칼라 미래가 C#이라는건 제가 함부로 내 뱉은 말 같네요. 이 부분은 정정 하겠습니다. 다만 스칼라가 좀 더 공학의 영역으로 들어 오는 방향으로 진화 했으면 좋겠습니다.

  • 데굴데굴
    984
    2017-03-20 10:27:02

    모노 플젝이 시작딘지는 아마 10 여년 정도 됐을겁니다.

    MS에서도 리눅스 용으로 C# 버전을 발표 했습니다.


    믹스인이....찾아보니 다중 상속과 비슷해 보이는데....코드가 햇갈리지 않을까요?

  • 파괴흑마
    1k
    2017-03-20 13:49:40

    스칼라가 아직까진 마이너한 언어이지만 그중에서도 메이저급이라고 생각하는데요

    둘다 각자 장단점이 있습니다만 저도 작성자분 말씀하시는 불편함이 없지않아 있습니다

    근데 제가 C#으로 신입때 첫출발을 해서 그런지 쓰기에는 이쪽이 더 편하더군요...

    유니티에서 공식지원 언어라서 그런지 요즘에도 잘써먹고 있습니다

    제가 외국계 기업이긴한데 스칼라 같은 경우는 아직까지 국내에서 쓰는곳도 별로 없고

    해외에서도 마이너하다보니 프로젝트에 도입하려고 해도 번번히 반려되는 중입니다 ㅠ

  • 소불
    2k
    2017-03-20 15:37:02

    모노 프로젝트 오랜만에 들어보네요.

    요즘에는 닷넷에서 모노의 연장선상에서

    크로스 플랫폼을 지원하기 위해 .NET Core라는걸 발표했는데..

    좀 지켜봐야 될거 같고..(웹플랫폼은 국내에서는 자바가 워낙 강해서 망할거 같아요)

    C#은 랭귀지 자체가 살짝 예쁜거 같아요 ㅎ

    제 개인적으로 C#은 머니머니해도 VisualStudio네요.


  • 로그인을 하시면 댓글을 등록할 수 있습니다.