본문 바로가기
728x90
반응형

분류 전체보기296

[flutter21] dart 비동기 프로그래밍 1. dart 비동기 프로그래밍에 대한 개념2. flutter 타입에 이해3. Future 타임과 Future delayed 함수 사용해 보기  1. dart 비동기 프로그래밍에 대한 개념을 이해하자.동기성 - 모든 코드가 순차적으로 진행되는 형태, 재 작업이 끝날 때까지 프로그램은 다음 작업을 시작하지 않습니다.예를 들어, 파일 읽기 작업이 끝나야만 다음 줄의 코드가 실행됩니다. 비동기 - 코드가 동시다발적으로 실행, 순착적으로 보장을 할 수 없는 형태dart 비동기 프로그래밍은 프로그램의 흐름을 중단시키지 않고, 무언가의 완료를 기다리는 동안 다른 작업을 수행할 수 있게 해줍니다. Dart에서는 이를 위해 Future라는 데이터 타입을 제공 합니다. * 자바에서 비동기 처리더보기더보기Promise의 .. 2025. 1. 14.
[flutter20] CallBack 함수 자식의 이벤트가 parent  에 반영되도록 하는 것이 callback이다. ChildA, ChildB에 컴포지션 관계 import 'dart:ffi';import 'package:flutter/material.dart';void main() { runApp(MyApp());}class MyApp extends StatelessWidget { const MyApp({super.key}); @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, home: SafeArea(child: ParentsView()), ); }}// 부모 클래스clas.. 2025. 1. 14.
[flutter 20] shopping_cart_app 만들기 쇼핑 카트 앱 만들기  image -> stateFull위젯container  - >   테스트 코드 만들어 보기   1단계 > test코드import 'package:flutter/material.dart';void main() { runApp(MyApp());}//이벤트가 일어나면 다시 화면을 그려야 한다.(reRendering)class MyApp extends StatefulWidget { MyApp({super.key}); @override State createState() => _MyAppState();}class _MyAppState extends State { //현재시간 상태를 저장하는 변수 String timeOfDay = '낮'; @override Widget buil.. 2025. 1. 13.
[flutter19] LoginApp 만들기 Login App 만들기 01- 구조  1. form 태그 안에서  각각의 객체들은    앱의 진입점 라우터 명령어를 사용해 전환하여 사용 import 'package:flutter/material.dart';import 'package:flutter_login_app/components/custom_form.dart';import 'package:flutter_login_app/components/logo.dart';import 'package:flutter_login_app/pages/home_page.dart';import 'package:flutter_login_app/pages/login_page.dart';import 'package:flutter_login_app/size.dart';void.. 2025. 1. 13.
[디자인패턴] Adaptor 어댑터 패턴 (Adapter Pattern)1. 어댑터 패턴이란?어댑터 패턴은 호환되지 않는 인터페이스를 가진 클래스들 간에 호환성을 제공하기 위한 구조적 디자인 패턴입니다.즉, 서로 다른 인터페이스를 가진 객체들이 함께 동작할 수 있도록 중간 역할을 수행하는 클래스(어댑터)를 정의합니다.어댑터 패턴의 주요 특징중재 역할: 두 객체 사이에서 서로 다른 인터페이스를 연결.호환성 제공: 기존 코드를 수정하지 않고도 새로운 코드와 함께 동작 가능.유연성 증가: 코드 변경 없이 다양한 상황에 재사용 가능.코드 분석1. 인터페이스 정의IElectronic220v와 IElectronic110v는 각각 220v와 110v 전자 기기를 연결하기 위한 인터페이스입니다.interface IElectronic220v { .. 2025. 1. 9.
[디자인패턴] 싱글톤 패턴 싱글톤 패턴 (Singleton Pattern)1. 싱글톤 패턴이란?싱글톤 패턴은 클래스의 인스턴스를 단 하나만 생성하고, 어디서든 이 인스턴스에 접근할 수 있도록 하는 디자인 패턴입니다.주로 다음과 같은 경우에 사용됩니다:전역적으로 하나의 객체만 존재해야 하는 경우객체 간의 공유 자원 관리가 필요한 경우싱글톤 패턴의 구현 과정1. 정적 변수를 선언private static SingleTon instance;클래스 내에 유일한 인스턴스를 저장하기 위해 static으로 선언합니다.외부에서 직접 접근하지 못하도록 private 접근 제어자를 사용합니다.2. 생성자를 private로 선언private SingleTon() {}private 생성자를 선언하여 외부에서 new 키워드를 통해 인스턴스를 생성하지 못.. 2025. 1. 9.
[ 디자인패턴 ] 콜백 메서드 직접 만들어 보기 학습 목표 1. 콜백 메서드의 개념과 동작 방식을 이해할 수 있다. 2. 콜백 메서드를 활용한 코드를 작성할 수 있다. 3. 콜백 메서드가 필요한 상황과 그 장점을 설명할 수 있다. 사전 기반 지식인터페이스: Java 인터페이스의 개념을 이해하고, 메서드를 선언하고 구현하는 방법을 알고 있어야 합니다.익명 클래스: 클래스 정의 없이 인터페이스를 바로 구현하는 익명 클래스의 사용법을 알고 있어야 합니다.콜백 메서드 개념콜백 메서드는 특정한 작업이 완료되었을 때 또는 특정 이벤트가 발생했을 때 호출되는 메서드입니다. 콜백 메서드는 주로 비동기 작업이나 이벤트 기반 시스템에서 사용됩니다. 콜백 메서드를 활용하면 동작을 정의하고 나중에 실행할 수 있기 때문에, 프로그램이 더 유연해지고 모듈화될 수 있습니다.  .. 2025. 1. 9.
[ 디자인패턴 ] 디자인 패턴이란? 디자인 패턴 디자인 패턴(Design Patterns)은 소프트웨어 개발에서 자주 반복되는 문제들을 해결하기 위해 만들어진 재사용 가능한 코드 설계 방법입니다. 즉, 소프트웨어 설계 시 발생할 수 있는 문제를 효율적으로 해결하기 위한 설계의 모범 사례라고 할 수 있습니다.장점개발자간의 원활한 소통소프트웨어 구조 파악이 용이재사용을 통한 개발 시간 단축설계 변경 요청에 대한 유연한 대처단점객체지향 설계에 대한 깊은 이해도가 필요간단한 문제에 대해 디자인 패턴을 적용하는 것이 오히려 더 복잡하고 비효율적일 수 있습니다.모든 문제에 대해 디자인 패턴을 적용하는 것은 적절하지 않습니다.디자인 패턴은 크게 생성(Creational), 구조(Structural), 행동(Behavioral)으로 구분할 수 있습니다... 2025. 1. 9.
[1일1쿼리] 오늘이 생일인 사람이 각 부서마다 몇명인가 ? select right(e.birth_date,5) as 'birthDay' , d.dept_name, count(e.emp_no) as 'count'from employees as ejoin dept_emp as m on m.emp_no = e.emp_noleft join departments as d on d.dept_no = m.dept_nowhere right(e.birth_date,5)= substring(now(),6,5) and m.to_date = '9999-01-01'group by d.dept_namewith rolluporder by d.dept_name desc, e.emp_no asc; 2025. 1. 8.
[Flutter00] Flutter 기초다지기3 _ List ListView 사용법과 주요 property가장 일반적으로 사용되는 스크롤 위젯ListView는 주로 다음과 같은 방식으로 사용일반적인 ListView를 명시적으로 호출하고 children 전달하는 방법 (적은 데이터에 사용시 용이함)ListView.builder를 사용하여 동적으로 호출ListView.separated는 ListView.builder 기능에 구분선 사용 가능주요 propertyreverse: true이면 bottom에서부터 리스트 표시padding: 리스트 아이템 간격 (EdgeInsets로 적용)itemCount: 동적 리스트 아이템 개수 (ListView.builder/ListView.separated에서 사용 가능)itemBuilder: 각 동적 리스트 아이템 정의 (ListVi.. 2025. 1. 8.
728x90
반응형