UI가 이쁠 수록 휴대폰은 더 매력적이다..

Mobile 2008/08/20 11:10 Posted by 학주니

요즘 애플의 iPhone의 등장으로 스마트폰에 대한 기대치가 높아진 것이 사실이다. 솔직히 스마트폰에 대한 기대치가 높아진 것인지 아니면 iPhone의 화려한 UI에 홀려서 다양하고 화려한 UI를 자랑하는 휴대폰에 대한 기대치가 높아진 것인지 어떤것이 맞는 것인지는 모르겠다. 일부 비지니스맨들이나 IT Geek(IT기기 매니아)들의 전유물로만 여겨졌던 스마트폰에 대한 대중적인 관심이 높아진 것은 사실이기 때문이다. 일단 iPhone의 화려한 UI에 많는 사람들이 홀린(?) 것은 사실인듯 싶다. 그 안에 어떤 기능이 있는지에 대한 관심보다는 말이다.

그만큼 UI에 대한 중요성이 강하게 인식되고 있는 요즘이다. 아무리 기능이 강력하다고 하더라도 UI가 이쁘지 않으면 대중의 관심에서 멀어지는 것은 시간문제다. 예전에는 기능이 좋으면 UI는 좀 안좋아도 쓰곤 했는데 요즘은 기능보다는 이쁜 UI가 우선시되는 추세인 듯 싶다.

많은 사람들은 iPhone의 화려한 UI에 iPhone에 열광했다. 물론 풀브라우징이 가능한 Wi-Fi 무선인터넷에 구글웨어를 적절하게 사용할 수 있는 환경 및 내가 만든, 혹은 다른 엔지니어들이 만든 저가의(혹은 무료) 프로그램을 사용할 수 있다는 스마트폰의 매력도 한몫 했지만 말이다. 그렇지만 YouTube 등을 통해서 미리 공개된 마케팅 동영상에 나오는 화려한 조작이 iPhone을 애플의 신화로 만들 수 있었던 원동력이 아닐까 싶다.

사용자 삽입 이미지
iPhone에 못지않은 UI를 자랑하는 스마트폰들은 많다. 일단 iPhone에서 사용하고 있는 OS인 iPhone OS X에 강력한 라이벌인, 이미 스마트폰에서는 그 위치가 굳건한 윈도 모바일을 사용하는 스마트폰은 어찌보면 널리고 널렸다. iPhone OS X를 사용하고 있는 기기는 iPhone과 iPod touch뿐이지만 윈도 모바일을 사용하고 있는 스마트폰의 경우 이 블로그에서 여러번 언급했던 HTC의 터치 시리즈들(터치 듀얼, 터치 다이아몬드 등)이 있고 RIM의 스마트폰의 대모(?)격인 블랙베리도 있다. 또 삼성의 옴니아 역시 윈도 모바일을 사용한다고 하며 블랙잭 시리즈 역시 마찬가지라 한다. 다만 윈도 모바일 자체 UI는 참으로 단순하고 멋이 없어서 블랙베리나 블랙잭 등의 윈도 모바일 UI를 그대로 사용하는 스마트폰의 경우 첫화면은 안습(?)에 가깝다고 할 수 있을 것이다. 뭐 블랙베리나 블랙잭의 경우 외부에서 Email 등의 사무작업을 용이하게 할 수 있도록 기능이 받쳐주기 때문에 많이들 사용하고 있지만 말이다.

이런 안습 UI를 자랑하는 윈도 모바일을 사용하는 스마트폰 중에서 HTC의 터치 다이아몬드는 터치플로3D라는 자체 UI를 만들어서 제공한다. 이미 국내 케이블TV에는 터치 듀얼 선전이 시작되었기 때문에 광고를 잘 보면 터치 플로 UI를 조금은 맛볼 수 있을 듯 싶다. 터치 플로 3D에 대한 평은 여러 리뷰 사이트를 통해서 본 결과 매우 만족스럽다고 한다. 다만 HTC의 기기 자체의 성능이 떨어져서 화려한 UI를 제대로 지원하지 못한다는 악평 아닌 악평이 들려오고 있기는 하지만 말이다. 하지만 성능이가 HTC에서 iPhone에 맞설려면 대중의 눈높이에 맞춰야 하므로 iPhone 성능까지는 올리지 않을까 생각하고 있다. 여하튼 터치 플로 3D UI는 iPhone UI 못지않게 매력적인 것은 사실이다.

사용자 삽입 이미지
구글의 모바일 플랫폼인 안드로이드의 UI는 어떨까? 조만간 HTC를 통해 구글의 안드로이드 플랫폼이 탑재된 휴대폰을 볼 수 있을 것이라는 뉴스가 나오고 있다. HTC의 드림이라는 기기가 바로 안드로이드 플랫폼을 장착한 첫번 째 구글폰이 된다. 그렇다면 UI는 어떨까? 예전에 구글에서 선보였던 구글폰 프로토타입과 비슷한 UI를 지니게 될까? 그건 모른다. 하지만 일단 구글폰 프로토타입의 UI는 뭐 그닥 인상깊은 것은 아니었다. 점점 UI가 미려해지기는 하겠지만 아직까지 안드로이드 기본 UI가 바뀌었다는 뉴스를 접해보지 않았기 때문에 프로토타입에서 보여준 그 UI가 일단 구글폰의 대표 UI가 될 듯 싶기는 하다. 뭐 기능적인 부분이야 충분히 그 썰렁한 UI를 덮을 수 있겠지만 말이다. 구글웨어 사용에 최적화된 UI라고 하는데 솔직히 국내에서는 그닥 의미가 없을지도 모른다. 결정적으로 구글맵스를 국내에서는 사용할 수 없기 때문에 지도를 이용한 서비스의 제약이 심해서 스마트폰의 매력을 잃어버릴 수 있을지도 모르기 때문이다. 하지만 구글 안드로이드 플랫폼을 이용한 스마트폰은 그 나름대로의 매력이 있기 때문에 구글의 의도대로 진행된다면 상당한 위력을 발휘할 수 있을 것이라 본다. 그것은 곧 구글의 유무선 인터넷 장악이라는 결과로 이어질 수도 있을 것이고 말이다.

