«design» 태그된 질문

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

6
절대 변경되지 않는 하드 코딩 문자열
그래서 프랑스어로 동사를 (공 법적으로, 데이터 세트를 통하지 않고) 켤 수있는 프로그램을 작성하려는 노력에서 약간의 문제가 발생했습니다. 동사를 켤 수있는 알고리즘은 실제로 17 개 또는 17 개의 동사에 대해 상당히 단순하며 각 경우에 특정 패턴으로 실행됩니다. 따라서이 17 개의 클래스에 대한 접합 접미사는 정적이며 조만간 변경되지 않을 것입니다. 예를 들면 …
39 design  strings 

12
OOP 문서는 "getter"가 계산을 수행하는지 여부를 지정하지 않아야합니까?
우리 학교의 CS 프로그램은 객체 지향 프로그래밍에 대한 언급을 피하므로 직접 Bertrand Meyer의 객체 지향 소프트웨어 구성 을 보완하기 위해 독자적으로 독서를 해왔습니다 . Meyer는 클래스가 가능한 한 구현에 대한 많은 정보를 숨겨야한다는 점을 반복해서 지적합니다. 특히 그는 속성 (즉, 정적, 계산되지 않은 클래스의 속성)과 루틴 (함수 / 프로 시저 …


5
자체 메소드 또는 다른 클래스를 통해 오브젝트를 저장 하시겠습니까?
객체를 저장하고 검색하려면 처리 할 다른 클래스를 만들어야합니까, 아니면 클래스 자체에서 처리하는 것이 더 낫습니까? 아니면 둘 다 섞을까요? OOD 패러다임에 따라 권장되는 것은 무엇입니까? 예를 들어 Class Student { public string Name {set; get;} .... public bool Save() { SqlConnection con = ... // Save the class in the …

5
아이디 또는 객체를 전달 하시겠습니까?
도메인 엔티티를 얻기 위해 비즈니스 로직 메소드를 제공 할 때 매개 변수가 오브젝트 또는 ID를 승인해야합니까? 예를 들어 다음과 같이해야합니다. public Foo GetItem(int id) {} 아니면 이거: public Foo GetItem(Foo foo) {} 나는 객체를 전체적으로 전달하는 것을 믿지만 객체를 얻고 ID 만 알고있는이 경우는 어떻습니까? 호출자가 빈 Foo를 작성하고 ID를 …

5
C ++에서 네임 스페이스를 사용하는 모범 사례 [닫기]
몇 개월 전에 Bob 아저씨의 Clean Code를 읽었 으며 코드 작성 방식에 큰 영향을 미쳤습니다. 비록 그가 모든 프로그래머가 알아야 할 것들을 반복하는 것처럼 보였지만, 그것들을 모두 모아서 연습하게함으로써 훨씬 더 깨끗한 코드를 얻게됩니다. 특히 큰 함수를 여러 개의 작은 함수로 나누고 큰 클래스를 여러 개의 작은 클래스로 나누면 매우 …
38 design  c++  namespace 

17
소프트웨어 디자인 : 빠르게 구축하거나 제대로 구축합니까?
사소한 응용 프로그램을 작성할 때는 작업을 빠르게 수행하고 모델 논리를 뷰와 혼합하고 캡슐화를 깨는 것과 같은 코드에서 바로 가기를 취하는 것이 가장 좋습니다. 또는 더 많은 아키텍처를 빌드하고 올바르게 빌드하는 데 시간을내는 것이 더 좋지만 디자인이 유동적이기 때문에이 추가 코드를 모두 사용하지 못할 수 있으며 피드백이 발생하면이를 버려야 할 수도 …

19
남용되거나 남용 된 프로그래밍 기술 [폐쇄]
사람들이 시도하는 많은 문제에 대한 실질적인 해결책은 아니지만 프로그래밍에 남용 (IE가 필요 이상으로 과도하게 사용) 또는 남용 또는 모든 것에 조금 사용 된 것으로 보이는 프로그래밍 기술이 있습니까? 그것으로 해결하십시오. 정규 표현식, 디자인 패턴 또는 알고리즘 또는 완전히 다른 것일 수 있습니다. 사람들이 다중 상속 등을 남용한다고 생각할 수도 있습니다.
38 design 

9
팀에서 서로 다른 개발 스타일 (위에서 아래로)을 처리하는 방법은 무엇입니까?
아주 작은 팀에서 {현재 비교적 작지만 나중에 더 큰 프로젝트} 프로젝트를 시작했다고 가정 해 보겠습니다. 이것은 학기 말에 폐기 될 학업 프로젝트가 아닌 실제 세계의 다른 개발자들이 사용하기위한 실제 프로젝트입니다. 그러나이 코드는 아직 다른 사람에게 공개되지 않았으므로 아직 결정이 내려지지 않았습니다. 방법론 여러분 중 한 명이 코딩을 시작하고 모든 구성 …

9
객체 지향 코드를 작성할 때 항상 디자인 패턴을 따라야합니까?
객체 지향 프로그램에 대해 생각할 수있는 디자인 패턴이 있습니까? 최근에으로 Door클래스 의 구현을 보았 기 때문에 이것을 묻습니다 Lock. 테스트의 일부였으며 코드가 Null Object 패턴을 따른다고 답했습니다. class Lock { public: virtual void close() = 0; virtual void open() = 0; virtual bool is_open() const = 0; virtual ~Lock() { …

5
전혀 수행하지 않은 프로그래밍 작업에 직면했을 때 어떻게해야합니까?
저는 3 개월 전에 .NET 개발자로 경력을 시작했으며 다양한 기술, 패턴 및 개념에 대한 오랜 교육 계획을 수립 한 후 저를 감독하고있는 개발자가 회사가 처리하는 많은 프로젝트 중 하나에 참여할 준비가되었다고 결정했습니다. 마침내 코딩을 시작할 수있게되어 매우 기쁩니다. 내가 참여한 팀은 현재 새 프로젝트를 시작했기 때문에 규모가 작습니다. 프로젝트의 전체 …

11
동시성 : 디자인에 어떻게 접근하고 구현을 디버깅합니까?
나는 몇 년 동안 동시 시스템을 개발해 왔으며, 공식적인 교육이 부족함에도 불구하고 주제에 대해 꽤 잘 이해하고있다. Erlang 및 Go와 같이 동시성을보다 쉽게하도록 디자인 된 언어에 대해서는 최근에 인기를 얻은 몇 가지 새로운 언어가 있습니다. 동시성에 대한 접근 방식은 시스템을 확장 가능하게 만들고 여러 코어 / 프로세서 / 기계를 활용하는 …

9
향후 변경을위한 설계 또는 당면한 문제 해결 [폐쇄]
코드를 작성하거나 디자인하는 동안 첫 번째 인스턴스 자체에서 문제를 일반화하거나 매우 구체적인 문제를 해결하려고합니다. 문제를 일반화하려고하면 문제가 복잡해지기 때문에 (필요하지 않을 수도 있음) 요구 사항이 변경되면 특정 솔루션을 확장하는 것이 매우 어려울 수 있기 때문에 이것을 묻습니다. 해결책은 중간 경로를 찾는 것보다 쉬운 것이라고 생각합니다. 이 유형의 문제를 어떻게 해결합니까? …
37 design 

3
REST API-API가 중첩 JSON 객체를 반환해야합니까?
JSON API와 관련하여 응답을 평평하게하고 중첩 된 JSON 객체를 피하는 것이 좋습니다. 예를 들어 IMDb와 유사하지만 비디오 게임용 API가 있다고 가정하겠습니다. 게임 및 플랫폼을 매핑하는 몇 가지 엔티티 인 Game, Platform, ESRBRating 및 GamePlatformMap이 있습니다. / game / 1을 요청하여 ID가 ​​1 인 게임을 가져오고 플랫폼과 esrbRating이 중첩 된 게임 …
37 design  rest  api-design  json 

6
세션 변수를 피해야합니까?
과거에는 세션 변수에 크게 의존했지만 최근에는 쿼리 문자열 매개 변수와 같은 것을 사용하여 많은 변수가 불필요한 것으로 나타났습니다. 동료가 세션 변수 사용을 거부합니다. 이것은 현실적인 목표입니까? 실제적인 이유로 세션 변수를 피해야합니까? 세션 변수를 완전히 피할 수 있습니까 (세션 쿠키는 로그인을 허용하지 않음) 더 나은 디자인이 될까요? 동료가 사용하지 않은 몇 …

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