은 거기에 어떤 제안을 개발하기 위한 C#코딩 표준/모범 사례셔서 감사합니다.[마감]

StackOverflow https://stackoverflow.com/questions/14967

  •  08-06-2019
  •  | 
  •  

문제

나는 최근 AI 대학원(약 2 년)를 위해 일하고 겸손한 작업입니다.그것이 떨어졌을 나(주로 내가 첫 번째'아답터에서'부서)을 만들기 기본(읽 유용한가요?) C#코딩 표준 문서입니다.

해야 한다고 생각하는 설명하는 나는 아마도 가장 주니어 소프트웨어 엔지니어가지만,그리고 앞으로 이 작업으로 바라 내가 실제로 생산할 수있는 뭔가 절반을 사용할 수 있습니다.나는 꽤 다양한 인터넷 검색에 기사를 읽고 무엇인 코딩 표준 문서해야/포함되지 않아야한다.이처럼 보인으로 좋은 곳으로는 어떤 요청하는 몇 가지 제안을 합니다.

나는 깨닫는 나는 잠재적으로 문을 열게 전 세계에 대한 의견을'최고의 방법을 만들어 낼 수 있다.나는 모두 이해하고 존중 부정할 수 없는 사실에는 각 프로그래머가 선호하는 방법을 해결하는 각 개별 작업,그 결과로 나가지 않고는 아무것도 기록 draconianly proscriptive 로를 억압하기 위해 개인적인 감각을 시도하고 일반적인 방법론과 동의한 표준(예:이름 규칙)을 돕기 위해 개인이 코드를 읽을 수 있습니다.

그래서 여기에....어떤 방법이 있나요?어떤가요?

도움이 되었습니까?

해결책

우리 시작

다음 문서의 차이점에서이고 추가하는 기준점이 되었습니다.

다른 팁

IDesign 는 C#코딩 표준 문서는 일반적으로 사용됩니다.도 Design Guidelines2nd Ed.

아이러니하게도 설정을 실제적인 표준이 될 가능성이 쉬운 부분입니다.

나의 첫번째 제안하는 것을 이끌어내는 제안에서 다른 엔지니어들은 그들이 느끼는 것에 대해 적용해야,어떤 지침서 그들이 느끼는 중요합니다.을 적용하는 모든 종류의 지침이 필요합의 분위기에서 구매에서 사람들이다.는 경우에 당신은 갑자기 떨어 문서에서 그들을 지정하는 코드를 작성하는 방법 당신은 저항을 발생하는지 여부,당신이 가장 중 또는 선임 사람입니다.

후에 당신은 제안서의 다음 그들을 보내는 팀 의견을 검토합니다.다시 얻을 사람들은 구입하는 모든이다.

이미 있을 수 있습 비공식적인 코딩 방식을 채택하고 있(e.g 접두사원 변수,서로 다른 함수 이름).면이 존재하고,대부분의 코드에 따릅니다,그것은이 지불하는 공식화하였습니다.을 채택에 반대의 표준을 일으킬 것보다 더 슬픔에 그것의 가치가 있는 경우에도,그것은 뭔가가 일반적으로 권장합니다.

그것은 또한 고려 가치가있 refactoring 기존의 코드를 충족하는 새로운 코딩-표준입니다.이처럼 보일 수 있습 시간의 낭비하지만 코드하지 않는 기준을 충족적으로 해야 mish-mash 의 다른 스타일입니다.그것도 사람들은 딜레마에 여부를 코드에서는 특정 모듈을 준수한 새로운 표준에 따라 또는 기존의 코드 스타일입니다.

내가 사용 유발 Lowy 의 pdf 참고로 일을 할 때 코딩 표준/모범 사례를 내부적으로 합니다.그것은 다음과 같이 매우 가깝 FxCop/Source 분석, 는 다른 귀중한 도구는지 확인하는 표준은 다음에.이러한 도구 및 참조할 수 있어야 멋진 표준는 모든 개발자들의 마음을 하지 않습니다 다음과를 적용할 수 있습니다.

다른 포스터는 지적을 기준,내가 추가하는 것은 당신의 문서 짧은,달콤한,그리고 지점을 이용하는 무거운 용량의 Strunk 고 흰색을 구별해야합니다"가"에서"좋은 것 ifs".

문제를 코딩 표준 문서는 아무도 정말 그들에게 그들처럼 해야한다,그들이 할 때 그들을 읽고,그들은 그들을 따라하지 마십시오. 가능성 등의 문서를 읽고 뒤에 반비례의 길이 있습니다.

