Obj-C, AutoLayout, ReactNative, Flutter, SwiftUI, 개발생산성 등등

최근에 다시 Swift/SwiftUI를 스터디하며 그동안 iOS 개발을 하며 느꼈던 UI 개발에 대한 개인적인 생각을 정리해봤습니다. 시작과 끝에 대략 10년정도의 시간차이가 있습니다. Obj-C, InterfaceBuilder 재미있었음 Objective-C를 접한건 2009년 4월. 델파이(Pascal)에 익숙해져 있던 나에겐 NS…로 시작하는 긴 함수명을 가진 프레임워크가 의외로 익숙했고 그해에 여러개의 앱을 스토어에 업로드해서 통산 100만 다운로드는 넘기는 경험을 해보기도 했다. 무료앱이라 그다지 수익을더 보기

SwiftUI Tabar/NavigationView (탭바/네비게이션뷰)

최근 Flutter가 좀 지루해져서 – 지루해진 이유는 다음에 쓰기로 하고 – iOS 네이티브 개발을 다시 해보고 싶다는 충동(?)에 SwiftUI 스터디를 시작했다. iOS 개발은 Obj-C 부터 거의 10여년을 하고 있지만 아직 SwiftUI를 써보지 못해서 아래 링크의 튜토리얼을 따라해보고 대략의 감을 잡을 수 있었다. 아래 링크를 따라가면 SwiftUI의 기본적인 Interface에 대한 이해를 얻을 수 있다. https://developer.apple.com/tutorials/swiftui/creating-and-combining-views 각설하고…더 보기

코로나 집콕 프로젝트 #3

이글은 앞선글(http://practical.kr/?p=239)에 연결된다. 작업을 진행 할때마다 페이스북에 올린 짧은글들과 이미지들을 묶어서 정리했다 2021년 2월 20일 수분습도 센서라고 팔고 있는것들은 다 삿다. 왼쪽에 케이블 달려 있는 놈이 전에 말한 불량품이다. 이틀간 맞다가 일주일째에 데이터가 틀려지는 기이한 놈. 왼쪽 두번째가 3주간 테스트 결과를 통과(?)한 놈. 나머지는 이제 테스트 해야할 놈.오늘은 구입한 방수박스에 넣어서 조립을 시작할 예정. 이번주에더 보기

코로나 집콕 프로젝트 #2

이글은 앞선글(http://practical.kr/?p=183)에 연결된다. 작업을 진행 할때마다 페이스북에 올린 짧은글들과 이미지들을 묶어서 정리했다 2021년 1월 15일 https://www.facebook.com/rtlink.park/posts/4243516198997718 ESP32의 문제는 디스플레이가 없어서(당연한거지만… ) 디버깅이 힘들다. USB로 컴퓨터에 물려놓고 로그를 찍어가며 실행을 확인해 볼 수 밖에 없다. 근데 이게 그러라고 만든 기계가 아니니 전원만 넣으면 혼자 돌아가야 한다.며칠전에 데이터가 잘 들어오다가 새벽부터 데이터가 안들오고 다운이 되었는데 원인을 알수가더 보기

코로나 집콕 프로젝트 #1

의도 2020년은 코로나의 해였다. 년초에 시작한 코로나는 년말을 지나도록 잡히지 않았고 나는 하반기 내내 외부 프로젝트를 줄이고 집에 박혀서 더 많은 삽질을 했다. 이유없는 삽질에 결론을 만들기는 어렵긴 하지만 무언가 결과가 있어야겠다고 생각한게 12월이니… 오래도 결렸다. 하반기에 주로 많이한 일들이 IoT 디바이스를 가지고 놀아본거였고 거기에 Flutter를 이용해서 앱을 두어개 만들어 스토어에 업로드 해본 경험으로 IoT더 보기

Jetson Nano, PCA9685, L298N, DC-Motor 4륜구동 자동차

Jetson Nano를 충동적으로 구입하고 (http://practical.kr/?p=125) 테스트를 해본 후 뭘 만들까 고민을 하다가 자동차를 만들어 볼까? 생각을 했다. 전년도에 라즈베리파이를 이용해서 자동차를 만들려고 구매해 두었던 4륜 자동차 바디가 그대로 있어서 여기에 젯슨나노를 얹어 보기로 했다. 실패한이유 근데 생각해 보니 그때 라즈베리 기반의 자동차를 만들다 그만둔 이유가 라즈베리파이의 Digital I/O 의 숫자가 부족하다는걸 알고 나서였다. 바퀴하나를 구동하려면더 보기

Jetson Nano, 전원, Wifi, Case, Setup, Inference

엔비디아의 Jetson Nano를 구입했다. 최근 좀 저렴한 2GB 모델의 릴리즈 소식을 들었지만 기존 4GB 모델을 구입했다. 충동적으로 구입했기 때문에 특별한 사용 목적은 없고 그저 어떤 성능이 나오는지 Development Kit 수준이 어느정도 인지 알고 싶었다. 구입은 아래 링크에서 했는데, 그동안 읽었던 글들에서 기본 모델에는 Wifi 없고 4A짜리 전원 공급장치가 필요하다고 해서 구입하는김에 Wifi 장비와 별도의 4A더 보기

ESP32, MicroPython, MQTT

아래와 같은 삽질을 했다. 삽질은 기록이라고… 대충 정리함 ESP32에서 MicroPython을 언젠가 한번 사용해봐야지 하고 있었는데 기왕 하는 김에 MQTT까지 연결해봤다. ESP32 에 MicroPython을 설치한다. ESP32에서 MicroPython으로 MQTT Client를 만든다 맥북에 MQTT 서버를 설치한다 맥북에서 Python을 이용해서 MQTT Client를 만든다. ESP32 – 맥북사이의 MQTT Client와 데이터를 주고 받기 테스트 ESP32에 MicroPython 설치하기 ESP32에 MicroPython을 설치하려면 firmware를더 보기

내가 개발에 사용한 플러터 패키지

플러터 (Flutter)를 이용해서 앱을 개발하는데 패키지는 필수불가결한 요소입니다. 물론 온전히 기본제공하는 위젯(Widget)과 기능만으로 목적하는 기능을 구현할 수도 있겠지만 기본으로 지원하지 않거나 특별한 디자인과 기능을 원하는 요구사항을 만족시키기는 기본 패키지만으로는 매우 어렵습니다. 하지만 공개된 패키지를 잘 사용하면 쉽고 빠르게 목표물에 도달 할 수도 있습니다. 이 글에서는 내가 스캐니(Scanny – http://practical.kr/?p=71) 를 개발하면서 사용한 패키지들을 용도 위주로더 보기

스캐니(Scanny) – 아이폰용 스캐너앱

저는 개인적으로 개발언어를 스터디 하는 방법으로 마켓 릴리즈를 목표로 제품을 하나 만들어가며 스터디하는 것을 좋아합니다. 목적이 분명하면 생각보다 빠르게 프레임워크의 구조와 내용을 파악할 수 있습니다. 플러터(Flutter)를 스터디하기 시작하면서 벌써 세번째 앱을 앱스토어 릴리즈 했는데요. 앞의 두개는 이것을 만들면서 앱스토어에서 플러터가 어떻게 업로드 되고 돌아가는지를 확인하기 위해 짬짬이 만든것 이었습니다. 스캐니(Scanny)는 폰카메라를 이용해 문서를 촬영해서 자동으로더 보기