반응형

flutter 32

2025년 기준, Flutter vs Kotlin: 안드로이드 개발자가 선택해야 할 기술은?

2025년 기준, Flutter vs Kotlin: 안드로이드 개발자가 선택해야 할 기술은?2025년, 안드로이드 개발을 시작하거나 확장하려는 개발자라면 Kotlin과 Flutter 사이에서 고민해본 적이 있을 것입니다. 두 기술 모두 강력하고 매력적이지만, 용도와 목표에 따라 선택이 달라질 수 있습니다.1. Kotlin이란?Kotlin은 JetBrains에서 만든 현대적인 프로그래밍 언어로, 현재 Android 공식 언어입니다. Java와 100% 호환되며, 간결한 문법과 널 안정성(Null Safety)으로 인해 점점 더 많은 기업과 개발자가 Kotlin을 선택하고 있습니다.2. Flutter란?Flutter는 구글이 개발한 UI 툴킷으로, 하나의 코드베이스로 iOS와 Android를 동시에 개발할 ..

개발일기 2025.07.31

🔥 Flutter Local Notification & Firebase Push 완전 정복 (2025 최신)

Flutter 앱을 만들다 보면 푸시 알림은 필수죠.이번 글에서는 Local Notification부터 Firebase FCM Push까지 한 번에 정리해드립니다.✅ 1️⃣ Flutter Local Notification이란?Local Notification은 앱 내부에서 스케줄링한 알림입니다.예: ToDo 알림, 예약 알림, 정기 알림 등.// pubspec.yaml에 추가flutter_local_notifications: ^15.0.0// 초기화 예시final FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin = FlutterLocalNotificationsPlugin();void main() async { WidgetsFlutterB..

개발일기 2025.07.18

✨ Flutter 위젯 시리즈: Theme & Dark Mode 완전 정복

