서버 개발자 시험 문제

옛날에는 프로그래머 면접볼때 이런 시험을 봤었습니다. 일명 손코딩. 이건 제가 팀장으로 근무할 때 만들었던 시험문제 입니다. 서버 개발자 시험 문제 Design Pattern template <typename T> class CSingleton { public: CSingleton() {} virtual ~CSingleton() {} static T* GetInstance() { if ( false == isptr(ms_Instance) ) { LOCKING( ms_Locker ); if ( false == isptr(ms_Instance) ) { ms_Instance = new T(); } } return ( ms_Instance ); } static T& GetInstanceRef() { if ( false == isptr(ms_Instance) ) { LOCKING( ms_Locker ); if ( false == isptr(ms_Instance) ) { ms_Instance = new T(); } } return ( *ms_Instance ); } static void ReleaseInstance() { if ( isptr(ms_Instance) ) { LOCKING( ms_Locker ); if ( isptr(ms_Instance) ) { delete m

라이브3실 국내 개발 보고서

기술자료 등 많이 올려보려고 자료 정리하다가 찾은거에요. 한참 혈기왕성하던 젊은 시절 작성했던 보고서 입니다. 조금 급진적인... 라이브3실 국내 개발 보고서 1. 개발 협의 과정의 문제 1.1. 개발 일정과 패치 일정의 차이 개발 일정 이란 목표한 기능을 기대한 수준 까지 만들기 위한 Unstable 버전을 다루는 것을 뜻하는 것이며, 패치 일정 이란 Stable 버전을 만들기 위한 Unstable 버전의 품질 및 안정성을 향상 시키는 단계를 이야기 하는 것입니다. 1.2. 일정 협의 시 고려 사항 소프트웨어 개발은 예를 들어 부품 공장의 운용처럼 기계를 오래 돌려 상품을 많이 생산하는 식의 찍어내기 방식과는 전혀 다른 산업 분야라고 생각 됩니다. 이는 지식을 기반으로 응용을 하여 생산을 해내야 하는 학습과 창의력을 요구하는 일이기 때문이며, 일정 관리자에게 있어서 끊임 없는 연구를 하게 만드는 일이기도 합니다. 만약 개발 일정을 무시한 채 패치 일정을 세우는 행위를 지속 한다면 지킬 수 없는 약속들로 인해 결국 모든 신뢰를 잃고 말게 될 것 입니다. 2. 개발 일정 관리에 대한 비전문적 운용 방식 2.1. 분별 없는 Conference의 폐단 항상 아이디어를 채택 할 때는 분명한 목적과 기대 효과를 신중히 검토 하는 습관을 가져야 합니다. 더불어 시스템 분석과 Simulation을 바탕으로 기획서가 작성 되어야 하는 것인데 현재 국내 OOO 개발 회의의 대부분이 아이디어 수준의 대화 내용 들을 패치 일정으로 확정 시키고 있어 분석 및 검증이 부족한 기획서 들을 기준으로 개발 협의를 진행 시키는 것이 일반적인 관행이 되어가고 있습니다. 단지 시간과 인력이 부족 하다는 이유만으로 이러한 상황들을 합리화 시키고 있다면 Sophist 적인 매우 위험한 발상들을 하고 있는 것으로 생각 됩니다. 2.2. Planning Team의 역할 개발 일정 진행을 위해 기획팀이 해야 할 일은 게임 플레이를 시작 부터 끝까지 고민해 보고 기획서를 작성 하는 것이며 각 예외 상황들