AR삽질러

Dart 입문(0) 본문

Dart

Dart 입문(0)

아랑팡팡 2023. 8. 21. 23:33
728x90

시작하기전에..

 친구가 사용하는 어플리케이션 버전이 오래되어 최신 스마트폰에서 설치가 불가능해졌다.

처음엔 안드로이드스튜디오로 만들려고 생각했었는데 Flutter로 앱을 만들면 안드로이드와 IOS 두개의 플랫폼에 모두 배포할 수 있는 앱을 만들 수 있기 때문에 Flutter로 개발을 하려고한다! 

 

그전에 Google Flutter를 시작하려면 우선 Dart를 들어두는것이 좋을것같다.

Dart는 Flutter 프레임워크의 핵심적인 언어로 사용되며 Flutter앱을 개발하는데 필요한 언어이다.

 

https://dart.dev/

 

Dart programming language

Dart is a client-optimized language for fast apps on any platform

dart.dev

Dart소개

 Dart는 객체 지향 프로그래밍 언어로 간결한 문법과 생산성을 제공하고 JavaScript와 유사한 문법을 가지며 정적 타이핑과 동적 타이핑을 모두 지원하는 특징이 있다.

1) UI(User Interface)를 만들고 제공하는데 최적화

2) 모든 플랫폼에서 빠르다.

 - 모바일, 데스트톱 등 x64 머신 코드로 컴파일한다.

 

또 Flutter 프레임워크는 인기 있는 다중 플랫폼 UI 툴킷으로 Dart 플랫폼으로 구동되며 iOS, Android, macOS, Windows, Linux 및 웹에서 실행되는 UI 경험을 빌드하기 위한 도구 및 UI 라이브러리를 제공합니다.

 

Why Dart

 Dart는 두개의 컴파일러를 가지고 있어 이 컴파일 기술을 이용하여 다양한 방식으로 코드를 실행할 수 있다.

모바일 및 데스크톱 장치를 대상으로 하는 앱의 경우 Dart에는 JIT(Just-In-Time) 컴파일 기능이 있는 Dart VM과 기계 코드 생성을 위한 AOT(Ahead-of-Time) 컴파일러가 모두 포함되어 있다.

 

1) Dart Web Platform :  - 모바일 및 데스트톱 장치를 대상으로 하는 앱의 경우 Dart는 just-in-time(JIT) Compiler이 있는 Dart VM과 기계코드를 생성하기 위한 선행시간(AOT) ahead-of-time compiler를 모두 포함한다.

 

2) Dart Native (machine code JIT and AOT)

 - Web을 대상으로 하는 앱의 경우 Dart는 개발 또는 제작 목적을 위해 Compil할 수 있다. 이것으로 Web Compiler는 Dart를 JavaScript로 번역한다.

 


네이티브(Native) 앱이란?

Android 또는 iOS 같은 어떤 구체적인 플랫폼만을 위해 만들어진 어플리케이션
대표적으로 Android는 Java, Kotlin을 이용하여 개발, iOS는 Swift를 이용해서 네이티브 앱을 개발할 수 있다.
장점: 네이티브 기능 사용 가능, 성능 면에서 안정적
하이브리드(Hybrid) 웹이란?

네이티브 앱과 웹 앱을 결합한 것으로, 따로 개발을 하지 않아도 다양한 플랫폼에서 사용이 가능함
특정 네이티브 기능(블루투스나 GPS 모듈 등)을 다루는 데 문제나 제약이 있을 수도 있음
장점: 인건비 절약 가능, 빠른 배포 가능, 다양한 플랫폼 지원
프로그래시브 웹 앱(Progressive Web App)이란?

하이브리드 앱과 비슷하지만 특별한 다운로드, 설치 과정 없이 네이티브 앱처럼 사용할 수 있는 특징을 가짐
리액트, 앵귤러가 이에 속함
장점: https를 통해 배포되므로 안정적, 검색 엔진을 통해 접근 가능, 다양한 플랫폼에서 접근 가능

 

How To Lean(Dart, Flutter)

https://dartpad.dev/? 

 

DartPad

 

dartpad.dev

주소창에 dartpad.dev를 치면 Dart코드창에 들어갈 수 있다.

역시 처음엔 Hello world지 ㅋㅋㅋ

넷상에서 코딩이 가능하지만 IED로 VSCode도 사용하고 있기 때문에 Flutter extension을 설치후 Dart를 공부해보겠다.

 

728x90
반응형
LIST

'Dart' 카테고리의 다른 글

Dart Typedef - (5)  (0) 2023.09.02
Dart Functions - (4)  (0) 2023.09.02
Dart DataTypes - (3)  (2) 2023.08.28
Dart Variables- (2)  (0) 2023.08.26
Dart - 설치 및 환경설정(1)  (0) 2023.08.22