일부 배경 : SQL 데이터베이스를 저장소로 사용하여 데스크톱 응용 프로그램을 개발하고 싶습니다. 한 번에 데이터베이스에 연결된 사용자는 한 명뿐입니다.
유지 관리를 쉽게하기 위해 Busniss Logic에서 GUI를 분리하고 싶습니다. 따라서, 나는 각 Dialog에 대해 DataModule (BL이 구현 된 곳)을 사용하는 것으로 생각했다.TClientDataset 구성 요소는 어디에 있어야합니까?
내 질문에 : TClientDataset 구성 요소를 삽입 할 적절한 위치는 어디입니까? Dialog 또는 DataModule에서 직접?
왜 TDataSource를 ClientDataSet 옆에 배치하지 않았습니까? –
여러 가지 이유 : 종종 데이터 컨트롤을 포함하는 폼에 영향을주는 TDataSource의 이벤트에 응답하고 싶을 것입니다. DataSource가 데이터 모듈에있는 경우 데이터 모듈은 해당 이벤트가 작동하기 위해 양식에 대해 알아야하므로 더 강력하고 원치 않는 결합이 발생합니다. DataSource를 폼과 데이터 모듈 사이의 "다리"로 생각해야합니다. 두 개 이상의 폼이 해당 데이터 모듈을 사용하기를 원할 수 있으므로 각각의 폼에 자체 DataSource가 연결되어야합니다. – RichardS