플러터 앱을 조금 더 프로답게 만들고 싶다면?꼭 알아야 할 것이 바로 Theme 관리와 Dark Mode입니다!디자인 시스템의 핵심, ThemeData를 제대로 써보세요.✅ 1️⃣ ThemeData 기본 구조플러터는 기본적으로 ThemeData를 통해 앱의 컬러, 폰트, 버튼 스타일 등을 한 번에 설정할 수 있습니다.MaterialApp( theme: ThemeData( primarySwatch: Colors.blue, textTheme: TextTheme( bodyLarge: TextStyle(fontSize: 18), ), elevatedButtonTheme: ElevatedButtonThemeData( style: ElevatedButton.styleFrom..

개발일기 2025.07.17

✨ Flutter 위젯 시리즈: StatefulWidget 고급 패턴 완전 정복

Flutter 개발자라면 무조건 쓰는 StatefulWidget!하지만 실무에서는 더 고급 패턴이 필요합니다.오늘은 AutomaticKeepAliveClientMixin과 TickerProviderStateMixin을 중심으로 알아봅니다.✅ 1️⃣ AutomaticKeepAliveClientMixinTabBarView, PageView를 사용할 때화면을 스와이프하면 페이지가 dispose되어 상태가 날아가는 경우가 많습니다.이를 막아주는 믹스인이 바로 AutomaticKeepAliveClientMixin입니다.class KeepAlivePage extends StatefulWidget { const KeepAlivePage({Key? key}) : super(key: key); @override S..

개발일기 2025.07.15

📚 Flutter 위젯 시리즈: Sliver & CustomScrollView 쉽게 쓰기

플러터로 스크롤 성능과 고급 레이아웃을 잡고 싶다면 꼭 알아야 할 것!바로 Sliver와 CustomScrollView입니다.✅ 1. Sliver란?Sliver는 스크롤이 가능한 영역에서 특정 위젯이어떻게 표시될지 정의하는 유연한 블록입니다.ListView나 GridView도 내부적으로 Sliver를 사용합니다.✅ 2. CustomScrollView란?CustomScrollView는 여러 Sliver를 조합해스크롤 가능한 복잡한 화면을 만들 때 사용됩니다.CustomScrollView( slivers: [ SliverAppBar( expandedHeight: 200.0, floating: false, pinned: true, flexibleSpace: Flexi..

개발일기 2025.07.14

📚 Flutter 위젯 시리즈: Drawer & NavigationRail 완전 정복

플러터 앱에서 화면 간 네비게이션을 효율적으로 할 수 있는 사이드 메뉴!Drawer와 NavigationRail을 한 번에 정리해드립니다.✅ 1. Drawer란?Drawer는 화면 왼쪽에서 슬라이드로 열리는 사이드 네비게이션 메뉴입니다.모바일 앱에서 자주 사용되며, 햄버거 메뉴 아이콘으로 불립니다.Scaffold( appBar: AppBar( title: Text('Drawer 예시'), ), drawer: Drawer( child: ListView( padding: EdgeInsets.zero, children: [ DrawerHeader( decoration: BoxDecoration( color: Colors.blue..

개발일기 2025.07.11

📚 Flutter 위젯 시리즈: TabBar & BottomNavigationBar 완전 정복

플러터 앱에서 여러 화면을 탭(Tab)으로 전환하거나하단 네비게이션 바로 이동할 때 가장 많이 쓰는 두 가지!TabBar와 BottomNavigationBar를 한 번에 정리해 드립니다.✅ 1. TabBar 기본 구조TabBar는 상단 탭 메뉴를 구현할 때 사용합니다.TabController와 TabBarView가 함께 쓰입니다.DefaultTabController( length: 3, child: Scaffold( appBar: AppBar( title: Text('TabBar 예시'), bottom: TabBar( tabs: [ Tab(icon: Icon(Icons.home), text: '홈'), Tab(icon: Icon(Ic..

개발일기 2025.07.10

🍞 Flutter 위젯 시리즈: SnackBar & Toast 완전 정복

앱에서 사용자에게 간단한 알림을 보여줄 땐 SnackBar와 Toast가 필수죠!이 둘의 차이점과 실무 활용 팁까지 한 번에 정리해드립니다.✅ 1. SnackBar란?SnackBar는 화면 하단에 잠시 나타나는 머티리얼 디자인 알림창입니다.사용자에게 상태 메시지를 전달할 때 자주 사용합니다.ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text('저장되었습니다!'), duration: Duration(seconds: 2), action: SnackBarAction( label: '취소', onPressed: () { // 취소 로직 작성 }, ), ),);✔️ Scaffold..

개발일기 2025.07.09

💬 Flutter 위젯 시리즈: Dialog & BottomSheet 완전 정복

Flutter 앱에서 사용자와의 상호작용에 꼭 필요한 팝업 UI!Dialog와 BottomSheet를 한 번에 정리해드립니다.✅ 1. AlertDialog (기본 팝업)가장 기본적인 다이얼로그는 AlertDialog입니다.간단한 알림이나 확인 모달에 자주 사용됩니다.showDialog( context: context, builder: (BuildContext context) { return AlertDialog( title: Text('알림'), content: Text('정말 삭제하시겠습니까?'), actions: [ TextButton( onPressed: () { Navigator.of(context).pop(); ..

개발일기 2025.07.08

👆 Flutter 위젯 시리즈: GestureDetector & InkWell 완전 정복

Flutter에서 터치 이벤트(클릭, 드래그, 더블탭 등)를 처리하려면 반드시 GestureDetector나 InkWell을 사용해야 합니다.이 둘의 차이와 실무 사용 팁을 깔끔히 정리해드립니다!✅ 1. GestureDetector란?GestureDetector는 터치 제스처 감지용 기본 위젯입니다.클릭, 더블탭, 롱프레스, 드래그 등 다양한 제스처를 감지할 수 있어요.GestureDetector( onTap: () { print('탭!'); }, onDoubleTap: () { print('더블 탭!'); }, onLongPress: () { print('롱 프레스!'); }, child: Container( color: Colors.amber, padding: ..

개발일기 2025.07.07
반응형