본문 바로가기

Trend of Design

[Software] Expo XDE

Expo는 React Native의 크로스 플랫폼 프레임워크로서,

동일 혹은 약간의 처리만으로 동일 코드로서 Android와 iOS용 앱을 만들어냅니다.

대신 안드로이드 스튜디오가 조금(?) 무거운 것처럼,

실제 사용을 하는 개발팀에서는 퍼포먼스 등등을 위해서 이용을 꺼리기도 합니다.

여튼 입문에서부터 중급까지는 유용하게 쓸만한, 플랫폼이죠.

 

IDE는, Integrated Development Environment의 약자로서 통합개발환경이라는 우리나라 말이 있긴 합니다.

스크립트부터 동작은 물론 디버그 및 터미널 등 여러 개발 툴들이 합쳐진 것입니다.

유명한 것으로는 Visual Studio나 안드로이드 스튜디오 등이 있겠습니다.

XDE는 여기에서 더 발전하여 Extended, 즉 확장된 개발 환경을 제공해주는 툴이라고 보시면 되겠습니다.

주로 어플리케이션 단의 모델링 프로세스를 합친 것이라고 보시면 되겠는데요,

안드로이드 스튜디오나 엑스포는 실제 안드로이드용 앱 APK를 추출해 내는 기능이 있습니다.

 

Expo 역시 XDE로서 데스크탑 앱을 제공했었는데요,

그 모습은 다음과 같았습니다.

 

 

빨간줄은 현재 해당 버전이 제공되지 않는다 -> 통합 개발 툴로 옮겨라.. 라고 하네요.

이 때도 딱히 불편하지는 않았는데,

뭔가 터미널에서의 모습을 그냥 옮겨놓은 것에 지나지 않았다고 생각합니다.

실제 에러창이 뜨면 너무 복잡해서 참 알아먹기가.....

대부분이 그렇긴 하겠습니다만...

'편의'를 모토로 하는 곳이니 전혀 편하지가 않았습니다.

 

그러다가 근래에 큰 변화를 맞이합니다.

 

 

기본적으로 init을 하는 방식이 변했습니다. (create-react-native-app)

오히려 이것은 약간 불편해졌다고 해야할 것 같은데요,

기존 그래픽UI에서 터미널에서 직접 콘솔을 한다는 것이

'직접 내 폰으로 개발을 하며 디버깅도 한다' 라는 느낌을 가진 프레임워크가 이렇게 갈 필요가 있나,,,

어차피 RUN을 위해서는 터미널 콘솔이 필요하긴 했습니다만,

git bash 터미널을 이용하는 저는 오히려 좀 헤맸습니다. 깃 배시와는 호환이 잘 안되더군요.

 

하지만 개발 이후의 과정을 다루는 부분은 더 나아졌습니다.

로컬 서버에서 RUN이후의 더 많은 기능을 탑재하였는데요,

 

 

환경 설정마다 다르겠습니다만

yarn start나 expo start를 하게 되면 이런 작업환경 창이 자동으로 실행됩니다.

기존 프로젝트 생성시나, 구동 및 디버그 시에 좁은 창을 반으로 나눠다가 쓰면서 디버깅이 어려웠다,

이렇게 말씀드렸는데 - 이것이 확실히 개선된 부분입니다.

오른쪽 검은색 창은 제가 반 정도 잘라서 업로드해서 그렇고 실제로는 굉장히 넓습니다.

그리고 버그를 정리해서 알려주기 때문에 쓸데없는 코드들을 들여다 볼 필요가 없죠.

 

물론,

실제 버그를 따라가기 위해서는 연동된 애뮬레이터나 스마트폰의 레드스크린(!)을 잘 살펴봐야 합니다.

App.js 몇 번째 줄이 오류가 났는지,,,

무엇이 문제인지...

 

 

이 방향이 맞는 방향인가는 저도 잘 모르겠습니다만,

제일 처음에 말씀드린 것처럼, 더 나은 개발환경을 위해서는 맞는 방향이라고 생각합니다.

그래픽UI가 편할 수도 있겠지만, 개발은 처음이 절반이 아니라 디버깅이 절반에 더 가깝기 때문에요,,,

(git bash로 init하면 호환이 안 됩니다...다른 터미널을 사용하세요)

 

엑스포 창업자가 좀 유명하신 분들이던데,,,

우리나라에서는 왜 이런 회사가 없을까,, 하는 생각을 해보며 글을 마칩니다.

요런 회사가 있으면 들어가보고 싶거든요. ㅎ

'Trend of Design' 카테고리의 다른 글

Voice Economy by Smart-Speaker  (0) 2019.07.27
[Software] Make Invisible Visible,  (1) 2019.06.08
[Media] 드라마 & 영화 by WEB  (0) 2019.01.28
[Software] ant-design  (0) 2018.08.01
[Software]Material  (0) 2018.06.25