본문 바로가기
728x90
반응형

분류 전체보기296

[flutter] 상태관리가 되는 앱 만들어 보기 02 (inheritedWidget) 3단계 작업 (InheritedWidget 사용 해보기)앞의 단계를 보고싶다면 아래의 링크로 props Drilling을 해결하기 위한 방안Inherited_Parent// InheritedWidget 내장 데이터 타입을 상속받아 구현한다.import 'package:flutter/cupertino.dart';import '../common.utils/logger.dart';class InheritedParent extends InheritedWidget { // 공유 상태 데이터 관리에 목적 // List mySelectedBooks = []; List state; // 카드에 담긴 책 목록(공유 상태) // 부모에게 콜백 메서드를 관리하는 목적 void Function(String book).. 2025. 1. 20.
[flutter] 상태관리가 되는 앱 만들어 보기 01 우리가 배울 여러 상태 관리 방법을 이용해 데이터 일관성을 유지해 봅시다.StatefulWidgetInheritedWidgetProvider(라이브러리)Riverpod(라이브러리)1단계 statelessWidget statefulWidget 위젯 만들어보기StatelessWidgetimport 'package:flutter/material.dart';void main() => runApp(MaterialApp( debugShowCheckedModeBanner: false, home: MyStatelessWidget(), ));//statelessWidget은//상태의 변화없이 항상 동일한 UI를 그린다.//이런 위젯은 데이터나 변수의 값이 변하지 않을때 사용합니다.//포인트!! =.. 2025. 1. 20.
[flutter] 로컬 상태와 공유 상태 상태(State)의 종류상태는 공유 여부에 따라 로컬 상태(Local State)와 공유 상태(Shared State)로 나눌 수 있습니다.https://docs.flutter.dev/data-and-backend/state-mgmt/ephemeral-vs-app[Differentiate between ephemeral state and app stateHow to tell the difference between ephemeral and app state.docs.flutter.dev](https://docs.flutter.dev/data-and-backend/state-mgmt/ephemeral-vs-app)로컬 상태(Local State) : 공유되지 않는 상태BottomNavigationBar의 .. 2025. 1. 20.
[flutter] StatelessWidget 과 StatefulWidget 상태란 뭘까?Stateless Widget과 고정상태import 'package:flutter/material.dart';void main() { runApp(MaterialApp(home: MyStatelessWidget()));}// Stateless// 상태의 변화 없이 항상 동일한 UI를 그립니다.// 이런 위젯은 데이터나 변수의 값이 변하지 않을 때 사용합니다.class MyStatelessWidget extends StatelessWidget { // 변수에 final 키워드 즉 상수이다. final msg = '안녕하세요! 저는 Stateless 위젯입니다.'; @override Widget build(BuildContext context) { return Scaffold( .. 2025. 1. 20.
[Flutter 프로젝트] 개발일지00 프로젝트 기획하기우리 팀은 프로젝트를 일단 reference로 당근마켓과 번개장터를 적용하기로 했다.  아직 flutter에 대해 심도있게 배우지 않았기 때문에 , 해당 기간안에 어느 범위까지 가능할지에 대해 막연하기 때문에 1차 개발에 조금 작은 목표를 가지고 시작하기로 하였다. 1. 핵심 목표 정의중고 전자제품 거래 플랫폼으로서 사용자 간 안전하고 편리한 거래 환경 제공.거래 과정의 간소화와 신뢰도를 높이는 기능 도입.직관적이고 사용자 친화적인 UI/UX.2. 타겟 사용자 정의주요 타겟: 전자제품 중고 구매 및 중고 판매를 원하는 개인 사용자.추가 타겟: 중고 제품 경매로 판매 및 구매 하려는 개인 사용자 및 소규모 사업자3. 핵심 기능 설계사용자 계정 및 인증이메일 및 소셜 로그인 (Google, .. 2025. 1. 19.
[flutter] Error 키보드 origin_client_hide_soft_input reason hide_soft_input_by_insets_api 문제 상황텍스트필드를 눌렀을때 , 키보드가 왔다갔다 거리면서 제대로 위치를 잡지 못하는 오류가 지속적으로 생겼다. I/ImeTracker: onRequestHide at ORIGIN_CLIENT_HIDE_SOFT_INPUT reason HIDE_SOFT_INPUT_BY_INSETS_APII/InputMethodManager_LC: notifyImeHidden: IInputMethodManagerGlobalInvoker.hideSoftInputI/ViewRootImpl: Resizing android.view.ViewRootImpl frame=[0,0][1080,2340]1. 키보드가 열릴때 : 화면 레이아웃이 재조정되며 화면이 다시 랜더링 되는 문제2. 키보드가 닫힐때 : 레이아웃이 충돌하여 UI가 흔들.. 2025. 1. 19.
[flutter 23] flutter BoxShadow boxShadow란?Flutter에서 boxShadow는 위젯의 그림자 효과를 추가하는 데 사용됩니다.주로 Container 위젯의 decoration 속성 안에서 **BoxDecoration**과 함께 사용되며, 그림자의 색상, 위치, 크기 등을 설정할 수 있습니다. 이 속성을 활용하면 위젯에 입체감과 시각적 효과를 부여할 수 있습니다.boxShadow 속성의 주요 구성 요소boxShadow는 List 타입을 가지며, 다음과 같은 속성으로 구성됩니다:color:그림자의 색상을 지정합니다.기본값은 **Colors.black**입니다.offset:그림자의 위치를 설정합니다.Offset(dx, dy) 형식으로 가로(x축) 및 세로(y축) 방향으로 이동 거리를 설정합니다.예: Offset(4, 4)은 그림자를.. 2025. 1. 16.
[Flutter22] Card 위젯은? Flutter의 Card 위젯이란?Flutter의 Card는 Material Design 스타일의 카드 형태의 UI를 제공하는 위젯입니다.텍스트, 이미지, 버튼 등 다양한 콘텐츠를 담을 수 있으며, 그림자와 둥근 모서리를 기본으로 제공해 시각적으로 매력적인 UI 요소를 쉽게 구현할 수 있습니다. 예제 코드와 주석아래는 Card 위젯을 사용하는 Flutter 예제 코드이며, 각 부분에 대해 상세한 설명을 포함하고 있습니다. import 'package:flutter/material.dart'; // Flutter의 Material Design 라이브러리 임포트void main() { runApp(MyApp()); // 애플리케이션의 시작점, MyApp 실행}// 앱의 메인 위젯class MyApp ext.. 2025. 1. 16.
[JAVA] SOLID 원칙 S.O.L.I.D 원칙이란? 로버트 C. 마틴(Robert C. Martin), 흔히 "아저씨 보브(Uncle Bob)"로 알려진 소프트웨어 엔지니어가 발표한 객체 지향 프로그래밍 설계 원칙입니다. 즉, SOLID 원칙이란 객체지향 설계의 5가지 중요한 원칙을 뜻하며, 유지보수성과 확장성을 높이기 위해 설계 과정에서 따르는 지침입니다.  사전 기반 지식객체지향 프로그래밍의 기본 개념 (클래스, 객체, 상속, 다형성 등)Java에서 인터페이스와 상속 사용 방법접근 제한자, 메서드 오버라이딩, 클래스 간 관계 등의 기본 개념 단일 책임 원칙(Single Responsibility Priciple, SRP)- 클래스는 하나의 책임만 가져야 한다. 하나의 책임이란 클래스가 변경되어야 하는 이유가 하나뿐이어야 한.. 2025. 1. 16.
[디자인 패턴] 전략 패턴 [Strategy Pattern] 전략 패턴 (Strategy Pattern) 전략 패턴(Strategy Pattern)은 행동(알고리즘)을 캡슐화하여 동적으로 변경하거나 선택할 수 있도록 도와주는 디자인 패턴입니다. 객체의 행동을 별도의 클래스로 분리하여 실행 중에 행동을 교체할 수 있게 합니다. 이 패턴은 개방-폐쇄 원칙(Open/Closed Principle)을 따르며, 코드를 확장하기 쉽게 설계할 수 있습니다. 전략 패턴의 구성 요소 Context (문맥 클래스): 클라이언트가 사용하는 클래스이며, 특정 전략(알고리즘)을 사용하는 역할을 합니다. 전략 객체를 주입받아 사용하며, 주입된 전략에 따라 동작이 결정됩니다. Strategy (전략 인터페이스): 공통 인터페이스로, 다양한 전략들이.. 2025. 1. 16.
728x90
반응형