| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- StatelessWidget
- BlurDrawable
- ABEEK
- c
- reverse proxy
- PowerMockup
- ipad
- 공학인증
- first flutter app
- flutter progress dialog
- 맨붕
- Android
- 회전판
- c++
- progress
- 앱 기획
- 플러터
- 기술인증
- first_app
- 블러 효과
- quintus
- HTML 게임 엔진
- rotate circle
- Engineer Australia
- flutter
- OpenGL
- StatefulWidget
- game engine
- 호주 이민
- nginx
- Today
- Total
목록전체 글 (45)
우동우동우's note
dropzone의 accept attribute를 다음과 같이 설정하면 된다. accept=".heic, .heif, image/*"
aws를 이용해서 서비스를 운영하다보면 고정ip를 사용하지 않고 사용하게 되는 경우가 있다. 고정 아이피를 사용하려면 추가로 설정을 해야할 때가 많아지는 문제가 있기도 하며, 간단한 서비스를 container로 만든 서비스를 위해서 고정 IP를 부여하기란 쉽지 않은 일이다. 이럴 때 손쉽게 고정 IP를 부여하는 방법은 Reverse Proxy 서버를 구축하는 방법이다. Reverse Proxy Server라는 거창한 이름이 있지만 인터넷에 자료를 찾아보면서 다 구축하는데 걸린 시간은 3시간이 되지 않았다. 생각보다 쉽고 nginx가 그만큼 강력한게 아닌가 생각된다. 구축방법은 간단하고 아래와 같은 순서로 하면된다. EC2 인스턴스 생성 및 도매인 설정 nginx 설치 certbot 설치 certbot으로..
회사에서 전임자가 개발한 URL Shortener 가 갑자기 아무 이유 없이 제 기능을 하지 못했다. 구성은 EC2 서버에 go로 개발된 api 서버와 그 데이터를 저장하는 MongoDB 서버가 전부였다. MongoDB는 이상 없었다. 그럼 서버가 문제일듯하여 찾아보니 go로 개발된 서버가 문제였다. 자세히 보니 mgo라이브러리로 mongodb로 insert가 안되고 있었다. 이상한 일이었다. find는 잘되고 있었으니.. 이유를 도저히 알 수 없었다. 잠시 생각을 했다. 이걸 어떻게 고친담... 이유를 알 수 없는 버그를 찾게 위해서 얼마나 시간을 더 써야할지 고민 되었다. 그리고 다음에도 이 서버가 문제를 일으키면 어쩌지.. 고민 되었다. 그러다가 불현듯 몇일 전에 들었던 서버리스 lambda가 떠올..
Power Point로 기획을 해봐야지 마음을 먹고 기획에 활용한 템플릿을 찾아보다가 Power Mockup이라는 툴을 찾게 되었다. Power Mockup은 Power Point가 설치되어 있다면 플러그인 형태로 설치하여 사용할 수 있다. 다음 화면은 power mockup에 대한 설명이 있는 동영상이다. 일단 trial을 설치해본다. 아래 화면은 Trial 버전을 설치하면 나오는 화면이다. 우측에 보면 icon들이 있고 이것들을 하나씩 골라서 drag and drop 형식으로 사용할 수 있다. 사용방법은 너무 쉽다. ppt만 좀 잘 쓸 수 있다면 이만한 툴은 또 없지 않나 생각된다. 기본으로 있는 기능에 추가 Shape를 더 다운 받을 수 있다. 앱 기획을 할 계획임으로 iphone과 android ..
int foo = 0; 형태로 되어 있는 코드를 다음과 같은 형태로 변경하면된다. int _fooInner = 0; int get foo => fooInner; set foo(int value){ fooInner = value; }
지난번 progress dialog 관련해서 글을 쓰면서 Progress Dialog 를 사용하면 싱글 스레드 문제를 지적한 적이 있었다. showDialog()함수를 부르고 난 뒤에 바로 Navigator.pop()을 하면 progress 는 닫히지 않고 기존 View가 닫혀버리는 문제가 있다. 이러한 문제가 있어 build 함수 내에서 Visibility Widget을 활용하거나 조건문을 사용하는 방식이 flutter에서 더 좋은 방법이라고 설명했었다. 그런데 이런 방식은 기존 View 위에 나타나는 View를 만들기 위해서 전체 화면 위에 구조를 짜야하기 때문에 Widget의 계층 구조가 한단계 더 만들어 져야 하고 구조가 좀더 복잡해 진다. 기본 구조가 하나의 Scaffold 안에 AppBar와 ..