외규장각 도서 환수 모금 캠페인

'윈도 프로그래밍'에 해당되는 글 1건

  1. 2007/04/27 윈도 프로그래밍에 대한 생각 (10)

윈도 프로그래밍에 대한 생각

IT Topics/Microsoft 2007/04/27 06:16 Posted by 학주니
세상에는 많은 프로그래밍 언어가 있으며 또 많은 개발 툴들이 있다. 그런 프로그래밍 언어나 개발 툴로 윈도용 프로그램, 혹은 리눅스, 유닉스용 프로그램을 만든다. 또는 웹용 프로그램을 만들기도 한다. 나 같은 프로그래머는 어떤 언어를 선택하느냐, 아니면 어떤 툴을 선택하느냐에 따라서 직업의 성질이 결정되곤 한다. 과연 어떤 언어와 툴을 선택해야 내가 이 세계(IT, 프로그래밍 세계)에서 오랫동안 지낼 수 있을까?

일단 현재 가장 잘 알려진 언어들을 쭉 나열해보자.

C, C++, JAVA, FORTRAN, COBOL, Pascal, BASIC …

여기에 개발 툴 언어라는 것들이 있다.

Delphi, Power Builder …

또 웹 스크립트 언어들도 있다.

ASP, PHP, JSP, CGI, Python, Ruby …

맨 먼저 언급했던 언어들이 우리가 흔히들 프로그래밍 언어라 불리는 것들이다. UNIX 운영체제의 기본이 되었던 C와 C를 베이스로 해서 OOP 개념을 접목시켜 만든 C++, C++을 베이스로 해서 가상머신의 개념을 접목시켜 만든 JAVA, 최초의 컴파일 언어인 FORTRAN, 사무언어에 가장 적합하다고 얘기했던 COBOL, 초보자용 언어인 BASIC. 아마도 모든 컴퓨터 언어 책의 역사에 한번씩 다 언급이 되었던 언어들이다. 앞으로 얘기할 개발 툴 언어나 웹 스크립트 언어도 모두 위에서 언급한 프로그래밍 언어를 베이스로 만들어지게 된다.

Delphi나 Power Builder는 엄밀히 얘기해서 프로그래밍 언어는 아니다. 그렇지만 현재는 프로그래밍 언어의 한 축을 이루고 있는 상황이다(프로그래밍 언어로 편입되었다고 봐도 좋겠다). Delphi는 Pascal을 베이스로 윈도에서 돌아가는 프로그램을 만들기 위한 툴이다. Power Builder는 C를 베이스로 만들어졌다. 그렇다고 순수하게 Pascal이나 C가 아닌 그 툴에 맞게 수정된 언어다. 결국 별개의 언어라고 봐도 무방할 것이다. MS에서는 윈도에서 개발할 수 있도록 Visual C++, Visual Basic 등 Visual Studio 패키지를 제공한다. 그런데 Visual C++은 C++을 베이스로 만들어졌지만 순수한 C++은 아니다. MS가 윈도용 프로그램 개발을 쉽게 하기 위해 표준 라이브러리 이외의 MFC나 Win32 API등의 라이브러리를 더 제공하고 표준 라이브러리도 제공하지만 자기들이 제공하는 라이브러리에 더 우선권을 줘서 개발하도록 유도한다. 그래서 개발자들은 Visual C++은 C++로 보지 않고 또 다른 언어로 취급한다. Visual Basic도 마찬가지다. 아니, 더 심하다. 우리가 알고 있는 표준 Basic을 무시한 체 자기들만의 Basic을 만들어서 배포하고 있다. 즉, 완전히 다른 언어다. Delphi나 Power Builder도 마찬가지다. Boland에서 제공하는 윈도용 프로그램 개발 툴인 Delphi는 Pascal을 베이스로 만들어졌다. 엄밀히 얘기하면 Boland의 Turbo Pascal의 윈도 버전이라고 할 수 있다. DOS 환경에서 윈도로 넘어가면서 역시나 MS처럼 표준 라이브러리 이외에 Boland만의 라이브러리를 제공하고 표준 라이브러리보다 우선권을 더 줘서 개발하도록 유도한다. 게다가 Pascal의 문법에서 약간 더 변형을 취다. 그렇기 때문에 Delphi는 Pascal 형식을 취하고는 있지만 정상적인 Pascal이 아닌 변형 Pascal, 아예 다른 언어라고 할 수도 있을 것이다. Sybase에서 제공하는 Power Builder도 마찬가지다. C언어를 기준으로 만들어졌지만 형식만 C언어를 취했을 뿐 표준 C 라이브러리는 사용하지 않고 Sybase에서 만든 라이브러리를 사용하도록 하고 있다. 즉, Delphi, Visual C++과 같이 Power Builder도 완전 다른 언어라고 볼 수 있다.

