객체 지향 언어2개의 컴파일러(JIT, AOT)를 보유강력한 Type 시스템코드 실행 시점에 컴파일을 수행하는 컴파일러.Hot-Reload를 구현할 때 활용사전에 미리 컴파일을 수행하여 높은 실행속도를 필요로 할 때 활용되는 컴파일러.코드 내부를 보호, Dart코드를
Flutter UI 의 가장 기본적인 단위는 WidgetFlutter의 Widget들과의 관계상태 관리 차이별도의 디자이너 직군이 없는 소규모 앱 개발 인원만 있다면 디자인 가이드를 지키는 것이 앱의 완성도를 높이는데 유리하다.Column과 Row로 Layout 구성F
Checkbox, Radio, Slider, Switch, PopupMenuButtonGestureDetector, InkWell환경설정 > version 관리 가능 (안드로이드)xcode에서 version 관리해야함 (ios)같이 버전 가져가는게 좋음.dependen

일단 강의 들은거...기억 나는 부분은..!!전화나 문자가 왔을 때를 직접 조작하여 앱에 문제가 생기는 지 테스트하는 부분!!splash 이미지를 라이브러리로 통제하는 부분!flutter state 관리 툴 top30 보여주는데 riverpod쓰는게 호환잘되서 편해보였
s\_ w\_ 이런 짓 하지말자. 얼마나 길다고 줄이는 지 모르겠다. 코드만 봤을 때는 s_ w_ 이게 스크린인지 위젯인지 어떻게 알 것인가.. 코드만 보고 이해할 수 있도록 전체적으로 쓰려고 해보자. timeago 패키지 시간을 보여주는 패키지 이거 써서 ~
extension으로 함수 만들기 가능.ex) List에 있는 내장함수 이외에 추가해서 더 만들 수 있음.== 오퍼레이터를 재정의 가능함.=> freezed 에서 위 재정의 더 쉽게 가능async / sync 둘 다 가능한 함수 앞에 선언.인터페이스로 많이 쓸듯.시간
최초 개발을 빠르게, 앱 스펙이 수정되었을 때 필요한 부분을 빠르게 찾고 수정하기 위해서.선언형 UI만 잘써도 디자인 패턴을 신경쓰지 않아도 될 것 같다.업데이트할 때 바로 수정못하는 부분. 비슷하게 보호되는듯.클래스의 숫자를 정해놓을 수 있음.그래서 만약 어떤 곳에서
flutter riverpod을 만든 사람이 freezed도 만들고 provider도 만들고.. 멋지군..riverpod에선 상태관리할 때 전역변수화.provider 상태는 ConsumerWidget에서만 가져올 수 잇음.statefulWidget이라면 Consumer
flutter에서 webSocket 사용 시 web_socket_channel 사용.차트는 fl_chart로 구현Floating Action Button이라고 부르는군.
FutureProviderFamily 사진류의 데이터가 메모리에 지속적으로 남게함. AutoDisposeFutureProviderFamily 사진류의 데이터가 보는 사람이 더이상 없다면 자동으로 해제되서 메모리에서 제거됨. 메모리 누수 방지, 불필요한 리소스 사용
image_picker 라이브러리 사용하기. Platform Channel로 인해 ios, android 둘 다 카메라, 갤러리 사용 가능.Platform Channel을 사용하는 라이브러리는 반드시 앱을 껐다 켜야한다고함.ImagePicker.retrieveLostD

