문제

최근 Komodo Edit 및 기타 간단한 편집기를 사용하여 Python과 함께 작업 해 왔지만 이제 C#에서 수행 할 프로젝트를 수행하고 있습니다. VS 08을 사용하여 수행합니다. 가능한 한 빨리 해당 플랫폼에서 생산성을 얻는 방법에 대한 힌트에 감사드립니다.

도움이 되었습니까?

해결책

C#에 능숙 해지는 한 나는 강력히 권장합니다 프로그래밍 C# 그리고 C# 깊이.

Visual Studio의 경우, IDE에서 많이 찌르기 시작하고 놀고, 익숙해 지십시오. 간단한 프로젝트로 시작하고 모든 다른 측면을 탐색하십시오. 하는 법을 배우다 Visual Studio 최적화 그리고 위대한 사람들에 익숙해 지십시오 키보드 단축키 / 숨겨진 기능 IDE의.

다음 각각을 적어도 한 번은 분명히 수행하십시오.

프로젝트 :

  • 간단한 콘솔 응용 프로그램 만들기 (예 : Hello World)
  • 클래스 라이브러리 (managed .dll)를 만들고 생성 한 다른 응용 프로그램에서 사용하십시오.
  • 간단한 Windows 응용 프로그램을 만듭니다
  • 간단한 asp.net 웹 앱을 만듭니다

디버깅 :

  • 명령 줄 앱을 디버깅합니다
  • 익숙해지기 : 브레이크 포인트, 현지인 및 창문을보고, 발걸음을 내딛고, 들어서서, 발걸음을 내딛고, 계속, 계속, 디버깅 중지
  • 클래스 라이브러리에서 함수를 사용하는 명령 줄 앱을 만듭니다. 라이브러리의 DLL 및 Symbol File (.pdb)을 저장하지만 소스 코드를 삭제하고 라이브러리로 들어갈 때 앱을 통해 디버그
  • 웹 서비스에 디버그
  • ildasm과 ilasm을 사용하는 방법을 배우십시오

명령 줄 :

  • Visual Studio Command Line 환경에 익숙해 지십시오
  • 명령 줄 만 사용하여 빌드하십시오
  • devenv.exe /debugexe를 사용하여 명령 줄에서 디버깅을합니다
  • 명령 줄에서 ildasm / ilasm을 사용하여 간단한 앱을 .il로 분해하고 다른 명명 된 파일로 다시 조립하여 여전히 작동하는지 테스트하십시오.

테스트 :

  • 단위 테스트 생성 (메소드를 마우스 오른쪽 버튼으로 클릭하고 테스트 생성 옵션을 선택하십시오)
  • 방법 배우기 : 모든 단위 테스트를 실행하고, 디버거에서 모든 단위 테스트를 실행하고, 실패한 단위 테스트를 다시 실행하고, 테스트 실패에 대한 세부 정보를보고, 단위 테스트의 하위 집합을 실행하십시오.
  • 테스트에 대한 코드 커버리지 통계를 수집하는 방법에 대해 알아보십시오.

소스 제어 :

  • VS를 사용하여 개발하는 동안 선택한 소스 제어 시스템과 상호 작용하는 방법을 알아보십시오.

Refactoring et al :

  • 모든 내장 리팩토링 (특히 이름 변경 및 추출 방법)에 익숙해집니다.
  • "정의로 이동"사용
  • "모든 참조 찾기"사용
  • "파일 찾기"(Ctrl-Shift-F) 사용

IDE 및 키보드 단축키 :

  • 웹 및 winforms에 디자이너를 잘 사용하는 방법을 알아보십시오.
  • 솔루션 탐색기 창에 매우 익숙해 지십시오
  • 편안한 것을 찾을 때까지 다른 창 레이아웃을 실험하고 나중에 실험을 계속하여 그것이 여전히 최선의 선택인지 확인하십시오.
  • Intellisense의 Ins and Outs를 배우고 최대한 활용하십시오.
  • 당신이하는 모든 일에 대한 키보드 단축키를 배우십시오

다른 팁

나는 개인적으로 C#과 .NET의 핵심 부분을 먼저 배우는 데 집중할 것입니다. 저에게는 이는 IO와 같은 언어 및 중요한 측면을 실험하기 위해 콘솔 앱 (Windows 양식이 아닌)을 작성하는 것을 의미합니다. 기초에 만족할 때 프로젝트에 필요한 "Porpheral"기술 (Winforms, WPF, ASP.NET, WCF 등)으로 이동하십시오.

책의 관점에서, 나는 둘 다 추천 할 수 있습니다 간단히 말해서 C# 3.0 그리고 가속화 된 C# 2008. 링크는 저의 책 리뷰에 있습니다. 커버 언어 + 핵심 라이브러리. LINQ에 대해 너무 많이 걱정하지 않을 것입니다. LINQ를 다루기 전에 나머지 언어, 특히 대표 및 제네릭에 익숙해집니다. 그 시점에서 나는 나는이다 철저히 LINQ에서 SQL 또는 엔티티 프레임 워크를 사용하기 전에 LINQ와 함께 객체를 객체로 플레이하는 것이 좋습니다. 반면에 XML을 전혀 사용해야한다면 LINQ에서 XML로 바로 이동합니다. LINQ 제공 업체가 아니라 전체 XML API입니다. 일반 DOM API보다 훨씬 좋습니다.)

