'델파이'에 해당되는 글 2건

  1. 2008.11.16 개발방식의 모습에서 본 C#과 RAD 툴 이야기. 8
  2. 2007.09.04 첫 델파이 프로그램 4
Study - Programming/C#2008. 11. 16. 14:46

※이 글은 본인의 지극히 얄팍한 지식과 경험을 통해서 생각한 주관적인 글입니다. 이 포스팅의 기술적인 내용은 본인의 지식에서 나온 것이라 실제와 다를 가능성도 있습니다. 이에 대한 수정과 비판은 환영이나 비난은 자제해 주시면 감사하겠습니다.


  내가 처음 프로그래밍이란 것을 접한건 초등학교 3학년때 Visual Basic 5.0을 통해서였다. 일반적으로 프로그래밍을 배울 때는 C같은 언어를 통해서 변수,루프,함수 같은 기본 문법을 배우고 거기서 세세한 사항 및 기술 등을 배우고 다른 언어로 넘어가던지 윈도우 프로그래밍 같은걸 배우던지 할텐데, 난 바로 윈도우 프로그래밍부터 시작하다 보니 기본적인 문법 같은것도 대충 대충배우고 그랬었다.(C를 조금 하긴 했었지만 그때도 포인터나 구조체같은건 신경도 안썼다. 결정적으로 그런 개념들에 대한 중요성을 인식하지 못했었다. 독학이다 보니.) 실제로 함수 등의 문법 사항을 이해하기 시작한건 본격적으로 C를 공부하기 시작한 대학 1학년때 미친듯이 프로그래밍 공부 할 때였다.
  아무튼 이런식으로 약간 역순(말은 이렇지만 역순이라고는 생각하지 않는다. 대세가 위의 방식이지 내 방식이 정석이 아니다 뭐다 그런건 없다는 것이 본인의 생각이다.)으로 배우다 보니 편리한 RAD방식에서 딱딱한 콘솔 기반의 프로그래밍 그리고 거기서 윈도우 프로그래밍으로 넘어갈 때는 정말 힘들었었다. 그리고 좀더 편리한 방식이 없나 종종 생각하기도 했다. VB의 편리함은 충분히 좋은 장점이지만 그에 비해 언어적 약점이 많이 아쉬웠다. 그리고 C나 C++, JAVA같은 언어는 강력한 언어적 지원과 갈수록 좋은 개발환경을 제공해 주었지만 역시 VB의 편리함과 비교해서는 아쉬운 점이 많았다.
  그러다 접한 것이 C#이다. C#은 위 두가지의 장단점을 잘 조합한 좋은 언어라고 생각한다. 엄청나게 강력한 언어적 기능 그리고 윈폼을 활용한 강력한 개발 환경. 분명 기존 언어들과 비교해서 한발자국 나가긴 나간 언어이다. 예전에 RAD툴 관련 글들을 보면서 현재는 VB 등의 RAD툴이 강력한 생산성에도 불구하고 부실한 언어적 기능 때문에 빛을 못받고 있지만 갈수록 RAD툴은 대세가 될 것이라는 글을 많이 봤다. C#은 이 말이 실현되고 있음을 보여 주는 한가지 예라고 할 수 있다. 
  그러나 이 C#도 치명적인 약점이 있다. 바로 .NET Framework라는 것. 조그마한 프로그램을 만들었는데도 20MB 가까이 되는 .NET Framework 을 설치해야 한다는 것과 이것이 현재 닷넷의 큰 약점 중의 하나라는 것은 잘 알려진 사실이다.  .NET Framework위에서 돌아가는 방식은 분명 장점도 있겠지만 현재는 이 배보다 배꼽이 큰 문제가 심각할 수밖에 없다. Windows XP가 보급되기 전에 이 .NET Framework가 좀더 기반을 다지고 Windows XP에 .NET Framework가 함께 나왔다면 어떻게 되었을지 모르겠지만 현재로서는 아무리 Windows Vista에 이것을 넣고 Windows Update에 추가하고 하더라도 충분히 보급되기까지는 상당한 시간이 걸릴 것이다.
  그리고 Microsoft에서 만들다 보니 강력한 기능에도 불구하고 .NET Framework가 Windows기반에서만 돌아갈 수 있는 불상사(?)가 발생하여 JAVA와 비교해 아직은 부족하다.(Mono가 있지만 이것이 완전한 .NET Framwork라고 할 수 있을까?)
  이런 C#의 약점을 가지고 있지 않은 다른 언어는 없을까? 최근에 2009버전이 나온 Delphi가 있겠다. 어떠한 프레임워크 위에서 돌아가지 않으면서도 엄청나게 편리한 개발 환경과 최근 2009버전에서도 나타나는 강력한 언어적 기능 그리고 C,C++같은 어느 특정한 곳에서 독점하지 않는 것이 아니라 한 기업에서 독자적으로 밀고 있는 방식이라 그 발전 가능성과 발전 속도도 상당히 높다고 할 수 있다. 그러나 이 Delphi도 왠지 모를 비인기(상대적인 이야기이다.)와 처음 접하는 개발자는 좀 거북할 수 있는 문법 그리고 Windows개발쪽에서만 나타나는 강력함에서 완전하다고는 이야기 할 수 없다.
  아직까지는 RAD툴이 개발 방식의 대세라고는 이야기 할 수 없겠다. 그러나 언젠가는 이런 방식이 주류가 될 것이라고 난 믿는다. 완전하지는 않지만 분명 변화는 일고 있다. 강력한 언어 위의 강력한 개발 환경. 그런 변화가 언제쯤이면 일어날까 기대하며 이 글을 마친다.
