감자의 개발공부 일지

Flutter 란?(개념, 특징, 장단점) 본문

Flutter

Flutter 란?(개념, 특징, 장단점)

Elie_J 2025. 3. 5. 18:48
반응형

Flutter란?

 

Flutter는 Google에서 개발한 오픈 소스 UI 소프트웨어 개발 키트입니다. 쉽게 말해, 앱을 만드는 도구라고 생각하면 됩니다. 하나의 코드로 iOS, Android, 웹, 데스크톱 등 다양한 플랫폼에서 작동하는 앱을 만들 수 있다는 것이 가장 큰 장점입니다. 마치 레고 블록처럼 조립하여 앱을 만드는 방식이라고 생각하면 이해하기 쉽습니다.

 

Flutter 특징

1. 크로스 플랫폼 개발:

  • 하나의 코드베이스로 iOS, Android, 웹, 데스크톱 등 다양한 플랫폼에서 작동하는 앱을 개발할 수 있습니다.
  • 플랫폼별 코드 작성이 줄어 개발 시간과 비용을 절약할 수 있습니다.

2. 뛰어난 성능:

  • Flutter는 Dart 언어를 사용하여 네이티브 코드로 컴파일됩니다.
  • Skia 그래픽 엔진을 사용하여 부드럽고 빠른 UI 렌더링을 제공합니다.
  • 네이티브 앱과 유사한 높은 성능을 보여줍니다.

3. 빠른 개발 생산성:

  • 핫 리로드(Hot Reload) 기능을 통해 코드 변경 사항을 즉시 화면에 반영할 수 있습니다.
  • 개발자가 실시간으로 결과를 확인하며 빠르게 개발할 수 있습니다.
  • 다양한 위젯과 패키지를 제공하여 개발 시간을 단축할 수 있습니다.

4. 아름다운 UI/UX:

  • 다양한 위젯을 제공하여 자유로운 UI 디자인이 가능합니다.
  • 플랫폼에 상관없이 일관된 디자인을 제공합니다.
  • 다양한 애니메이션과 사용자 경험을 쉽게 구현할 수 있습니다.

5. 활발한 커뮤니티:

  • Google에서 지원하는 오픈 소스 프로젝트로, 활발한 커뮤니티를 가지고 있습니다.
  • 다양한 개발자들이 참여하여 정보를 공유하고 문제를 해결합니다.
  • pub.dev 에서 다양한 패키지를 쉽게 이용할수 있습니다.

 

Flutter의 장점과 단점

장점

1. 빠른 개발 속도:

  • 핫 리로드(Hot Reload) 기능을 통해 코드 변경 사항을 즉시 화면에 반영하여 개발 시간을 단축할 수 있습니다.
  • 하나의 코드베이스로 여러 플랫폼에 배포할 수 있어 개발 효율성이 높습니다.

2. 뛰어난 UI/UX:

  • 다양하고 아름다운 위젯들을 제공하여 사용자 친화적인 인터페이스를 쉽게 구현할 수 있습니다.
  • 플랫폼에 상관없이 일관된 디자인을 제공하여 사용자 경험을 향상시킵니다.

3. 네이티브에 가까운 성능:

  • Dart 언어를 사용하여 네이티브 코드로 컴파일되므로 높은 성능을 제공합니다.
  • 부드러운 애니메이션과 뛰어난 그래픽 성능을 제공합니다.

4. 활발한 커뮤니티와 풍부한 생태계:

  • Google의 지원과 활발한 커뮤니티를 통해 다양한 정보와 자료를 얻을 수 있습니다.
  • pub.dev를 통해 유용한 패키지들을 쉽게 이용할 수 있습니다.

단점

1. 앱 용량 증가:

  • Flutter 앱은 네이티브 앱에 비해 용량이 다소 클 수 있습니다.
  • 다양한 라이브러리가 포함되어 있는 이유가 있습니다.

2. 플랫폼별 특정 기능 접근의 제한:

  • 플랫폼별로 특화된 기능을 사용해야 할 경우, 네이티브 코드와의 연동이 필요할 수 있습니다.
  • 최신 OS의 API를 바로 사용하지 못하는 경우가 생길수도 있습니다.

3. Dart 언어 학습:

  • Flutter를 사용하기 위해서는 Dart 언어를 학습해야 합니다.
  • 경험이 많은 개발자에게는 다른언어에 비해 단순하게 느껴질수 있습니다.

4. 웹, 데스크톱 환경의 완성도:

  • 모바일 환경에 비해 상대적으로 웹과 데스크톱 환경의 완성도가 낮을 수 있습니다.
반응형