개발자/SupaBase && Flutter 6

06. (Dart 개념_노마드코더 강의)설계도에 빗댄 Dart 개념 총정리

설계도에 빗댄 Dart 개념 총정리1. 클래스(Class)클래스는 설계도와 같다. 클래스는 객체(실물)를 만들기 위한 청사진으로, 자동차의 모델, 색상 같은 속성(특징)과 동작(메서드)을 정의한다.예: 자동차 설계도에 차의 모델, 색상, 운전 방법이 정의되어 있는 것과 같다.2. 인스턴스(Instance)인스턴스는 설계도를 바탕으로 실제로 만들어진 완성된 자동차다. 클래스라는 설계도를 바탕으로 실물(객체)이 생성된 것이다.예: 설계도를 바탕으로 제작된 Tesla Model S라는 실제 자동차가 인스턴스다.3. 상속(Inheritance)상속은 부모 설계도에서 자식 설계도로 기능과 속성을 물려받는 것이다. 부모 설계도에 있는 공통된 부분을 물려받아, 자식 설계도는 이를 기반으로 추가적인 기능을 더할 수 있..

05. (Dart 개념_노마드코더 강의)Classes

5.0 Your First Dart ClassDart에서 클래스의 속성(Property) 을 선언할 때는 타입을 명시하여 정의합니다. 또한, final 키워드를 사용하면 해당 속성은 값을 한 번만 할당할 수 있게 되어, 이후에 변경되지 않도록 보장할 수 있습니다.1. 클래스 속성 선언class Player { final String name = 'jisoung'; // String 타입의 final 속성 final int age = 17; // int 타입의 final 속성 void sayName() { // 클래스 메서드 안에서 this 사용은 권장되지 않음 print("Hi my name is $name"); }}final String name = 'jisou..

04.(Dart 개념_노마드코더 강의) Functions

4.0 Defining a FunctionDart는 객체 지향 언어이기 때문에 함수도 객체이며, 타입은 Function입니다. 이를 통해 함수를 변수에 할당하거나 다른 함수의 인수로 전달할 수 있습니다. Dart에서는 함수 선언을 여러 방식으로 할 수 있습니다.1. 기본적인 함수 선언String sayHello(String name) { return "Hello ${name}, nice to meet you.";}num plus(num a, num b) { return a + b;}2. Fat Arrow Syntax(=>)Fat arrow syntax는 하나의 표현식만 포함하는 함수에서 사용할 수 있는 단축 구문입니다. 함수의 본문을 한 줄로 표현할 때 사용되며, 표현식의 결과가 함수의 반환값이 됩니..

03. (Dart 개념_노마드코더 강의) Data Type

3.0 기본 데이터 타입아래 타입을 포함한 거의 대부분의 타입들이 객체로 이루어져 있다. (함수도 객체)이것이 Dart가 진정한 객체 지향 언어로 불리는 이유이다.void main() { String name = "tom"; bool isPlay = true; int age = 10; double money = 52.55; num x = 12; num y = 1.2; } 3.1 ListsDart에서 리스트(List)를 선언하는 두 가지 방법이 있습니다.void main() { // 1. 타입 추론을 사용한 리스트 선언 var case1 = [1, 2, 3, 4, 5]; // 2. 명시적으로 List 타입을 선언 List case2 = [1, 2, 3, 4, 5];}유용한 기능콤마(,..

02. (Dart 개념_노마드코더 강의) Variables

2.0 Mainmain함수는 모든 Dart 프로그램의 Entry point이다.main 함수에서 쓴 코드가 호출된다. (만약 main이 없다면 실행이 되지 않음)dart는 자동으로 세미콜론을 붙여주지 않기 때문에 직접 붙여야 한다. (일부러 세미콜론을 안 쓸 때가 있기 때문)void main(){ print("hello world"); } 2.1 Vardart에서는 변수를 var 키워드 또는 명시적 타입을 사용해 만든다.void main(){ var name = "jisu" } void main(){ String name = "jisu" } 당연한 말이지만 다른 타입의 변수는 서로 대입할 수 없다.보통함수나 메소드 내부에 지역변수를 지정할 때는 var를 사용하고class에서 변수나 프로퍼..

01. (Dart 개념_노마드코더 강의) Flutter가 Dart를 선택한 이유

dart 는 두 개의 컴파일러를 가지고 있다(JIT, AOT) AOT 컴파일러 (Ahead-of-time)네이티브(arm, x86, x64), 웹(js)시스템에 맞게 최적화된 바이너리를 생성하므로 컴파일에 많은 시간이 걸린다.최종 배포시 사용. JIT 컴파일러dart VM 사용코드의 결과를 바로 보여준다. (ms 단위?)가상머신에서 동작중이라 조금 느리지만 많은 디버깅 옵션도 지원.개발중에만 사용하며 배포에는 사용하지 않음. null safety 특성을 가진다.c나 java에서 null 참조하면 오류 발생. flutter, dart 둘 다 google 에서 개발 한 것이다 즉 flutter 의 성능 향상을 위해 dart 를 변경 하는 것도 가능하다. flutter 가 처음 나왔을 때 AOT 컴파..