Dart/๊ธฐ์ด
[Dart ๊ธฐ์ด] Dart ํน์ง
๋ฟ๋น
2024. 8. 3. 16:16
728x90
๐ฅ Dart ๋?
- Google์์ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ๋์ฒดํ๊ธฐ ์ํด 2011๋ ์ ๊ฐ๋ฐํ ๊ฐ์ฒด์งํฅ๊ฐ๋ ๊ธฐ๋ฐ์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด(OOP)์ด๋ค
- ๋ชจ๋ฐ์ผ ์ฑ, ์น, ์๋ฒ ํ๋ก๊ทธ๋๋ฐ ๋ฑ ๋ฌด์์ด๋ ๋ง๋ค ์ ์๋ค
- ์น์ฑ์ด ์๋ ๋ค์ดํฐ๋ธ ์ฝ๋๋ก ์๋๋ก์ด๋๋ iOS์ฉ ์ฑ์ ๋์์ ๊ฐ๋ฐํ ์ ์๋ค
โป OOP(Object Oriented Programming)
๐ฅ Dart ํน์ง
- user Interface๋ฅผ ๋ง๋๋๋ฐ ์ต์ ํ๋์ด ์๋ค
- ๊ฐ์ฒด์งํฅ ์ธ์ด์ด๋ค. ํด๋์ค, ์์, ์ธํฐํ์ด์ค์ ๊ฐ์ ๊ฐ์ฒด ์งํฅ ๊ฐ๋
์ ์ฌ์ฉํ๋ค
- main() ํจ์๋ฅผ ์์์ ์ผ๋ก ๊ฐ์ง๋ค
- ๋ณ์์ ๋ฃ์ ์ ์๋ ๋ชจ๋ ๊ฒ์ ๊ฐ์ฒด์ด๋ฉฐ, ๋ชจ๋ ๊ฐ์ฒด๋ Object ํด๋์ค๋ฅผ ์์๋ฐ๋๋ค (Function, number, null ์ ๋ถ Object๋ก ์ทจ๊ธํ๋ค)
- ๋ณ์์ ์ ์ฅ๋๋ ๋ชจ๋ ๊ฐ์ ํด๋์ค์ ์ธ์คํด์ค๋ก ์ทจ๊ธ๋๋ค
- ๋์ ํ์
(dynamic)์ ์ง์ํ๋ ์ ์ ํ์
์ธ์ด์ด๋ค
- var: type์ ์ง์ ํ์ง ์์๋ dart์์ ํ์ ์ ์ถ๋ก ํ๋ค
- dynamic: ๋ณ์์ ํ์ ์ ํ์ ๋์ง ์๋๋ค
- public, private๊ณผ ๊ฐ์ ํค์๋๊ฐ ์กด์ฌํ์ง ์๋๋ค
- private์ ๊ฒฝ์ฐ, ํด๋์ค ๋จ์๊ฐ ์๋ ํ์ผ ๋จ์๋ก ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค
- private ํจ์๋ฅผ ์ ์ธํ๊ธฐ ์ํด์๋ ํจ์ ๋ช ์์ ์ธ๋๋ฐ(_)๋ฅผ ๋ถ์ฌ์ฃผ๋ฉด ๋๋ค
- JIT(Just-In-Time) ์ปดํ์ผ์ ์ฌ์ฉํ์ฌ ๊ฐ๋ฐ ์ค ๋น ๋ฅธ ๋ฐ๋ณต๊ณผ AOT(Ahead-Of-Time) ์ปดํ์ผ์ ํตํด ๋ฐฐํฌ ์ ์ต์ ํ๋ ์ฑ๋ฅ์ ์ ๊ณตํ๋ค
- Future์ Stream์ ํตํด ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ์ ์ฝ๊ฒ ๊ตฌํํ ์ ์๋๋ก ์ง์ํ๋ค
- ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๋ฅผ ํตํด ๊ฐ๋ฐ์๊ฐ ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๋ฐ ํด์ ๋ฅผ ๊ฑฑ์ ํ์ง ์๋๋ก ํ๋ค
- HTTP ์์ฒญ, ํ์ผ ์์คํ ์์ ๋ฑ ๋๋ถ๋ถ์ ์ผ๋ฐ์ ์ธ ์์ ์ ์ํ ๊ฐ๋ ฅํ ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ๊ณตํ๋ค
- ์ฝ๋ ์์ฑ ์ ๋์๋ ์ธ๋ฏธ์ฝ๋ก (;)์ ๊ผญ ์จ์ฃผ์ด์ผ ํ๋ค
- dart์์๋ ์ผ๋ถ๋ฌ ์ธ๋ฏธ์ฝ๋ก (;)์ ์ ์ธ ๋๋ ์์ด์(dart์ ๊ธฐ๋ฅ ์ค ํ๋) formatter๊ฐ ์๋์ผ๋ก ์ธ๋ฏธ์ฝ๋ก ์ ์ถ๊ฐํด์ฃผ์ง ์๋๋ค
- ๋นผ๋จน์ผ๋ฉด ์ปดํ์ผ์ด ์๋๊ธฐ๋ ํด์ ์ ๊ฒฝ ์จ์ค์ผ ํ๋ค
โป Reference
728x90