인턴을 하면서 스스로 공부하고, 회사에서 배운 델파이 관련 내용과
개인적으로 느낀 점을 정리하고자 쓴 게시글 입니다.
여름 방학 때는 정말 기본적인 개념들을 배우고(SQL, 네트워크 개념)
회사에서 사용하는 델파이를 가볍게 맛만 봤다면, (사실 겉을 핥지도 못한 수준이었다)
이번 겨울 방학 때는 본격적으로 델파이를 배우기 시작했다.
델파이를 배우기 전에 학교에서 자바를 수강한 건 정말 신의 한수였다.
자바를 공부한 덕분에 GUI에 대한 기본적인 구현 방법을 알 수 있었다.
(컴포넌트의 개념, 이벤트의 개념, 이벤트 처리 등등)
여름 방학때는 이런 것을 전혀 모르고 설명을 듣다보니 와닿지가 않았는데,
공부하고 다시 들으니 이해가 매우 잘 됐다.
자바를 배울 때는 코딩만을 사용해서 윈도우 창을 디자인하고 컴포넌트를 배치했었다.
그러나 인턴하기 전 2주동안 공부한 안드로이드에서
레이아웃 xml파일과 xml파일에 배치된 컴포넌트의 기능을 구현하는 java 소스파일을 따로 관리하는 모습을 보았다.
덕분에 델파이에서 안드로이드의 레이아웃 xml에 해당하는 폼파일(*.dfm)과
안드로이드의 java 소스파일에 해당하는 파스 파일(*.pas)의 구분이 자연스러웠고, 이해가 잘 됐다.
(다만 어떤식으로 이 둘이 연결되는지는 아직 모르겠다)
그러나 여전히 델파이라는 프로그램 자체가 익숙하지가 않아서 스스로 공부하려고 사이트를 찾아본 결과
https://opentutorials.org/course/3108/19309
무려 한국어로 된, 델파이 프로그래밍 강좌 사이트를 찾을 수 있었다.
(델파이는 파이썬, 자바같은 유명 언어보다 한국어 정보가 적은 편이다..)
따라서 해당 내용으로부터 학습한 내용, 회사에서 배운 내용을 토대로
나름대로 이해한 내용을 정리해서 적어보고자 한다.
델파이 프로젝트의 종류는 크게 3가지로 구분한다.
VCL 프로젝트, FMX 프로젝트, 콘솔 프로젝트
VCL은 Visual Component Library의 약자이다.
비주얼 컴포넌트라고 하면 그냥 UI(User Interface)로 이해했다.
그냥 이런 뒤로가기 버튼, 검색 입력창 등등등
내가 일하고 있는 회사에서는 이 VCL 프로젝트 형태로 소프트웨어를 개발하고 배포한다.
이 프로젝트 형태로 만드는 소프트웨어는 윈도우 폼 형태의 프로그램이다.
(윈도우 폼 = 그냥 평소 컴퓨터에서 보는 윈도우 모양 네모네모 창으로 이해했다.)
FMX 프로젝트는 윈도우, MAC, 안드로이드 등 여러 플랫폼에서 쓸 수 있게 개발하는 프로젝트로 이해했고
콘솔 프로젝트는, 말 그대로 검은 도스창에서 작동하는 유저 인터페이스가 없는 프로그램으로 이해했다.
이 프로젝트 파일을 열어보면 크게 다음과 같은 확장자를 갖는 파일로 구성된다.
.dfm => 컴포넌트의 배치, 크기, 속성 등에 대한 정보가 들어있는 파일이다.
보통은 이미지로 보인다.
이런 식의 익숙한 UI를 눈으로 직접 보고, 배치할 수 있다.
.pas => 컴포넌트를 클릭하면 무슨 기능을 수행할지, 코딩된 소스가 들어있는 파일이다.
위 이미지 같은 경우, 저 돋보기 버튼을 누르면 읍/면/동을 검색할 수 있는 창을 띄우는 등의 액션을 취햘 것이다.
.dpr => 프로젝트는 여러개의 dfm-pas 파일 쌍으로 구성되어있다.
그 밖에도 다른 파일들이 물론 있으나, 그 모든 파일을 합쳐서 하나의 프로젝트로 구성한다.
.dproj => 프로젝트마다 구체적으로 설정을 지정해줄 수 있다.
이 프로젝트로 실행되는 프로그램의 아이콘은 어떤걸로 하고, 버전은 1.0인지 2.0인지 설정해주고..
그런 설정들을 같이 저장한 프로젝트 파일로 이해했다.
.dcu => 델파이는 컴파일한 결과를 dcu파일로 만들어서 갖고 있는다.
이 유닛을 가지고 실행파일(.exe)을 만든다고 이해했다.
다음 포스팅에서는 델파이 소스파일의 구조를 정리해보고자 한다.
'인턴 > 델파이' 카테고리의 다른 글
[델파이] 2. 델파이 소스파일의 구성 (0) | 2021.02.18 |
---|---|
[프로젝트] 자동 메일 송신 프로세스 만들기(1) (0) | 2021.02.08 |
[델파이 DB조작 예제] 3. Banded Table 사용해보기 (0) | 2020.08.28 |
[델파이 DB조작 예제] 2. DB 데이터 조작하기 (0) | 2020.08.28 |
[델파이 DB조작 예제] 1. DB서버에 연결해서 데이터 출력하기 (0) | 2020.08.28 |