최대한 빨리 해당 플랫폼에서 생산성을 얻는 방법에 대한 힌트에 감사드립니다.

실용적인 경험 내 친구. 시작 그것을 사용합니다 최대한 빨리 생산적입니다 최대한 빨리.

명백한 권장 사항은 다음과 같습니다.

  • 빈번한 동작을 위해 바로 가기 macros 템플릿을 만듭니다. 메뉴를 클릭하는 대신 바로 가기를 사용합니다
  • RESHARPER 설치 -IN은 1000% 생산성 향상을 제공합니다 (구매할 수있는 몇 달러가있는 경우)

주저하지 말고 조사하십시오 수동 때때로 :)

과거에 완료 한 Python 프로젝트를 선택하고 수동으로 C#으로 변환하십시오. 이것이 내가 현재 알고있는 모든 언어를 배운 방법입니다 (x86 어셈블리 제외).

IronpyThon을 사용하여 간격을 연결하는 데 도움이되는 것을 고려하십시오. Ironpython을 통해 .NET 어셈블리를 참조하고 C#에서 참조 할 .NET 어셈블리를 만들 수 있습니다.

또한, 머물러 아주 멀리 그것으로부터 21 일 후에 C#을 배우십시오! 책 ... 그들은 거의 과대 광고에 부응하지 않으며 일반적으로 선보다 더 해를 끼칩니다.

훌륭한 책을 얻고 읽기 시작하십시오. 나는 가지고있다 Pro C# 2008 및 .NET 3.5 플랫폼.

작업 할 프로젝트가 있으므로 크게 도움이 될 것입니다.

나는 Python에서 C#으로의 움직임을 진화 사다리의 한 단계로 본다. 훨씬 더 장황한 경험 (예 : 변수 선언 및 클래스 속성)을 기대하십시오.

주시하십시오 Ironpython - 친숙한 언어를 사용하여 .NET의 느낌을 얻는 데 도움이됩니다. Python의 동적 특성으로 인해 .NET 동작을 확인한 다음 C#에서 아이디어를 확인합니다. 당신이 사용할 수있는 Ironpython Visual Studio에서 직접 Ironpython Studio .

Python to C# 전환

일반적으로 기능을 이미 알고있는 언어와 비교하여 다음 언어를 배웁니다. Python에 익숙하기 때문에 Python/C# 비교를 읽으십시오. "C#에 대한 Python Programmmer의 관점" 그리고 "C# 3.0은 자신의 게임에서 동적 언어를 이기는가?". C# 3.5와 Python 사이의 델타는 그리 크지 않습니다.

소규모 미니 프로젝트를 수행하십시오. 내 머리 꼭대기 중 일부.

1) 안녕하세요 세계
2) 콘솔
3) GUI 디자인
4) 장난감 프로젝트

그들은 튜토리얼을 읽는 것보다 속도를 더 빨리 데려 올 것입니다. 맥주를 마시고 재미있게 보내십시오.

Microsoft는 다음을위한 훌륭한 학습 플랫폼을 가지고 있습니다.

http://msdn.microsoft.com/en-us/vcsharp/aa336766.aspx

"How Do"비디오 시리즈를 살펴 보는 것이 좋습니다.

나는 이것을 몇 가지에 의존한다고 생각합니다. 예를 들어, 마우스보다 키보드를 더 많이 사용합니까? 그렇다면 나는 학습 대 단축키를 얻을 것입니다. C#을 전혀 알고 있습니까? 책을 읽으십시오. 나는 이것이 모호하다는 것을 알고 있지만 다소 모호한 질문입니다.

연습, 실습, 실습, 경험을 얻고 생산성이 높아집니다.

모든 도구, 시스템, 언어 또는 무엇이든, 생산성을 얻는 가장 빠른 방법은 (적어도 나에게 적어도 나에게) Hello World에서 시작하기보다는 배경을 이해하는 것입니다.

따라서 좋은 책 (예 : Microsoft Press)을 구입하거나 Microsoft MSDN 및 Technet으로 이동하여 가능한 한 배경을 읽으십시오. 자세한 내용 (책 또는 인터넷)은 나중에 참조 할 수 있습니다.

또한 생산성을 높이려면 -Mailinglist, IRC, Austroups 등을 가입하려면 동일한 도구, 시스템, 언어 등을 사용하여 다른 사람의 매일 문제에 대한 지식을 얻으려면.

그런 다음 - 일주일 또는 이틀 후 - 프로그래밍을 시작하십시오.

나는 새로운 언어로 시작할 때하고 싶은 일이 아닙니다. 그러나 저에게는이 Apporach가 지난 몇 년 동안 가장 잘 작동합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top