<Visual Studio Code>
Microsoft์ VS code๋ฅผ ๋ค๋ค ์ ๊ฒ์ด๋ค. ์ ๋ฌ๊ธ์์ด ์๋ํฐ๋ฅผ ์ธ๊ธํ๋๋? ์ฒซ ํฌ์คํ ์์๋ ์ธ๊ธํ๋ค์ํผ, ๋๋ถ๋ถ์ ๊ฐ๋ฐ์๋ค์ด๋ผ๋ฉด MSVC์ ๊ฐ์ด ์ํํธ์จ์ด ๊ฐ๋ฐ์ ์์ค์ฝ๋๋ฅผ ํ์ดํํ ๋ ์๋ํฐ(editor)๋ผ๊ณ ํ๋ ๊ฑธ ๋ง์ด ์ธ ๊ฒ์ด๋ค. ๋๋ถ๋ถ์ ์๋ํฐ๋ ํ์ดํ์ ํธํ๊ฒ ํ๊ธฐ ์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ์์ค์ด์ง๋ง, MSVC๋ ์์ค์ฝ๋๋ฅผ ์์ฑํ ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ๋ง๋ ๋ค์ํ๊ณ ํธ๋ฆฌํ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ, ํ๋ก๊ทธ๋จ์ ์ค๋ฅ๋ฅผ ์ด๊ธฐ์ ์ ๊ฑฐํ๋ ์ฉ๋๊ฐ ๋ง์ด ๋ค์ด ์๋ค. (์ด ๊ธฐ๋ฅ์ด ๊ต์ฅํ ๊ฐ๋ ฅํจ!!)
๋ฐ๋ฉด์ IDE(Integrated Development Environment)๋ผ๊ณ ๋ถ๋ฆฌ๋ ์ํํธ์จ์ด๋ ์๋ค. ๋ํ์ ์ผ๋ก MS์ Visual Studio, Apple์ Xcode, ์คํ์์ค์ธ Eclipse ๋ฑ์ธ๋ฐ, IDE๋ ์๋ํฐ์ ๊ธฐ๋ฅ์ ํฌํจํ๋ฉด์, ํ๋ก๊ทธ๋จ์ ์คํํ๊ณ , ์ค๋ฅ๋ฅผ ์ก๋ ๋๋ฒ๊ทธ์ ๋ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. ๋ํ ํ๋ก๊ทธ๋จ์ ์ฑ๋ฅ์ ๊ฐ์ ํ๋ ๋ฑ์ ๊ธฐ๋ฅ๋ ์ ๊ณตํ๋๋ฐ, MSVC๋ ์๋ํฐ์ ์์ญ์ด์ง๋ง ๊ฐ์ข Extension์ ์ถ๊ฐํจ์ผ๋ก์จ, IDE์ฒ๋ผ ์ฌ์ฉํ ์ ์๋ ์ข์ ๋๊ตฌ๋ค. (๋ฐ๋ผ์ DartPad ์ ๊ฐ์ ์จ๋ผ์ธ ๊ฐ๋ฐํ๊ฒฝ๋ ์ข์ง๋ง, ๋น๋จ '๊ฐ๋ฐ์'๋ผ๋ฉด vs code์๋ ์ต์ํด์ง ํ์๊ฐ ์๋ค. ๋ง์ด ์ ์ฉํ๋๋ก!!)
<Hello World!>
vscode ๋ด Dart ์ธ์ด์ ์ฌ์ฉ์ ์ํด ์์ extension ์์ Dart๋ฅผ ์ค์นํ์ ๊ฒ์ด๋ค. ๋ค์์ vscode ๋ด Dart ํ๊ฒฝ์ ๊ตฌ์ถํ๊ธฐ ์ํ ๊ณผ์ ์ ์ผํ์ด๋ค. Windows ์ฌ์ฉ์๋ผ๋ฉด ๋ณด๊ณ ์ฐธ๊ณ ํด๋ ์ข์ ๋ฏํ๋ค. (macOS๋ ๊ต์ฌ์ ์ฒจ๋ถ๋ ๋ด์ฉ์ ์ฐธ๊ณ ํ๋ฉด ์ฝ๊ฒ ๊ฐ๋ฅํ๋ค.)
1) DART-TUTORIAL์ด๋ผ๋ ์๋ก์ด ํด๋๋ฅผ ์์ฑํ๊ณ , ์์ ์ ์ํ ์๋ก์ด ํ์ผ(dart_tutorial_06_01.dart)์ ํ๋ ์์ฑํ๋ค.
๊ทธ๋ฆผ1)
2) ์ด๊ธฐ Dart ์ฌ์ฉ์ ์ํด์ ์ฝ๋๋ฅผ ์์ฑํ๊ณ ๋๋ฒ๊น ์ ํด๋ณด๋ฉด ํ๋ก๊ทธ๋จ์ ์๋ํ์ง ์๋๋ค. MSVC๋ Dart ์ธ์ด ์ ์ฉ์ ๋๊ตฌ๊ฐ ์๋๊ณ , Dart ์ธ์ด๋ฅผ ์ง์ํ ์ ์๋๋ก ํ์ฅํ ๊ฒ์ด๋ผ, ๋ถ์กฑํ ์ค์ ์ ๊ฐ๋ฐ์๊ฐ ์ง์ ์ ๋ ฅํด ์ค์ผํ๋ค.
dart_tutorial_06_01.dart ํ๋ก๊ทธ๋จ์ ์คํํ๋ฉด, ๊ทธ๋ฆผ2)์ ๊ฐ์ ๋ด์ฉ์ด ๋ด๊ธด ํญ ({ } launch.json : ms code๊ฐ ๊ด๋ฆฌํ๋ ์คํํ๊ฒฝ) ์ด ์ด๋ฆฌ๋๋ฐ, ์ด๋ ์ด json ํ์ผ ๋ด๋ถ์ ์ถ๊ฐ์ ์ผ๋ก ์ ๋ ฅํ ์ฌํญ๋ค์ด ๋ช ๊ฐ์ง ์๋ค.
์ "configurations" : [ ] ๋ด๋ถ์ ์ฐ๋ฆฌ๋ ๋ช ๊ฐ์ง๋ฅผ ์ถ๊ฐํ๋ ค ํ๋ค. [ ] ๋ด๋ถ์ dart ์ธ์ด๋ฅผ ์คํํ ํ๋ก๊ทธ๋จ์ ์ง์ ํด์ฃผ๋ ๊ณผ์ ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ์ฝ๋ค. mac ์ฌ์ฉ์๋ผ๋ฉด, "program" : "bin/main.dart" ๋ก ์ง์ ๋์ด ์์ํ ๋ฐ, ์ด๋ฅผ ์๋ ์ฝ๋์ฒ๋ผ ๋ณธ์ธ์ด ์ค์ ํ ํ์ผ๋ช ์ ๋ง๊ฒ ๋ฐ๊ฟ์ฃผ๋ฉด ๋๋ค. ๋ง๊ฒ ์ค์ ํ๋ค๋ฉด ๋ค์ ๋๋ฒ๊น ์ผ๋ก ๋์๊ฐ๋ณด์.
{
"name" : "Dart",
"program" : "dart_tutorial_06_01.dart",
"request" : "launch",
"type" : "dart"
}
// configuration [] ์ ๋ด๋ถ ๋ช
๋ น์ด
์๋ ๊ทธ๋ฆผ3)๊ณผ ๊ฐ์ด ๋๋ฒ๊น ๋ฒํผ์ด ๋ฐ๋์ด์์ ๊ฒ์ด๋ค.
3) ์์ ๊ณผ์ ์ ๊ฑฐ์น๋ฉด Dart ์ธ์ด ์ฌ์ฉ์ ์ํ ์ด๊ธฐ ์ธํ ์ ๊ฑฐ์ ๋๋๋ค๊ณ ๋ด๋ ๋๋ค. ์ด์ hello world ์ฝ๋๋ฅผ ์คํํด๋ณด์. C์ธ์ด๋ฅผ ์ฌ์ฉํด๋ดค๋ค๋ฉด(์๋์ง... ํ๋ก๊ทธ๋๋ฐ์ ํด๋ณธ ์ฌ๋์ด๋ผ๋ฉด!) print("Hello, World!");๋ผ๋ ์ฝ๋๋ฅผ ๋ชจ๋ฅผ ์ ์์ ๊ฒ์ด๋ค. ํ๋ฒ ์คํํด๋ณด์.
1. void main() ํจ์ ๋ด๋ถ์ print("hello world!"); ๋ฅผ ์ ๋ ฅํ๊ณ Debug or Run.
2. ์ฝ๋ ๋ฐ๋ก ์์ Run|Debug ๊ฐ ๋ ์๋ ๊ฑด ์ด์ ๋ฒ์ ๊ณผ์ ์ฐจ์ด(??)์ธ ๋ฏํ๋ค. ์ค์ ๋ก Run์ ๋๋ฌ๋ณด๋ฉด ์๋์ผ๋ก ๋๋ฒ๊น ์ ๊ฑฐ์ณ ์ฝ์์ฐฝ ๊ทธ๋ฆผ5)์ hello world! Exited ๊ฐ ์ถ๋ ฅ๋๋ค. (๋์ค์ ์ ์จ๋จน์ ๋ฏใ ใ )
<๋๋ ์ >
์์น ํ๋ก๊ทธ๋๋จธ๋ค์ด๋ผ๋ฉด Hello World ๋ผ๋ ๋ฌธ๊ตฌ๋ฅผ ๋ชจ๋ฅผ ์ ์์ํ
๋ฐ, (์ด ํ ๋ฌธ์ฅ์ ์คํํ๊ธฐ ์ํด ์ผ๋ง๋ ๋ง์ ๊ฐ๋ฐ์๋ค์ด ๊ฐ๋ ธ๋๊ฐ..?) ๊ฐ๋ฐ์ ์ํ ์ฒซ ๋๋ค๋ฐ์ ๊ฐ๋ฐํ๊ฒฝ์ ๊ตฌ์ถ์ด๋ค. ๊ฐ๋ฐ ์ด๊ธฐ ๊ณผ์ ์์ ๊ฐ์ฅ ์ค์ํ ๋ถ๋ถ์ด๊ธฐ๋ ํ๋ฐ, DartPad์ ๊ฐ์ด ์จ๋ผ์ธ์์ ๋์๊ฐ๋ ํ๊ฒฝ๋ ๋ฌผ๋ก ์ข๋ค. ํ์ง๋ง ์ด๋ ๊ฒ ๋ณธ์ธ๋ง์ ์ค์ตํ๊ฒฝ์ ๊ตฌ์ถํ๊ณ ๊ฐ๋ฐํ๊ธฐ ์ํ ์ฃผ๋์ ์ธ ๊ณผ์ ๋ ํ์ํ๋ค. (๊ทธ๋ฌ๋ฉด์ ๋จธ๋ฆฌ์ ๋ ์ ๋ค์ด์ค๋๋ฏ!) ๊ทธ๋ฆฌ๊ณ VS code์ ์ค์น๋ ๊ถ์ฅํ๋ ๊ฑด inline trace ๊ธฐ๋ฅ๊ณผ ๋๋ฒ๊น
์ ๊ฐ๋ ฅํจ ๋๋ฌธ์ด๋ค. ์๋ํฐ์ ๋จ์ํ ๊ธฐ๋ฅ๋ ์์ง๋ง ํ ์ค ํ ์ค ์ฝ์ด๊ฐ๋ฉด์ ์ฝ๋์ ๋ฌธ์ ์ ์ ์ฐ์ด์ฃผ๊ณ ๊ถ์ฅ๊น์ง ํด์ฃผ๋ ์ด๋ณด๋ค ํธ๋ฆฌํ ์๊ฐ ์๋ค;; ๋๋ฌธ์ ๊ผญ Dart๊ฐ ์๋๋ผ python๊ณผ ๊ฐ์ ์ธ์ด์ ์ฌ์ฉ์ ํ๋๋ผ๋ vscode์ ์ฌ์ฉ์ ๊ผญ!๊ผญ! ๊ถ์ฅํ๋ค.
(์ด์ ๊ผฌ๊ผฌ๋ง ๊ฐ๋ฐ์๊ฐ.. ์ฃผ์ ๋๊ฒ ์์๋ฆฌ ํ ๋ฒ ํ๋ค..ใ )
'Dart, Flutter > ๐ณ Basic' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Dart [์ซ์ํ, ๋ฌธ์ํ, Boolean Types] (0) | 2024.01.18 |
---|---|
Dart [๋ณ์ & ์์] (0) | 2023.12.23 |
[Dart vs C++] ver2 (0) | 2023.12.19 |
[Dart vs C++] ver1 (1) | 2023.12.18 |
Dart ์์ํ๊ธฐ [์ค์น ํธ] (2) | 2023.12.18 |