«c#» 태그된 질문

C #은 Microsoft에서 .NET 플랫폼과 병렬로 생성 한 다중 패러다임, 관리, 가비지 수집 개체 지향 프로그래밍 언어입니다.

3
IEnumerable "상태 머신"감지
C # yield return으로 너무 귀여워지기 라는 흥미로운 기사를 읽었습니다. IEnumerable이 실제 열거 가능한 컬렉션인지 또는 yield 키워드로 생성 된 상태 머신인지 감지하는 가장 좋은 방법은 무엇인지 궁금합니다. 예를 들어 기사에서 DoubleXValue를 다음과 같이 수정할 수 있습니다. private void DoubleXValue(IEnumerable<Point> points) { if(points is List<Point>) foreach (var point in points) …
17 c#  api-design 


3
국가 패턴이 Liskov 대체 원칙을 위반합니까?
이 이미지는 도메인 기반 디자인 및 패턴 적용 : C # 및 .NET의 예제 포함 이는 대한 클래스 다이어그램 주 패턴 A가 SalesOrder수명 시간 동안 여러 가지 상태를 가질 수 있습니다. 다른 상태 사이에는 특정 전환 만 허용됩니다. 이제 OrderState클래스는 abstract클래스이고 모든 메소드는 서브 클래스로 상속됩니다. Cancelled다른 상태로의 전이를 허용하지 …

5
런타임시 뷰 모델 작성을 덜 고통스럽게 만드는 방법
나는 긴 질문에 대해 사과하고, 그것은 rant로 조금 읽지 만, 그렇지 않다고 약속합니다! 아래에 내 질문을 요약했습니다. MVC 세계에서는 상황이 간단합니다. 모델에는 상태가 있고,보기 에는 모델이 표시 되며, 컨트롤러 는 모델에 대한 작업을 수행하며 (기본적으로) 컨트롤러에는 상태가 없습니다. 작업을 수행 하기 위해 Controller는 웹 서비스, 저장소, 로트에 대한 종속성이 있습니다. …
17 c#  design  wpf  mvvm 

1
C # -4.0은 공개 표준입니까?
Ecma-334 (ISO / IEC 23270 : 2006) 표준은 언어 버전 2.0에 해당합니다. 버전 4.0 사양은 Microsoft에서 무료로 제공하지만 Microsoft의 공개 사양 목록 에는 Ecma (버전 2.0) 버전 만 나와 있습니다. 그렇다면 이후 버전에 추가 된 모든 좋은 기능 (LINQ, 람다 함수 등)은 어떻습니까? 컴파일러에서 구현할 수 있습니까?
17 c#  legal  standards 

4
의존성 주입과 싱글 톤. 그것들은 완전히 다른 개념입니까?
동료에게 Singleton을 통한 의존성 주입을 사용하는 것에 대해 들었습니다. 그것들이 서로 대체 될 수있는 두 개의 직교 패턴인지 여전히 알아낼 수 없습니까? 아니면 DI는 Singleton 패턴을 테스트 할 수있는 방법입니까? 다음 코드 스 니펫을 살펴보십시오. IMathFace obj = Singleton.Instance; SingletonConsumer singConsumer = new SingletonConsumer(obj); singConsumer.ConsumerAdd(10,20); 이 SingletonConsumer유형의 파라미터를 접수한다 IMathFace. …

2
추상 예외 슈퍼 타입
던지기 System.Exception가 그렇게 나쁘다고 여겨 지면 왜 처음부터 Exception만들어 지지 않았 abstract습니까? 그렇게하면 전화를 걸 수 없습니다. throw new Exception("Error occurred."); 이렇게하면 파생 된 예외를 사용하여 발생한 오류에 대한 자세한 정보가 제공됩니다. 예를 들어 라이브러리에 사용자 정의 예외 계층을 제공하려는 경우 일반적으로 예외에 대한 추상 기본 클래스를 선언합니다. public abstract …

9
Java가 C #을 따라 잡을까요? [닫은]
현재로서는이 질문이 Q & A 형식에 적합하지 않습니다. 답변, 사실, 참고 자료 또는 전문 지식에 의해 답변이 뒷받침 될 것으로 예상되지만이 질문은 토론, 논쟁, 여론 조사 또는 광범위한 토론을 요구할 것입니다. 이 질문을 개선하고 다시 열 수 있다고 생각 되면 도움말 센터 를 방문하여 안내를 받으십시오 . 휴일 팔년 전에 …
17 java  c# 

