2009-04-28 2 views
2

나는 여러 가지 접근법을 보았으며, 각각의 접근법은 상당한 양의 음영과 음수를 가지고있는 것으로 보입니다. 저는 iPhone 개발을 배우고 있습니다. 상대적으로 간단한 앱을 만들고 있습니다. 핵심은 3,4 개의 관련 엔티티에 CRUD 작업을하는 것 이상은 아닙니다.iPhone에서 데이터베이스 관리/객체 지속성의 기본 방법이 있습니까?

저는 ActiveRecord 유형의 객체 지속성에 익숙합니다. 온라인에서 읽은 Cocoa Touch 구현은 일반적으로 매우 느립니다.

온라인에서 볼 수있는 대부분의 예제 (특히 Pragmatic Programmers 스크린 캐스트)에는 SQL이 컨트롤러 클래스로 하드 코딩되어 있는데, 이는 나에게 맞지 않습니다. 아주 오래된 학교로 보입니다 (하지만이 경우에는 오래된 학교가 최선일 것입니다).

여기서 SDK 3.0에 대해 논의 할 수는 없지만 CoreData가 iPhone을 위해 제공된다는 것은 일반적인 지식입니다. 물론 내 잠재 고객을 제한 할 것입니다. (저는이 점에 대해 정말로 확신하지 못합니다. 판매를위한 앱이 되겠지만, 내 경력을 대신 할 계획이 아닙니다.)

나는 거스 뮬러의 FMDB를 아직 시도하지 않았지만 나는 좋은 것을 읽었습니다.

귀하의 경험은 무엇이며, 효과는 있으며, 효과는 무엇입니까? 어디에서 (아직 꽤 초보자) 아이폰 프로그래머가 시간을 투자하도록 권하고 싶습니까?

답변

2

더 높은 수준의 작업을위한 기본 제공 시스템이 없기 때문에 지금은 많은 양의 원시 SQL이 응용 프로그램에 인코딩되어 있습니다. FMDB는이 작업을 수행하는 좋은 방법이지만 SQLite 호출을 Objective-C와 같은 것으로 랩핑합니다. 상황에 따라 다르지만 분명히 모든 것에 적합하지는 않습니다.

ActiveRecord에 익숙하다면 SQLite Persistent Objects이 ActiveRecord와 유사하기 때문에 유용 할 수 있습니다. 나는 그 중 어느 것이 실제로 비슷한 지 말할 수 없었습니다. 어떤 이유로 든 그것이 옳지 않다고 생각되면,이 시점에서 목표를 3.0으로 설정하고 핵심 데이터를 사용하는 것이 가장 좋습니다.

+0

내가 올 결론은 귀하가 진술 한 것과 정확히 일치합니다. SQLlite Persistent Objects는 매우 느리다. 이번 여름 현재로 받아 들여지는 방법이기 때문에 "단기간에 저주받을"것이라고 생각하고 CoreData를 타겟팅합니다. 기존 응용 프로그램에 핵심 데이터를 추가하는 데 문제가 있었지만 다른 방법을 사용하여 몇 분 내에 핵심 데이터를 사용하여 "Window Based application"템플리트에 모든 응용 프로그램을 포팅했습니다. 그래서 ... 아무 것도하지 않지만 어젯밤처럼 적어도 부서지는 것은 아닙니다. – mmc

관련 문제