생성자와 함께 할 수있는 작업량에 대해 동료와 논의하고 있습니다. 내부에 다른 개체 A가 필요한 클래스 B가 있습니다. 개체 A는 클래스 B가 작업을 수행해야하는 몇 가지 구성원 중 하나입니다. 모든 공용 메소드는 내부 객체 A에 따라 다릅니다. 객체 A에 대한 정보는 DB에 저장되므로 생성자의 DB에서 조회하여 확인하고 가져 오려고합니다. 내 동료는 생성자가 생성자 매개 변수를 캡처하는 것 외에 많은 작업을 수행해서는 안된다고 지적했습니다. 생성자에 대한 입력을 사용하여 객체 A를 찾지 못하면 모든 공용 메소드가 실패하기 때문에 인스턴스를 작성하고 나중에 실패하는 대신 실제로 생성자에서 조기에 처리하는 것이 좋습니다.
다른 사람들은 어떻게 생각합니까? 차이가 있다면 C #을 사용하고 있습니다.
읽기 생성자에서 모든 객체의 작업을 수행 할 이유가 있습니까? DB로 이동하여 객체 A를 가져 오는 것이 "객체를 사용할 준비가되도록하는 데 필요한 다른 초기화"의 일부인지 궁금합니다. 사용자가 생성자에게 잘못된 값을 전달하면 공용 메소드를 사용할 수 없기 때문입니다.
생성자는 객체의 필드를 인스턴스화하고 객체를 사용할 준비를하는 데 필요한 다른 초기화를 수행해야합니다. 이것은 일반적으로 생성자가 작다는 것을 의미하지만 상당한 양의 작업이 필요한 시나리오가 있습니다.