본문 바로가기

전체 글248

플러터 - Row, Column, Stack, Alignment, IndexedStack 본 글은 [Do it! 깡샘의 플러터&다트 프로그래밍] 의 내용을 발췌한 것입니다. 책의 모든 내용을 저자 직강으로 진행한 강의는 ssamz.com 에서 들으실 수 있습니다. 가로로 배치하기 — Row 레이아웃 위젯은 Row와 Column이 대표적입니다. 먼저 Row는 가로 방향으로 위젯을 배치합니다. 예를 들어 다음 코드는 Row에 Container 2개를 추가한 예입니다. 자신의 하위에 추가할 위젯이 하나라면 Center처럼 child에 하지만, 여러 개를 추가하는 Row, Column 같은 위젯은 children에 추가합니다. 책의 모든 내용을 저자 직강으로 진행한 강의는 ssamz.com 에서 들으실 수 있습니다. Row( children: [ Container( width: 100, height.. 2023. 3. 13.
플러터 - Text Widget 본 글은 [Do it! 깡샘의 플러터&다트 프로그래밍] 의 내용을 발췌한 것입니다. 책의 모든 내용을 저자 직강으로 진행한 강의는 ssamz.com 에서 들으실 수 있습니다. Text는 문자열을 출력하는 위젯입니다. 화면을 구성하는 가장 기본 콘텐츠가 문자열이므로 Text 위젯도 플러터에서 가장 많이 활용됩니다. Text는 다음처럼 2가지 생성자를 제공합니다. Text() 생성자는 매개변수로 대입한 문자열을 출력해 주며, Text.rich()는 Text로 출력하는 문자열을 다양하게 꾸밀 수 있습니다. Text(String data, { ... (생략) .... }) Text.rich(InlineSpan textSpan, { ... (생략) .... }) 책의 모든 내용을 저자 직강으로 진행한 강의는 ss.. 2023. 3. 13.
플러터 - StatefulWidget 본 글은 [Do it! 깡샘의 플러터&다트 프로그래밍] 의 내용을 발췌한 것입니다. 책의 모든 내용을 저자 직강으로 진행한 강의는 ssamz.com 에서 들으실 수 있습니다. StatefulWidget은 상태를 유지하는 위젯입니다. 상태란 화면에서 갱신해야 하는 데이터를 의미합니다. 동적인 화면을 만들려면 StatefulWidget을 상속받은 클래스와 State를 상속받은 클래스가 필요합니다. •StatefulWidget: 위젯 클래스 •State: StatefulWidget의 상탯값을 유지하고 화면을 구성하는 클래스 StatefulWidget을 상속받은 클래스에는 build() 함수가 없습니다. 대신 createState() 함수를 꼭 재정의해야 합니다. 그리고 이 함수의 반환값은 State를 상속받은.. 2023. 3. 13.
플러터 - mixin 본 글은 [Do it! 깡샘의 플러터&다트 프로그래밍] 의 내용을 발췌한 것입니다. 책의 모든 내용을 저자 직강으로 진행한 강의는 ssamz.com 에서 들으실 수 있습니다. 믹스인 알아보기 일반 클래스는 class라는 예약어로 선언하고 변수와 함수, 생성자를 정의할 수 있습니다. 그런데 믹스인은 mixin이라는 예약어로 선언합니다. mixin MyMixin { int data1 = 10; void myFun1() { print('MyMixin... myFun()...'); } } 믹스인에는 변수와 함수를 선언할 수 있지만 클래스가 아니므로 생성자는 선언할 수 없습니다. mixin MyMixin { int data1 = 10; static int data2 = 20; MyMixin() {} // 오류 v.. 2023. 3. 13.
플러터 - factory constructor 본 글은 [Do it! 깡샘의 플러터&다트 프로그래밍] 의 내용을 발췌한 것입니다. 책의 모든 내용을 저자 직강으로 진행한 강의는 ssamz.com 에서 들으실 수 있습니다. 팩토리 생성자factory constructor는 factory 예약어로 선언합니다. 팩토리 생성자 역시 객체를 생성할 때 호출할 수 있지만, 생성자 호출만으로 객체가 생성되지는 않습니다. 팩토리 생성자에서 적절한 객체를 반환해 줘야 합니다. 결국 팩토리 생성자는 클래스 외부에서는 생성자처럼 이용되지만 실제로는 클래스 타입의 객체를 반환하는 함수입니다. 오른쪽 코드에서 MyClass() 생성자는 factory 예약어가 붙었으므로 오류가 발생합니다. 그 이유는 팩토리 생성자로 선언했으면서 객체를 반환하지 않았기 때문입니다. class.. 2023. 3. 13.
플러터 - named constructor 본 글은 [Do it! 깡샘의 플러터&다트 프로그래밍] 의 내용을 발췌한 것입니다. 책의 모든 내용을 저자 직강으로 진행한 강의는 ssamz.com 에서 들으실 수 있습니다. 다트 언어에서는 클래스의 생성자를 다양하게 이용할 수 있는데 명명된 생성자named constructor는 가장 중요하고 자주 사용합니다. 명명된 생성자는 이름이 있는 생성자라는 의미로, 한 클래스에 이름이 다른 생성자를 여러 개 선언하는 기법입니다. 다른 프로그래밍 언어에서도 생성자를 여러 개 선언할 수 있는 오버로딩 기능을 제공하지만, 똑같은 이름으로 매개변수나 반환 타입만 다르게 선언해야 하므로 다트와는 차이가 있습니다. 예를 들어 다음 코드는 자바 언어로 생성자 오버로딩을 구현한 예입니다. 하지만 다트에서는 이러한 오버로딩을.. 2023. 3. 13.