Difference between revisions of "Overview of Free Pascal and Lazarus/ko"

From Lazarus wiki
Jump to navigationJump to search
Line 12: Line 12:
 
=== 콘솔 어플리케이션 ===
 
=== 콘솔 어플리케이션 ===
  
Console apps don't have a GUI. Instead they are usually launched from the console, read their input from the console, and write their output to the console. In Windows the console is usually referred to as a command prompt window. In OS X and Linux the console is referred to as a terminal window. Console apps include things like small utilities such as the Windows FC (file compare) program or the Unix cd and cp commands. Console apps can also be powerful number crunching, modeling, or data processing programs that don't need a fancy GUI because they're started by other programs or from batch files (or shell scripts on unix/linux). The Free Pascal compiler and the utility programs included with it are all console apps, meaning they can be run from the console, a batch file, or from the Lazarus IDE.
+
콘솔 어플리케이션은 GUI를 가지지 않습니다. 대신 일반적으로 콘솔상에서 실행되고 입력과 출력 모두 콘솔에서 이루어지게 됩니다. 콘솔은 윈도우즈 에서 보통 '''커맨드 프롬프트 윈도''' 라고 불리며 OS X나 리눅스에서는 터미널 윈도라고 불립니다. 콘솔 어플리케이션으로는 윈도우즈의 FC(파일비교:file compare)나 유닉스의 cd, cp같은 작은 유틸리티를 예로 들 수 있습니다. 콘솔 어플리케이션은 GUI가 없지만 다른 프로그램이나 배치파일 (유닉스/리눅스에서는 셸 스크립트) 에서 실행될 수 있는 강력한 처리 계통 입니다. 프리 파스칼 컴파일러 및 함께 포함된 유틸리티들은 모두 콘솔 프로그램이며 따라서 콘솔이나 배치파일, 또는 라자루스 IDE 내에서 실행시킬 수 있습니다.  
  
You can create a console app with no more than a text editor and the Free Pascal compiler. You don't have to use Lazarus to develop console apps. However, if you prefer to work in an integrated environment, you can use Lazarus to create a project for the console app and then edit and compile the code in the Lazarus IDE.
+
콘솔 어플리케이션은 간단한 텍스트 에디터와 프리 파스칼 컴파일러 만으로도 개발할 수 있으며 굳이 라자루스를 사용할 필요는 없습니다. 그러나 라자루스 IDE 상에서 콘솔 어플리케이션을 작성한다면 보다 쉽게 소스 코드를 편집하고 컴파일을 할 수 있습니다.
  
 
=== 동적 라이브러리 ===
 
=== 동적 라이브러리 ===

Revision as of 13:50, 25 November 2008

Deutsch (de) English (en) español (es) suomi (fi) français (fr) magyar (hu) Bahasa Indonesia (id) italiano (it) 日本語 (ja) 한국어 (ko) polski (pl) português (pt) русский (ru) slovenčina (sk) 中文(中国大陆)‎ (zh_CN) 中文(台灣)‎ (zh_TW)

프리 파스칼(FPC)은 두 개의 큰 특징을 가진 오픈 소스 파스칼 컴파일러 입니다. 첫번째는 델파이와의 호환성입니다. 또 하나는 다중 플랫폼에 대한 지원으로서 현재 윈도우즈, 맥 OS X, 리눅스에서 사용할 수 있습니다. 프리 파스칼은, 델파이에서 확장된 오브젝트 파스칼 프로그래밍 언어를 지원하는 것 뿐만 아니라, 델파이에서 쓸 수 있는 강력한 기능의 라이브러리나 클래스도 함께 이용할 수 있습니다. 델파이 사용자에게 잘 알려져 있는 System, SysUtils, StrUtils, DateUtils, Classes, Variants, Math, IniFiles 그리고 Registry 등의 유니트도 있습니다. 또한 이것들은 프리 파스킬이 동작하는 모든 플랫폼 상에서 동작 합니다. 그 외에도 프리 파스칼에는 Windows, ShellAPI, BaseUnix, Unix, 그리고 DynLibs 처럼 특정 운영체제를 위한 유니트들도 준비되어 있습니다. 프리 파스칼 런타임 라이브러리(RTL)는 이 유니트들을 모아놓은 커다란 라이브러리 입니다.

