본문 바로가기

창작공방/강의후기

[후기] 이종은님의 <無에서 모바일 앱 창조하기!> By 이기환님

마치 동남아에 온것같은 느낌마저 드는 습한 날씨였던 지난 토요일. 강남역 예인스페이스에서 "이종은님의 무에서 앱개발 하기" 워크샵이 열렸습니다. 

열심히 수업을 들으시는 참가자분^0^  이날은 거의 다 개발 경험이 있으신 분들이 참여하셨습니다. by cckorea 


무더운 날씨에도 불구하고 16분이나 오셨습니다.
사회자인 라임의 간단한 소개로 워크샵은 시작됐고, 종은님의 강의가 바로 이어졌습니다. 

"3시간짜리는 처음이다." 라는 말로 시작한 종은님은 "다이나믹하게" 진행하려고 야심찬(?) 포부를 밝히시고 강의를 시작하셨습니다. 

전체 강의는 경험담, Titanuim 소개, 실제로 앱을 짜보는 시간으로 나누어서 진행되었습니다. 전반적인 강의를 시작하기 전, 앱 개발에 대한 종은님의 실제 경험담을 들어보면서 긴장을 풀 수 있었습니다. 

종은님은 남아공월드컵을 겨냥하여 Lonely Pub이라는 앱을 만드셨고, 좋은 반응을 기대했지만, 애플의 앱 심사과정이 길어지고, 월드컵은 라이선스가 있는 단어라는 이유로 리젝을 당하고, 재심사를 하는 과정을 거치는 바람에 월드컵 4강이 시작되서야 앱이 등록될 수 있었다는 슬픈(?) 경험담을 들려주셨습니다. ^^;;



  
크로스 플랫폼은 뭐다? 우리가 설정한 앱을 각 플랫폼에 알아서 적응시켜주는 아이랍니다. by cckorea 저작자 표시

이어서 앱 개발의 전반적인 부분을 이야기하면서, "내가 생각하는건 다른 사람도 다 비슷하게 생각한다. 그래서 빠른 개발이 중요하며, 누가 먼저 실행에 옮기는가가 관건이다." 라고 빠른 개발의 중요성을 강조하셨습니다. 

이어서는 앱 개발을 포괄적으로 설명하면서,
Native App, Web App, Hybrid App, Cross Platform의 개념에 대해서 간략히 설명하셨습니다. 내용을 간추려보면, 


Native App  os에서 제공하는 기본적인 언어(Java, Object-c)를 사용하는 앱

      Device의 리소스를 쓰는데 제약이 없다는 장점이 있지만, os마다 다른 언어로 개발해야 하는 단점이 있다. 


Web App   표준화된 언어(Html5)에서 개발


     os 각각에 맞게 활용할 수 있는 장점이 있지만, Device의 리소스 활용이 어렵다는 단점이 있을 수 있다. 


Hybrid App   Native App과 Web App의 사이의 앱.  대표적으로 폰갭(PhoneGap)이 있음


PhoneGap  자바스크립트, Html5같은 언어로 개발하고, 그 위에 각 플랫폼에 해당하는 API로 Wrap해 줌.

이걸로 다양한 플랫폼을 지원할 수 있게 된다. 

KT에서 나온 앱스프레소도 비슷하다. 


Titanium  Hybrid App이라고 할 수 있지만, 폰갭보다는 좀 더 네이트브에 가깝다.  

Titanuim으로 만든 대표적인 앱은 Wunderlist(독일). 
 아이폰, 아이패드, 안드로이드, 윈도우, 맥을 지원하며, 개발자는 3명이다. 3명의 개발자가 5개의 플랫폼을 지원하는 앱을 만들 수 있었던 것은 Titanium 덕분. 

Titanium은 모바일과 데스크탑을 모두 지원한다. 

-Titanium 모바일 개발
 기본적으로 자바스크립트로 개발을 할 수 있다. 자바스크립트로 짜면, Titanium API가 이를 쌓아주고, 브릿지가 각 네이티브 언어로 돌려주고, os로 이를 보내주는 단계를 거친다. 

따라서 결국 Native App의 형식으로 앱이 나온다. 
 

-Titanium 데스크탑 
Html5기반으로 프론트는 Html5로, 백은 PHP나 루비 등으로 개발한다. 

사용자는 그냥 Html을 쓰는 느낌을 받게 된다. 


장점 - Native User Experience - 아이폰과 안드로이드의 UI는 다 다르고, 각 사용자들은 이 UI에 익숙한다.
Native를 사용하면 더 좋은 효과를 손쉽게 구현할 수 있다. 


Extensibility - 내가 모듈을 만들 수 있고, 다른 사람 모듈을 내가 변환해서 쓸 수도 있다. 

기본적으로 오픈소스이기 때문에 소스를 다 볼 수 있다. 


Development Tools - Fastdev같은 좋은 기능이 있으며, 이제 1.0이라서 좀 불안한 면도 있지만, 미래는 밝다 ^^


Appcelator : Titanium을 만든 회사. 웹개발자가 모바일, 데스크탑, 태블릿 상관없이 개발할 수 있는 해준다라고 이야기하며, Titanium으로 여러 디바이스에 공통되게 만들 수 있다는 장점이 있다고 말함. 






기본적인 Titanuim 소개가 끝나고, 잠시 휴식시간을 가진 이후에, 실제로 샘플로 앱을 만들어보는 시간을 가졌습니다.

또, Titanuim의 각 기능들과 실제로 앱 개발시 해야하는 단계나 방법들을 종은님께서 직접 해보면서 강의가 진행되었기 때문에 이해하기가 매우 좋았습니다. 



Titanium의 세팅화면입니다. 웹 주소를 거꾸로 쓰는게 키 포인트~ . by cckorea 저작자 표시

실제로 종은님 강의가 끝나고 나니, 나도 앱 개발을 할 수 있겠다는 자신감이 충만해졌습니다. 강의 마지막에 실제로 앱을 만들어보면, 여러가지 당황스러운 문제들을 만날텐데, 좌절하지 마시고 개발에 성공하라는 말씀으로 자신감을 살짝 눌러(?) 주시고 강의는 마무리 되었습니다 ^^