Posted by 머리
오늘 드디어 델파이를 깔았다.

다른 언어 같았으면 그냥 바로 문법 조금 보고 실전 해보고 했겠지만..

도서관에 볼만한 델파이 문법서가 잘 없더라. 그나마 골랐던것도 좀 난해한 느낌이 있다고 할까? 그래서 그냥 깔자마자 아무거나 만들어봤다.

그 아무거나가 바로 Hello, World!프로그램. 뭐 프로그래밍 맨 처음할때의 필수 프로그램이라고 할까? 비주얼 베이직 맨 처음 배운다는 마음으로 이것 저것 만져 보면서 한번 간단히 만들어 보았다.

솔직히 말해서 이거 만드는데 5분 걸리더라.. 여기 저기서 VB의 어떤건 Delphi에서 어디고 이런거 비교해 본다고..

자 일단 스샷.
사용자 삽입 이미지

간단하다. 코드 자체는 매우 쉽다. 당연한 말인가.. 그냥 옛날로 돌아가보자 하는 마음에서 심심풀이삼아 해봤음.

폼을 잘 보면 단순히 에디트 박스랑 버튼 달랑 붙여놓은게 아니라 이것 저것 다듬은 것들이 좀 보일 것이다. 우선 폼의 크기도 작게 수정했고, 버튼의 캡션도 바꾸어 보았다. 그리고 텍스트 박스의 글꼴도 설정해 보았고, 폼 제목 표시줄도 바꾸어 보았다. 하는건 쉽지만 그냥 델파이의 속성창이 어떻게 생겨먹은 것인가 한번 알아보려고 만져 보았다. 

  VB의 속성창과 비교해보면 우선 VB는 기본적으로 속성창이 오른쪽에 있지만 델파이는 오른쪽에 있었고, 정렬 방식이 VB는 기능순이지만 델파이는 이름순이다. 뭐 이건 모두 바꾸는게 가능하다. 지원 기능면에서는 델파이가 훨씬 많은 것들을 지원했다. VB .NET과는 비교를 안해 보았지만, VB에서 API를 써야 하는 기능들이 델파이에서 속성 창만으로 꾸밀 수 있는 것들이 많았다.

  기본 컨트롤의 수도 델파이가 많았다. VB에서 공용컨트롤을 등록 해야 했던 것들이 기본적으로 지원 되더라.

  이렇게 이야기하면 델파이가 훨씬 강력한 것처럼 보이겠지만 그런 이야기는 아니다. 아직까지는 나는 VB가 훨씬 편하고, 그 많은 기능들도 꼭 필요한 기능같은건 아니니까. 원한다면 VB에서도 충분히 구현 가능하고.

  VB랑 델파이랑 비교해 보면서 가장 델파이에서 아쉬웠던 점은 변수 선언 방식과 한글 지원의 부족이였다. 타 언어와 비교해서 델파이는 변수 선언이 좀 까다로워 보이더라. 아직 익숙하지 않아서 그렇겠지만. 예를 들어 폼 로드 프로시저에 지역 변수를 선언하기 위해 폼을 더블클릭 하면 코드 창의 커서는 begin과 end 사이에 있다. 변수를 넣으려면 커서를 옮겨서 var을 적어 줘야 하는 불편함이 있었다. 이런 것들은 약간 불편함이 있었다.
  그리고 한글지원이 좀 많이 아쉬웠다. 한글화를 원하는건 아니지만, VB의 향수가 있어서 그런가, VB를 사용하는 느낌이면서 영문이라 좀 어색하다는 느낌이 많이 있었다. 거기다 한글 변수를 테스트 해 보았는데 역시 안되더라. 좀 아쉬웠다. 두개의 아예 다른 툴을 비교한다는 것 자체가 옳지 않은 일이지만, 아무래도 VB를 10년 넘게 사용하다 보니 이렇다.
  아무튼, 장난스럽게 델파이를 체험해 보았다. 기능 자체는 매우 강력하다는 느낌을 많이 들었다. 한번 공부해볼만한 가치는 충분히 있었다.
Posted by 머리