플랫폼 개발을 하다 보면 사람들 간의 개념 간의 충돌이 많다. 그런
것들은 답이 정해져 있는 것도 아니라 개인이 추구하는 성향에 따라 의견들이 갈리는 것이 대부분이다. 그
중에 하나가, 이 플랫폼으로 개발할 개발자들에게 ‘모든 가능성을
간직한 기본만을 제공할 것인가’ 아니면 ‘최대한 많은 기능을
넣어서 편의성을 도모할 것인가’에 대한 의견 충돌이 제일 처음 생기게 된다.
결론부터 말하자면 나는 전자이다. 플랫폼은 기본만 제공하는 간단한
것이었으면 한다.
이 의견에 반대 사람들이 내는 주장은 대부분 ‘플랫폼 사용을 쉽게
하여 많은 개발자가 사용할 수 있게 하자’라는 것인데 나는 이 부분 때문에 반대를 하는 것이다. 나는 ‘플랫폼을 기반으로 한 애플리케이션 사용에는, 어느 정도 문턱이 있어서 일정 레벨 이상의 개발자들만 뛰어 들어야 전체 결과물의 수준이 높아진다’고 생각을 하고 있다.
회사 내에서도 논란이 되는 부분이 SDK에 OpenGL ES만 지원하면 되는지 아니면 자체 렌더링 엔진을 넣어야 하는지의 선택이 있는데, 이 역시도 위의 선택에 따라 OpenGL ES만 지원하면 된다고
주장하고 있다. Apple 앱스토어의 통계 같은 것은 잘 모르겠지만 내가 예상하는 것은, 잘 만든 소수의 애플리케이션이 대다수의 돈을 벌어 들인다는 생각이다.
개발의 문턱이 낮을 때, 100개의 애플리케이션이 상급 10개 중급 30개 하급 60개로
구성되어 있다면, - (1)
개발의 문턱이 높을 때는 40개의 애플리케이션이 상급 10개 중급 30개만 있게 된다. –
(2)
(상급의 애플리케이션이 판매 개수가 훨씬 많고 하급은 판매 개수는
적다는 논리를 적용 한다)
이렇게 되면 겉보기의 전체적인 수익은 (1)이 높아 보일지는 모르겠지만, 유저의 입장에서는 (2)의 경우가 더 신뢰성 있는 애플리케이션을
구할 확률이 높으므로 유저의 수가 더 많이 몰리게 되어 실제 매출이 더 높아진다는 논리이다.
게임 플랫폼이라면, ‘기본 OS의
추상화 + 디바이스 추상화’에다가 2D 그래픽은 frame buffer 접근법만 열어 주면 되고, 3D 그래픽은 OpenGL 같은 것만 열어 주면 된다는 것이다. 하지만 대부분의 사람들은 플랫폼을 종합 선물 세트로 만들려고 하기에 시간과 돈이 많이 투자된다. (라는 생각을 가지고 있다. 하지만 역시 정답은 없다)
Posted by 안영기