«design» 태그된 질문

소프트웨어 설계를 통한 솔루션의 문제 해결 및 계획에 대한 질문.

4
구성 요소와 모듈간에 차이점이 있습니까?
모듈 및 구성 요소라는 용어에 약간의 문제가 있습니다. 내 생각에 모듈은 번들 클래스이며 잘 정의 된 인터페이스를 통해서만 액세스 할 수 있습니다. 모든 구현 세부 사항을 숨기고 재사용 할 수 있습니다. 모듈은 의존하는 모듈을 정의합니다. 구성 요소와의 차이점은 무엇입니까? 일부 책에서 찾아 보았지만 구성 요소에 대한 설명은 매우 비슷합니다.

8
프런트 엔드 우선 또는 백 엔드 우선. 좋은 시스템 설계 연습은 무엇입니까?
지금 학교 등록 시스템을 개발해야하는 고객이 있습니다. 이제는 이런 종류의 도전에 직면 한 것은 이번이 처음입니다. 내가 만든 과거 소프트웨어의 대부분은 그렇게 복잡하지 않습니다. 나는 대부분의 사람들이 복잡한 소프트웨어를 만들었다는 것을 알고 있습니다. 프런트 엔드 또는 백 엔드를 먼저 설계해야합니까? 감사! 인터넷에서 얼마 전에 찾은 기사의 결론은 다음과 같습니다. 그냥 …

6
class 키워드없이 "객체 지향"프로그래밍을 구현할 수 있습니까?
은행에서 "계정"을 추상화하고 싶다고 가정 해 봅시다. 다음 function은 파이썬 에서 객체를 사용하는 한 가지 방법입니다 . def account(): """Return a dispatch dictionary representing a bank account. >>> a = account() >>> a['deposit'](100) 100 >>> a['withdraw'](90) 10 >>> a['withdraw'](90) 'Insufficient funds' >>> a['balance'] 10 """ def withdraw(amount): if amount > …

6
“인터페이스 프로그래밍”이해
"구현 대신 인터페이스 프로그래밍"이라는 용어를 많이 접하게되었으며 그 의미를 이해하고 있다고 생각합니다. 그러나 그것이 이점과 가능한 구현인지 이해하고 싶습니다. "인터페이스 프로그래밍"이란 가능한 경우 구체적인 구현을 참조하는 대신보다 추상적 인 수준의 클래스 (인터페이스, 추상 클래스 또는 때로는 일종의 수퍼 클래스)를 참조해야 함을 의미합니다. Java의 일반적인 예는 다음을 사용하는 것입니다. List myList …

7
"데이터 숨기기"와 "캡슐화"의 차이점은 무엇입니까?
"실제로 Java 동시성"을 읽고 있는데 다음과 같이 말합니다. "다행히 캡슐화 및 데이터 숨기기와 같이 체계적으로 유지 관리 가능한 클래스를 작성하는 데 도움이되는 동일한 객체 지향 기술로 스레드 안전을 만드는 데 도움이 될 수 있습니다. 수업. " 문제 # 1-데이터 숨기기에 대해 들어 본 적이 없으며 그것이 무엇인지 모릅니다. 문제 # …

12
수업에 얼마나 큰가요?
나는 오랜 개발자 (나는 49입니다)이지만 객체 지향 개발에 익숙하지 않습니다. Bertrand Meyer 's Eiffel 이후 OO에 대해 읽었지만 OO 프로그래밍은 거의하지 않았습니다. 요점은 OO 디자인에 대한 모든 책은 보트, 자동차 또는 우리가 자주 사용하는 일반적인 객체의 예로 시작하며 속성과 메소드를 추가하고 객체의 상태를 모델링하는 방법과 수행 할 수있는 것을 설명하기 …

12
유용한 오류 메시지에 대한 개발자의 문제점은 무엇입니까? [닫은]
오늘날까지도 전문가 팀이 제작 한 벨트 아래에서 수년 동안 사용 된 제품은 오늘날 까지도 사용자에게 유용한 오류 메시지를 제공하지 못한다 는 사실은 계속해서 놀랍습니다 . 경우에 따라 약간의 추가 정보 만 추가하면 사용자의 문제를 해결할 수 있습니다. 오류를 발생시키는 프로그램으로 인해 오류가 발생했습니다. 가능한 한 많은 정보를 사용자에게 알리기 위해 …

