우리 팀에 단일 책임 원칙을 제시하여 프로젝트에서 사용하는 세미나가있었습니다. 나는 다음과 같은 인기있는 예를 사용 : class Employee:
save()
calculate_salary()
generate_report()
을 그리고 나는 모든이 클래스 괜찮 여부를 알려 팀을 물었다. 모두 괜찮다고 하더군. 하지만 여기 S
저는 SRP (Single Responsibility Principle)를 위반하지 않도록 다시 고려해야 할 코드가 있습니다. 나는 아래의 클래스가 여러 이유로 변경 될 수 있음을 이해 : 업로드 방법을 변경할 수 메타 데이터 스키마를 변경할 수 분석을위한 비즈니스 규칙 그러나 을 변경할 수 있습니다, 나는 내가 어떻게 다른 수업에 다시 배울 수 있는지 알
나는 현재 내가 지금처럼 추상화 된 객체에 외부 파일을 구문 분석하고있어 프로젝트에서 일하고 있어요 해당 구현 내부의 StreamReader. 그런 다음 IMapConverter.Convert 메서드로 전달합니다. 이것이 올바른 접근 방식이면서 테스트 가능성을 유지할 수 있습니까? 예를 들어 문자열을 직접 IMapConverter에 전달하고 거기에서 처리하
내가 .NET 웹 개발에 모든 새로운 원칙을 구현하는 예를 들어 검색했다 , 내가 좋은 일을 발견하지만 mvc4 방문 http://www.c-sharpcorner.com/UploadFile/3d39b4/crud-operations-using-the-generic-repository-pattern-and-dep/ 패턴에 대한했다 내가 바람직하게 사용 찾고 있
저는 통신 프로젝트를 진행 중입니다. 내 프로젝트에서 Open/Closed 원칙을 구현했습니다. 아래는 수업입니다. 나는 비디오 서비스를 구현해야하는 경우 MainServiceClass.CS public abstract class BaseServiceClass
{
public abstract IEnumerable<string> GetService
나는 그래프 탐색 프로그램을 코딩 중이며 약간의 걸림돌을 맞았습니다. 내 그래프는 Vertex 및 NetworkLink 개체로 구성되어 있으며 GeographyModel 개체를 쿼리하여 알 수 있습니다. 아이디어는 List<NetworkLink>이며 GeographyModel에서 검색 한 다음 MetaMap으로 보내 필요한 추가 정보를 얻습니다. 내가하고
저는 며칠 동안이 작업을 시도해 왔지만 올바른 방향으로 약간 밀어 넣어야합니다. 문제 : 나는 내 웹 응용 프로그램에서 간단한 로그 - 인 시스템을 구축하기 위해 노력하고있어 . 내 클래스 사이에 느슨한 커플 링이 있도록 그렇게하려고합니다. 두 개의 인터페이스를 만들었습니다. public interface Authenticable {
String
Liskov 대체 원리를 손상시키는 고전적인 디자인 예제 인 Square 및 Rectangle 클래스와 관련된 몇 가지 스레드가 있습니다. Rect가 Square를 확장하면 LSP에 위배된다는 것을 증명함으로써 문제가 시작됩니다. 많은 사람들이 이것을 해결하는 방법을 묻습니다. Rectangle과 Square 등으로 확장 된 Polygon 기본 클래스를 포
해당 개체를 만드는 것과 관련된 모든 논리를 숨기려면 개체에서 파생되는이 좋은/허용되는 방법입니다. 예를 들어 (완벽하지는 않지만) Scene 클래스가 있습니다. 일부 엔티티, 일부 시스템, 배경색 설정 등으로 초기화하고 싶습니다. 나는 그것을 위해 Factory를 만들 수 있었지만, 대신 파생 클래스의 생성자에서 모든 작업을 수행하도록 선택했습니다. 대신