사용자 삽입 이미지
여기에 재미난 소식이 하나 들어왔다. 자바의 본가인 썬(Sun)이 모바일 자바를 위한 UI 툴킷을 내놓았다는 것이다. The lightweight UI toolkit(LWUIT)이라 불리는 이 UI 툴킷은 모바일 환경에서 자바의 위상을 다시한번 높혀 줄 계기로 작용할 수 있을지도 모른다는 생각이다. LWUIT에는 모든 UI에 필요한 컨퍼넌트들이 다 들어가있다. 폰트도 지원하고 테마도 지원하며 에니메이션도 지원하고 여러 효과들도 지원한다는 것이다. 즉, LWUIT만 사용하더라도 어지간한 UI는 다 꾸밀 수 있다는 얘기가 된다. 이는 점점 모바일 환경에서 자바가 쇠퇴해가고 있는 상황에서 자바진영에 힘을 실어다주는 계기로 작용할 수 있다.

사용자 삽입 이미지
모바일 자바가 스마트폰용으로 쓰이는 경우는 그닥 없다고 본다. 그렇다면 LWUIT의 대상은 모바일 자바를 사용하고 있는 일반 휴대폰들이 될 것이다. 그 얘기는 위에서 언급한 제품들과는 경쟁하지 않을 수도 있다는 얘기다(구글 안드로이드 플랫폼과는 어쩌면 약간 범위가 겹칠 수도 있겠다는 생각이 들기는 하지만 말이다). 기존에 모바일 자바를 사용해서 UI를 꾸몄던 저가 휴대폰들이 스스로를 업그레이드 할 수 있는 계기가 되지 않을까 하는 생각이 든다. 일단 기존의 썰렁했던 모바일 자바 UI보다는 이쁠테니까 말이다.

요즘 인기몰이를 하고 있는 삼성의 햅틱 역시 UI는 괜찮다는 얘기가 있다. 뭐 UI를 14일만에 만들었다는 얘기도 돌 만큼 완성도가 그렇게 높지 않다는 얘기도 있지만 일단 TV 마케팅 광고에서 보이는 부분들이 실제로 구현되었다면 그 UI는 상당한 수준이라는 얘기가 된다. 또 햅틱의 UI를 14일만에 만든 것이 아니라 내부적으로 UI 디자인 컨셉을 잡는데 14일이 걸렸고 제작하는 데는 꽤 오랜 기간이 소요되었다는 얘기도 나오고 있다. 어떤 얘기가 진실인지는 모르겠지만 햅틱의 UI는 국내 휴대폰들이 보여주는 UI들 중에는 꽤 상위권에 속한다고 생각이 든다. 프리미엄 폰이 달리 프리미엄 폰은 아닐테니 말이다.

일단 눈에 띄는 휴대폰 플랫폼의 UI들만 얼추 살펴봤다. 확실히 UI가 이쁘면 그 휴대폰의 판매율은 높은 듯 싶다. 가격이 너무 비싸거나 성능이 말도 못할 정도로 떨어지지 않는다면 말이다. 이제는 디자인도 휴대폰의 성능 중에서 상당히 중요한 부분으로 자리매김하고 있다는 생각이 든다.

과연 스마트폰의 기능을 얼마나 많이 사용할까? 기껏 비싼 돈주고 iPhone을 구입했는데 그저 Email 확인과 동영상, 음악 재생, PIMS(개인 정보관리 시스템, Personal Information Management System)으로 쓰는 것만으로 만족하는 것이 아닐까. 이쁜 UI에 혹해서 샀는데 애물단지로 전락하는 경우도 존재할 수도 있을 것이고 말이다. 이쁜 UI만큼 기등도 충실하게 사용할 수 있는 환경조성도 중요하다는 생각을 문뜩 해본다. 앞의 이야기와 결론이 좀 안맞지만 말이다. -.-;

수정) RIM의 블랙베리의 경우 자체 OS를 사용한다. 제대로 알지 못하고 블랙베리도 윈도 모바일을 사용한다고 썼으니. 이런 망신이. -.-; (출처)