3
응용 프로그램 또는 도메인 서비스의 DDD 리포지토리
요즘 DDD를 공부하고 있는데 DDD로 리포지토리를 관리하는 방법에 대한 몇 가지 질문이 있습니다. 실제로, 나는 두 가지 가능성을 만났다. 첫 번째 내가 읽은 서비스를 관리하는 첫 번째 방법은 응용 프로그램 서비스에 리포지토리와 도메인 모델을 주입하는 것입니다. 이러한 방식으로 응용 프로그램 서비스 방법 중 하나에서 도메인 서비스 방법 (비즈니스 규칙 확인)을 …


6
플래그를 확인할 필요가없는 디자인 패턴이 있습니까?
데이터베이스에 문자열 페이로드를 저장하겠습니다. 두 가지 전역 구성이 있습니다. 암호화 압축 이들 중 하나만 활성화되거나 둘 다 활성화되거나 비활성화되는 방식으로 구성을 사용하여 활성화 또는 비활성화 할 수 있습니다. 내 현재 구현은 다음과 같습니다. if (encryptionEnable && !compressEnable) { encrypt(data); } else if (!encryptionEnable && compressEnable) { compress(data); } else if …

2
역사적으로 성장한 소프트웨어를위한 명명 된 안티 패턴이 있습니까? [닫은]
여러 개발자가 방금 시스템에 새로운 기능을 추가했지만 아무도 전체 아키텍처를 주시하거나 리팩토링을 수행하지 않은 역사적으로 성장한 소프트웨어 시스템을 설명하는 안티 패턴이 있습니까? 관리 / 고객이 지속적으로 새로운 기능을 요구하고 아무도 리팩터링하지 않고 다른 개발자가 이전에 한 일을 추가 할 때 이런 일이 발생한다고 생각합니다. 개발자가 소프트웨어 시스템에 압도되어 현재 작동 …

6
이벤트 / 활동 데이터에 관계형 데이터베이스 대 JSON 객체 사용
표준 SQL 관계형 데이터베이스 또는 JSON 객체를 사용하여 이벤트 또는 활동에 대한 데이터를 저장하도록 결정하려는 프로젝트를 진행 중입니다. 프로젝트는 여러 이벤트 유형에 데이터를 저장하므로이 질문에 대해 하나의 이벤트 유형 만 설명하기로 결정했습니다. 라이브 음악 이벤트 (이 질문의 맨 아래에 JSON 스키마를 사용하여 전체 설명)는 이벤트가 발생하는 위치, 이벤트 시간 / …
28 design  sql  json 

5
한 팀에서 디자인하고 다른 팀에서 코딩
모든 소프트웨어 디자인이 현지 팀에 의해 만들어지고 코딩을 위해 해외 팀으로 보내지는 프로젝트에 참여하게됩니다. 이 특성을 가진 프로젝트에 처음으로 직면 한 것은 저에게 이상하게 느껴집니다. 관리자는 우리가 매우 자세한 디자인 문서를 작성해야하므로 오프 쇼어 팀에게는 오류의 여지가 없습니다. 내 관점에서 그들은 종이로 코딩하고 IDE에서 할 수 있습니다. 그래서 내 질문은이 …

10
단순 vs 복합 (성능 효율적인) 솔루션 – 언제 어느 것을 선택해야합니까?
나는 몇 년 동안 프로그래밍을 해왔으며 종종 딜레마에 빠졌다. 두 가지 해결책이 있습니다- 하나는 간단한 것입니다. 즉, 간단한 접근 방식, 이해하기 쉽고 유지하기가 쉽습니다. 여기에는 중복성, 추가 작업 (추가 IO, 추가 처리)이 포함되므로 최적의 솔루션이 아닙니다. 그러나 다른 것들은 복잡한 접근 방식을 사용하여 구현하기 어렵고 종종 많은 모듈 간의 상호 …

6
객체 지향“정규화”
데이터베이스 프로그래밍에는 저장하려는 데이터에 대해 "정규화"라는 기술이 있습니다. 누구든지이 개념을 객체 디자인에 적용하려고 했습니까? 어떻게 지냈어? 어떻게 작동 했습니까? 편집 : 확장 / 명확하게하기 위해 데이터베이스 정규화는 중복을 줄이는 원칙 이상의 것입니다. 실제로 진행하는 단계와 단계가 있으며 현재 어느 단계에 있는지 알려주는 객관적인 조치가 있습니다. 개체 디자인에는 고유 한 원리가 …
28 design 

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