본문 바로가기

분류 전체보기56

Dart #6 : Abstract, Implicit interface, Extends Dart : https://dart.dev/guides/language/language-tour 1. Abstract classes abstract 한정자를 사용하여 인스턴스화 할 수없는 추상 클래스를 정의한다 추상 클래스가 인스턴스화 가능한 것처럼 보이게하려면 팩토리 생성자를 정의한다 // 이 클래스는 abstract 클래스이므로 인스턴스화 할 수 없다 abstract class AbstractContainer { // 생성자, 필드, 메소드를 정의한다 // 추상 메소드 void updateChildren(); } 2. Abstract methods 인스턴스, getter/setter 메서드는 추상적 일 수 있으며 인터페이스를 정의하지만 구현은 다른 클래스에서 한다 추상 메서드는 추상 클래스에만 존재할.. 2020. 8. 28.
Dart #5 : Classes, Constructor Dart : https://dart.dev/guides/language/language-tour 다트는 클래스와 Mixin 기반 상속이있는 객체 지향 언어이다 모든 객체는 클래스의 인스턴스이며 모든 클래스는 Object 의 자식이다 믹스인 기반 상속은 모든 클래스 (Object 제외) 에 하나의 수퍼 클래스가 있지만, 클래스 본문은 여러 클래스 계층에서 재사용 될 수 있다 확장 메서드는 클래스를 변경하거나 하위 클래스를 만들지 않고 클래스에 기능을 추가하는 방법이다 1. Class members 객체는 함수와 데이터 (각각 메서드 및 인스턴스 변수) 로 구성된 멤버가 있다 메소드를 호출하면 객체에서 invoke 한다: 메소드는 해당 객체의 함수와 데이터에 액세스 할 수 있다 var p = Point(2,.. 2020. 8. 28.
Dart #4 : if-else, for/while/do-while, switch, exceptions Dart : https://dart.dev/guides/language/language-tour 1. If and else if, else if 의 조건문은 boolean 값이어야 한다 if (isRaining()) { you.bringRainCoat(); } else if (isSnowing()) { you.wearJacket(); } else { car.putTopDown(); } 여기서 잠깐, Collection if 조건으로 컬렉션의 값을 조정하고 싶을 때 아래처럼 사용한다 var nav = [ 'Home', 'Furniture', 'Plants', if (promoActive) 'Outlet' ]; 2. For loops var message = StringBuffer('Dart is fun').. 2020. 8. 27.
Dart #3 : Operators Dart : https://dart.dev/guides/language/language-tour 0. Operators 기본 : https://dart.dev/guides/language/language-tour#operators 1. Arithmetic operators assert(2 + 3 == 5); assert(2 - 3 == -1); assert(2 * 3 == 6); assert(5 / 2 == 2.5); // 결과 값은 double 타입 assert(5 ~/ 2 == 2); // 나눗셈의 몫으로 결과 값은 int 타입 assert(5 % 2 == 1); // 나눗셈의 나머지로 결과 값은 int 타입 assert('5/2 = ${5 ~/ 2} r ${5 % 2}' == '5/2 = 2 r 1.. 2020. 8. 27.
Dart #2 : Functions Dart : https://dart.dev/guides/language/language-tour Dart 는 객체 지향 언어이다 함수도 객체이며 함수조차도 객체이고 모든 함수 타입의 기본 클래스인 Function 이 있다 이는 함수를 변수에 할당하거나 다른 함수에 인수로 전달할 수 있음을 의미한다 Effective Dart는 public API 에 대한 타입 표시를 권장하지만 생략 가능하다 bool isNoble(int atomicNumber) { return _nobleGases[atomicNumber] != null; } isNoble(atomicNumber) { return _nobleGases[atomicNumber] != null; } // 표현식이 하나인 경우 아래처럼 줄일 수 있다 bool .. 2020. 8. 27.
Dart #1 : Type, Collections, Final, Const etc. Flutter : https://flutter.dev/docs/get-started/install 플러터는 네이티브 코드와 동등한 성능이다 플러터는 Material Design 과 쿠퍼티노 디자인 을 제공한다 플러터는 Dart 언어로 개발한다 구글에서 개발한 웹 프론트엔드 개발용 언어로 현재는 Flutter 개발에 주로 사용된다 문법이 Java/JavaScript 와 비슷하다 구글에서 개발중인 차세대 OS Fuchsia 의 공식 프레임워크이다 Dart : https://dart.dev/guides/language/language-tour 문법 연습 : https://dartpad.dev/ Dart Keywords : dart.dev/guides/language/language-tour#keywords D.. 2020. 8. 26.