댓글을 달아 주세요

  1. BlogIcon 내다, 알제~?  수정/삭제  댓글쓰기

    왠지 가지고 노는 재미에 빠때루 금방 교체해야 할 거 같으~

    2008/08/18 14:37
    • BlogIcon 학주니  수정/삭제

      실제로 iPhone 3G의 경우 3G기능을 켜면 3시간도 채 못간다고 하더라.. -.-;

      2008/08/18 14:53
  2. BlogIcon joogunking  수정/삭제  댓글쓰기

    겉으로 보기만 좋은 UI가 아니라 사용하기 편리하고 안정성도 가지고 있으면서 속도도 빠른 그런 UI가 되었으면 하는 바람입니다.
    특히 스마트폰의 맹점인 두 손을 모두 이용해야 하는 UI가 불만입니다.
    그런 면에서 HTC의 터치 UI가 눈길을 끄네요.
    좋은 정보 감사합니다.

    2008/08/18 19:12
    • BlogIcon 학주니  수정/삭제

      터치플로가 상당히 편하다는 얘기는 많이 나오곤 하네요. ^^;

      2008/08/18 19:15
  3. BlogIcon 토리세상  수정/삭제  댓글쓰기

    휴대폰 ?이쁘네요^^;;제가 사기엔 조금 많이 부담되는 금액일듯^^;;(외국서 판매도 하귀;;)
    휴대폰 하고 mp4 두가지 시리즈 잇는것 같던데.. 휴대폰 아이팟 판매하는건 오늘 처음 접한 소식이네요^^~
    잘 구경 하다 갑니다^^

    2008/08/19 09:07
    • BlogIcon 학주니  수정/삭제

      iPhone은 뭐 휴대폰이지 MP4P는 아니라고 봅니다.
      물론 스마트폰의 강점이 음악도 재생되고 동영상도 재생되고 무선인터넷도 쓸 수 있고 Email송수신도 가능한 만능 엔터테인먼트 및 사무용기기지만 일단 기본은 휴대폰이죠. ^^;

      2008/08/19 09:44
    • BlogIcon 토리세상  수정/삭제

      mp4라고 한적은 없습니다.
      아이폰이 아이팟 터치 에 휴대폰 기능을 넣은게 아이폰 이런걸 말하는 건데요-0-;;전에 어떤님 블로그 보앗엇는데.. 아이폰 ,아이팟 터치는 같은?회사제품이라더군요.. 다만 기능상의 차이가 잇을뿐^^;;

      2008/08/19 10:53
    • BlogIcon 학주니  수정/삭제

      음.. 제가 댓글을 그럼 잘못 이해한 것이군요.
      맞습니다. iPhone과 iPod touch 모두 애플에서 만든 제품이죠.
      iPod touch는 iPhone에서 전화기능만 빠진 버전이라고 보면 될 듯 싶습니다만 둘 다 써본 사람들의 말에 의하면 iPhone이 iPod touch보다 성능상으로 훨씬 우월하다고 합니다.

      2008/08/19 13:34
  4. BlogIcon 편집장  수정/삭제  댓글쓰기

    SCH-M480을 사용하고 있습니다. 스마트폰은 처음이라 많이 적응하고 있지요. ^^;
    근데 이녀석이 기존의 스마트폰보다는 좀 앞서 있다는 생각이 들었습니다.
    PDA에 사용하던 응용프로그램들을 설치해서 사용하는데 이상없이 잘 돌아가네요.
    PDA폰에 더 가까운듯...
    이 녀석 살때, HTC도 많이 고민했는데, QWERTY자판이 뿜어내는 뽀스에 넘어갔지요. ㅎㅎ
    삼성에서 제공하는 기본 UI도 2가지 있는데, 만족할 만한 수준입니다.
    조만간 리뷰를 써야하는데.. ㅎㅎ

    2008/08/19 11:10
    • BlogIcon 학주니  수정/삭제

      SCH-M480이면 블랙잭2인가요? 해외에서 미라지폰이라고 알려진.
      블랙잭 시리즈는 쿼티자판이 매력이지요. 정말로 Email 쓸 때 엄청 편리하다고 하네요. 저는 안써봐서 모르겠어요.. -.-;

      2008/08/19 13:35
  5. 멍청이  수정/삭제  댓글쓰기

    역시 화려함을 선호하는 젊음계층을 위한 UI 에선 애플따를자 없을듯...
    좋은 포스팅 잘 읽고 갑니다.

    2008/08/20 03:11
  6. BlogIcon brutus  수정/삭제  댓글쓰기

    "다만 윈도 모바일 자체 UI는 참으로 단순하고 멋이 없어서 블랙베리나 블랙잭 등의 윈도 모바일 UI를 그대로 사용하는 스마트폰의 경우" <- 블랙베리가 윈도우모바일 OS를 사용한다는 말은 듣도 보도 못했습니다만, 제가 잘못 알고 있는 것인지요? 궁금하네요. 물론 UI도 블랙베리 자체 UI로 알고 있는데...

    2008/08/20 10:56
    • BlogIcon 학주니  수정/삭제

      헉.. 제가 잘못 알고 있었습니다.. 그 부분 급히 수정을.. ^^;

      2008/08/20 11:11
  7. BlogIcon 프로리  수정/삭제  댓글쓰기

    UI가 점점 대세가 되는건 사람들이 먼가 새로운걸 원해서겠죠?
    그런데 가끔 길 가다가 사람들 만나서 아이폰 이야기 하면 먼지 모르는 사람들이 더 많다는...... ㅡ_ㅡ 결국......... UI와 홍보, 인지도도 중요한듯...

    2008/08/20 11:52
    • BlogIcon 학주니  수정/삭제

      애플 제품들은 어찌보면 매니아들만의 전유물일지도 몰라요.
      iPod도 잘 모르던데.. -.-;

      2008/08/20 12:36

TIOBE Software라는 곳에서 매월마다 현재 세계적으로 가장 인기를 얻는 프로그래밍 언어가 무엇인지 통계를 내놓는다. 현재 전 세계적으로 프로그래밍의 동향이 어떤지 알 수 있는 괜찮은 자료인듯 싶다.

TIOBE Programming Community Index for January 2008

구글와 MSN, 야후, YouTube 등에서 얻은 데이터를 바탕으로 통계를 내었다고 한다. 아무래도 국내 자료가 아닌 해외 자료인 만큼 현재 해외에서는 어떤 프로그래밍 언어가 인기를 끌고 있는지 알 수 있을 듯 하다. 해외 취업을 할 때도 꽤나 도움이 될 듯 하다.

사용자 삽입 이미지

현재 가장 인기를 끌고 있는 언어는 자바다. 전년 대비 1.69%가 더 많이 사용하고 있다고 한다. 웹2.0이 전세계 IT를 이끌면서 자바 역시 다시 활기를 되찾고 있는 상황이다. 게다가 JSP는 PHP, ASP 등의 다른 웹 스크립트 언어보다 보안이 뛰어나서 많은 사이트에서 사용하고 있는 언어이기도 하다. 다만 자바 스크립트는 한단계 하락을 했다. 내부적인 문제가 여전히 많는 상태이기 때문이 아닌가 생각이 든다.

다음에는 프로그래밍 언어의 영원한 고전이자 표준인 C언어다. 전년 대비 1.89%가 더 떨어졌지만 자바에 이어 2등을 달리고 있다. 임베디드 분야에서나 서버 프로그래밍, 시스템 프로그래밍에서는 아직까지 C언어가 인기를 끌고 있기 때문에 C언어의 강세는 앞으로도 계속 진행될 듯 하다.

재밌는 것은 작년에 3등이었던 C++이 5등으로 주저앉았고 그 자리에 비주얼 베이직(혹은 일반 베이직)과 PHP가 올라간 것이다. 이는 윈도 프로그래밍에 있어서 점점 Visual C++(VC++)의 역할이 줄어들고 있다는 얘기도 된다. MFC, Win32 API 등으로 대표되는 MS의 윈도 프로그래밍이 파워빌더나 델파이 등의 서드파티 툴에 의해서 그 힘을 잃어가고 있다고 봐도 좋을 것이다. 그 자리에 비주얼 베이직(VB)이 올라섰다. Visual Studio(VS)의 버전이 올라가고 .NET 프레임워크 환경하에서 VB의 기능이 강화되고 더 사용하기 쉬워져서 VC++ 사용자들이 많이 VB로 옮겨가는게 아닌가 하는 추측을 낳게 한다. 웹 스크립트 언어의 강자인 PHP 역시 꾸준히 사랑을 받고 있는 언어다. 해외 많은 웹사이트들이 PHP 기반으로 만들어져 있다는 사실이 그것을 증명한다.