그런데 이런 것이 중요한 것이 아니다. 회사 입장에서는 어찌되었던 빠른 시간에 빠른 결과물을 보이기를 원하며 그것은 어떤 툴(솔직히 Visual C++이나 Delphi나 Power Builder는 프로그래밍 언어가 아니라 개발 툴이다)을 사용해서던지 기간 안에 만들면 되는 것이다. 그래서 어떤 개발 툴을 이용해야 빠른 시간 안에 퍼포먼스를 최상으로 유지하며 개발할 수 있는가에 대해 많은 논의가 이루어졌다. 알다시피 윈도라는 운영체제가 나오면서 MS는 Visual C++, Visual Basic을 선보인다. 그런데 생각보다 개발이 어렵고 퍼포먼스가 안나왔다. 그래서 더 괜찮은 윈도용 개발 툴을 찾기 시작했고 서드파티 프로그램인 Delphi와 Power Builder가 각광을 받기 시작했다. 원래 Delphi는 윈도에서 프로그램과 데이터베이스의 연동을 원활하게 하기 위해 만든 툴이다. 즉, DB처리 쪽에 더 특화된 개발 툴인 것이다. 거기에 UI 처리 부분이 더 추가되면서 지금의 모습을 갖추게 되었다. Power Builder 역시 DB처리 쪽으로 특화된 개발 툴이다. Visual C++이나 Visual Basic이 DB처리 부분이 약하고 Oracle과 같은 MS에서 만든 DB가 아닌 타 DB에는 잘 연동이 안되는 단점을 커버하고자 나온 개발 툴들이 Delphi, Power Builder다. 그런데 요즘은 윈도용 프로그램을 만드는데 Visual C++이나 Visual Basic보다 Delphi, Power Builder를 더 많이 사용하고 있는 상황이다. 그래서 지금은 Visual Basic은 사장되다시피 되고 Visual C++은 윈도용 시스템 프로그래밍쪽에 활용되고 윈도용 어플리케이션에는 주로 Delphi나 Power Builder를 사용하는 추세다. 아무래도 시스템쪽은 윈도를 만든 MS에서 제공하는 Visual C++이 더 접근하기 용이해서 그런게 아닐까 싶다. 여하튼 많은 윈도용 프로그램 개발자들은 어플리케이션 개발자들은 Delphi나 Power Builder를, 윈도 서비스 등을 만드는 시스템 프로그램 개발자들은 Visual C++을 사용하고 있다.

일단 윈도에서 사용하고 있는 툴들에 대해서 좀 적어봤다. 각 개발 툴들은 C, C++, Pascal이라는 프로그램 언어를 베이스로 윈도라는 운영체제에 맞춰서 변형되어 개발되었다. 어떤 툴을 사용하던지 윈도용 프로그램을 개발하는 데에는 문제는 없겠다만 어떤 용도의 프로그램을 만드느냐에 따라서 사용하는 툴이 달라질 것이다. 아니면 어떤 회사에 들어가서 일하느냐에 따라서 어떤 개발 툴을 사용할 것인지가 결정될 듯 하다.

그런데. 내가 뭐 때문에 이 글을 쓴거지? 원래는 어떤 언어를 선택해야 오랫동안 프로그래머 생활을 할 수 있을까 생각할려고 한건데 엉뚱한 글이 나왔다. 뭐 그냥 이대로 결론짓고 내가 원래 생각했던 글은 추후에 다시 정리해서 써야겠다(뭐야~).

ps) 앞에 있었던 나와 A라는 사람의 대화는 이 글의 성격상 너무 안맞아서 삭제했다. 내 생각을 좀 더 정리해서 다시 써볼까 한다.
이 블로그에서는 나눔글꼴을 사용하고 있습니다. 제대로 즐기실려면 글꼴을 설치해서 보세요. ^^