라자루스는 프리 파스칼용 통합 개발 환경(IDE)을 제공하는 오픈 소스 프로젝트 입니다. 프리 파스칼로 개발 되었으며, 문법 강조가 가능한 코드 에디터와 직관적인 폼 디자이너를 가지고 있습니다. 라자루스가 사용하는 라자루스 컴포넌트 라이브러리(LCL) 은 델파이의 비주얼 컴포넌트 라이브러리(VLC) 과 높은 호환성을 가지고 있으며 VCL 컨트롤과 마찬가지로 폼이나 버튼, 텍스트박스등이 있습니다. 이 컨트롤들을 적절하게 배치하여 그래픽 사용자 인터페이스(GUI)를 가지는 어플리케이션을 작성할 수 있습니다.

프리 파스칼과 라자루스는 파스칼 코드로 작성 되어 있습니다. 프리 파스칼 컴파일러와 라자루스 뿐 아니라 RTL 이나 LCL의 모든 유니트들은 소스 코드가 완전히 공개되어 있습니다.

프리 파스칼과 라자루스는 델파이와 마찬가지로 일반적인 프로그래밍 툴 입니다. 이 의미는 다음과 같은 폭 넓고 다양한 프로그램을 개발하는 데 사용할 수 있다는 의미 입니다.


콘솔 어플리케이션

콘솔 어플리케이션은 GUI를 가지지 않습니다. 대신 일반적으로 콘솔상에서 실행되고 입력과 출력 모두 콘솔에서 이루어지게 됩니다. 콘솔은 윈도우즈 에서 보통 커맨드 프롬프트 윈도 라고 불리며 OS X나 리눅스에서는 터미널 윈도라고 불립니다. 콘솔 어플리케이션으로는 윈도우즈의 FC(파일비교:file compare)나 유닉스의 cd, cp같은 작은 유틸리티를 예로 들 수 있습니다. 콘솔 어플리케이션은 GUI가 없지만 다른 프로그램이나 배치파일 (유닉스/리눅스에서는 셸 스크립트) 에서 실행될 수 있는 강력한 처리 계통 입니다. 프리 파스칼 컴파일러 및 함께 포함된 유틸리티들은 모두 콘솔 프로그램이며 따라서 콘솔이나 배치파일, 또는 라자루스 IDE 내에서 실행시킬 수 있습니다.

콘솔 어플리케이션은 간단한 텍스트 에디터와 프리 파스칼 컴파일러 만으로도 개발할 수 있으며 굳이 라자루스를 사용할 필요는 없습니다. 그러나 라자루스 IDE 상에서 콘솔 어플리케이션을 작성한다면 보다 쉽게 소스 코드를 편집하고 컴파일을 할 수 있습니다.

동적 라이브러리

A dynamically loadable library is usually a collection of compiled functions that can be called by other programs. As the name suggests, the library is not linked into your executable at compile-time, but instead is loaded at run-time. In Windows, a library file has a .dll extension (dynamic-link library, or DLL). In OS X, a library file has a .dylib extension (dynamic shared library). In Linux, a library file has an .so extension (shared object library). Dynamically loadable libraries are typically used to develop add-ons for other programs, to develop libraries that can be called by programs written in other languages such as C and C++, or to partition large projects into chunks so that the project's developers don't step on each other's toes. Windows itself is made up of hundreds of DLLs, as are many other large applications such as OpenOffice.org.

Like console apps, you only need a text editor and the Free Pascal compiler to develop a library, although you can also create a Lazarus project for the library and develop the library in the Lazarus IDE.

On Windows, DLLs have an undeserved reputation for being overly complex and unstable. This has more to do with the way they've sometimes been installed than it does with DLLs themselves. Actually, since passing information to and from DLLs is normally done with standard, simple data types (rather than with language-specific objects or structures), this requirement forces programmers to pay more attention to what they're doing. If done right, this can result in better, more stable programs.

GUI 어플리케이션

Most of the programs we use daily are GUI apps, including word processors, Web browsers, spreadsheet programs, even many development tools. Lazarus and Delphi are both good examples of full-featured GUI apps. When developing a GUI app with Lazarus, not only do you develop units of Pascal code, you also design forms containing visual controls such as buttons and list boxes. Like Delphi, form design in Lazarus is done visually. Control properties can be set in the IDE or in code.

Since the LCL controls are available on all supported platforms, a GUI app developed on one platform (for example, Windows) can be compiled on another platform (for example, OS X or Linux) without any changes to the form design or the form code files.