눈에 띄는 것은 파이썬의 약진이다. 인터프린터 언어인 파이썬이 데스크탑 프로그램에서 웹 프로그램까지 그 세력을 넓히고 있는 상황에서 그 버전이 올라감으로 기능 역시 강력해지고 있다. 기능이 다양해지고 더 빨라짐으로 퍼포먼스 측면에서도 상당한 효과를 보이는 것으로 알려졌다. 파이썬의 약진과 동시에 펄 언어는 조금씩 내려오고 있는 추세다. 펄에서 파이썬으로 옮기는 사용자들이 많아지고 있다는 얘기를 들은바 있다.

C#은 아무래도 자바와 많이 중첩되고 자바의 강세가 두드러지면서 약세로 돌아서지 않았나 생각이 든다. 게다가 ASP.NET이나 VB.NET이 점점 힘을 얻어가는 상황에서 윈도 프로그래밍의 축이 VC++과 C#을 지나 VB로 넘어가는게 아닌가 하는 나 나름대로의 추측을 해본다.

델파이의 선전이 눈에 띈다. 윈도 프로그래밍이 VC++이나 C# 등에서 점점 파워빌더, 델파이와 같은 서드파티 툴로 넘어가고 있다는 생각이 든다. 더 간단하게 조작할 수 있는 편리한 툴을 제공하기 때문에 윈도 시스템 프로그래밍을 하지 않는 이상에는 무거운 VS를 사용할 이유가 없다는 판단이 아닐까 생각이 든다. 그런데 파워빌더는 아예 순위에도 없는게 아쉽다.

오라클 때문인지 PL/SQL도 순위에 들어있다. 코볼도 여전히 많이 사용하는 언어다(참 오래도 간다). 파스칼과 로고도 눈에 띈다. 다 1970년대에 만들어진 언어들인데 계속 꾸준히 인기를 얻고 있는거 같다. 각기 사용하는 분야가 확실히 정해져서 그런것인지도 모르겠다.

Lua라는 언어는 나도 처음 들어보는 언어다. 하기사 전세계적으로 수백가지의 언어가 필요에 의해서 생겨나고 없어지는 것이 반복되다보니 특정 분야나 목적을 위한 프로그래밍 언어가 인기를 끄는 경우가 종종 있는거 같다.

여하튼간에 자바, C, VB, PHP, C++, 파이썬 등이 현재 전 세계적으로 인기를 끌고 있는 언어임에는 틀림이 없다.

* 관련글 *
2007/04/26 - [IT Story/IT 이슈] - 윈도 프로그래밍에 대한 생각
2007/07/26 - [IT Story/칼럼] - 자바와 C언어, 어떤 것을 선택해야?
2007/08/03 - [IT Story/IT 이슈] - PHP4 라인의 종말
2008/01/08 - [개인] - 올해 개인적으로 꼭 공부해보고 싶은 것들...
2007/01/09 - [IT Story/IT 이슈] - D언어라..

댓글을 달아 주세요

  1. BlogIcon 낚시광준초리  수정/삭제  댓글쓰기

    역시 C네요 ㅎㅎㅎㅎㅎ ^^*
    그건글코 요즘 공부해보고 싶은게 파이썬과 루비인데.. 둘다 순위에 들어있네요..

    아 해야지 해야지 하면서 이놈의 게으름 병은 ㅠ,.ㅜ

    2008/01/09 12:55
  2. BlogIcon 산티아고  수정/삭제  댓글쓰기

    왠지 우울해지는군요..( -_-)

    2008/01/14 15:33

 내가 회사에서 메인으로 사용하고 있는 컴퓨터 언어는 C언어다. 가끔 C++을 사용하기도 하고 윈도 프로그래밍을 할려면 MFC나 Win32 API를 이용한 프로그래밍도 한다. 그렇다 하더라도 내 메인 컴퓨터 언어는 C언어다. 이게 내 밥줄이며 내 기술이다. 이것 덕분에 지금까지 그나마 회사에서 잘 써먹고 있는 것이라 생각이 든다.

요즘들어 웹2.0에 관심이 많아져서 관련 글들도 블로그에 쓰고 관련 자료들도 인터넷을 통해서 이리저리 찾아보기도 하고 포럼이나 세미나에도 가끔 참석해서 주변 지식을 넓히고 있는 상황이다. 그런데 계속적으로 웹2.0에 대해서 공부하면서 느끼는 점은 지금 내가 하고있는 일과는 전혀 매치가 안되고 있다는 것이다.

웹2.0은 말 그대로 웹이다. 인터넷의 한 종류인 웹은 이제는 아예 인터넷을 대표하는 기술이 되어버렸다. 그만큼 웹이 크게 성장했다는 뜻이다. 이 웹이라는 녀석을 다루다보면 자주 등장하는 것이 웹 페이지, 웹 사이트며 이 웹 사이트를 구성하고 있는 웹 언어들이 존재한다. HTML이라 불리는 웹 페이지 문서 언어와 ASP, PHP, JSP라 불리는 웹 스크립트 언어가 그것이다. 그리고 요즘은 웹2.0이 뜨면서 XML과 AJAX가 웹 언어의 대세를 이끌고 있다고 본다.

그리고 웹2.0의 중심에는 Java(자바)라는 언어가 있다. 이 자바는 1990년대 중반에 선마이크로시스템(이하 Sun)에서 만든 오브젝트 중심의 언어(이하 OOP)다. C++이라는 OOP의 연장선상에 있다고 봐도 좋을 것이다. JVM이라 불리는 자바 가상 머신 위에서 동작을 하며 어떤 플랫폼(OS, Computer 모두)에서도 JVM만 있으면 다 돌아가겠끔 만든 것이 바로 자바다. 지금으로부터 대략 10여년전에 만들어진 언어니 10년정도의 역사를 지니고 있다고 본다.

