webRTC 실험요약
·
Flutter/Flutter
보호되어 있는 글입니다.
static GetIt get instance => _instance; <-- 여기에 쓰인 문법을 모두 설명해보세요.
·
Flutter/Dart
static GetIt get instance => _instance;이 코드가 이해가 안가서 작성하는 글 static과 => 연산자의 의미static: 클래스의 인스턴스를 만들지 않고도, 해당 변수나 메서드에 접근할 수 있게 해주는 키워드=>: 화살표(=>)는 Dart에서 간결한 함수 표현식으로, return을 사용하는 대신 값을 간단하게 반환할 때 사용한다. 문법 분석하기이 부분을 보자:static GetIt get instance => _instance;static: instance라는 게터가 클래스의 인스턴스 없이도 바로 접근할 수 있음을 의미GetIt: 이건 반환 타입. (겟잇 라이브러리는 일단 배제하자) instance를 호출하면 GetIt 타입의 값을 반환한다는 뜻.get: Dart에서 ge..
멤버 변수 vs 상태
·
Flutter/Dart
클래스 도중 멤버 변수와 상태는 무슨차이인가? 하는 질문이 나왔다. 나는 상태를 데이터라고 생각한다. (늘 맞는건 아님) 멤버변수는 클래스 인스턴스에 종속된 일반적인 데이터를 저장하고 관리하는거고,상태는 UI와 밀접하게 연동되어 데이터를 관리하고 UI를 업데이트하는 중요한 역할을 한다고 생각한다. 즉멤버변수는 데이터 자체에 중점을 두고, 상태는 데이터와 UI 간의 동기화에 중점을 두는 친구라고 생각한다
플러터의 핫 리로드는 어떻게 적용되는것일까 with GPT
·
Flutter/챗지피티랑놀.기
🧐 핫 리로드에서는 왜 route 변경이 반영되지 않지?  핫 리로드(Hot Reload)는 앱을 빠르게 업데이트하는 기능이지만, 현재 상태(State)와 UI를 유지하는 방식으로 동작하기 때문이야. Flutter에서 핫 리로드는 실행 중인 앱의 코드만 업데이트하고 앱의 전체 상태나 위젯 트리를 초기화하지 않기 때문에 라우트 설정이 다시 적용되지 않아. 앱의 초기화 과정은 main() 함수에서 시작하고, 이때 앱의 라우트(Route) 설정이나 초기 상태(State)가 결정돼 핫 리로드는 앱의 상태나 기존에 생성된 위젯 트리에는 영향을 주지 않고, 코드 변경 사항만 반영해.즉, 라우트 변경은 MaterialApp이나 CupertinoApp에서 정의된 라우트 설정 자체를 다시 실행하거나 재초기화해야만 반영..
STFUL Lifecycle
·
Flutter/Flutter
didUpdateWidget()와 setState()의 차이점 didUpdateWidget(): Flutter 프레임워크가 자동으로 호출하는 메서드로, 부모 위젯에서 전달된 속성값이 변경될 때 실행됨. 즉, 이 메서드는 개발자가 직접 호출하지 않고 Flutter가 필요한 시점에 실행하는 생명주기와 관련된 메서드다.setState(): 개발자가 명시적으로 호출하여 위젯의 상태를 변경할 때 사용하는 메서드. setState()를 호출하면 Flutter에게 해당 위젯의 상태가 변경되었음을 알리고 build()를 다시 실행하여 UI를 업데이트 할 수 있게 된다 Dirty와 Clean은 뭐지~?😟 - Dirty: 위젯의 상태나 속성이 변경되어 다시 빌드가 필요한 상태를 말한다. setState()가 호출되면 위..
build method 와 render tree를 모르고 hot reload를 논하지마라
·
Flutter/Flutter
핫리로드가 될 때 화면이 아예 다시 그려지는건가? 라는 의견이 나왔다 아닌 것 같은데 왜 아니지 !!!!!!!!!!!!!설명을 똑바로 못했다 왜 설명을 못했을까. 내 문제점은 다음과 같았다 1.빌드메서드가 정확히 뭘 하는지 몰랐다.2.핫리로드랑 빌드메서드의 연관관계를 몰랐다. 그렇다면 알아보자 ㄱㄱ The framework replaces the subtree below this widget with the widget returned by this method, either by updating the existing subtree or by removing the subtree and inflating a new subtree, depending on whether the widget returned..
abstract, fromMap, abstract
·
Flutter/챗지피티랑놀.기
abstract`abstract`는 11살 아이가 쉽게 이해할 수 있게 이렇게 설명할 수 있어:생각해보면, abstract는 설계도 같은 거야. 예를 들어, 자동차를 만든다고 할 때, 설계도는 "자동차에는 바퀴가 있어야 하고, 핸들이 있어야 해"라고 말해. 하지만 바퀴가 몇 개인지, 핸들이 어떤 모양인지는 알려주지 않아. 그건 실제로 자동차를 만들 때 결정해.즉, abstract는 클래스가 어떤 기능을 가져야 하는지 정해주지만, 그 기능이 정확히 어떻게 동작하는지는 나중에 구현하라는 의미야.abstract는 Dart에서 추상 클래스나 추상 메서드를 정의할 때 사용하는 키워드다. 추상 클래스는 직접 인스턴스화될 수 없으며, 반드시 서브클래스에서 구현되어야 한다.역할:공통 인터페이스 제공: 클래스가 가져야 ..
Little Guardian 앱 목표 기간 스프린트 구성
·
Flutter/새싹
현재 작업이 완료 된 아이들을 포함하여 기간을 조정함.후에 달라질 수도 있지만, 다음과 같은 틀에 벗어나지 않도록 함완성 목표 기간 ~ 10/21스프린트 기준모델 설계와 Firebase 연동 완료핵심 ViewModel 및 UI 설계 완료WebRTC 소리 듣기 기능과 Firebase 연동Push 알림(FCM) 연동 및 최종 테스트테스트 및 디버깅 완료앱 배포 준비 및 최종 마무리스프린트별 목표첫 번째 스프린트: 모델 및 Firebase 연동 완료모델 설계 완료 (Guardian, Child 모델)Firebase 연동 (Firestore 컬렉션 설계 및 기본 CRUD 기능 구현)FirebaseManager 초기 설정 및 데이터 연동 테스트두 번째 스프린트: ViewModel 및 UI 설계, Firebase ..
폴더 구조를 계속 변경하는중... ~ing
·
Flutter/새싹
앱의 폴더구조란, 앱이 어떤 아키텍쳐 혹은 디자인 패턴을 표방하고 있는지 가장 잘 볼 수 있는 곳이라고 생각한다. 처음에 내 폴더 구조는 이랬다.앱 폴더 구조lib/│├── core/ # 비즈니스 로직, 데이터 관리│ ├── models/ # 데이터 모델 클래스들│ ├── services/ # 외부 API, 데이터베이스 서비스│├── ui/ # 화면 관련 코드│ ├── view/ # 화면 UI 구성│ ├── widgets/ # 공통으로 사용하는 위젯│ ├── viewModel/ # UI와 비즈니스..