«c#» 태그된 질문

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

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 } 나는 둘 다의 조합을 …

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로 명시 …

6
Java가 빌드 언어로 사용되지 않는 이유는 무엇입니까?
이 게시물을 개선하고 싶습니까? 인용과 답변이 올바른 이유에 대한 설명을 포함하여이 질문에 대한 자세한 답변을 제공하십시오. 세부 사항이없는 답변은 편집하거나 삭제할 수 있습니다. Java가 범용 언어이고 프로그램을 빌드하는 것이 Java 언어를 사용하여 설명 할 수있는 것이라면 왜 이것이 빌드 파일을 작성하는 가장 좋은 방법이 아닌 대신 Ant, Maven 및 Gradle과 …
24 java  c#  builds  build-system 

8
모듈화를 달성하기 위해 부분 클래스를 사용하는 것이 일반적입니까?
최근 코드 팀에서 다른 팀이 약 800 개의 메서드를 포함하는``신 클래스 ''를 만들고 135 개의 파일을 부분 클래스로 나누는 상황이 발생했습니다. 나는 다른 팀에게 이것에 대해 물었다. 내 직감은 궤도에서 핵을 피우는 것이었지만, 좋은 설계, 일반적인 관행이며 새로운 개발자가 나머지 지식을 거의 몰라도 기능을 강화할 수 있기 때문에 '모듈화'와 '구현 …
24 c#  .net 

5
응용 프로그램 설정을로드하는 가장 좋은 방법
Java 애플리케이션의 설정을 유지하는 간단한 방법은 특정 값과 연관된 각 설정의 ID를 포함하는 ".properties"확장자를 가진 텍스트 파일로 표시됩니다 (이 값은 숫자, 문자열, 날짜 등일 수 있음). . C #은 비슷한 방법을 사용하지만 텍스트 파일의 이름은 "App.config"여야합니다. 두 경우 모두 소스 코드에서 설정을 읽기 위해 특정 클래스를 초기화해야합니다.이 클래스에는 지정된 설정 …

9
중복 코드를 제거하기위한 복잡성 추가
일반 기본 클래스에서 모두 상속되는 여러 클래스가 있습니다. 기본 클래스에는 여러 유형의 객체 모음이 포함되어 있습니다 T. 각 자식 클래스는 개체 컬렉션에서 보간 된 값을 계산할 수 있어야하지만 자식 클래스는 다른 유형을 사용하므로 계산은 클래스마다 조금씩 다릅니다. 지금까지 코드를 클래스에서 클래스로 복사 / 붙여 넣기하고 각각을 약간 수정했습니다. 그러나 이제 …

9
C # 개발자를위한 C ++
나는 C #을 잘 알고 (슬프게도), Windows 응용 프로그램을 위해 C ++ 프로그래밍을해야합니다. C #을 배우는 C ++ 개발자를위한 많은 정보를 찾을 수 있었지만 이미 C #을 알고있을 때 C ++을 배우는 데는 많은 도움이되지 못했습니다. 누구든지 기본에 대해 잘 알고 있습니까? MSDN에는 비교가 있지만 깊이는 없습니다. 여러 소스를 함께 …
24 c#  c++ 

2
표현 본문 멤버를 사용하는 것이 언제 적절한가요? [닫은]
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 3 년 전 . C # 6에는 식 본문 멤버가 도입되어 식의 결과 만 반환하는 메서드 및 속성에서 코드를 단순화 할 …
24 c# 

4
async + await == 동기화?
이 우연히 포스트 비동기 웹 요청을에 대해 이야기하는. 현실 세계에서 비동기 요청을하고 바로 다음 줄에서 대기하는 것이라면 간단합니다. 처음에 동기화 호출을하는 것과 동일하지 않습니까?

3
C #에서 try 블록 내에 선언 된 변수의 범위가 제한된 이유는 무엇입니까?
다음에 오류 처리를 추가하고 싶습니다. var firstVariable = 1; var secondVariable = firstVariable; 아래는 컴파일되지 않습니다. try { var firstVariable = 1; } catch {} try { var secondVariable = firstVariable; } catch {} 다른 코드 블록처럼 try catch 블록이 변수 범위에 영향을 미치는 이유는 무엇입니까? 일관성을 유지하기 위해 리팩토링 …

1
.Net의 배열에 길이가 있지만 다른 컬렉션 유형에 개수가있는 이유는 무엇입니까? [닫은]
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 3 년 전 . 예를 들어 C #에서 배열에는 길이 속성이 있습니다. 그러나 목록 등과 같은 다른 컬렉션 유형에는 Count 속성이 …

6
클래스가 자체 공개 메소드를 사용하는 것이 괜찮습니까?
배경 현재 장치에서 전송 및 수신 하는 객체 가있는 상황이 있습니다 . 이 메시지에는 다음과 같은 몇 가지 구성이 있습니다. public void ReverseData() public void ScheduleTransmission() ScheduleTransmission방법은 필요 통화에 ReverseData가 호출 될 때마다 방법을. 그러나 응용 프로그램에서 객체가 인스턴스화되는 곳에서 ReverseData외부 로 호출 해야 하며 네임 스페이스 외부를 완전히 추가 …

6
TDD에서 먼저 테스트 나 인터페이스를 먼저 써야합니까?
내가 아는 한 나는까지, C #을 사용 TDD를 배우고 시험을 개발 운전해야 하고, 먼저 쓰기를 실패하는 테스트 기입 후 최소한의 다음 리팩토링 않는 테스트를 통과하는 코드를. 그러나 " 구현이 아닌 인터페이스에 대한 프로그램 "이라고 말하면 먼저 인터페이스를 작성하십시오 . 이것은 혼란이 시작되는 곳입니다. 인터페이스를 먼저 작성하면 두 가지를 위반하는 것입니다. …
23 c#  unit-testing  tdd 

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