소프트웨어 공학

시스템 개발 수명주기 내에서 작업하는 전문가, 학자 및 학생을위한 Q & A

5
C #에서 불변 개체 간의 순환 참조를 모델링하는 방법은 무엇입니까?
다음 코드 예제에는 방을 나타내는 불변 객체에 대한 클래스가 있습니다. 북쪽, 남쪽, 동쪽 및 서쪽은 다른 방으로 나가는 출구를 나타냅니다. public sealed class Room { public Room(string name, Room northExit, Room southExit, Room eastExit, Room westExit) { this.Name = name; this.North = northExit; this.South = southExit; this.East = eastExit; this.West …

2
where 조건과 continue 가드 절을 사용하여 foreach 필터링
일부 프로그래머가 이것을 사용하는 것을 보았습니다. foreach (var item in items) { if (item.Field != null) continue; if (item.State != ItemStates.Deleted) continue; // code } 내가 일반적으로 사용하는 대신 foreach (var item in items.Where(i => i.Field != null && i.State != ItemStates.Deleted)) { // code } 나는 둘 다의 조합을 …

8
코드 검토 중에 테스트를 작성하는 것이 유리하지 않습니까?
내 동료가 내가 흥미로웠다는 아이디어를 생각해 냈습니다. 코드를 검토하는 동안 TDD를하지 않는다고 가정하여 코드를 검토하는 동안 테스트를 작성하는 것이 유리하지 않습니까? 이 질문에 대해서는 이것이 순수한 학업 프로젝트라고 가정하므로 생명이 위태로워지지 않습니다. 또한 팀은 4 명입니다. 누구나 언어를 알고 사용 된 모든 도구 / 라이브러리 / 프레임 워크에 익숙하며 테스트를 …

3
일정 / 계획 알고리즘
어떻게 접근 해야할지 모르겠습니다. 직원을위한 캘린더를 생성해야합니다. 직원마다 특정 업무 제약이 있습니다 (일부 개인, 일부 일반) 내가하고있는 일 : 나는 의사가 각 의사는 주 5 일 근무해야합니다. 각 의사는 일주일에 1 박 일해야합니다 각 의사는 다른 의사에 비해 (또는 가능한 한 가까운 밤) 일해야합니다. 각 의사는 다른 의사들과 동등한 목요일 …

9
의존성 주입 : 프레임 워크를 사용해야합니까?
최근에 앱을 테스트 할 수 있어야하기 때문에 의존성 주입을 많이 수행하는 Python 프로젝트에서 작업했지만 프레임 워크를 사용하지 않았습니다. 때로는 모든 종속성을 수동으로 연결하는 것이 약간 지루했지만 때로는 전반적으로 훌륭했습니다. 객체를 여러 곳에서 만들어야했을 때 프로덕션 인스턴스를 만드는 함수 (때로는 해당 객체의 클래스 메서드)가있었습니다. 이 함수는 해당 객체가 필요할 때마다 호출되었습니다. …

6
RESTful하지 않은 HTTP API를 호출하는 것은 무엇입니까? [닫은]
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 3 년 전 . HTTP 기반 API를 호출하고 URI를 사용하여 리소스 이름을 지정하고 HTTP 동사 (PUT, POST, DELETE, GET ...)를 사용하여 …
24 terminology  rest  api  http 

6
반복자 패턴-내부 표현을 노출시키지 않는 것이 왜 중요합니까?
C # Design Pattern Essentials를 읽고 있습니다. 현재 반복자 패턴에 대해 읽고 있습니다. 구현 방법을 완전히 이해하지만 중요성을 이해하지 못하거나 사용 사례를 보지 못합니다. 이 책에는 어떤 사람이 물건의 목록을 가져와야하는 경우가 있습니다. 그들은 IList<T>또는 과 같은 공공 재산을 노출함으로써이를 수행 할 수있었습니다 Array. 이 책은 씁니다 이것의 문제점은이 두 …


3
비동기 / 대기 교착 상태를 진단하려면 어떻게해야합니까?
async / await를 많이 사용하는 새로운 코드베이스로 작업하고 있습니다. 우리 팀의 사람들 대부분은 비동기 / 대기에 상당히 새로운 사람들입니다. 우리는 일반적으로 Microsoft가 지정한 모범 사례 를 따르는 경향이 있지만 일반적으로 비동기 호출을 통과하는 컨텍스트가 필요하며 그렇지 않은 라이브러리를 사용하고 ConfigureAwait(false)있습니다. 이 모든 것을 결합하면 매주 기사에 설명 된 비동기 교착 …
24 c#  debugging  async 

5
'uint'및 'short'데이터 유형이 표준 int (32)보다 더 적합한 경우는 무엇입니까?
나는 그들이 나타낼 수있는 용량과 가치의 차이를 이해하지만 그것이 적절한 지 여부에 관계없이 사람들이 항상 사용 하는 것처럼 보입니다 Int32. uint음수가 될 수없는 값 (데이터베이스 레코드의 ID를 나타낼 수 있음)을 설명 할 때 많은 시간이 걸리더라도 서명되지 않은 버전 ( ) 을 사용 하는 사람은 없습니다. 또한 short/Int16필요한 가치의 용량에 …
24 c# 

5
명시 적 캐스팅 연산자를 사용하는 것이 합리적입니까 아니면 나쁜 해킹입니까?
나는 큰 물건을 가지고있다 : class BigObject{ public int Id {get;set;} public string FieldA {get;set;} // ... public string FieldZ {get;set;} } 특수한 DTO와 유사한 객체 : class SmallObject{ public int Id {get;set;} public EnumType Type {get;set;} public string FieldC {get;set;} public string FieldN {get;set;} } 개인적으로 BigObject를 SmallObject로 명시 …

3
상품 배송을위한 3D 포장 알고리즘
가능한 한 적은 수의 상자에 제품을 가장 잘 수용 할 수있는 운송 견적을 작성하는 작업을 받았습니다. 알려진 각형 상자 크기의 유한 세트가 있습니다 상자 안에 포장 할 임의의 각형 항목이 많이 있습니다 적은 수의 상자가 가장 잘 사용해야합니다. 2 개의 상자 1x1x1을 배송하는 것이 1 개의 상자 1x2x1보다 훨씬 비쌉니다. …

1
단일 파이썬 파일 배포 : 모듈 또는 패키지?
유용한 파이썬 함수 또는 클래스 (또는 무엇이든) useful_thing가 단일 파일에 있다고 가정 해보십시오 . 소스 트리를 구성하는 데는 본질적으로 두 가지 방법이 있습니다. 첫 번째 방법은 단일 모듈을 사용합니다. - setup.py - README.rst - ...etc... - foo.py 어디에 useful_thing정의되어 foo.py있습니다. 두 번째 전략은 패키지를 만드는 것입니다. - setup.py - README.rst …

4
체계적으로 프로그래밍 언어 선택하기
폐쇄되었습니다 . 이 질문은 더 집중되어야 합니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 한 가지 문제에만 집중할 수 있도록 질문을 업데이트하십시오 . 휴일 오년 전에 . 언어를 선택하는 방법론을 찾고 있습니다. 언어에 대한 의견을 요구하지 않습니다. 저는 상점의 현재 언어를 사용 가능한 다른 언어와 …

10
OOP에서 순환 참조가 필요한이 실제 활동을 모델링하는 올바른 방법은 무엇입니까?
순환 참조에 대한 Java 프로젝트의 문제로 씨름하고 있습니다. 문제의 객체가 상호 의존적이며 서로에 대해 알아야 할 실제 상황을 모델링하려고합니다. 이 프로젝트는 보드 게임을하는 일반적인 모델입니다. 기본 수업은 비 특정이지만 체스, 주사위 놀이 및 기타 게임의 세부 사항을 다루기 위해 확장됩니다. 나는 11 년 전에 이것을 십여 개의 다른 게임으로 애플릿으로 …

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