반응형

flutter 32

dart

asas와 is, is!은 type test operator 들이다. as 형변환..업캐스팅 다운캐스팅 쓸 수 있지만 다운케스팅이 확실히 가능할 때 사용하라고 함. const와 final 차이const는 실행 시에 결정되는 값은 할당 할 수 없다. enum enum ThemeColor { red, green, blue, orange } void main(List args) { //사용법 ThemeColor temp = ThemeColor.blue; print(temp); //ThemeColor.blue print(temp.index); //2 //각 이넘들은 0부터 시작하는 index 게터(getter)를 갖습니다. print(ThemeColor.red.index); //0 print(ThemeColor..

flutter 2019.04.03

Dart mixin 이란?

1. 믹스인이 필요한 이유 C#같은 언어에는 믹스인이 없습니다. 다음 클래스 상속 다이어그램을 살펴 보겠습니다. Animal이라는 슈퍼클래스가 있습니다. Mammal, Bird, Fish가 그 클래스를 상속합니다. 가장 마지막에는 콘크리트 클래스들이 있습니다. 작은 사각형은 행동을 나타냅니다. 예를 들어, 파란색 사각형은이 동작을하는 클래스의 인스턴스가 수영 할 수 있음을 나타냅니다. 어떤 동물들은 공통적 인 행동을 공유합니다. 이러한 종류의 동작은이 분류와 직각이므로 수퍼 클래스에서 이러한 동작을 구현할 수 없습니다. 한 클래스가 하나 이상의 수퍼 클래스를 가질 수 있다면 쉽게 할 수 있습니다. 세 클래스(Walker, Swimmer, Flyer)를 만든 후 콘크리트클래스에게 이 클래스를 적절히 상속시..

flutter 2019.04.03

RxDart 관련 내용들

BehaviorSubject 컨트롤러에 추가 된 최신 항목을 캡처하여 새로운 리스너의 첫 번째 항목으로 내보내는 특수 StreamController입니다. 이 Subject는 데이터, 오류 및 완료 이벤트를 청취자에게 전송할 수있게합니다. 주제에 추가 된 최신 항목은 주제의 새 청취자에게 전송됩니다. 그 후 새로운 이벤트가 청취자에게 적절하게 전송됩니다. 주제에 항목이 추가되지 않은 경우 방출 될 시드 값을 제공 할 수 있습니다. BehaviorSubject는 기본적으로 Rx Subject 계약을 이행하기 위해 브로드 캐스트 (일명 핫) 컨트롤러입니다. 이것은 피사체의 스트림을 여러 번들을 수 있음을 의미합니다.

flutter 2019.03.29

Dart mxins

나는 mixin의 가장 간결한 정의가 Wikipedia에 의해 제공된다고 생각한다. "객체 지향 프로그래밍 언어에서 Mixin은 다른 클래스의 부모 클래스가 아니어도 다른 클래스에서 사용할 수있는 메소드를 포함하는 클래스입니다."즉, mixins은 클래스를 확장하지 않고 메소드 (또는 변수)를 빌릴 수있는 일반 클래스입니다. 다트에서는 with 키워드를 사용하여이 작업을 수행 할 수 있습니다. 첫 번째클래스 B를 클래스 A의 믹스 인으로 사용하려면 다음을 수행하십시오. class B { method() { print("B method"); }} class A with B {} void main(List args) { A a = A(); a.method();} [실행결과] B method class A w..

flutter 2019.03.27

Flutter - 스트림. 다트에서 비동기 프로그래밍

import 'dart:async';void main(Listargs){ //데이터가 하나나오는 스트림 var stream0 = Stream.value(1); stream0.listen(print); //periodic으로 부터 생성 (periodic이 0부터 증가하면서 카운트를 셈) var stream1 = Stream.periodic(Duration(seconds: 1), (x)=>x).take(10); stream1.listen(print); //Iterable로 부터 생성 var stream2 = Stream.fromIterable(['a','b','a','a','a']); stream2.listen(print); //제너레이터를 사용해 생성 var stream3 = creat..

flutter 2019.03.27

플러터로 예쁜 UI 만들기

1. 프로젝트 만들기 vscode에서 ctrl+shift+p를 눌러 명령 팔레트을 띠운다음. Flutter:New Project 명령을 선택합니다. 어플이름을 friendlychat으로 해줍니다. 이후 폴더를 지정해주면 프로젝트가 만들어집니다. friendlychat은 .실시간으로 문자 메시지를 표시합니다. .사용자가 문자를 입력하고 리턴키나 아이콘을 클릭하여 전송할 수 있습니다. 2. 메인UI 만들기 2-1 채팅화면 만들기 앱을 두 개의 위젯으로 나눕니다. root : FriendlychatApp 위젯 (변하지 않음.) child: ChatScreen 위젯 (메시지를 보내거나 상태가 변할 때 리빌드됨.) 지금은 둘다 StatelessWidget을 확장하겠습니다. 나중에 ChatScreen은 Statef..

flutter 2019.03.21

Flutter Stream

https://medium.com/flutter-community/reactive-programming-streams-bloc-6f0d2bd2d248 스트림이란 무엇입니까? 스트림 의 개념을 쉽게 시각화하려면 한 쪽으로만 입력가능한 2 개의 끝이있는 파이프를 생각해보세요.파이프에 무엇인가를 삽입하면 파이프 안쪽으로 흐르고 다른 쪽 끝으로 나가게됩니다. 플러터에서 파이프는 Stream이라고 합니다.Stream을 제어하기 위해서 보통 StreamController를 사용합니다.스트림으로 무언가를 입력하기 위해서 StreamController는 sink 프라퍼티를 통해서 접근할 수 있는 StreamSink라고 부르는 "입구"를 노출합니다.스트림의 출구는 stream 프라퍼티를 통해 StreamControlle..

flutter 2019.03.20

Write Your First Flutter App, part 1

1 부에서 배울 점Flutter 앱의 기본 구조.패키지 사용하기hot reloadstateful widget무한 지연 리스트 2부에서 배울점.테마수정navigate (플러터에서는 route 라고 불림.) Flutter SDK와 에디터가 있다고 가정하고 시작합니다. 3. 플러터 앱 생성ctrl + shift + p 누르고 Flutter>new project선택 프로젝트 이름을 startup_namer으로 플러터 앱을 생성하고, lib/main.dart에 기존에 있던 내요을 지우고 아래 코드를 입력 합니다. [lib/main.dart]import 'package:flutter/material.dart'; void main() => runApp(MyApp()); class MyApp extends Statel..

flutter 2019.03.15