| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- 리뷰
- docker
- FunctionGemma
- container
- Flutter
- 클론코딩
- Kubernetes
- YOLO
- coding
- Fultter
- GenAI
- Gemma
- llm
- DART
- 엔지니어
- Type
- 파이썬
- 야호
- 딥러닝
- 논문리뷰
- Python
- clone
- image
- chatGPT
- 영화
- ultralytics
- Ai
- 구글
- 인공지능
- lightly
- Today
- Total
목록Flutter (10)
딥러닝 공부방입니다. 근데 이제 야매를 곁들인.
저번 포스팅에서 사이드 메뉴를 만들었다. 이번에는 홈 화면을 구성해보려고 한다. 오른쪽 아이템들은 카드로 구성되어 있다. 5개의 위젯을 가지고 구성하면 될 것 같다. 밑에 빠른 액세스 카드는 이미지가 없기 때문에 이미지는 optional 로 두고 인자에 따라 layout 을 다르게 구성하면 될 것 같다. Flutter 에서는 Card 위젯을 제공한다. 하지만 Card 위젯에는 사이즈를 지정하는 옵션이 없다. 찾아보니 SizedBox 라는 위젯이 있고 이를 사용해 Card를 감싸면 SizedBox 내의 사용가능한 공간 만큼 Card 가 expand 되어 표시되게 된다. Card 의 Layout 을 생각해보자 최상단 Layout 은 Row 가 될 것이고 왼쪽에는 Column 을 사용하면 될 것 같다. Col..
강의가 지루해서 클론 코딩을 시작해보려고 한다. 클론 코딩의 대상은 Yolo 를 만든 Ultralytics 라는 회사의 딥러닝 플랫폼 제품이다. https://hub.ultralytics.com/ Ultralytics HUB hub.ultralytics.com 프론트엔드 코딩에 대한 지식이 전무하지만 어떻게든 되겠지 하는 마음으로 해보려한다 ㅎㅎㅎ 홈 화면 왼쪽에는 접어지는 메뉴가 있고 홈, 데이터 셋, 프로젝트, 모델, 기타로 구성되어 있다. 클론 코딩 대상은 홈 ,데이터 셋, 모델 정도로 하려고 한다. 오른쪽에는 튜토리얼과 빠른 액세스, 계정 정보가 보여진다. 사이드 메뉴 flutter 위젯 중에 비슷한게 생긴 것을 찾아 보니 side_navigation 이라는 것이 있었다. pubspec.yaml ..
기본적인 생성자 사용법은 다른 언어들과 크게 다르지 않다. 하지만 독특한 문법이 있어서 정리해본다. 단순한 사용법은 다음과 같다. class Person { String name; int age; // 기본 Person(String name, int age) { this.name = name; this.age = age; } // 조금 다르게 Person(String name, int age) : this.name = name, this.age = age; // 조금 짧게 Person(this.name, this.age); } 너무 방법이 다양해서 헷갈리는 것 같다..ㅠ 다른 언어에서는 인자의 개수나 타입을 다르게하여 여러개의 생성자를 만들 수 있다. 하지만 Dart 에서는 생성자 이름이 같으면 erro..
react 를 잠깐 공부했을 때 state 라는 개념을 접했었다. 그것과 똑같은 개념으로 Flutter 에도 state 가 존재한다. gui 프로그래밍을 해 본 적이 있는 사람은 알고 있겠지만 우리가 보는 화면에서는 계속 rendering 이 발생하고 있다. 이 때 모든 위젯 들을 다시 rendering 한다면 속도가 매우 느릴 것 이다. 이를 최적화 하기 위해 나타난 개념이 state 이다. flutter 에서 stateless 위젯은 위젯을 생성할 때 외에는 rendering 되지 않는다. 다만 stateful 위젯은 내부 변수가 바뀔 때 rendering 을 다시 수행한다. 이러한 철학 때문에 StatelessWidget의 변수를 final 이나 const 로 지정하지 않으면 기분 나쁜 줄이 생긴다..
본 포스팅은 udemy 의 강의를 기반으로 작성되었습니다. Flutter & Dart - The Complete Guide [2023 Edition] | Udemy Why Flutter Flutter 는 하나의 코드 베이스만으로 다양한 플랫폼에서 구동이 가능하다. 이는 크로스 플랫폼을 개발하기 위한 개발 비용 절감에서 큰 이득을 볼 수 있다. 네이버 블로그에서 Flutter 를 통해 지식IN 을 개발하게 된 이유와 과정을 잘 써주셨는데, 이런쪽에 경험이 전혀 없어서 모든 것을 이해하진 못했지만 좋은 글인 것 같다. 지식iN 앱을 Flutter로 개발하는 이유 (naver.com) 요약하면 기존에 사용하던 라이브러리를 사용하지 못하는 이슈나 아예 새로운 언어를 배워야한다는 단점을 제외하면 Flutter 를..
if else 문이다 이 이상 설명이 필요하지 않은 것 같다. 때로는 새로운 언어를 배울 때 그냥 그냥 넘어가는 것도 좋은 것 같다 Conditional Expression 은 짚고 넘어가자. 간단한 조건 로직의 경우 한 문장으로 쓸 수 있다. condition ? expr1 : expr2 condition 이 만족하는 경우 expr1 을 아닌경우 expr2 를 수행(리턴)한다. expr1 ?? expr2 expr1 값이 null 이 아니라면 expr1 을 null 이라면 expr2 를 수행(리턴)한다. 상황에 따라 잘 골라쓰면 될 것 같다. 예상하기로는 우선순위가 고려되는 로직의 경우 ?? 구문을 쓰는 것이 훨씬 가독성이 좋을 것 같다. 반대로 우선순위가 없는 단순 조건 분기의 경우에는 ? : 를 쓰는..