자바는 2000년대초에 한번 크게 붐을 이뤘다. 닷컴 열풍이 몰아친 그 때에 자바 애플릿과 자바스크립트라 불리는 자바 언어(솔직히 애플릿은 자바라고 말하기 좀 그렇다고 생각한다. 그래도 구성 자체는 자바로 되어있으니 자바의 한 종류라고 하자)가 웹 페이지의 디자인 부분을 맡으면서 자바를 이용한 많은 웹 서비스 프로젝트들이 붐을 이뤘다. 그래서 한때 확 떴다가 2002년 이후로 좀 세력이 떨어진다. 닷컴버블이 사라진 이후 웹에 대한 환상이 깨지고 그와 동시에 자바에 대한 환상도 깨진 것이다. 그래서 풀죽어있는채로 있다가 2004년 하반기부터 다시 자바가 뜨기 시작했다. 그것은 MS가 C#이라는 자바와 비슷한 성질의 언어를 발표했을 때와 비슷하다. MS는 .NET이라는 자바의 JVM과 비슷한 플랫폼을 만들고 그 위에 C#이라는 언어를 사용해서 어떤 플랫폼에서도 사용할 수 있는 언어를 발표했다(그렇다 치더라도 MS OS군에서만 돌아가는 C#은 자바에 비할바가 못된다). 그때와 동시에 자바도 다시 부활했다고 본다.

웹2.0이 붐을타고 일어나서 전세계를 강타했고 그 중심에는 XML과 더불어 AJAX라는 기술이 있었다. AJAX는 Asynchronous JavaScript and XML의 약자로 비동기형 자바스크립트와 XML이라는 뜻인데(그냥 직역이다) 역시 자바로 구성되어있는 것이 특징이다. AJAX의 확산으로 인해 자바는 다시 부활하게 된다. 즉, 내가 요즘 관심을 갖고있는 웹2.0의 중심에는 자바가 있었다는 얘기다. XML도 자바와는 잘 붙는다고 한다.

왜 이런 이야기를 하는가 하면, 내가 사용하고 있는 C, C++ 언어는 말 그대로 시스템 언어들이다. C언어는 서버 프로그래밍을 할때나 아니면 임베디드 프로그래밍(휴대폰이나 PMP, PDA 등의 기기의 펌웨어 프로그래밍 등)에서 많이 쓰이고 있다. C언어가 고급 언어이면서도 어셈블러와 같은 저급 언어의 성질도 같이 갖고 있어서 임베디드 프로그래밍을 할 때 유리하기 때문이다. 서버 프로그래밍도 마찬가지다. C++과 같은 OOP 계열 언어를 쓰면 아무래도 퍼포먼스에 있어서 좀 떨어지기 때문에 C언어를 많이 쓴다. 그러나 C, C++로는 웹2.0 시대에서 제대로 밥 벌어먹기 힘들다는 얘기를 많이 듣는다. C, C++언어는 웹 언어가 아닌 철저하기 플랫폼에 의존적인 언어이기 때문이다. 그 얘기는 윈도에서만 돌아가는 프로그램이라던지, Linux에서만 돌아가는 프로그램이라던지, 이런식으로 OS에 철저하게 의존적인 프로그램만 만들 수 있다는 얘기다. 여러 플랫폼에서 돌아가게 할려면 각 플랫폼 별로 컴파일을 새로 해야하는 불편함이 있다. 웹 언어들은 플랫폼에 상관없이 웹 브라우저만 존재하면 어디서든 구동되는 프로그램을 만들 수 있다. 웹 사이트가 그 대표적인 예다. 물론 ActiveX 등의 기술을 사용하면 윈도에 Internet Explorer에서만 돌아가겠지만 그런거 안쓰고 순수하게 웹 스크립트 언어를 사용하면 어떤 플랫폼에도 관계없이 구동되는 웹 프로그램을 만들 수 있다. 그리고 나는 그 중심에 자바가 있다는 사실을 깨달았다.

요즘 자바 프로그래머들을 많이 찾고 있다. 한때 자바가 선풍적으로 인기가 있었을 때 자바 프로그래머들이 많았는데 닷컴버블 이후 자바의 인기가 뚝 떨어지자 자바 프로그래머가 많이 윈도 프로그래머로 돌아섰다. 그 얘기인즉 자바 대신에 MFC, WIn32 API등의 윈도 프로그래밍을 선택했다는 얘기다. 혹은 웹 프로그래머로 돌아섰다. 진정한 자바 엔지니어가 아닌 그저 자바 스크립트 정도만 만들 수 있는, 애플릿 정도만 만들 수 있는 그런 수준의 프로그래머로 돌아간 것이다. 물론 자바 스크립트나 자바 애플릿을 만드는 것이 하찮은 일은 아니다. 그것도 나름대로의 영역을 가지고 있으며 웹 사이트에 있어서 중요한 요소라고 생각한다. 하지만 좀더 깊은 수준까지는 못가는 것이 안타까울 뿐이다. 자바 프로그래머들은 자바 애플릿이나 자바 스크립트를 만들 수는 있지만 자바 애플릿이나 자바 스크립트만을 만들 수 있는 웹 프로그래머는 자바를 이용한 다른 응용 프로그램을 만들 수는 없다. 그래서 지금에 와서 자바 프로그래머들을 많이 찾는데 그러한 자바 프로그래머가 많이 부족한 상태다. 그만큼 단가도 많이 올라갔다.
나도 내가 갖고있는 C, C++ 기술로 어느정도 인정은 받고 있지만 솔직히 내 값을 제대로 평가받지 못하고 있다고 생각하고 있다. 그리고 내가 원하는 프로그래밍을 못하고 있다는 생각이 든다. 향후에 IT를 이끌것은 웹이라고 생각한다. 닷컴버블때와 같은 그러한 웹이 아닌 실제로 웹2.0에서 얘기하는 그러한 기술들이 접목된 웹이 IT를 주도할 것이라고 생각한다. 웹2.0의 선두주자인 구글은 자바를 가장 잘 이용하는 서비스중 하나다. 구글의 모든 서비스는 AJAX로 이루어져 있다고 한다. 그리고 IBM과 같은 회사는 아예 정책적으로 자바를 밀어주고 있다. Sun은 자기네들이 만든 언어니 말할것도 없다. 웹을 다루는 모든 서비스에는 지금 자바가 그 중심에 있다고 본다. 그리고 결정적으로 금융권에서는 모든 서버단은 다 자바로 이루어져 있다. 모든 웹 스크립트 언어중 JSP가 가장 보안성이 뛰어나기 때문이다. JVM 위에서 돌아가는 JSP는 JVM이 외부와의 연결을 제어해주기 때문에 보안성이 뛰어나다고 알려져있다. JSP 역시 자바로 구성되어 있음은 말할것도 없다. 이렇듯 자바는 지금 여러분야에서 중추적인 역할을 하고 있다.