댓글을 달아 주세요

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

    큭;; 갑자기 찔리내요 -_-;; 어디서 많이 본 내용..인데.위에부분이..ㅋㅋ
    여하튼 좋은 이야기 잘 들었어요. 역시 개발자들 입장에서는 개발하는대 걸리는 시간과 결과물의 얼마나 잘 구현 하는가에 초점이 마쳐져야 되는거 갔습니다. 고급인력을 어떻게 효율적으로 활용해야 회사에 이익이 될까..ㅡㅡ;; 월래 프로그래머나 디자이너 같은경우는 시간이 돈이거든요.. 빨리만들면 그만큼 회사에서 돈을 많이 번다 그러나 -_-;; 정작 나에게 떨어지는돈은 똫갔다;; 그게 가장 문제점 인듯 하내요..

    2007/04/26 20:07
    • BlogIcon 학주니  수정/삭제

      뭐 찔리실꺼까지야. ^^;
      그저 제 생각을 적어본거 뿐입니다. ^^;
      글고 글의 전개가 이상해서 다시 수정해서 적을 생각입니다. ^^;

      2007/04/27 06:03
  2. BlogIcon 백쉰  수정/삭제  댓글쓰기

    잘읽구 갑니당..^^

    2007/04/27 07:28
  3. JEHOVAHNISSI  수정/삭제  댓글쓰기

    그렇습니다.
    앞의분이 언급하였드시 기업 속의 시간은 돈입니다. 그래서 오너들은 짧은 시간에 고액을 만드는 사원을 선호합니다. 프로그램 언어에 대해서는 사용자에 따라서 다 장단점이 있겠지만 자기 필요에 따라 적절히 사용하는 센스(?)가 중요하다고 생각합니다. 미국에서 중국사람을 만났는데 중국어를아는 사람이라면 궂이 영어를 고집 할 필요가 있을가요? 기업은 지름 길을 원합니다. 마음에 안들지 모르나 ***급여 X 2/160시간으로 나누면, 시간 당 그 사람의 가격이 나오지요(이때 곱하기2는 필수입니다). 그래서 기업에서의 시간은 돈이 되는 것입니다.
    부디 시간당 GRADE를 올리기위해 비능율적인 프로그램에 아까운 시간을 소모하시지 않는 프로그래머가 되시기를...

    2007/04/27 11:12
    • BlogIcon 학주니  수정/삭제

      위에서 언급한 툴들은 대부분 쓰임새가 비슷합니다.
      어떤 것을 써도 무방할듯 해 보이기도 합니다.
      다만 선호하는 툴들이 있는듯 하고 그게 회사에 따라 다 다르기 때문에 여러가지를 한꺼번에 하는 것에 힘이 드는 거겠지요.
      오랫동안 사용했던 툴은 그 들인 시간만큼 효능을 발휘하는 거 같습니다.
      다만 툴에 의존하는 프로그래밍은 아무래도 그 폭이 좁아지지 않을까 하는 생각에서 저 글을 써봤습니다.

      2007/04/27 13:06
  4. BlogIcon 내다  수정/삭제  댓글쓰기

    다시~바꿨구먼~어두워졌어..

    2007/04/27 11:49
  5. BlogIcon niss  수정/삭제  댓글쓰기

    블로그가 괜찮아 졌어요 기존에 흰색 글자 바탕대신 어두운색 개통. 매력있는대요.ㅎㅎ

    2007/04/27 17:04
    • BlogIcon 학주니  수정/삭제

      감사합니다. ^^;
      저도 이 스킨을 오랫동안 쓰고 싶네요. ^^;

      2007/04/27 17:28





카테고리

학주니의 생각 (989)
IT Topics (846)
Current Topics (96)
Personal Story (34)
Picture (11)
  • 1,293,595
  • 1,28711,495
Tatter & Media Tistory get rss
위자드닷컴 추천블로그 | 학주니닷컴

학주니닷컴

학주니's Blog is powered by Tattertools / Supported by Tatter & Media
Copyright by 학주니 [ http://www.ringblog.com ]. All rights reserved.

Tattertools Tatter & Media DesignMyself!
학주니's Blog is powered by Textcube. Designed by Qwer999. Supported by Tatter & Media.