Dart 3.0 문법
·
Flutter
코드 팩토리의 플로터 프로그래밍 책을 보며 공부하다가 Dart 3.0 문법을 소개 드리면 좋을 것 같아 글을 남깁니다. 다트 3.0 신규 문법 플러터 3.0 버전부터는 다트 3.0 버전 이상을 사용합니다. 그리고 다트 언어의 메이저 버전이 3으로 업데이트되면서 새로 추가된 문법들이 생겼습니다. 다트 3.0 버전 업데이트 이후 어떤 문법들이 추가로 생겼는지 알아보겠습니다. 1. 레코드 레코드(Record)는 다트 3.0 이상부터 사용할 수 있는 새로운 타입입니다. 레코드는 포지셔널 파라미터(Positional Parameter)나 네임드 파라미터(Named Parameter) 중 한 가지 방식을 적용하여 사용할 수 있습니다. 두 방식은 모두 괄호 안에 쉼표로 구분하여 작성합니다. 자세한 내용은 다음 실제 ..
Flutter 3.7 & Dart 3.0 업데이트 내용
·
Flutter
업데이트 목록 Flutter - Fonts asset hot reload - Text animation by FontVariation widget - Dart, Flutter Engine, Flutter SDK에 대해 최소 SLSA level 2 인증 보장 - FlutterFlow (Figma와 같은 UI Toolkit), API 콜이 가능해보임 - Material 3 - ffigen & jnigen (언어 변환, 예를 들어 Android SDK => C or C++ => Dart로 활용하는 것이 가능) Dart - Pattern matching - Multiple returns - Usable switches - Object Destructing - Functional-style programming ..
Flutter pub.dev - 2) flutter_rating_bar 알아보기
·
Flutter
2편에서는 flutter_rating_bar를 조금더 활용을 해보겠습니다 전체 코드는 마지막에 넣어둘게요 ~! 기능은 다음과 같습니다 1. 톱니바퀴 아이콘 클릭 아이콘 전체 변경 2. TextFormField 를 활용해 숫자로 표시 3. 3개의 모드로 평가를 다르게 표현 (1. 기본적인 , 2. 이미지 , 3. 평가마다 색상) 4, 수직 모드로 변경 5. 좌우 반전 변경 자 .. 이제 시작해 볼게요 1. 톱니바퀴 아이콘 클릭 아이콘 전체 변경 IconButton( icon: Icon(Icons.settings), color: Colors.white, onPressed: () async { _selectedIcon = await showDialog( context: context, builder: (con..
Flutter pub.dev - 1) flutter_rating_bar 알아보기
·
Flutter
오늘은 flutter_rating_bar에 대해 알아보겠습니다 프로젝트를 생성해 줍니다. pub add or pub get 을 진행합니다. $ flutter pub add flutter_rating_bar dependencies: flutter_rating_bar: ^4.0.1 이렇게 셋팅을 하면 그럼 이제 기본적인 준비는 완료되었습니다. main.dart를 수정해 줍니다 . 기본적인 구조는 다음과 같습니다 import 'package:flutter/material.dart'; import 'package:flutter_rating_bar/flutter_rating_bar.dart'; void main() { runApp(const MyApp()); } class MyApp extends Stateles..
Flutter Provider - 꿀팁 ? ~ ? 🎈
·
Flutter
요즘 회사 업무 일이 바빠서 오랜만에 글을 적어봅니다 Flutter에서 Provider를 사용하면서 꿀팁들을 조금 정리해보았습니다. 카운터 앱 제작 dependencies: flutter: sdk: flutter provider: 우선, provider 패키지를 프로젝트에 추가하기 위해 pubspec.yaml 파일에 위와 같은 코드를 추가하고 패키지를 가져옵니다. 1. Flutter pub add provider 2. yaml 파일에 provider : 추가 후 Flutter pub get 두개중 편한대로 사용하시면 됩니다. count_provider import 'package:flutter/material.dart'; class CountProvider with ChangeNotifier { int ..
Flutter 네이티브 연결
·
Flutter
먼저 Platform Channel에 대해서 모르시는 분들을 위해 간단하게 살펴보자면, Flutter는 앱, 웹, 데스크탑, 리눅스 등의 환경을 개발할 수 있도록 하는 프레임워크라는 사실은 이미 알고 계실거다. 앱에서는 양대 플랫폼인 Android / IOS를 모두 개발하는 크로스플랫폼인데, 네이티브 고유의 기능에 접근해야 하는 등의 개발이 필요한 경우 네이티브 언어를 통해 Flutter와 통신을 할 수 있다. 물론 통신을 하지 않고도 Flutter의 Dart Package에 등록된 PlugIn을 사용하여 개발이 가능하긴 하다. 여기서 말한 PlugIn이 바로 네이티브 코드로 만들어진 것이다. Library라고 불리는거는 Flutter 프레임워크에서 만들어진거고, PlugIn은 네이티브로 만들어진 것이다..
Flutter - 테스트 종류
·
Flutter
참고: https://flutter-ko.dev/docs/cookbook/testing https://mangkyu.tistory.com/182 [TDD] 단위 테스트와 TDD(테스트 주도 개발) 프로그래밍 방법 소개 - (1/5) 이번에는 여러 개발 서적들 및 실무 경험 그리고 시행 착오 등을 겪으면서 얻은 테스트 주도 개발 방법에 대해 소개해보고자 합니다. 이번 포스팅에서는 먼저 단위 테스트와 중요성 그리고 단위 mangkyu.tistory.com 플러터에서는 어떤 테스트 방법이 있을까? 플러터에서는 크게 Unit test, Widget test, Integration test 로 나누어져 있습니다. 공통 먼저, test 라이브러리를 import해주기 위해 flutter/pubspec.yaml 에 해..
Flutter - Test 2편
·
Flutter
2.이메일과 주민번호 테스트하기 2.1 테스트 예제 - 주민번호 확인하기 ( social security number validator ) 주민 번호는 앞에는 생년월일, 뒤에는 성별 및 주소로 되어 있죠. 이를 확인하는 정규표현식을 작성해 보겠습니다. field_validator.dart class FieldValidator { static bool validateSocialSecurityNumber(String input) { if (input.isEmpty) return false; ​ Pattern pattern = r'^[0-9]{2}(0[1-9]|1[0-2])(0[1-9]|[12][0-9]|[3][01])-([1-4][0-9]{6})'; RegExp exp = RegExp(pattern); ​ ..
Flutter - Unit Testing
·
Flutter
플러터 유닛 테스팅 유닛 테스팅 (Unit Testing) 첨엔 핫리로딩의 효율성이 정말 좋다보니 테스팅을 할 필요성을 못 느꼈었는데요. 점차 코드를 추가하다보니 테스트를 해야겠단 생각이 들었습니다. 이번에 테스팅을 공부하면서 다트가 정말 잘 만들어졌구나 하는 걸 느꼈습니다. 사실 다트의 테스팅도 다른 테스트와 비슷합니다. 용어가 조금 다를 뿐이죠. 이번 글을 통해 제가 개발하며 배운 테스팅을 정리해보려 합니다. 플러터에서 쓰이는 테스트 방식은 크게 3가지인데요. 유닛 테스트, 위젯 테스트, 통합 테스트입니다. 뒤로 갈수록 테스팅의 규모가 커지는 대신, 시간이 더 오래걸리죠. 이번 글에선 유닛 테스팅을 알아보도록 할께요. 1. Unit Testing 유닛 테스팅은 메소트나 클래스처럼 작은 단위를 테스트할..
Flutter - ListView
·
Flutter
ListView Flutter의 ListView 위젯은 스크롤 가능한 항목 목록을 표시하는 데 사용된다. 한 번에 화면에 맞지 않는 많은 수의 항목을 표시하는 데 사용할 수 있다. ListView 위젯은 세로 및 가로 스크롤을 모두 지원하며 앱의 요구 사항에 맞게 사용자 지정할 수 있다. 'ListView' 위젯은 빌더 함수, 위젯 목록 또는 'SliverChildListDelegate'를 비롯한 다양한 방법을 사용하여 항목으로 채워질 수 있다. 빌더 기능은 일반적으로 데이터베이스 또는 웹 서비스와 같은 일부 데이터 소스를 기반으로 목록 항목을 동적으로 생성해야 하는 경우에 사용된다. ListView 위젯은 바운싱 또는 스냅과 같은 다양한 스크롤 동작도 지원합니다. scrollDirection, item..