내가 이 글을 쓰는 이유 중 하나는 내가 처음부터 C를 선택하지 않고 자바를 선택했으면 지금의 이 길이 아닌 어쩌면 웹2.0의 중심에 있었을지도 모른다는 생각과 지금보다는 좀 더 나은 생활을 하고있지 않을까 하는 생각이 들었기 때문이다. 나는 메인이 C, C++이기 때문에 내가 선택할 수 있는 직업의 범위가 제약이 있다고 본다. 자바도 물론 그렇다. 하지만 자바는 C, C++보다는 그 선택의 폭이 더 넓다. 그리고 좀 더 비싼 가격으로 채택될 수 있다는 점이 나를 가슴 아프게 한다.

물론 C, C++을 이용해서 시스템 프로그래밍을 하는 것과 요즘 인기를 끌고 있는 임베디드 프로그래밍을 하는 것도 매력있고 재미난 일이다. 하지만 시스템 프로그래밍과 임베디드 프로그래밍은 그 수효가 적다. 응용 프로그램쪽이 더 많은 사람을 필요로 하기 때문이다. 희귀성은 있을지 몰라도 다양성이 없는 것이 아쉽다. 윈도 프로그래밍도 마찬가지라 본다. 요즘 모든 엔터프라이즈 서비스들이 응용 프로그램 분야에서 웹 프로그램으로 돌아가고 있고 그 중심에는 자바가 있다는 것이 나를 갈등하게 만든다.

현재 회사에 자바 책을 갖다놓고 조금씩은 보고있다. 예전에 잠깐 공부한 적도 있고 그래도 C, C++을 다룬지가 벌써 10년정도 되었기 때문에 자바를 습득하는 것은 그다지 어렵지 않다고 본다. 다만 아쉬운 점은 자바로 프로젝트를 한 경험이 전무한 나로서는 실전에서 자바를 제대로 잘 쓸수가 있을까 하는 두려움을 갖는 것이다. 친구녀석이 일단 소규모 프로젝트를 같이 진행해보자고 해서 나름 생각하고 있다.

지금에서 주종목을 바꾼다고 해도 의미는 없을 것이다. 그래도 무기를 하나 갖고 있을 필요는 있다고 생각한다. C와 C++을 이용해서 언제까지나 계속 프로그래밍을 하기에는 한국이라는 시장은 너무 많은 것을 요구하기 때문이다. 열심히 노력하는 수 밖에 없다는 생각이 든다.

ps) 오래전에 쓴 글인데 스프링노트에 저장해뒀다가 이제야 마무리한다. 그런데 그때 생각했던 내용과는 좀 틀리게 쓰인거 같다. 전체적으로 다시 정리할 필요가 있을 듯.

ps2) 그렇다고 해서 내가 C나 C++을 폄하하는 것은 아니다. 지금 내가 사용하고 있는 주요 언어가 바로 C고 C++이다. 리눅스에서건 윈도에서건 말이다. 다만 자바도 C나 C++처럼 잘 다뤘으면 하는 생각에서 써봤다.

