flutter 18

[DART] dart의 추상 클래스

객체지향 프로그래밍(OOP)에서 추상 클래스는 특정 동작이나 속성을 강제하기 위한 강력한 도구입니다. Dart에서도 추상 클래스는 상속을 통해 일반화된 동작을 구체적인 구현으로 확장할 수 있는 기회를 제공합니다. 이번 포스팅에서는 Dart의 추상 클래스에 대해 알아보고, 왜 추상 클래스가 필요한지, 그리고 실전 코드에서 어떻게 활용되는지를 살펴보겠습니다. 1. 추상 클래스란?추상 클래스(Abstract Class)는 완전한 구현을 제공하지 않는 클래스입니다.특정 동작을 서브 클래스가 반드시 구현하도록 강제할 수 있습니다.인스턴스화 불가: 추상 클래스는 직접 객체를 생성할 수 없습니다.추상 메서드: 메서드 본체가 없는, 반드시 구현해야 하는 메서드를 포함할 수 있습니다.상속 필수: 추상 클래스는 다른 클래..

Flutter/Dart 2025.01.07

[Flutter] 연습하기2 - flutter recipe app

만들면서 배우는 플러터 앱 프로그래밍을 바탕으로 연습했습니다.코드를 짜기 전, 최상단 폴더에 assets 폴더를 만들고 이미지와 폰트를 넣어줍니다.이미지 폴더 전체 사용 설정 (pubspec.yaml) # To add assets to your application, add an assets section, like this: assets: - assets/images/images/ 해당 경로 하위의 모든 파일을 가져올 수 있게 됩니다.폰트 사용 설정 (pubspec.yaml) # example: fonts: - family: PatuaOne fonts: - asset: assets/fonts/PatuaOne-Regular.ttf해당 폰트를 불러올 때 입력할 폰트의 ..

Flutter 2025.01.07

[Flutter] 연습하기1 - flutter store app

플러터를 이용해서 간단한 store App을 만들며 문법에 익숙해져보도록 하겠습니다.만들면서 배우는 플러터 앱 프로그래밍을 바탕으로 연습했습니다.코드를 짜기 전, 최상단 폴더에 assets 폴더를 만들고 이미지를 넣어줍니다.yaml 파일 설정 # To add assets to your application, add an assets section, like this: assets: - assets/bag.jpeg - assets/cloth.jpegyaml 파일에서 assets 폴더의 이미지를 사용할 거라고 명시해주면 프로젝트에서 이미지를 가져올 수 있습니다. 시나리오 코드 1 - 초기 코드 작성// 플러터 동작시 반드시 있어야 함import 'package:flutter/material.d..

Flutter 2025.01.07

[DART] 상속(Inheritance)이란 무엇인가요?

상속(Inheritance)은 객체 지향 프로그래밍(OOP)의 핵심 개념 중 하나로, 부모 클래스가 가진 속성(상태)과 메서드(행위)를 자식 클래스가 물려받는 것을 의미합니다. 이를 통해 코드 재사용성을 높이고, 계층적인 구조를 통해 클래스 간의 관계를 명확히 표현할 수 있습니다.하지만 단순히 "물려받는 것" 이상의 의미를 가지며, 다형성(Polymorphism)이 성립할 때 진정으로 올바른 상속이라 할 수 있습니다.  다형성이란?"하나의 형태가 다양한 형태로 동작하는 것" 상속 관계에서 다형성이란, 자식 클래스의 객체가 부모 클래스의 형태로 사용될 수 있는 것을 뜻합니다. 예를 들어, 자식 클래스가 부모 클래스의 타입으로 묶여 있을 때도 부모 클래스에서 정의된 행위를 동일하게 수행하거나, 자식 클래스에..

Flutter/Dart 2025.01.06

[DART] Sound Null Safety in dart

