«object-oriented» 태그된 질문

시스템을 모듈 방식으로 제어 및 조작 할 수있는 일련의 객체로 모델링 할 수있는 방법론

3
객체 지향 프로그래밍 : 왜“오리엔트”입니까?
나는 게임 프로그래밍 학위를 통해 대부분의 길입니다. 이것은 컴퓨터 과학 학위가 아니기 때문에 많은 이론이 실제 포트폴리오 구축과 JIT 학습으로 보는 것을 선호하여 게임 업계에서 더 중요합니다. 첫 번째 주제는 "객체 지향 프로그래밍 소개"입니다. 이 프로그래밍 문구는 다른 프로그래밍 패러다임에 대해 배울 때까지 귀찮게하지 않았습니다 ( https://en.wikipedia.org/wiki/Comparison_of_programming_paradigms 에서이 목록을 얻습니다 …

5
'유틸리티'수업이 문제의 원인입니까? [닫은]
현재로서는이 질문이 Q & A 형식에 적합하지 않습니다. 답변, 사실, 참고 자료 또는 전문 지식을 통해 답변이 뒷받침 될 것으로 예상되지만이 질문은 토론, 논쟁, 여론 조사 또는 광범위한 토론을 요구할 것입니다. 이 질문을 개선하고 다시 열 수 있다고 생각 되면 도움말 센터 를 방문하여 안내를 받으십시오 . 휴일 칠년 전에 …

1
상속 계층에서 Liskov 대체 원칙을 확인하는 방법은 무엇입니까?
이 답변에서 영감을 얻었습니다 . 리스 코프 치환 원칙은 필요 있음 하위 유형에서는 전제 조건을 강화할 수 없습니다. 하위 유형에서는 사후 조건을 약화시킬 수 없습니다. 상위 유형의 변형은 하위 유형으로 유지되어야합니다. 히스토리 제한 사항 ( "히스토리 규칙"). 객체는 그 방법 (캡슐화)을 통해서만 수정 가능한 것으로 간주됩니다. 서브 타입은 수퍼 타입에 …

5
클래스의 고유 인스턴스를 보장하는 방법은 무엇입니까?
이 게시물을 개선하고 싶습니까? 인용과 답변이 올바른 이유에 대한 설명을 포함하여이 질문에 대한 자세한 답변을 제공하십시오. 세부 사항이없는 답변은 편집하거나 삭제할 수 있습니다. 주어진 클래스의 각 인스턴스가 고유하게 식별 가능한 인스턴스인지 확인하는 다른 방법을 찾고 있습니다. 예를 들어, Name필드 가있는 클래스가 있습니다 name. John Smith Name로 name초기화 된 객체가 있으면 …

6
객체 지향 사례 확산 방법에 대한 팁
닫은. 이 질문은 주제에 맞지 않습니다 . 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? Software Engineering Stack Exchange에 대한 주제가 되도록 질문을 업데이트하십시오 . 휴일 3 년 전 . 저는 약 250 명의 개발자가있는 중소 기업에서 일합니다. 불행히도, 많은 사람들이 절차 적 사고 방식에 빠져 있으며 일부 팀 은 실제로 …

9
크고 밀접하게 연결된 클래스를 나누는 방법은 무엇입니까?
가능하면 가볍고 깨끗한 디자인을 위해 리팩토링하고 싶은 2k 라인 이상의 코드 클래스가 있습니다. 너무 큰 이유는 이러한 클래스가 대부분의 메소드가 액세스해야하는 맵 세트를 처리하고 메소드가 서로 매우 연결되어 있기 때문입니다. 매우 구체적인 예 Server를 들겠습니다. 들어오는 메시지를 처리 하는 클래스가 있습니다 . 이 같은 방법이있다 joinChatroom, searchUsers, sendPrivateMessage, 이러한 방법 …

10
객체 지향이 실제로 알고리즘 성능에 영향을 줍니까?
객체 지향은 많은 알고리즘을 구현하는 데 많은 도움이되었습니다. 그러나 객체 지향 언어는 때때로 "직접적인"접근 방식을 안내하며이 접근 방식이 항상 좋은지 의심 스럽습니다. OO는 알고리즘을 빠르고 쉽게 코딩하는 데 실제로 도움이됩니다. 그러나이 OOP는 성능에 기반한 소프트웨어 즉, 프로그램이 얼마나 빨리 실행되는지에 대한 단점이 될 수 있습니까? 예를 들어, 데이터 구조에 그래프 …

3
“관리자”수업 사용을 줄이는 방법에 대한 팁 / 조언?
프로그램 디자인에 너무 많은 "관리자"클래스가 있으면 코드 냄새가 나고 불필요한 복잡성이 추가되는 경우가 있습니다. 나에게 사람들은 이해하기 쉬운 컨텍스트에서 객체를 조작하고 제어하기 위해 관리자 클래스를 사용하고 싶지만 솔루션없이 솔루션을 작동시키는 방법을 알아내는 것은 혼란 스러울 수 있습니다. 관리자 클래스를 최대한 많이 피해야합니까? 또한 이러한 관리자를 제거 할 수있는 일반적인 / …

3
인터페이스를 행동으로하는 추상 기본 클래스?
C # 프로젝트의 클래스 계층을 디자인해야합니다. 기본적으로 클래스 기능은 WinForms 클래스와 유사하므로 WinForms 툴킷을 예로 들어 보겠습니다. (그러나 WinForms 또는 WPF를 사용할 수 없습니다.) 모든 클래스가 제공해야하는 몇 가지 핵심 속성과 기능이 있습니다. 치수, 위치, 색상, 가시성 (true / false), 그리기 방법 등 디자인 조언이 필요합니다. 추상적 인 기본 클래스와 …

6
보호 된 방법에 대한 실제 시나리오
오늘 나는 기본적으로 protected부모의 비공개 메소드를 호출 할 필요가 거의 없기 때문에 기본적으로 C ++ 코드에서 메소드를 사용하지 않는다는 것을 알았습니다 . 템플릿 메소드 패턴에서 Java로 protected를 사용하지만 C ++에서 개인 메소드를 대체 할 수 있기 때문에 필요하지 않습니다 protected. 그렇다면 protectedC ++ 코드에서 메소드 를 사용하려는 실제 시나리오는 무엇 …

8
실제 실제 객체를 참조하지 않고 어떻게 OO를 가르 칠 수 있습니까? [닫은]
폐쇄되었습니다 . 이 질문은 더 집중되어야 합니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 한 가지 문제에만 집중할 수 있도록 질문을 업데이트하십시오 . 휴일 육년 전 . OO의 기본 개념은 데이터의 상태를 보호하는 방식으로 여러 시스템 간의 데이터 메시징을 처리하기위한 더 나은 아키텍처를 찾는 것이 …

3
구조체에 생성자를 추가해야합니까?
우리는 종종 멤버 메소드를 가진 완전한 모듈 일 수있는 클래스와 달리 데이터 구조를 정의하기 위해 c ++ 구조체를 사용합니다. 이제 깊게, 우리는 둘 다 동일하다는 것을 알고 있습니다. 데이터 만 엔티티로 구조체를 자주 사용 / 처리한다는 사실 때문에 기본 생성자를 추가하지 않아도된다는 충동이 생깁니다. 그러나 생성자는 항상 훌륭하며 일을 더 …

2
객체 지향 대 벡터 기반 프로그래밍
객체 지향 디자인과 벡터 기반 디자인 사이에서 찢어졌습니다. 나는 객체가 전체 아키텍처에 부여하는 능력, 구조 및 안전을 좋아합니다. 그러나 동시에 속도는 나에게 매우 중요하며 배열에 간단한 float 변수를 사용하면 Matlab 또는 Python의 numpy와 같은 벡터 기반 언어 / 라이브러리에서 실제로 도움이됩니다. 여기 내 요점을 설명하기 위해 작성한 코드가 있습니다. 문제 …

6
인터페이스의 일부만 구현하는 방법
OOP에서 개발할 때 때때로 인터페이스 / 계약은 변경할 수없는 라이브러리에 의해 제공됩니다. 이 인터페이스를 J라고합시다. 이제이 인터페이스를 구현하는 객체를 사용하는 클래스 A의 객체가 있습니다. 내부 인터페이스 정의의 작은 부분 만 필요합니다. 일부 객체 클래스는 프로젝트 중에 나에 의해 생성되므로 (D 유형 중 하나라고 부릅니다) 인터페이스 J 내부의 모든 구현에 오버 …


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.