9
내부 또는 외부 방법으로 진술해야합니까?
이 중 어느 것이 더 낫습니까? 각각의 장단점은 무엇입니까? 어느 것을 사용 하시겠습니까? 같은 방법을 다루는 방법에 대한 다른 제안은 높이 평가됩니다. Draw ()가 다른 draw 메소드가 호출되는 유일한 장소라고 가정하는 것이 합리적입니다. 여기에 표시된 세 가지뿐만 아니라 더 많은 Draw * 메서드 및 Show * 속성으로 확장해야합니다. public void …
17 c# 

4
ASP.NET 응용 프로그램을 개발할 때 CQRS / MediatR이 그만한 가치가 있습니까?
최근 CQRS / MediatR을 살펴 보았습니다. 그러나 드릴 다운할수록 마음에 들지 않습니다. 아마도 나는 무언가 / 모든 것을 오해했을 것입니다. 따라서 컨트롤러를 이것으로 줄인다는 주장으로 시작됩니다. public async Task<ActionResult> Edit(Edit.Query query) { var model = await _mediator.SendAsync(query); return View(model); } 얇은 컨트롤러 지침에 완벽하게 맞습니다. 그러나 오류 처리와 같은 매우 …

4
C # 메서드에서 반환 변수 선언 및 값을 직접 반환
반환 변수에 대한 토론에서 팀의 일부 구성원은 결과를 호출자에게 직접 반환하는 방법을 선호하는 반면 다른 구성원은 반환 변수를 선언하여 호출자에게 반환하는 것을 선호합니다 (아래 코드 예 참조) 후자의 주장은 코드를 디버깅하는 개발자가 메소드를 호출자에게 리턴하기 전에 메소드의 리턴 값을 찾도록하여 코드를 이해하기 쉽게 만든다는 것입니다. 이는 특히 메소드 호출이 데이지 …

4
클래스 및 인터페이스 파일을 가장 잘 구성하는 방법은 무엇입니까?
OK .. 모든 토론 후에 내가 다루고있는 구체적인 예를 더 잘 반영하기 위해 질문을 약간 변경하고 있습니다. 나는이 개 수업을 ModelOne하고 ModelTwo이 클래스는 기능의 유사한 유형을 수행하지만 서로 관련이없는. 그러나 나는 제 3 유형이 CommonFunc모두 구현되어 일부 공공 기능을 포함 ModelOne하고 ModelTwo및 당 밖으로 고려되었습니다 DRY. 두 모델은 클래스 내에서 …

6
열거 형은 코드 냄새가 아닌 경우는 언제입니까?
양도 논법 나는 객체 지향 실습에 관한 많은 모범 사례를 읽었으며, 읽은 거의 모든 책은 열거 형이 코드 냄새라고 말하는 부분을 가지고있었습니다. 열거 형이 유효 할 때 설명하는 부분을 놓친 것 같습니다. 따라서 열거 형이 코드 냄새 가 아니며 실제로 유효한 구조 가되는 지침 및 / 또는 사용 사례를 찾고 …

1
.NET 솔루션의 디렉토리 구조
우리는 최근 계약자 방문을 통해 프로젝트 구조화 방법론에 의문을 가졌습니다. 디렉토리 구조를 구체적으로 언급하고 있습니다. 그는 Microsoft 지침 사용을 제안했습니다. Google에서 "Microsoft 지침 .NET 프로젝트 디렉토리 구조"를 사용하고 유용한 정보를 찾을 수있을 것이라고 생각했지만 실제로는 그렇지 않습니다. 그대로 우리는 다음과 같이합니다. [Company.System.Feature] |-doc |Sandcastle project |-lib |Nuget packages |-src |-Project1 …
16 c#  visual-studio 

6
요구 사항 또는 방법에 따라 단위 테스트 나누기
먼저, 제목에 대한 사과, 나는 그것을 설명하는 가장 쉬운 방법을 생각할 수 없었다! 단위 테스트를 작성하려는 방법이 있습니다. 메소드의 구현, 테스트 방법에 대해서만 논의하고 싶지 않기 때문에 상당히 일반적으로 사용하겠습니다. 방법은 다음과 같습니다 public void HandleItem(item a) { CreateNewItem(); UpdateStatusOnPreviousItem(); SetNextRunDate(); } 따라서이 클래스에는 하나의 공용 메소드가 있으며이 메소드는 일부 …
16 c#  unit-testing 

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