앞에서 계획했던 다이어그램에 대한 구체적인 계획을 세워야 한다.
동작의 흐름(아이폰 - 웹 - 아두이노 - 에어컨) 순서대로 하나씩 계획을 세워 봤다.
그전에, 이번 프로젝트의 핵심은 각 파트를 잇는 Dash(-) 부분일 것이다.
사실 아이폰 앱을 제작하거나 웹 디자인을 하는 등의 각각의 파트는 크게 어렵지 않을 것이다. (이미 여러 차례 만들어 보기도 했고)
문제는 '각 파트를 어떻게 연결해서 유동적인 흐름을 완성할 것인가'이다.
1. 아이폰(앱)
- 기존에 Storyboard에서 탈피해, SwiftUI를 통해 제작할 계획이다.
- 앱을 구성하는 컨트롤은 최소화할 것이다. (출시를 위한 앱을 만들고자 하는 것이 아니기 때문에)
2. 아이폰 - 웹
- 아이폰에서 하는 동작이 웹페이지를 변경시키도록 할 계획이다. Node.js가 유력한 후보이다.
- 문제는 JavaScript를 한 번도 배워본 적이 없다는 것이다.. 어느 수준까지 배워야 내가 원하는 기능을 수행할지 의문이다.
3. 웹
- 웹페이지는 이전에 배워둔 HTML을 이용할 것이다.
- 에어컨을 켜기 위해 보이는 페이지는 아니기 때문에 간단한 HTML문으로 웹페이지를 완성할 것이다.
4. 웹 - 아두이노
- Node.js를 이용해 HTML문을 변경하고, 변경된 HTML문을 읽을 계획이다.
- 이 부분은 생각만 하고 있지, 어떻게 해야 할지...
5. 아두이노 - 에어컨
- 집에 있는 에어컨은 적외선 리모컨으로 동작하는 걸 봤을 때, 적외선 센서를 이용해서 에어컨을 제어할 수 있을 것 같다.
- 사실, 앞 단계(1, 2, 3, 4)만 완벽하게 하면 이 단계는 크게 어렵지 않을 것이다.
번호는 데이터 흐름의 순서로 매겼지만, 개발은 조금 다르게 이뤄질 것 같다.
아마, 3 → 1 → 2 → 4 → 5의 반복으로 진행되지 않을까?
프로젝트 이름은 Home Remote Control(줄여서 HRC)라고 명명했다. 집에서 쓰는 리모컨과 기능이 유사하지만 Remote를 붙여, 거리에 대한 제약이 거의 없어진 것을 표현하고 싶었다. ('제약 사항이라곤 인터넷이 연결되지 않은 어딘가' 일 것이다)
지금 상상하고 계획했던 것들이 실현되는 기적을 다시 한번 맛보고 싶다.
'애플리케이션 개발 > HRC(Home Remote Control)' 카테고리의 다른 글
3-4. Node.js를 이용한 웹 페이지 작성(파일 read/write 구현) 1 (0) | 2020.08.02 |
---|---|
3-3. Node.js를 이용한 웹 페이지 작성(개요) (0) | 2020.08.02 |
3-2. 웹 페이지 상태를 유지하는 방법 고찰 (0) | 2020.07.27 |
3-1. 서버 할당과 웹페이지 작성 (0) | 2020.07.26 |
에어컨을 켜기 위한 프로젝트의 시작.. (0) | 2020.07.21 |