앱을 유저에게 알리는 방법마케팅지인, 커뮤니티, SNS, 검색, TV, 신문, 잡지 등앱의 기능정보 컨텐츠 공유 (심리 테스트, 사진, 좋은 글, 영상 등)주요 컨텐츠 공유 (쿠팡 판매 상품, 상담어플 디테일 페이지 등)친구 초대 (초대 코드 보상)멀티 플레이 게임 (
최대한 많은 사람들이 쓸 수 있도록 접근성, 국제화플러터는 기본적으로 flutter_localizations, intl 제공\+easy_localization근데 위는 json으로 관리해야해서 번거로움.sheet_loader_localization으로 google sh

Ch04.11 ~ Ch05.05파일(이미지, 동영상 등)은 모바일 OS별로 저장 경로가 다른데, 얘네로 한 번에 맞춰줄 수 있음.Image_picker 라이브러리를 사용할 때 XFile로 파일을 불러온 경우가 있다.XFile은 여러 OS에 파일을 대응시키기 위한 cro

Block, Line, Element로 Text를 분류해서 확인해서 볼 수 있다.먼저 google_mlkit_text-recognition 라이브러리를 다운받아야한다.의존성에 얘네 설치한다.android > app> build.gradle > deafultConfig의
이미지라벨링은 대표적으로 사진 속 물체 감지&인식 / 공장 및 물품 분류 / CCTV / 밀집도 파악 / 오토 파일럿(자율주행)에 쓰인다.앱에서는 TensdorFLow Lite model을 사용하면 나만의 데이터로도 가능하다.물체의 사이즈가 어느 정도 차지하고있는지도
텐서플로우헙에 가서 버섯 분류에 관련된 .tflite 파일을 다운받고 ImageLabeler에 넣는다..assets/ 폴더 안에 넣기....tflite를 ObjectDetector에 넣는다...더 잘 분류가 된다..강아지를 화장실 휴지로 분류한다.. 호호...

숫자나 글자를 화면에 그렸을 때 인식하게 해주는 AI!\_!google_mlkit_digital_ink_recognition을 사용!minSdkVersion은 21로 변경!디지털 잉크에는 x,y 외에도 시간도 있음!1.획의 순서 정보도 모델이 학습함. => 그럼 획의
개요 사용되는 곳은 셀카 앱, 카메라 앱, 스트리밍 앱, 화상회의 등 얼굴을 찾는거지 사람을 인식하는건 아니라고함. 설치해야할 라이브러리 googlemlkitface_detection googlemlkitfacemeshdetection googlemlkitsel

자세인식, 운동, 의료, 헬스케어, 게임 등에 활용할 수 있다.몸에 33개의 포인트를 생성한 뒤 그를 통해 어떤 자세인지 알 수 있게끔 함.(더 많은 포인트가 나오면 나올수록 좋을듯?)강의 3,4번이 바뀐건가? 암튼 사용하려면 google_mlkit_pose_detec

개발 방법 중 애자일, 그 중에서도 스크럼.빠르게 변화하는 비즈니스 환경에서, 시장의 요구사항에 기민하게 대처하기 위해 개발된 방법론.ex) 누군가 일본어 공부가 하고 싶다고 했을 때, 최소 기능으로 일본어 공부할 수 있는 앱을 출시하여 제공한 뒤 지속적으로 피드백.애

옛날에 친구가 개발하는 군돌이 앱의 개발을 같이 하자는 권유를 받았었을 때 처음 node 버전과 lint 환경을 맞췄던게 기억난다.같은 프로젝트에서 작업을 하더라도 lint와 node 버전을 맞추지 않으면 같은 커밋을 해도 저장만 하면 파일 전체가 바뀌거나 실행이 되지

기능 구현하고 항상 코드를 정리해야겠다.계층간 데이터 교환을 하기 위한 객체로, 비즈니스 로직을 가지지 않는 순수한 객체를 의미함.생성 후 그 상태가 변하지 않는 객체를 쓸 때 freezed를 사용함.다룰 때는 dio와 Retrofit 사용Usecase는 clean a
Service Locator 패턴 어플리케이션 내의 서비스를 중앙화된 위치에서 관리하고 검색하는 디자인 패턴 서비스를 서비스 로케이터에 등록하고 서비스를 검색하면 Locator가 인스턴스를 반환한다. 장점은 코드의 모듈성 향상, 의존성의 관리. 단점은 의존성이
Flutter 기준맨날 fastapi server에서 init.py에서 경로로 빼주는게 있었는데 그게 배럴파일화한다는 것이였다..next js의 경우 index.ts로 루트 경로마다 빼주는거....import문이 깔끔해진다..이런게이렇게 된다고한다...자세한 건.. B
뭔가를 말할 때 어렵게 말하면 안되겠다 느꼈다... 재밌게 말하려고 노력해야겠다. 어렵게 말하는 것까지는 괜찮은데 재미도 없게 말하니 terrible injectable Gei It의 의존성 등록 기능을 Annotation 기반 Code Generation을 통

