«c#» 태그된 질문

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

13
단위 테스트를 빠르게 수행하려면 어떻게해야합니까?
우리는 프로젝트에서 거의 천 번의 테스트를 받았으며 사람들은 체크인하는 데 시간이 오래 걸리기 때문에 테스트를 중단하는 것을 중단했습니다. 기껏해야 변경 한 코드와 관련된 테스트를 실행하고 최악의 경우 테스트하지 않고 간단히 체크인합니다. 이 문제는 솔루션이 120 개의 프로젝트로 증가했기 때문에 (우리는 일반적으로 훨씬 더 작은 프로젝트를 수행하며 TDD를 올바르게 수행하는 것은 …
40 c#  unit-testing  tdd  nunit 

8
현대 OO 언어가 C ++의 어레이 저장소 성능과 경쟁 할 수 있습니까?
방금 내가 친숙한 모든 현대 OO 프로그래밍 언어 (기본적으로 Java, C # 및 D)가 공변량 배열을 허용한다는 것을 알았습니다. 즉, 문자열 배열은 객체 배열입니다. Object[] arr = new String[2]; // Java, C# and D allow this 공변량 배열은 정적 유형 시스템의 구멍입니다. 컴파일 타임에 감지 할 수없는 유형 오류가 가능하므로 …
40 c#  java  c++  d 

5
C # List <>에서 .Any ()를 사용하는 것은 무엇입니까?
나는 이것을 동료들과 논의 하고 있으며 C #에서 .Any어떤 용도로 사용되는지 알 수 없었습니다 List&lt;&gt;. 다음 명령문과 같이 배열에서 요소의 유효성을 확인할 수 있습니다. if (MyList.Any()){ ...} //Returns true or false 정확히 같은 if (MyList.Count() != 0) { ... } 그리고 if성명서 의 의도에 대해 훨씬 더 일반적이고 읽기 쉽고 …
40 c#  array  list 

3
C 스타일 언어의 논리 NOT 연산자가“~~”가 아닌“!”인 이유는 무엇입니까?
이진 연산자의 경우 비트 연산자와 논리 연산자가 모두 있습니다. &amp; bitwise AND | bitwise OR &amp;&amp; logical AND || logical OR NOT (단항 연산자)은 다르게 동작합니다. 비트와 ~가 있습니다! 논리적입니다. 나는 NOT이 AND와 OR에 반대되는 단항 연산이 아니라는 것을 알고 있지만, 디자이너가 single이 bitwise이고 double이 논리적이라는 원칙에서 벗어나고 다른 성격을 …
39 java  c#  c++  c 

6
.cs 파일을 프로젝트에 링크하는 것보다 .dll 파일을 사용할 때의 장점 (내 자신의 일반적인 도우미 클래스 / 확장 방법의 경우)
내가 만든 모든 응용 프로그램에서 사용하는 도우미 프로젝트가 있습니다. 여기에는 몇 가지 확장 메서드와 많은 일반 도우미 클래스, 컨트롤 등이 포함되어 있습니다. 도우미 프로젝트를 수시로 업데이트 / 확장합니다. 이들은 일반적으로 규모가 작고 관련이없는 프로젝트이며, 나는 그들 모두에서 일하는 유일한 사람입니다. 나는 그것을 사용하기 위해 두 가지 접근법을 시도했다. 내가 사용하는 …
38 c#  dll 

5
C #에 케이스 블록에 로컬 범위가없는 이유는 무엇입니까?
나는이 코드를 작성했다 : private static Expression&lt;Func&lt;Binding, bool&gt;&gt; ToExpression(BindingCriterion criterion) { switch (criterion.ChangeAction) { case BindingType.Inherited: var action = (byte)ChangeAction.Inherit; return (x =&gt; x.Action == action); case BindingType.ExplicitValue: var action = (byte)ChangeAction.SetValue; return (x =&gt; x.Action == action); default: // TODO: Localize errors throw new InvalidOperationException("Invalid criterion."); } } 그리고 …

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

4
퍼블릭 상수가“나쁜”가요?
이거 : public MyClass { public const string SomeString = "SomeValue"; } 이것보다 더 나쁜 : public MyClass { public static string SomeString { get{ return "SomeValue";}} } 둘 다 같은 방식으로 참조 할 수 있습니다. if (someString == MyClass.SomeString) ... 그러나 두 번째는 재산의 보호를받습니다. 그러나 실제로 이것이 const보다 …
38 c# 

10
WPF 대 WinForms-델파이 프로그래머의 관점?
WPF와 WinForms의 주요 스레드 대부분을 읽었으며 시도한 기술과 진정한 이전 기술 (Winforms) 사이를 결정할 때 발생할 수있는 불행한 분위기에 빠져 있으며 후임자 (WPF)입니다. 나는 수년간 베테랑 델파이 프로그래머이며 마침내 C #으로 뛰어 들었습니다. 필자의 동료 델파이 프로그래머들은 델파이의 Anders Hejlsberg가 C #의 설계 자라는 것을 알게되어 기쁩니다. Delphi의 VCL 사용자 …
38 c#  wpf  winforms  delphi  microsoft 

6
TDD를 사용한 복잡한 코드의 좋은 예
크고 실제적인 복잡한 프로젝트에서 TDD를 사용하는 좋은 예는 무엇입니까? 지금까지 본 모든 사례는 책이나 종이를위한 장난감 프로젝트입니다 ... TDD를 많이 사용하는 오픈 소스 프로젝트의 이름을 지정할 수 있습니까? 가급적 C ++에서는 Java와 C # 또는 다른 유사한 언어를 읽을 수 있습니다.
37 java  c#  open-source  c++  tdd 

5
메소드가 인수 이름 (유형 아님)만으로 구별하기에 충분합니까?
메소드가 인수 이름 (유형 아님)만으로 구별하기에 충분합니까, 아니면 더 명확하게 이름을 지정하는 것이 더 낫습니까? 예를 들어 T Find&lt;T&gt;(int id)대 T FindById&lt;T&gt;(int id). ById인수 이름을 유지 하는 것보다 더 명시 적으로 이름을 지정 해야하는 이유가 있습니까? 내가 생각할 수있는 한 가지 이유는 메소드의 서명이 동일하지만 의미가 다른 경우입니다. FindByFirstName(string name) …

6
부모에 대한 자녀의 참조를 초기화하는 가장 좋은 방법은 무엇입니까?
많은 다른 부모 / 자식 클래스가있는 개체 모델을 개발 중입니다. 각 자식 개체에는 부모 개체에 대한 참조가 있습니다. 부모 참조를 초기화하는 몇 가지 방법을 생각할 수는 있지만 각 방법마다 상당한 단점이 있습니다. 아래에 설명 된 접근 방식이 가장 좋거나 더 나은 것을 고려하십시오. 아래 코드가 컴파일되는지 확인하지 않으므로 구문이 정확하지 …

5
다른 클래스의 ClassCollection을 만드는 것이 좋은 방법입니까?
Car수업 이 있다고 말합니다 . public class Car { public string Engine { get; set; } public string Seat { get; set; } public string Tires { get; set; } } 우리는 주차장에 대한 시스템을 만들고 있다고 말하고 많은 Car수업 을 사용할 것이므로 수업을 만들면 다음 CarCollection과 같은 몇 가지 …


3
OO에서 전달되는 메시지는 무엇입니까?
저는 주로 C ++, C # 및 Java에서 OO 프로그래밍을 공부했습니다. 캡슐화, 상속 및 다형성에 대한 이해 (이 사이트에서 많은 질문을 읽음)를 잘 알고 있다고 생각했습니다. 여기에 팝업되는 것으로 보이는 것은 "메시지 전달"이라는 개념입니다. 분명히 이것은 오늘날의 주류 언어로 OO 프로그래밍하는 동안 사용되지 않지만 Smalltalk에서 지원되는 것입니다. 내 질문은 : …
35 java  c#  c++  object-oriented 

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