Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

삼성 바다 앱개발 실패 노하우 2부

1,039 views

Published on

<p>
[데브멘토 동영상]삼성 바다 앱 개발자 컨퍼런스</p>
<p>
바다 앱 개발 팁, 노하우</p>
<p>
삼성SW멤버십 소스 다이어트 팀 이승철</p>

  • Be the first to comment

  • Be the first to like this

삼성 바다 앱개발 실패 노하우 2부

  1. 1. Controls Life Cycle Exampleresult Devmento ::OnInitializing(void) { result Devmento::OnTerminating(void) {result r = E_SUCCESS; result r = E_SUCCESS; delete pPopup;__pPopup = new Popup(); return r;Dimension dim(300, 400); }__pPopup->Construct(true, dim);__pPopup->SetTitleText(L"Popup Test");Button* pBtnClose = new Button();pBtnClose->Construct(Rectangle(10, 10, 250, 60),L"Close");pBtnClose->SetActionId(ID_BUTTON_CLOSE_POPUP);pBtnClose->AddActionEventListener(*this);__pPopup->AddControl(*pBtnClose);}
  2. 2. Collection IMap IMap IStack QueueT IList 1. Object-based collections 2. Template-based collections
  3. 3. Collection 1. Object-based collections에서 스택 변수를 사용 말자. ArrayList* pDataList = new ArrayList(); pDataList->Construct(); String aData(L”Test”); pDataList.Add(aData); String* aData= new String(L”Test”); pDataList->Add(*aData);
  4. 4. Collection 1. 꼭 Remove 관련 함수 호출 시 속성을 꼭 true로 하자. result Remove(const Object&obj,bool deallocate=false); result RemoveAt(int index, bool deallocate = false); Void RemoveAll(bool deallocate = false); Object에 대한 메모리 해체 원한다면, Remove(10); -> Remove(10,true);
  5. 5. Collection 2. 꼭 Remove 관련 함수 호출 시 속성을 꼭 true로 하자. ArrayList* pDataList = new ArrayList(); pDataList->Construct(); String* pData = new String(L"url:1234567890"); pDataList->Add(*pData); pDataList->RemoveAll(true); delete pDataList;
  6. 6. Collection 3. Template-based collections ArrayListT<int> list; list.Construct(); int int1 = 1; int int2 = 2; list.Add(int1); list.Add(int2);
  7. 7. Collection 3. Template-based collections virtual result Sort (const IComparerT< Type > &comparer) <<interface>> ICollectionT <<interface>> IListT ArrayListT LinkedListT <<interface>> IComparerT
  8. 8. Collection 3. Template-based collections ArrayListT<Log*> Logs; Logs.Construct(); LogTotalPointerSort<Log*>* compare = new LogTotalPointerSort<Log*>(); Logs.Sort(*compare);
  9. 9. Collection 3. Template-based collections template<class Type> class LogTotalPointerSort: public Osp::Base::Collection::IComparerT<Type> { public: virtual result Compare(const Type& obj1, const Type& obj2, int& cmp) const { result r = E_SUCCESS; Log* p1 = const_cast<Log*> (obj1); Log* p2 = const_cast<Log*> (obj2); if(p1->TotalPoint < p2->TotalPoint) { cmp = 1; } else if(p1->TotalPoint > p2->TotalPoint) { cmp = -1; } else { cmp = 0; } return r; } };
  10. 10. bada Reviews 절차적 메타 일반화 다중패러다임 프로그래밍 프로그래밍 C++ 객체 함수식 지향
  11. 11. bada Reviews

×