이 Codelab에서는 브라우저에서 실행할 수 있는 대화형 편집기를 사용하여 Kotlin 언어로 첫 프로그램을 작성합니다.
프로그램[LINK] 은 시스템에서 작업을 실행하기 위한 일련의 안내라고 생각하면 됩니다. 예를 들어 생일 카드를 만드는 프로그램을 작성할 수 있습니다. 이 프로그램에서는 축하 문구를 인쇄하거나 출생 연도로 나이를 계산하는 명령을 작성할 수 있습니다.
인간이 언어를 사용하여 다른 사람과 소통하는 것처럼, 컴퓨터의 운영체제와 통신하는 데는 프로그래밍 언어를 사용합니다. 다행히 프로그래밍 언어는 인간 언어보다 덜 복잡하며 상당히 논리적입니다.
Android 앱은 Kotlin 프로그래밍 언어로 작성됩니다. Kotlin은 개발자가 코드를 효율적으로 작성하고 오류를 최소화할 수 있도록 제작된 최신 언어입니다.
앱을 만드는 방법과 프로그래밍의 기초를 동시에 학습하기에는 어려움이 있으므로 앱 제작 방법을 알아보기 전에 프로그래밍을 간단히 살펴보겠습니다. 먼저 프로그래밍의 기초를 숙지하는 것은 앱 제작을 위한 중요한 단계일뿐 아니라 이 과정의 후반부에서 제작하게 될 첫 번째 앱도 훨씬 더 수월하게 만들 수 있습니다.
코드 편집기는 워드 프로세서(예: Google 문서)로 텍스트 문서를 작성할 때와 같은 방식으로 코드를 작성할 수 있게 해 주는 도구입니다. 이 Codelab에서는 브라우저 내의 대화형 Kotlin 편집기를 사용합니다. 따라서 별도의 소프트웨어를 설치하지 않고도 앱 개발을 시작할 수 있습니다.
기본 요건
- 웹브라우저에서 대화형 웹사이트를 사용합니다.
과정 내용
- 메시지를 표시하는 간단한 Kotlin 프로그램을 생성, 변경, 이해, 실행하는 방법을 알아봅니다.
빌드할 프로그램
- 실행하면 메시지가 표시되는 프로그램을 Kotlin 프로그래밍 언어를 사용하여 빌드합니다.
필요한 항목
- 최신 버전의 Chrome과 같은 최신 웹브라우저가 설치된 컴퓨터가 필요합니다.
- 컴퓨터에서 인터넷 액세스가 가능해야 함
이 작업에서는 웹사이트의 편집기를 사용하여 바로 Kotlin 언어로 프로그래밍을 시작합니다.
대화형 코드 편집기 사용
컴퓨터에 소프트웨어를 설치하지 않고 웹 기반 도구를 사용하여 첫 프로그램을 제작할 수 있습니다.
- 브라우저에서 https://try.kotlinlang.org/를 엽니다. 그러면 브라우저 기반의 프로그래밍 도구가 열립니다.
- 아래의 스크린샷과 비슷한 페이지가 표시되고, 왼쪽에는 파일 목록이, 오른쪽에는 편집기가 있습니다. 오른쪽 하단에 쿠키 정책 정보와 함께 검은색 상자가 표시될 수도 있습니다.
경고: 이 사이트의 쿠키 정책에 동의하지 않으면 진행하지 마세요.
- 검은색 팝업 상자의 왼쪽 상단에 있는 X를 클릭하여 닫습니다.
- 아래의 주석이 달린 스크린샷을 참고하여 이 편집기의 방향을 선택하세요.
- (1) 상단의 학습, 커뮤니티, 온라인 사용해 보기 탭입니다. 아직 선택하지 않았다면 온라인 사용 탭을 클릭합니다.
- (2) 가장 왼쪽 창에 있는 파일 탐색기 이 목록의 모든 폴더에는 Kotlin 학습을 위한 작은 독립형 예제가 있습니다.
- (3) 오른쪽 창의 편집기에서 대부분의 작업을 코드로 작성합니다.
이 웹 기반 코드 편집기에는 다른 많은 기능이 있지만 시작하기 전에 알아두어야 할 기능이 있습니다.
샘플 코드 열기
- 파일 탐색기에서 아직 선택되지 않은 경우 Examples > Hello, world! > 가장 간단한 버전 > SimplestVersion.kt(아래 스크린샷에 1개 있음).
- 파일 이름 SimplestVersion.kt에서 .kt 파일 확장자 (아래 스크린샷의 1 참고)를 확인합니다. 이미지에
.jpg
또는.png
확장자가 있고 PDF에.pdf
확장자가 있는 것처럼 모든 Kotlin 파일에는.kt
확장자가 있어야 합니다. - 편집기에서 코드를 확인합니다 (아래 스크린샷 2). 일부 코드가 강조표시되어 있음 이러한 코드를 사용하여 작업하게 됩니다.
다음은 편집기에서 강조표시된 프로그램 코드입니다.
fun main(args: Array<String>) {
println("Hello, world!")
}
프로그램 코드 실행
제작한 프로그램을 실행하는 방법은 컴퓨터에서 워드 프로세서와 같은 프로그램을 실행하는 것과 크게 다르지 않습니다. 차이가 있다면 작업을 하거나 게임하기 위해 프로그램을 실행할 때 프로그램으로 할 수 있는 일에만 신경 쓰면 되며 프로그램을 작동하게 하는 코드에 대해서는 신경 쓰지 않아도 된다는 점입니다. 프로그래밍하는 동안 놀라운 결과물을 만들어내는 실제 코드를 직접 보며 작업할 수 있습니다.
이 프로그램의 기능을 알아보겠습니다.
- 편집기의 오른쪽 상단에서 녹색 삼각형
을 찾아 클릭하면 프로그램이 실행됩니다.
- 필요한 경우 편집기의 하단이 표시될 때까지 페이지에서 아래로 스크롤합니다 (아래 스크린샷의 1).
- 콘솔 탭을 클릭합니다. 콘솔은 프로그램에서 텍스트 출력을 인쇄할 수 있는 위치입니다.
Hello, world!
는 위의 스크린샷과 같이 Console 창에 출력됩니다. 이제 이 프로그램의 기능이 무엇인지 알게 되었습니다. Hello World 메시지가 Console 창에 출력되거나 출력됩니다.- 출력된
Hello, world!
위에Compilation complete successfully
메시지가 있는지 확인합니다. 컴파일은 Kotlin 프로그램 코드를 시스템에서 실행할 수 있는 형태로 변환하는 프로세스입니다. 컴파일이 성공적으로 완료되면 프로그램에서 코드가 실행되지 않는 오류가 발생하지 않습니다.
프로그램의 구성품
이 프로그램의 기능을 알아보았으니 이제 이 프로그램이 어떻게 작동하는지 살펴보겠습니다.
- 편집기에서 프로그램을 확인합니다.
- 이 코드에 두 개의 고유한 섹션이 있는 것을 볼 수 있습니다.
프로그램의 가장 중요한 부분:
/**
* We declare a package-level function main which returns Unit and takes
* an Array of strings as a parameter. Note that semicolons are optional.
*/
위의 코드 스니펫에서는 /*
및 */.
기호 안에 텍스트가 표시됩니다.
즉, 댓글, 즉 다른 개발자를 위한 정보가 포함된 메시지입니다. 프로그램을 실행하면 시스템에서 이 주석은 무시됩니다. 당분간은 이 댓글을 무시해도 됩니다. 주석에 관해서는 이후 Codelab에서 자세히 알아봅니다.
프로그램 하단:
fun main(args: Array<String>) {
println("Hello, world!")
}
이 세 줄의 코드는 메시지를 실행하고 출력하는 실제 프로그램입니다.
Hello World 코드 변경
프로그램이 조금 다르게 작동하도록 변경해 보겠습니다.
"Hello, world!"
텍스트를"Happy Birthday!"
로 변경합니다.- 오른쪽 상단의 녹색 실행 버튼
을 클릭하여 프로그램을 실행합니다.
- 이제 아래 스크린샷과 같이 콘솔에
Happy Birthday!
가 출력됩니다.
기본 원리
어떻게 된 걸까요? 무언가를 출력하기 위한 코드가 많은 것 같습니다.
친구에게 종이에 'Hello, world!'를 쓰게 하려고 하는 경우를 생각해 봅시다. 여기에는 많은 정보가 암시되어 있습니다. 친구에게 "이 종이에 'Hello world!'라고 적어 줘"라고만 말하면 친구는 내가 빠트린 정보들을 추정하게 될 것입니다. 예를 들어 친구는 펜을 사용해야 하며 문자로 작성해야겠다고 생각할 수 있는 것입니다. 컴퓨터는 이러한 추론 과정을 거치지 않으므로 모든 단계를 포함하는 정확한 명령을 제공해야 합니다.
영어에 구조가 있는 것처럼 프로그래밍 언어에도 구조가 있습니다. 다른 언어를 배워본 적 있다면 문법, 철자, 새로운 자모, 어휘를 익히는 것이 얼마나 어려운지 아실 겁니다. 프로그래밍을 학습하는 데도 비슷한 어려움이 있지만, 영어와 같은 인간 언어를 학습하는 것보다는 덜 복잡하고 훨씬 더 논리적입니다.
프로그램의 요소 이해하기
이제 코드를 살펴보겠습니다. 프로그램의 각 요소는 특정한 목적으로 사용되며 프로그램을 실행하려면 모든 요소가 필요합니다. 첫 번째 단어부터 시작해 보겠습니다.
fun
fun
은 Kotlin 프로그래밍 언어에 있는 단어입니다.fun
은 함수를 의미하며, 함수란 특정 작업을 실행하는 프로그램의 섹션을 말합니다.
fun main
main
은 이 함수의 이름입니다. 함수에는 이름이 있기 때문에 서로 구분할 수 있습니다. 이 함수는 프로그램을 실행할 때 호출되는 첫 번째 즉, 기본 함수라는 의미에서main
이라고 합니다. 모든 Kotlin 프로그램에는main
함수가 필요합니다.
fun main()
- 함수 이름 뒤에는 항상 두 개의 괄호
()
가 옵니다.
fun main(args: Array<String>)
- 괄호 안에는 함수에서 사용할 정보를 넣을 수 있습니다. 함수에 들어가는 이 정보를 '인수' 또는 줄여서
args
라고 합니다. 인수에 대해서는 나중에 자세히 알아봅니다.main
함수에는 항상 동일한 인수가 있다는 사실만 알면 됩니다.
fun main(args: Array<String>) {}
- 인수 뒤에 중괄호 쌍이 있습니다. 함수 안의 정보는 작업을 실행하는 코드입니다. 중괄호는 코드를 둘러싸고 있습니다.
중괄호 사이에 있는 코드를 확인하세요.
println("Happy Birthday!")
이 코드는 Happy Birthday!
텍스트를 출력합니다.
println
은 텍스트를 출력하도록 시스템에 알립니다.- 괄호 안에 출력할 텍스트를 입력합니다.
- 출력되는 텍스트는 따옴표로 묶여 있습니다. 시스템에서는 따옴표 안에 있는 모든 정보를 지정된 대로 정확히 출력해야 합니다.
텍스트를 실제로 출력하려면 전체 println
명령이 main
함수 내에 있어야 합니다.
이렇게 가장 작은 Kotlin 프로그램이 만들어졌습니다.
fun main(args: Array<String>) {
println("Happy Birthday!")
}
2개 이상의 메시지 출력하기
잘하셨습니다. println() function
을 사용하여 텍스트 한 줄을 출력하셨습니다. 그러나 함수 내에는 원하는 만큼 또는 작업을 실행하는 데 필요한 만큼 여러 행의 명령을 추가할 수 있습니다.
println("Happy Birthday!")
행을 복사하여 그 아래에 두 번 더 붙여넣습니다. 붙여넣은 행이main
함수의 중괄호 안에 있어야 합니다.- 출력할 텍스트 중 하나를 사람 이름인 'Jhansi'로 변경합니다.
- 출력할 나머지 텍스트는 'You are 25!'로 변경합니다.
아래 코드와 같습니다.
fun main(args: Array<String>) {
println("Happy Birthday!")
println("Jhansi")
println("You are 25!")
}
이 코드를 실행하면 어떻게 될까요?
- 프로그램을 실행하여 어떤 작업을 하는지 확인합니다.
- Console 창으로 이동하면 아래 스크린샷과 같이 콘솔 창에 3행이 출력됩니다.
훌륭합니다.
오류 처리하기
프로그래밍 중에 실수가 발생하는 것은 자연스러운 일이며 대부분의 도구에서는 실수를 바로잡을 수 있도록 피드백을 제공합니다. 이 단계에서는 의도적으로 실수를 만들어 어떤 일이 발생하는지 알아보겠습니다.
- 프로그램에서
Jhansi
텍스트 주위의 따옴표를 제거하여 행이 다음과 같이 표시되도록 합니다.
println(Jhansi)
- 프로그램을 실행합니다.
Jhansi
가 빨간색으로 표시되고 코드 8 옆에 느낌표가 표시되어 오류가 있음을 확인할 수 있습니다.
- 콘솔을 보려면 아래로 스크롤합니다.
- 문제 보기 탭이 선택되지 않은 경우 선택합니다.
- Problems view(문제 보기) 탭을 살펴봅니다. 동일한 느낌표 아이콘과
Error
단어가 포함된 메시지가 표시됩니다. 그 뒤로는 코드의 오류에 관한 설명이 나옵니다.
- 숫자
(8, 12).
를 찾습니다. 이 숫자는 오류가 발생하는 코드 줄, 8번째 줄과 오류가 시작되는 줄의 문자 위치(12
)를 나타냅니다. - 다음으로
Unresolved reference: Jhansi
메시지를 확인할 수 있습니다. 이 메시지는 코드에서 어떤 오류가 있다고 생각하는지를 알려줍니다. 오류 메시지의 의미를 모르더라도 무언가 잘못되었다는 사실은 알 수 있습니다. 여기에서println()
명령이 텍스트를 출력한다는 것을 알고 있습니다. 앞서 텍스트는 따옴표 사이에 있어야 한다고 배웠으며 텍스트를 따옴표로 묶지 않으면 오류가 발생합니다. - 따옴표를 다시 추가합니다.
- 프로그램을 실행하여 프로그램이 다시 정상적으로 작동하는지 확인합니다.
축하합니다. 첫 번째 Kotlin 프로그램을 실행하고 변경해 보았습니다.
다음은 이 Codelab에서 작업한 프로그램의 전체 코드입니다.
- https://try.kotlinlang.org/는 웹에서 Kotlin 프로그램 작성을 연습할 수 있는 대화형 코드 편집기입니다.
- 모든 Kotlin 프로그램에는 다음과 같이
main()
함수가 있어야 합니다.fun main(args: Array<String>) {}
println()
함수를 사용하여 텍스트를 출력합니다.- 출력할 텍스트를 큰따옴표 사이에 입력합니다. 예:
"Hello"
println()
명령을 반복하여 여러 줄의 텍스트를 인쇄합니다.- 프로그램에서 오류는 빨간색으로 표시됩니다. Problems View 탭에 오류 메시지가 표시되어 오류가 발생한 위치와 원인을 파악할 수 있습니다.
- https://try.kotlinlang.org/를 참고하세요.
이 Codelab은 Kotlin 기반 Android 기본사항 과정의 일부입니다.
다음을 따르세요.
println()
명령을print()
로 변경합니다.- 프로그램을 실행합니다. 어떤 결과가 나타나나요?
참고: print()
명령은 각 문자열 끝에 줄바꿈을 추가하지 않고 텍스트를 출력합니다.
- 각각의 메시지가 지정된 줄에 표시되도록 텍스트를 수정합니다.
힌트: 텍스트 내에 \n
을 사용하면 줄바꿈이 추가됩니다. "line \n break"
를 예로 들 수 있습니다. 줄바꿈을 추가하면 다음과 같이 출력이 변경됩니다.
도움말: println("")
과 같이 텍스트를 입력하지 않고 빈 줄을 출력할 수 있습니다.
코드:
fun main(args: Array<String>) {
println("no line break")
println("")
println("with line \n break")
}
출력:
학습 내용 확인:
다음과 같이 할 수 있습니다.
fun main(args: Array<String>) {
print("Happy Birthday!\n")
print("Jhansi\n")
print("You are 25!")
}