본문 바로가기
반응형

Dart168

[고급] Dart제네릭 프로그래밍/ 제네릭의 한계와 제약 조건 Dart에서 제네릭(Generic)은 매우 유용한 기능으로, 코드의 재사용성을 높이고 타입 안전성을 보장하는 데 큰 역할을 합니다.그러나 제네릭은 만능이 아니며, 몇 가지 한계와 제약 조건이 있습니다. 이 글에서는 Dart 제네릭의 한계와 이를 어떻게 관리할 수 있는지에 대해 알아보겠습니다.1. 제네릭의 한계1.1 런타임 시 타입 정보 손실 (Type Erasure)Dart에서는 제네릭 타입 정보가 런타임에 유지되지 않고, 컴파일 시에 제거되는 특성이 있습니다.이를 타입 소거(Type Erasure)라고 합니다. 이로 인해 런타임에 제네릭 타입에 대한 정보에 접근할 수 없게 됩니다.void checkType(T item) { if (item is List) { print("List of T"); .. 2024. 9. 8.
[고급] Dart제네릭 프로그래밍/ 제네릭 클래스와 함수 작성 방법 - 단계별 예제와 설명 Dart는 타입 안전성과 코드 재사용성을 제공하는 강력한 언어로, 제네릭(Generic)은 이러한 이점을 극대화할 수 있는 중요한 기능입니다. 이번 글에서는 제네릭 클래스를 작성하고 제네릭 함수를 만드는 방법에 대해 설명하겠습니다.초보자도 이해하기 쉽게 단계별로 설명할 테니, 끝까지 따라와 보세요!1. 제네릭 클래스 작성하기제네릭 클래스는 클래스 내부에서 다양한 타입을 처리할 수 있도록 하는 구조입니다. 제네릭 클래스를 사용하면 동일한 로직을 여러 타입에 적용할 수 있어 코드 재사용성을 높일 수 있습니다.1.1 기본 구조제네릭 클래스는 다음과 같은 기본 구조를 가집니다.class ClassName { T value; ClassName(this.value); void showValue() { p.. 2024. 9. 8.
[초급] Dart Server JSON 처리 및 데이터 직렬화/ 간단한 API 서버 구축하기: JSON 데이터 반환 및 처리 Dart는 서버 개발에도 강력한 기능을 제공하며, 특히 dart:io와 dart:convert 라이브러리를 사용하여 간단한 API 서버를 구축할 수 있습니다.이 블로그에서는 Dart로 JSON 데이터를 반환하고 처리하는 간단한 API 서버를 구축하는 방법을 초보자도 쉽게 이해할 수 있도록 설명하겠습니다.1. 환경 설정먼저, Dart SDK를 설치하고 개발 환경을 설정해야 합니다. Dart SDK가 설치된 후, 원하는 IDE(예: Visual Studio Code, IntelliJ)에서 Dart 프로젝트를 생성합니다.2. 간단한 HTTP 서버 구축Dart에서 HTTP 서버를 구축하려면 dart:io 라이브러리를 사용합니다. 이 라이브러리는 HTTP 요청과 응답을 처리하는 데 필요한 기능을 제공합니다.2.1.. 2024. 9. 6.
[초급] Dart Server JSON 처리 및 데이터 직렬화/ dart:convert 라이브러리를 사용한 JSON 인코딩/디코딩 Dart에서 JSON 데이터를 처리하는 것은 웹 개발 및 데이터 통신에서 매우 중요한 작업입니다.dart:convert 라이브러리는 JSON 데이터를 인코딩하고 디코딩하는 데 필요한 강력한 도구를 제공합니다.이 블로그에서는 dart:convert 라이브러리를 사용하여 JSON 데이터를 처리하는 방법을 초보자도 쉽게 이해할 수 있도록 설명합니다.1. JSON 인코딩과 디코딩 개념JSON 인코딩: Dart 객체를 JSON 문자열로 변환하는 과정입니다. 이 과정은 데이터를 저장하거나 네트워크를 통해 전송할 때 사용됩니다.JSON 디코딩: JSON 문자열을 Dart 객체로 변환하는 과정입니다. 이 과정은 서버로부터 받은 JSON 데이터를 사용하거나 저장된 JSON 데이터를 읽을 때 필요합니다.2. dart:co.. 2024. 9. 6.
[초급] Dart Server JSON 처리 및 데이터 직렬화/JSON 데이터를 다루는 기본 방법 Dart에서 JSON(JavaScript Object Notation) 데이터 처리는 서버와 클라이언트 간의 데이터 교환에서 매우 중요한 역할을 합니다. JSON은 데이터 포맷으로 널리 사용되며, 가볍고 인간이 읽기 쉬운 구조를 가지고 있습니다.이 블로그에서는 Dart에서 JSON을 다루는 기본 방법과 데이터 직렬화 방법에 대해 초보자도 이해할 수 있도록 자세히 설명하겠습니다.1. JSON 기본 개념JSON은 데이터를 구조화하여 저장하고 전송하는 포맷입니다. JSON 데이터는 객체와 배열로 구성되며, 다음과 같은 형식을 가지고 있습니다.객체: { "key": "value", "key2": "value2" }배열: [ "value1", "value2", "value3" ]JSON은 키-값 쌍으로 데이터를 .. 2024. 9. 6.
[중급] Dart 클래스 심화/연산자 오버로딩과 메소드 체이닝 활용법 1. 연산자 오버로딩 (Operator Overloading)1.1 연산자 오버로딩이란?연산자 오버로딩은 우리가 일반적으로 사용하는 수학적 연산자(예: +, -, *, / 등)를 클래스에서 재정의할 수 있는 기능입니다. 이 기능을 사용하면, 객체를 더하거나 빼는 등의 연산을 클래스 내에서 정의한 대로 사용할 수 있습니다.1.2 연산자 오버로딩 예제예를 들어, Vector라는 2D 벡터를 나타내는 클래스를 만들고 벡터끼리 더하는 기능을 구현해 보겠습니다.class Vector { final double x; final double y; Vector(this.x, this.y); // + 연산자 오버로딩 Vector operator +(Vector other) { return Vector(x .. 2024. 9. 6.
반응형