I agree FxCop 좋은 도구이지만 너무 많이 걸릴 수 있는 모든 즐거움이 그래서,프로그래밍 합니다.

결코 자신의 코딩 표준을 사용하 MS 람(또는 태양의 것이나...로서 언어에 해당하).단서는 단어에서 표준,세계 것이 훨씬 더 쉽게 장소는 코드에서는 경우 각각의 조직이지 않았을 작성하기로 결정했다.는 정말로 생각하는 새로운 설정의'표준'을 변경할 때마다 팀/projects/역할을 좋은 사람의 사용 시간이다.가장 당신이해야 할 것을 요약 중요 포인트이지만 나에 대해 조언을 하기도는 무엇 때문에 중요한 사람에 따라 다릅니다.다른 두 지점을 만들고 싶에 코딩 표준

  1. 닫은 좋은 충분히 변화하는 코드를 따라 코딩 표준 편지 시간 낭비로드됩니다.
  2. 만약 당신이 변화하는 코드로 당신이 쓰지 않았어요 따라'로 코딩 표준',즉새 코드 모양처럼 주변의 코드입니다.

이러한 두 가지 포인트는 현실을 나는 모두 작성하는 코드 보 같습니다.

내가 찾는 다음과 같은 문서 매우 유용하고 간결하고 있습니다.에서 오 idesign.net 사이트하고 그것에 의해 작성된 유발 Lowy

C#코딩 표준

NB:위 링크를 지금 죽었습니다.을 얻을.zip 파일을 줄 필요가들이 귀하의 이메일 주소(하지만 그들은 그것을 사용하지 않을 것에 대한 마케팅...솔직히)시험

나는 그냥 시작한 장소에서 코딩 표준의 사용을 강제 m_ 구성원에 대한 변수,p_ 에 대한 매개 변수와 접두사에 대한 형식과 같은'str'한 문자열입니다.그래서,당신은 수도에서 다음과 같이 몸의 방법:

m_strName=p_strName;

끔찍하다.정말 끔찍합니다.

코드가 완료 2 목록(알 제공되는 종류의 팬 여기)...당신은 주니어 개발자,책을 편리한을 설정하는 마음에서는 방법 설정하는 기초에 대한 최고의 코드 작성 방법 및 소프트웨어는 건물이 있습니다.

나는 나는 그것을 조금 늦게 나의 경력,하지만 그것은 규칙의 많은 방법에 대해 생각 코딩 및 프레임워크 개발에 내 전문적인 삶입니다.

체크 아웃 가치가있다;)

마이크로 소프트의 자신의 규칙은 다양한 출발점입니다.을 적용할 수 있습니다 그들과 함께 FxCop.

나는 것에 유혹을 적용하는 Microsoft StyleCop 으로 표준입니다.그것은 강제 적용될 수 있습에서 시간을 구축.하지만 당신은 레거시 코드만을 사용하여 적용 StyleCop 에 새 코드입니다.

http://code.msdn.microsoft.com/sourceanalysis

결국 그것은 리팩터링 옵션을 정리 코드입니다.

http://blogs.msdn.com/sourceanalysis/

내가 좋아하는 개인적으로 하는 IDesign 고 있습니다.하지만 그것이 왜 나는 게시...

까다로운 조금 나의 회사에 복용했는 모든 다른 언어 있습니다.저의 회사를 혼자가 아닙니다.우리가 사용하는 C#,C,어셈블리(리 장치),SQL,XAML,etc.하지만 일부가 될 것입의 유사성 표준을,각각은 일반적으로 다르게 처리됩니다.

또한,믿는 높은 수준의 표준에 더 큰 영향을 미칠 수 있는 품질의 최종 제품입니다.예를 들어:을 사용하는 방법을 의견을 때,예외가 필수(예:사용자가 시작한 이벤트),부(또는 경우)을 사용하여 예외 대반환 값은 무엇인 목적을 결정하는 방법이 무엇이어야 합 컨트롤러드 vs 프레젠테이션 코드,등등.Don't get me wrong,낮은 수준의 표준은 또한 필요하(서식은 중요하다 가독성!) 나는 그냥 편견으로 전반적인 구조입니다.

또 다른 조각을 염두에 두에서 구입하고 시행하고 있습니다.코딩 표준은 중대하다.하지만 경우에는 아무도들과 함께 동의하고(아마도 더 중요한 것)아무도 적용이 그들을 그의 모든 제로에 대한.