댓글을 달아 주세요

  1. BlogIcon brainchaos  수정/삭제  댓글쓰기

    저도 C, C++, Pro C로 밥먹다다 EVC와 VC++로 옮겨갓다가..
    다시 JAVA로 와선 놀고 있습니다.
    JAVA 다시 봐야 할듯 합니다.
    ^^;
    지금 시작해도 .. 밥벌이와 놀이를 따로 따로..
    화이팅입니다.

    2007/07/26 15:17
    • BlogIcon 학주니  수정/삭제

      후후.. 저 역시 C, C++, Pro*C로 생계유지하다가..
      지금은 임베디드 프로그래밍을 하고 있답니다.
      물론 리눅스 시스템 프로그래밍과 윈도 서버 프로그래밍도 같이 하고요.
      EVC, VC++, GNU C/C++에 가끔 Pro*C까지.. -.-;
      이젠 자바만 할 수 있다면. --;

      2007/07/26 15:52
  2. BlogIcon 낚시광준초리  수정/삭제  댓글쓰기

    저도 C가 밥벌이 입니다.. 요즘은 가끔 C++ 처음에는 리눅스 환경에서 작업을 했는데 5-6년전 부터 윈도우만 하게 되네요 푸흐 저도 JAVA공부 할까 하다가.. 요즘 루비가 잼있을것 같아 해보고 시픈데 짬이 안나네요.. JAVA 요즘 밥벌이가 괜찬던데.. 가끔 블로그를 보다보면 저렁 대형 시스템에 JAVA사용 하는것을 보고 왜 그렇게 어렵게 보이는건지.. 학주니님 말씀 처럼 이거 원 책보고 공부한다고 해서 저런시스템에 내가 할 수 있을가 하는 의문이 ㅠ,.ㅜ

    2007/07/27 12:19
    • BlogIcon 학주니  수정/삭제

      뭐 솔직히 책보고 한다고 하더라도 제대로 할려면 몇달은 뺑뻉이 돌 정도로 고생을 해야하지요. --;
      루비라.. 루비도 요즘 뜨고 있지요. 외국에서지만(국내에는 아직까지는).

      2007/07/27 12:41
  3. rosha99  수정/삭제  댓글쓰기

    안녕하세요. 지나가다가 본 프로그래머 지망하는 학생입니다.(아직 중학생)

    뭘 모른다고 할 수 있지만.. 여러가지 언어가 있고, 또 여러가지 사람이 있고 여러가지 목적이 있지 않아요?

    java 또한 안정성과 사용되는 범위에서 각광을 받을만 하지만 그래도 C언어가 있기에 리눅스가 있는거고 임베디드가 있는거라고 생각합니다.

    제가 어려서 뭘 모르지만 그래도 프로그래밍은 흥미와 나름대로의 프라이드, 그리고 제일 중요한 컴퓨터를 공부하려는 의지라고 생각했는데...

    아무래도 제가 직업을 해보기 전까지는 환상을 깨기 어려울것 같습니다.. ㅠㅠ

    2007/07/29 04:14
    • BlogIcon 학주니  수정/삭제

      각 컴퓨터 언어는 쓰이는 사용처에 따라서 달리 사용되곤 했지요.
      C언어는 시스템 프로그래밍이나 서버 프로그래밍, 임베디드 프로그래밍에 어울리는 언어지만 아무래도 많이 사용되는 쪽은 UI쪽이기에 자바가 각광을 받는게 아닌가 싶습니다.
      중학생이라면 일단 여러가지를 배우면서 자신이 원하는 방향과 맞춰서 공부하면 도움이 많이 될꺼라 생각합니다.

      2007/07/30 21:30
  4. 안불렀슈  수정/삭제  댓글쓰기

    저도 임베디드(?) 하는지라 C를 주로 다루고 있는데.. C에서 JAVA 같은 것으로 발전되는게 아니구. 점점 어셈블리 같은 것으로 퇴보(?!) 하고 있네요.. ^^
    앞으로는 임베디드쪽도 메뉴얼 C 코딩에서 UML이나 MATLAB/Simulink 등을 이용한 모델기반개발방법론으로 옮겨갈테니까.. 그쪽 툴 공부도 해야 할 거 같아요..

    2007/08/13 12:39
    • BlogIcon 학주니  수정/삭제

      임베디드에 점점 빠져들다보면 로우(Raw)레벨로 내려가는 나 자신을 느끼게 됩니다.. -.-;

      2007/08/13 13:02
    • BlogIcon Kevin  수정/삭제

      제 생각에는 분야가 다를 뿐이지 퇴보는 아니라고 봅니다...^^;

      물론 퇴보의 의미를 그런뜻으로 쓰신것은 아니겠지만요...

      컴퓨터 언어쪽에서 고급 언어 라는게 수준이 높은 언어란 말이 아니고,
      어셈블리어 같은것도 수준이 낮은 언어인게 아니듯이 말이죠...

      각 언어마다 필요한 분야가 있고 필요한 분야에 맞는 일을 하고
      계신거죠...^^

      Java 어플리케이션 자체야 자바를 사용해서 만든다지만,
      컴파일 한 자바 바이트 코드는 JVM에서 돌아가고

      이 녀석은 C와 어셈블리어 같은 언어로 제작 될 수 밖에 없잖아요...^^

      2008/01/16 09:10
  5. BlogIcon Kevin  수정/삭제  댓글쓰기

    저의 경우는 프로그래밍을 배울 초창기에는 C와 C++을 더 좋아 했는데,
    배우다 보니 Java의 매력에 빠져서 지금은 Java만 하고 있습니다...
    정확히는 Java Web Application Development 라고 봐야겠죠...

    PHP도 공부했고, M$ .NET (C#) 도 공부했지만, 역시 저한테는 Java만큼 좋은게 없네요...^^;
    근데, 뭘 하든 그 분야에 필요한 언어가 있으니 각 분야에 맞는 일을 하는것이
    중요하지 않을까 싶습니다...

    특히 C 나 C++ 같은 언어는 그 사용 목적이 분명한게 있고, 정말 강력한 언어죠...
    일단 속도 경쟁만 붙어도 Virtual Machine에서 돌아가는 Java는 게임이 안 되니까요...^^;
    또 하드웨어 제어 하려면 필수라고 할 수 있겠구요...

    요즘은 오히려 너도 나도 웹쪽으로 뛰어 들어서 C쪽의 희소가치가 점점 높아지는걸로 알았는데, 아닌가요?
    개인적인 생각으로는 이미 C같은 훌륭한 언어를 다루고 계시다면,
    굳이 '다른 언어도 좀 해야 하지 않을까?' 하는 걱정은 안 하셔도 될것 같다는 생각이 드는군요...^^

    그리고 Java 자체는 배우기 쉬운언어라, 배운다고 하셔도 걱정 할 필요없으시겠구요...
    사실 손이 많이 가는건 언어 자체 이외에 다른 부분들이죠...
    일단 Java Web쪽을 보면,
    Servlet Specification 이라던가 Enterprise Java Bean,
    Spring, Hibernate 같은 Framework라던가...
    이런 부분이 오히려 시간은 더 걸릴것 같군요...


    아무튼 계획 하신바 잘 이루시기 바랍니다...^^

    P.S. 본문 보면 Javascript와 Java가 직접적으로 관계가 있는 언어인 듯한 느낌이 약간 들어서요...
    사실 두 언어는 직접적으로는 관계가 없고, 이름이 비슷하고, Java쪽 naming convention을 Javascript에서 많이 차용했을 뿐이죠... 문법은 C에서 나온거라 서로 비슷하구요...
    그러고 보니 비슷하게 보이긴 하는군여...^^;;

    큰 차이는 Java는 객체지향 (Object-Oriented) 언어이고, Javascript는 Prototype-based 언어라는데 있겠죠...
    하나는 compile 되는 언어고 하나는 script (client-side) 언어라는 점도 있구요...


    다른 참고 사항은 JSP의 경우 일단 Servlet으로 변환 된 후에 컴파일 된 Servlet이
    JVM에서 돌아가는거구요... 물론 간단하게 쓰시느라 JSP가 JVM에서 돌아간다고
    쓰셨겠지만, 혹시 관심 있는 분들이 본문을 보실경우를 생각해서 약간의 참고사항으로
    적어 봤습니다...

    2008/01/16 09:38
    • BlogIcon 학주니  수정/삭제

      ps로 지적해주신 부분에 감사드립니다. 확실히 자바와 자바스크립트는 틀리죠. ^^;
      C언어는 요즘은 임베디드 프로그래밍에서만 쓰이는거 같은 느낌입니다. 가끔 리눅스용 시스템 프로그래밍에서도 쓰이기도 한다지만 말이죠. 하기사 임베디드가 요즘 인기니까 C언어도 약간씩 자리를 다시 잡아간다는 느낌입니다.
      윈도쪽은 Visual Studio 2005, 2008 등이 나와서 WPF니 WCF니 하는 .NET 프레임워크 프로그래밍이 대세더라고요. 델파이나 파워빌더를 이용한 SI 프로그래밍도 그렇고요. C은 발붙힐 틈이 없는.. -.-;

      2008/01/16 09:43
  6. BlogIcon Kevin  수정/삭제  댓글쓰기

    아... 그렇군요... 하긴 닷넷이 나오면서, 이건 뭐 이젠 M$도 Java식으로
    Virtual Machine (CLR) 을 쓰니...

    아... 그럼 이런 쪽은 어떨까요? 제 아무리 Virtual Machine (VM) 을 써도
    VM개발은 C로 해야 되잖아요...^^
    Java API 쪽에도 보면 전부 Java로 만든게 아니라 일부는 native code를
    써서 만들었잖아요... 소스 보니 C를 썼던데...

    거기다 Sun에서 이제 Java를 Open source로 전향 하겠다는 말을 하던데...
    이미 했겠죠? 이거 본지 꽤 됐는데...

    이런 부분에서 C 프로그래머의 참여가 더 쉬워질듯 합니다...
    그런분야 개발에 참여해 보시는건 어떨까요?

    2008/01/16 09:59
    • BlogIcon 학주니  수정/삭제

      솔직히 VM 개발쪽은 일반 어플리케이션 프로그래머가 할 영역은 아니지요. 또 그런 부분을 요구하는 회사도 거의 찾아보기 힘들고 말입니다. ^^;

      2008/01/16 11:00
  7. BlogIcon deSigne  수정/삭제  댓글쓰기

    구글에서 자바와 C#에 대한 정보를 찾다 들렀습니다. ^^

    읽다보니, 자바가 Web 2.0의 선상에 있다고 하셔서 약간 의아해 하며 읽게 되었는데요.

    요즘 Web2.0의 대표적 기술이라며, 떠오르고 있는 Ajax의 자바스크립트는 자바와는 아무런 관련이 없답니다.ㅎㅎ 자바스크립트가 자바의 덕을 좀 보려고 이름만 비슷하게 지은 것 뿐이지요.ㅎㅎ

    여튼간에 좋은 글 읽고 갑니다. :)

    2008/05/18 23:52
    • BlogIcon 학주니  수정/삭제

      뭐 솔직히 자바가 웹2.0 선상에 있다는 것은 자바쪽 사람들의 이야기입니다.
      말씀하신대로 Ajax는 자바스크립트 기반이고 자바스크립트는 자바와는 이제는 완전 별개의 언어라 불릴정도로 달라졌기 때문이라죠.
      그래도 서버쪽이나 보안관련 부분 등 웹2.0 서비스의 기저기반을 자바로 구현하는 경우(JSP겠지만)가 많아서 그렇게 해석할 수도 있지 않을까요?

      2008/05/19 08:11

