Objective-C 및 Xcode 4를 사용하여 Mac OS X 응용 프로그램을 개발 중이며 CoreData를 사용하지 않고도 데이터 액세스를 처리하고 비즈니스 논리 작업을 수행하는 가장 좋은 방법을 찾고 싶습니다.Mac OS X 응용 프로그램에서 DAL 및 BLL 레이어를 사용할 수 있습니까?
저는 .NET MVC 배경에서 왔으며 일반적으로 내 컨트롤러에 내 뷰에 매핑 할 수있는 데이터를 반환하기 위해 리포지토리 패턴을 사용하여 서비스 레이어를 호출합니다. 이는 전통적인 비즈니스 로직 및 데이터 액세스 레이어와 비슷한 방식으로 작동합니다.
그러나 Mac에서 필자의 대부분의 연구 결과는 내 모델과 컨트롤러가 모델을 데이터로 채우고 비즈니스 및 유효성 검사 논리를 수행하는 책임을 공유해야 함을 나타냅니다.
다른 모델에서 일부 데이터 액세스/비즈니스 로직 작업을 반복해야하므로 동일한 코드 비트를 다시 작성해야하기 때문에 약간 제한적이며 DRY 원칙에 위배됩니다.
따라서 모든 컨트롤러에서 호출 할 수있는 비즈니스/데이터 액세스 논리 (SQLite 데이터베이스)를 수행하는 클래스 또는 외부 라이브러리 세트를 사용할 수 있습니까? 따라서 모델에는 자체 및 검증 로직에 대한 데이터 만 포함됩니다. 아니면 이것이 핵심 MVC 원칙과 Mac에서 응용 프로그램을 빌드하는 방법에 어긋나는 것입니까?
사실 내 배경은 .NET을 사용하여 데이터베이스를 사용하여 시스템을 구축하고 다중 계층 응용 프로그램을 구축하는 것이 아닙니다. 이미이 작업을 수행하는 방법을 이미 알고 있으며 이미 빡빡한 프로젝트 마감 시간을 연장 할 새로운 객체 그래프 프레임 워크를 배우지 않고 Cocoa에 적용하기를 원합니다. 나는 처음 개발을 시작할 때 이것을 살펴 봤지만 내가 원했던 것에 대한 좋은 튜토리얼을 찾을 수 없었다. 즉 모델 등에서 CRUD 작업을 시연 해 주셔서 감사합니다. – Cragly
CoreData를 다시 한 번 살펴 보시기 바랍니다. 시간이 오래 걸리기 때문에 직접 작성해야합니다. 그것을 사용하는 것이 이치에 맞지 않는 몇 가지 시나리오가 있습니다. –
주위를 잘 돌아 다니며 CoreData를 사용하기로 결정했습니다. 당신이 그것의 높게 낙천적 인 말하고 처음 가파른 학습 곡선 후에 잘 그것의 값이있는 그것. – Cragly