1000000 > 1,000,000 의 형태로 바꿔주는 패키지인데 인트엘이라고 읽는 것을 첨 알았음.위 ProductCardWidget으로 만들어놓은 Widget을 extends로 받아와서 내부로 넘겨주는 값을 조정하여 새롭게 커스터마이징해서 새로 만들어줄 수 있는게
이번 주 느낀 점 AI는 이번 주도 사기다. 부자들이 AI에 돈을 왜 이렇게 투자하는지 이제야 알 것 같다. claude code를 100달러를 주고 결제했다. 1달 결제인데 이제 앞으로 매 달 결제할 것 같다. 이유는 그냥 개 잘하는 개발자가 나랑 같이 일하

불변 데이터 클래스(Immutable Data Class)를 쉽게 만들어주는 패키지다.풀어서 설명하면 Dart에서 immutable, copyWith, ==, hashCode, toString, union/sealed class 등을 자동 생성해주는 코드 생성 패키지문

PG사란 payment gateway 회사를 줄인 것.각각의 카드사와 계약할 필요 없이, 이미 각각의 카드사와 계약한 PG사와 계약하여 일부의 수수료를 지불하고 결제 시스템을 활용하는 것.pubspec.yaml에 bootpay 설치해서 사용 가능..개인적인 경험으론 P
Dart Shelf는 Dart 언어로 작성된 웹 서버 프레임워크로, 간단하고 조합 가능한 웹 애플리케이션을 구축하는 데 사용됩니다.미들웨어 기반 아키텍처: Shelf는 미들웨어(middleware) 패턴을 중심으로 설계되어 있습니다. 각 미들웨어는 HTTP 요청을 처리

Oauth 2.0 은 사용자의 데이터에 접근학 위해, 접근 권한을 위임 받을 수 있는 프로토콜.프로토콜이라는게 처음엔 http만 있는 줄 알았고,그 다음엔 webSocket을 배우면서 얘도 프로토콜이구나 생각했다.그 이후엔 MCP가 나오면서 얘도 프로토콜이구나 생각했고
간단한 함수 트리거할 때 유용할듯?HTTP 요청 처리간단한 웹훅(webhook) 엔드포인트나 REST API 처리가 필요할 때데이터베이스 이벤트 반응Firestore/Realtime Database에 문서가 생성·수정·삭제될 때 자동으로 후속 작업인증 이벤트새 유저가
자동 캐싱 지원으로 동일 URL 요청 시 네트워크 호출 방지 → 퍼포먼스·대역폭 절감로딩 중·실패 시 보여줄 위젯을 쉽게 지정 가능cacheManager 커스터마이즈로 최대 캐시 크기, 만료 기간 등 조정이미 캐싱된 이미지는 네트워크 없이도 표시 가능JPEG, PNG,
사용자 경험을 향상시키기 위해 시스템 리소스를 효율적으로 활용하고, 앱의 반응성, 속도, 메모리 사용 등을 최적화하는 프로세스const Widget 과 RepaintBoundary를 사용하자.위젯의 깊이를 최소화하자.Build 메서드 내부에 연산을 넣지말자.ListVi
bundle exec fastlane releaseFastlane만 있으면 안드로이드, ios 배포 과정이 명령어 1줄로 끝남.app distribution, test flight, 앱 심사 제출테스트도 되는 것 같고, 슬랙 알림도 되는 것 같음! 스크린샷을 자동으로