Flutter

플러터란? What is Flutter?

Think-About 2022. 4. 25. 03:12

플러터란? What is Flutter?

Think about ~ Flutter!

요즘 Flutter 프레임워크를 주로 이용해서 모바일 앱 개발을 하고 있습니다.

기존에 자바나 코틀린으로 안드로이드 앱을 개발할 때와는 다른 경험을 많이 하고 있어서 공유하고자 합니다.


배경

플러터가 무엇인지 알기 전에 배경들을 알아보도록 하겠습니다.

구글(Google)은 Fuchsia라는 운영체제를 만들었습니다. 이 운영체제는 구글에서 개발하는 차세대 OS인데, 기존의 운영체제인 크롬, 안드로이드 운영체제와는 달리 지르콘(Zircon)이라는 마이크로커널을 사용합니다. 구글에서는 PC를 포함한 다양한 장치를 대상으로 하는 운영체제가 될 것이라고 밝혔습니다.

그렇다면, 커널이 무엇인지 아주 간략하게 알아봅니다.

운영체제에 대한 공학적인 내용이 궁금하시다면 다음에 추가로 정리해 드리겠습니다.

커널

커널이란 운영체제에서 가장 핵심적인 역할을 맡고 있으며, 하드웨어와 소프트웨어를 연결시켜주는 역할을 한다고 생각하시면 됩니다. 커널의 종류에는 마이크로 커널과 단일형 커널이 있는데 마이크로 커널은 하드웨어에 필요한 만큼의 커널을 조립식으로 하드웨어 위에 올리는 것을 말하며 단일형 커널은 모든 기능이 들어있는 커널을 의미합니다.

Fuchsia OS

구글은 왜 Fuchsia라는 OS를 만들고 있을까요?

 

지르콘이라는 마이크로 커널은 임베디드 프로그램에서 사용되는 소형 시스템용으로 설계된 작은 커널이며 이는 스마트폰과 고속의 프로세서를 갖춘 개인용 컴퓨터 또한 타깃으로 하고 있습니다. 대부분의 기기에서 구동될 수 있는 운영체제를 야심 차게 만들어보겠다는 의미인 것 같습니다.

 

또한, 안드로이드의 파편화 문제가 있습니다. 구글은 트레블 프로젝트를 통해 업데이트를 진행합니다. 트레블 프로젝트는 구글이 안드로이드를 업데이트하면 안드로이드 기반의 스마트폰에 대하여 모두 업데이트가 진행되는 방식이 아닙니다. 스마트폰 제조사가 안드로이드 업데이트를 처리하고 사용자에게 제공하게 되는 것입니다. 이 때문에 구글에서 아무리 안드로이드 운영체제를 업데이트해도 스마트폰을 만드는 제조사에서 이를 배포하지 않으면 의미가 없습니다.

 

이런 배경을 바탕으로 구글은 하나의 코드 베이스로 안드로이드, 아이폰, 리눅스, 윈도우즈, 맥 및 웹 브라우저에서 모두 동작되는 앱을 위해 출시했습니다.


플러터란?

Flutter logo

플러터는 구글이 출시한 오픈 소스 크로스 플랫폼 GUI 애플리케이션 프레임워크입니다.

많은 분들이 플러터를 프로그래밍 언어라고 알고 계시는 데, 플러터는 프레임워크입니다.

프레임워크는 어떠한 목적을 달성하기 위해 복잡하게 얽혀있는 문제를 해결하기 위한 구조입니다.

이 문구를 바탕으로 플러터는 앱을 만들기 위한 규칙이 정해져있는 하나의 구조 혹은 틀이라고 이해하시면 됩니다.

사용자 인터페이스와 애플리케이션을 만들기 위해 사용하며 Flutter 앱 개발을 위한 프로그래밍 언어로는 Dart를 사용합니다.

한 번의 코딩으로 안드로이드, IOS 애플리케이션 등 여러 플랫폼에 대한 개발이 가능합니다.

이를 크로스 플랫폼 애플리케이션 개발이라고 하며 이에 인터페이스나 사용자 경험을 하나로 통일하여 제공합니다.


지금까지 플러터가 무엇인지 알아보았습니다.

플러터에 대해 직접 둘러보고 싶으신 분들을 위해 링크를 남깁니다.

https://flutter.dev/

 

앞으로 플러터 장단점이나 개발에 대한 내용을 같이 알아보고 생각해 보도록 하겠습니다~!

Think-about ~ Flutter!