FreePascal Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
FreePacal 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

FreePascal 팁&트릭
[4] lazarus에 관한 약간의 소식(pocketpc)
김재구 [knis001] 6003 읽음    2008-07-23 02:01
ceEmul.jpg 43.8KB pocketpc 에뮬
기존의 프로그램을 윈도모바일로 컨버전할 필요성이 있어서 개발툴을 여러가지로 살펴보았습니다.
MSVC2005 로 C#컨버전을 먼저 생각했었는데.. 프로토타입버전을 돌려보니 생각외로 너무 느리더군요.
그래서 포기!

그 다음으로 C++로 코어부분을 DLL로 사용하고 C#으로 UI를 구성할까 생각했는데, 예전에 잠깐 사용하였던
MFC를 보다보니 가슴속 깊은 곳에서 울화가 치밀어올라 이건 아니다 싶은 겁니다.
그래도 멀티플랫폼 대응으로 개발하려는데 윈도의 구닥다리 프레임에 다시 갇히는 것이 짜증나더군요.

그러다가 예전에 보았던 lazarus가 생각나서 최신버전을 살펴보게 되었습니다.
결론부터 말하면 아직은 좀 아쉬운 단계라는 겁니다.

라자루스가 이제는 유니코드를 지원하면서 상당히 업그레이드 되었습니다.  win32개발로만 보자면
델파이를 많이 추격해가는 양상입니다. 혹자는 DevExprress 콤포넌트만 사용할 수있다면,
델파이를 앞으로 쓰지 않겠다고 얘기하는 사람도 있더군요. DB쪽 부분도 많이 보완이되어서 기본으로
dbf,mysql,sqlite,odbc,firebird 등을 지원합니다. 델파이에 비해 UI콤포넌트가 부족한 편이지만,
jedi 콤포넌트를 포팅작업중이라고 하니 기대할 만합니다. 이미 JVCL의 XPBar정도는 어느사람이
라자루스용으로 벌써 패키징해놨더군요. FreeReport를 포팅한 리포트 콤포넌트도 있구요.

VCL에 대응하는 라자루스의 라이브러리가 LCL인데 플랫폼에 모두 공통인 추상클래스를 미리
정의해놓고 구체적인 플랫폼마다 gtk버전,qt버전,맥os(carbon,cocoa),win32/wince 대응으로
각각의 인터페이스 UI를 만들어가는 구조입니다.

이 중에 wince용 인터페이스를 사용해서 테스트 프로그램을 짜보았는데.. 흠.. 한글입력에 아직
문제가 있습니다. 출력은 잘 되는 것같습니다. 스크린샷에서 나오는 db그리드 콤포넌트에서
보는 바와같이 한글텍스트출력은 문제가 없었습니다.  문제는 키보드입력에서 생깁니다. 문자생성중에는
한글이 제대로 표시되는데 한글자가 완성된후 포커스가 이동되면서 문자가 깨지더군요.
추측컨데 오로지 unicode(utf16)만을 지원하는 wince 인터페이스 상당부분이 예전의 ANSI를 기반으로 짜여진 win32 인터페이스 소스를 원용한데서 오는 문제인것 같습니다. 순전히 추측입니다.

mdb같이 쓸수 있는 로컬DB로 sqlite가 적격이더군요. 테스트프로그램이 바로 sqlite3를 이용한 것입니다.
현재 lazarus 버전이 0.95인데 0.96버전에서 상당부분 wince인터페이스 부분에서 개선이 있을것이라고
하더군요. 유니코드 부분 포함해서요. 그때 되면 다시 한번 살펴보아야하겠습니다.

코어부분 개발로 mfc를 대체할 만한 것을 발굴(?)해 내서 무척 기쁩니다^^
핵심부분을 fpc로 dll을 작성하고 닷넷CF상의 c#에서 UI를 개발하는 것이 현재로서는 가장 타당한 방식일 것같습니다.

+ -

관련 글 리스트
4 lazarus에 관한 약간의 소식(pocketpc) 김재구 6003 2008/07/23
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.