D언어라..

IT Issues 2007/01/09 13:37 Posted by 학주니
나는 프로그래머다.. 아니 정확히 말해서는 프로그램을 짜서 먹고사는 프로그래밍 기술자다.. 진정한 프로그래머는 아닐꺼라 생각이 든다.. 그저 회사에서 이거 만들어라, 저거 만들어라 하면 그 요구에 맞춰서 프로그램을 제작하고 배포하고 유지보수하는 것이 내 일이다.. 그래서 그런지 나는 어떤 프로그래밍 언어를 메인으로 사용하고 어떻게 제작하느냐가 상당히 중요한 이슈로 작용하곤 한다..

내 경우에는 나는 주로 C - 엄밀히 얘기하면 GNU에서 제공하는 GCC로 컴파일되는 C언어 - 를 사용한다.. 물론 종종 C++도 사용한다(C++의 경우에는 MS에서 제공하는 Visual Studio에서 컴파일 가능한 Visual C++, MFC(하기사 같은 놈이다)을 사용한다.. 가끔 G++ 컴파일러를 이용하여 프로그래밍도 하지만 말이다).. 예전에는 자바에 관심이 있어서 한동안 공부좀 했으나 아무래도 내가 그것으로 먹고사는 프로그래머가 아니기 때문에 계속 관심만 갖고있지 지속하면서 공부하지는 못했다.. 자바뿐만 아니라 웹프로그래밍 언어인 PHP, JSP, ASP등에도 계속 관심만 갖고 있을 뿐이지 제대로 공부하지도, 사용해보지도 못했다.. 파이썬이나 루비라는 언어도 비슷한 상황이다.. 그저 관심만 있을 뿐, 제대로 해볼 엄두도 안났다..

그러는 가운데, D언어라는 것이 요즘 눈에 띄었다.. 최근에 만들어진 프로그래밍 언어라고 한다.. 이름에서 보다시피 C언어의 후계자같다는 생각이 든다.. 자료를 더 찾아보니 C보다는 C++의 후속언어라는 생각이 든다.. 최근 언어의 추세는 OOP(객체지향)라는 생각이 든다.. C는 객체지향 언어가 아니고 절차적 프로그래밍 언어니까 좀 거리가 있을까 하는 생각도 든다(C로도 충분히 OOP를 구현할 수 있다).. 여하튼 내가 본 D언어의 느낌은 C++과 자바의 중간단계라고나 할까?(그러면 C#이 아닌가?) C++에 GC(가베지컬렉터) 기능이 더 첨가되었다고 한다(포인터로 메모리를 사정없이 날라다니는 C++에 어떻게 GC 기술을 결합시켰는지 무지 궁금하다)..

내가 봤을때 현재 프로그래밍 언어들 중에서 가장 장수하고 성공한 언어는 C라고 생각한다.. 지금까지도 리눅스/유닉스 시스템 프로그래밍에서와 임베디드 프로그래밍에서 C만큼 강력한 성능을 가진 언어를 보지 못했다.. C++은 응용 프로그래밍 분야에서 지금도 맹위를 떨치고 있다.. MS에서 제공하는 Visual C++도 비록 겉껍데기뿐이지만 어찌되었던 베이스는 C++이다.. 자바는 요즘 다시 웹프로그래밍 분야에서 그 힘을 발휘하고 있다고 본다(한동안 자바는 이제 죽었다라는 얘기가 떠돌기 시작했다).. Web 2.0 시대에 XML과 Ajax에 힘입어 다시 자바가 뜨기 시작했다고 생각이 든다.. 그리고 D언어라는것이 나타나기 시작했다.. 얼마나 많이 사용할지는 모르겠지만 C++프로그래머 입장에서는 충분히 끌만한 매력이 있는거같다.. 과연 이 D언어가 롱런(Long Run)을 할 수 있을지 더 지켜봐야 할거 같다..

D언어에 대한 기사..


TAG C, C++, D언어, OOP, 자바

댓글을 달아 주세요

BLOG main image
학주니닷컴
학주니의 시선으로 본 IT 이슈와 사회 전반적인 이슈에 대한 블로그
by 학주니


Open Web Asia '08


카테고리