내가 쓴 모두 하나는 출판을 위한 Philips 의학 체계 및 하에 http://csharpguidelines.codeplex.com 내가 조금 치우치지만,나는 10 년 이상의 쓰기에,maintaing 및 홍보의 수 있습니다.나를 하나 CodePlex 차이에 의견을 마음에 지출의 대부분을 소개하는 방법에 대한 처리는 귀하의 특정 조직입니다.그것을 읽고 나에게 제공으로 피드백.....

SSW 규정

그것은 일부를 포함한 C####표준+훨씬 더 많은....주로 초점을 맞추고에서 Microsoft 개발

당신은 대부분을 설치하여 실패합니다.을 환영합니다.

동의-그래서 그는 생의 문서 일어날 수 있는 가장 나쁜 것입니다 잊어버린 사람에 의해.

는 경우 다른 사람들의 문제 내용으로,당신은 그들을 요청할 수 있습니다 업데이트를 표시하는 것 무엇인지아보세요.는 방식 그것은 당신의 판,그리고 다른 사람의 책임을 정당화하기 위해 변경됩니다.

나는 최근에 발견 Encodo C#핸드북, 을 포함하는 아이디어에서 많은 다른 근원(IDesign,필립스,MSDN).

다른 근원 수 전문 C#/VB.순 코딩 가이드 라인.

나의 프란체스코 Balena 책"실용적인 지침 및 모범 사례에 대한 VB 과 C#으로 개발자".

그것은 매우 상세하고 직관적이면서도 전문적이고 필수적인 주제,이하지 않는 그냥 당신에게 규칙이지만,또한 이유를 설명 뒤에 규칙,심지어는 제공 방지 규칙이 어디에 있는 두 개의 반대 모범 사례를 설명합니다.하지만 그것을 작성되었습니다.NET1.1 개발자입니다.

우리의 전체 코딩 표준을 읽고,"사용 StyleCop."

내 건 dotnetspider.com 문서입니다.
그것은 위대하고 상세 문서는 유용한 어디든지.

내가 사용 유발하기 전에 그리고 그를 통해하지 않을 경우 잔지만,나 게으른하고 지금 그냥 따르는 것입의 ---끝---이력서.

을 확인할 수 있습니다 이로,최 7 코딩 표준 및 지침에 대한 문서는 C#/.NET 개발 http://www.amazedsaint.com/2010/11/top-6-coding-standards-guideline.html

나는 생각한 에코 다른 것을 여기에서 MS 가이드 이미 연결되어 있는 다양한 출발점입니다.나는 모델의 내 코드에 크게습니다.

는 재미있기 때문에 관리자가 나에게 말했다 과거에는 그는 너무 예민하지 않습니다 그들에게 D

당신은 재미있는 작업에 앞서 당신을 나의 친구이다.최고의 행운의 문의하시기 바랍 필요한 경우 더 아무것도:)

표준에서 Philips 의학 체계를 잘 작성,그리고 대부분 다음과 같이 Microsoft 지침:www.tiobe.com/content/paperinfo/gemrcsharpcs.pdf

나의 표준을 기반으로 이와 함께 몇 가지 바뀌는,그리고 어떤 업데이트한다.NET2.0(Philips 표준을 기록한다.순 1.x 그래서 조금 일자).

에 코드를 쓰고 나는 일반적으로 따르 ..NET Framework 설계 지침 에 대한 공개적으로 노출된 Api 를고 모노 코딩 가이드 라인 개인 멤버 케이스에 들여쓰기.모노는 오픈 소스의 구현.순,그리고 나는 생각하는 사람들을 알고 자신의 사업이다.

나는 증오프 코드 공간을 낭비:

try
{
    if (condition)
    {
        Something(new delegate
        {
            SomeCall(a, b);
        });
    }
    else
    {
        SomethingElse();
        Foobar(foo, bar);
    }
}
catch (Exception ex)
{
    Console.WriteLine("Okay, you got me");
}

당신이 무엇을 찾을 수 있습니다상에 모노 지침,은 그들이 사용하는 8-공 탭이 있습니다.그러나,연습 후에,나는 그것을 실제로 도움이 되는 나에게 쓰기에 덜 얽힌 코드를 적용하여 종류의 들여쓰기 제한.

또한 사랑 어떻게 그들이 공간 넣기 전에 괄호.

try {
        if (condition) {
                Something (new delegate {
                        SomeCall (a, b);
                });
        } else {
                SomethingElse ();
                Foobar (foo, bar);
        }
} catch (Exception ex) {
        Console.WriteLine ("Okay, you got me");
}

그러나,없을 적용하는 경우에는 동료가 싫어하다(하지 않는 경우에 기여하 모노;-)

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