ㅇㅇ널 세이프티(Null Safety)는 개발자가 널 에러를 피할 수 있도록 도와주는 다트 프로그래밍 언어의 기능입니다. 이 기능은 사운드 널 세이프티 인 다트(Sound Null Safety in dart)라고 불리며, 이를 통해 개발자는 코드 작성 시점에 널 에러를 잡을 수 있습니다.  Sound Null Safety in dart 이란 (Sound Type System) 런타임 중에 null 포인터 예외를 방지하기 위해 Dart 컴파일러가 코드를 분석하고 컴파일할 때 타입 시스템에서 엄격한 규칙을 적용하는 것을 의미합니다.정리하면, Dart 컴파일러가 코드를 분석하고, null이 될 수 있는 타입과 null이 될 수 없는 타입을 분명히 구분해 주기 때문에, 우리가 실수로 null을 넣거나 반환하게 ..

Flutter/Dart 2025.01.06

[DART] 클래스와 인스턴스

프로그래밍에서 클래스와 인스턴스는 객체 지향 프로그래밍(OOP)의 가장 기본적인 개념입니다.이번 포스팅에서는 클래스와 인스턴스의 정의, 객체 지향 프로그래밍의 개념, 그리고 Dart에서 이를 활용하는 방법에 대해 알아보겠습니다. 객체 지향 프로그래밍(OOP)이란?객체와 객체간에 관계를 형성하고, 그 상호작용을 통해애플리케이션을 설계, 구현하는 프로그래밍 패러다임 중 하나 입니다.OOP의 주요 목적은 복잡한 문제를 더 작은 객체로 나누어 해결하는 데 있습니다.각각의 객체는 자신의 역할에 충실하며, 서로 협력해 문제를 해결합니다. 더보기OOP의 4가지 주요 특징캡슐화: 데이터를 숨기고, 필요한 메서드만 외부에 제공.상속: 기존 클래스를 기반으로 새로운 클래스를 정의.다형성: 동일한 메서드 이름이 다양한 동작..

Flutter/Dart 2025.01.03

[DART] 익명함수와 화살표함수

프로그래밍에서 함수는 작업을 캡슐화하고 재사용할 수 있도록 도와주는 중요한 도구입니다.Dart에서는 익명 함수와 화살표 함수(람다 표현식)를 사용하여 더 간결하고 유연한 코드를 작성할 수 있습니다. 이번 글에서는 익명 함수와 화살표 함수의 개념과 활용 예제를 알아보겠습니다. 1. 익명함수 (Anonymous Function)익명 함수는 이름이 없는 함수로, 특정 작업을 수행하기 위해 임시로 정의되는 함수입니다. Dart에서 익명 함수는 변수에 할당하거나, 다른 함수의 인자로 넘길 때 유용하게 사용됩니다. 아래에 익명 함수의 문법 모양을 보여드릴게요.(매개변수){ // 수행 구문 }💻 실습하기// 익명 함수void main() { // 1단계 - 이름이 없는 함수(선언을 하더라도 외부에서 사용할 방법이..

Flutter/Dart 2025.01.03

[DART] Dart 기본 문법 익히기

안녕하세요. 이번 포스팅에서는 Google에서 개발한 프로그래밍 언어 Dart의 기본 문법을 소개해 드리려고 합니다.Dart는 Flutter를 활용한 앱 개발에서 주로 사용되며, 간결한 문법과 객체지향 프로그래밍 지원으로 초보자부터 숙련자까지 모두에게 사랑받는 언어입니다.그럼, Dart의 세계로 들어가 보겠습니다! 🚀  1. Dart의 시작 : main() 함수void main() { print("Hello, Dart!"); // 콘솔에 출력}Dart 코드의 실행은 항상 main() 함수에서 시작됩니다. 2. 변수와 데이터 타입변수란?값을 저장할 수 있는 메모리 공간즉 값을 저장해두고 이후 재사용하거나 변경할 수 있도록 메모리 공간을 이름으로 할당한 개념데이터 타입이란?메모리 공간에 들어간 값의 형태..

Flutter/Dart 2025.01.03