1. 상속상속을 알기 위해선 클래스 개념에 대해 먼저 알아야합니다. 클래스가 기억 안나신다면 여기!https://sfida.tistory.com/70 [Dart] 객체지향 프로그래밍: 클래스, 속성, 메서드, 생성자 (Class, Property, Method, Constructor)1. 클래스 클래스는 설계도입니다. 예를 들어 우리가 게임을 만든다고 생각해 볼게요.먼저 캐릭터가 있어야겠죠? 캐릭터는 이름, 체력, 공격력 같은 속성을 가지고 있고, 공격한다, 점프한다sfida.tistory.com 개념에 대해 먼저 알려드리자면 상속은 기존 클래스의 기능을 확장하여 새로운 클래스를 만드는 것입니다. 이해하기 쉽게 코드로 설명할게요.아래 코드는 이전 클래스 포스팅에서 사용했던 Character 클래스입니다..
1. 클래스 클래스는 설계도입니다. 예를 들어 우리가 게임을 만든다고 생각해 볼게요.먼저 캐릭터가 있어야겠죠? 캐릭터는 이름, 체력, 공격력 같은 속성을 가지고 있고, 공격한다, 점프한다 같은 행동도 할 수 있습니다. 그렇다면 이 캐릭터를 사용하는 사람들이 10명이라고 가정했을 때, 10개의 캐릭터마다 속성과 행동을 일일이 정의해야 할까요?정답은 아닙니다! 캐릭터의 설계도(클래스)를 하나 만들어 놓고, 복사(인스턴스화)해서 사용하면 됩니다. class Character { // 속성 String name; int health; int attackPower; // 생성자 (Character 객체를 만들 때 필요한 것들) Character(this.name, this.health, this.at..
1. 함수형 프로그래밍 (Functional Programming)Dart는 객체 지향 프로그래밍과 함수형 프로그래밍, 비동기 프로그래밍을 모두 제공하는 언어입니다. 이번 포스팅에서는 함수형 프로그래밍(Functional Programming, FP)에 대해 소개하겠습니다. 함수형 프로그래밍은 순수 함수와 불변성을 기반으로 하는 프로그래밍 방식이에요. 순수 함수와 불변성에 대해서는 아래 특징에서 설명드릴게요. 2. 특징1) 순수 함수 (Pure Function)순수 함수는 동일한 입력에 대해 항상 동일한 결과를 반환하고, 외부 상태를 변경하지 않는 함수입니다. int add(int a, int b) { return a + b;}이 함수는 a와 b를 인자로 받아 두 수를 더하는 함수예요. a = 1, b..
1. 제네릭제네릭은 클래스나 함수에서 다양한 데이터 타입을 유연하게 사용할 수 있도록 해주는 기능입니다. 예제 코드를 통해 더 알아볼게요!int getFirstInt(List items) { return items[0];}String getFirstString(List items) { return items[0];}void main() { print(getFirstInt([1, 2, 3])); // 1 print(getFirstString(["apple", "banana"])); // apple} getFirstInt 함수와 getFirstString 함수는 모두 매개변수로 받은 리스트의 첫 번째 요소를 반환하는 함수예요. 다른 점이라고 한다면, getFirstInt에서는 int타입의 리..