728x90

클래스 참조하여 사용을 할때 클래스에 대한 설명이 다음과 같이 나온다.

 

위와 같이 필요한 설명은

클래스의 메서드 부분에 주석 처리를 하면 된다.

 

summary 주석 처리는 슬래시(/) 키를 세번 누르면 자동으로 생긴다.

 

/// <summary>
///
/// </summary>
/// <param name="e"></param>

 

■ 예제

 Class1.cs

     /// <summary>
    /// 주어진 스트링을 주어진 길이만큼만 잘라서 돌려줌.
    /// </summary>
    /// <param name="strCut">잘라낼 원본 문자열</param>
    /// <param name="intChar">제한할 글자 수</param>
    /// <returns>제한된 문자열</returns>
    public static string CutString(string strCut, int intChar)
    {
        if (strCut.Length > intChar - 3)
        {
            string strTemp = "";
            strTemp = strCut.Substring(0, intChar - 3);
            strTemp += "...";

            return strTemp;
        }
        else
        {
            return strCut;
        }
    }

 

 

■ 메서드 요약설명

      /// <summary>
    /// 주어진 스트링을 주어진 길이만큼만 잘라서 돌려줌.
    /// </summary>
 

 

■ 첫번째 인자값 설명

 /// <param name="strCut">잘라낼 원본 문자열</param>
 

 

■ 두번째 인자값 설명

 /// <param name="intChar">제한할 글자 수</param>
 

 

[ XML 주석 레퍼런스]

<summary>

데이터 형식이나 멤버에 대한 짤막한 요약을 제공한다.

<param>

메소드 인수를 표시한다.

<returns>

메소드의 반환값을 설명한다.

<example>

설명하고 있는 항목에 대한 코드 예제를 나타냄

<code>

여러줄을 코드로 표시하는데 사용

<remarks>

클래스나 다른 형식에 대한 개요를 지정할 있는 태그입니다

<exception>

함수내에서 발생할 있는 에러정보를 나타냄


출처 : http://blog.naver.com/whwlfnsl/70025332256
728x90
이전 tomcat 설치하기 예제처럼 맥에 톰캣을 설치하면 'http://localhost:8080'로 접속되는 웹 루트폴더가 '/usr/local/apache-tomcat-5.5.25/webapps/ROOT'가 된다.

jsp나 java 파일을 만들기 위해서 이 폴더를 찾아다니는 것도 힘들지만, 더 큰 문제는...
/usr 폴더가 hidden 속성인지 머시기 때문인지... 일반 맥 어플리케이션들이나 finder에서 가지고 놀 수가 없다는 것이다. 따라서 웹 루트 폴더로 작업하기가 짜증이 난다.

이런 이유로 웹의 루트폴더를 한번 바꿔보자.
tomcat의 폴더설정을 바꾸려면 xml로 되어있는 설정파일들을 건드려주어야 한다.

이 설정 파일을 건드리기 위해 약간의 설명을 곁들이면...

tomcat은 폴더 단위가 아니라... 웹 어플리케이션 단위로 설치, 배포된다.
즉, servlet이나 jsp, html 묶음으로 만들어진 구성 단위(폴더 묶음처럼 보이는)가 웹 어플리케이션이 되는 것이라 생각하면 쉽다.

tomcat을 설정할 때에는 이런 웹 어플리케이션 하나하나를 Context라고 부르며 설정 xml 파일(server.xml)에서 각 웹 어플리케이션 당 하나의 Context element로 취급하여 설정한다.

이 역시 본인처럼 초보자들을 대상으로 한 글이기 때문에...
너무 많은 기대는 하지 말자... 흐흐흐...


여하튼 tomcat의 server.xml을 설정을 수정하여 웹 루트 폴더를 변경할 것이다.
편의상 tomcat이 설치된 폴더를 %CATALINA_HOME%으로 표시하겠다.


1. 웹 루트로 사용할 폴더 만들기

터미널을 열고 적당한 위치에 웹 루트로 사용할 폴더를 만들어 준다.
cd /
mkdir webRoot
본인은 /webRoot 라는 폴더를 만들어 웹 루트 폴더로 사용할 것이다.


2. tomcat의 설정 파일(server.xml) 조작하기

역시 터미널에서 %CATALINA_HOME%/conf 폴더로 이동하여 vi 에디터를 이용하여 server.xml 파일을 열어 수정한다.
cd /usr/local/apache-tomcat-5.5.25/conf
vi server.xml
더이상 vi 어쩌구 저쩌구는 안한다... ㅠㅠ
(마음에 드는 에디터를 알아서 사용하자.)

에디터로 server.xml 파일을 이리저리 살펴보면

<Host name=“localhost” appBase=“webapps”
unpackWARs=“true” autoDeploy=“true”
xmlValidation=“false” xmlNamespaceAware=“false”>

이라는 부분이 나온다.

이 부분에서 appBase부분을 새로 설정할 웹 루트 폴더(appBase=“/webRoot”)로 변경해준다.

사용자 삽입 이미지
수정한 화면

이 Host element가 닫히기 전에... 즉, </Host> 항목이 나오기 전에 Context element을 넣어 설정해주어야 한다.

</Host>를 찾아 바로 윗 줄에 아래와 같이 Context element를 입력해준다.

<Context path=“” docBase=“.” reloadable=“true” />

이 Context 항목에 웹 루트 폴더에 배포될 웹 어플리케이션에 대한 각종 설정이 들어간다.
설정할 수 있는 속성들은 여기서 다루지 않는다.

사용자 삽입 이미지
Context 항목을 입력한 화면

자... 이렇게 설정하고 tomcat을 재기동하면 웹 루트 폴더가 변경되어 있는 것을 확인 할 수 있다.

사용자 삽입 이미지
/webRoot에 새로운 index.htm을 넣어두고 접속한 화면



참고로...
tomcat 5.5에서는 웹 어플리케이션을 설정하는 Context element를 server.xml에 설정할 수도 있지만, %CATALINA_HOME%/conf/Catalina/localhost 폴더에 별도의 xml 파일로 (예를 들면 ROOT.xml와 같이) 웹 어플리케이션 하나하나씩 별도로 저장해둘 수도 있으며, 이 방법을 권장했었다.

근데 tomcat 6.0을 설치하고 보니 이런 부분이 또 좀 변경된 것 같고...
뭐 그냥 보편적으로 이용할 수 있는 방법으로 정리하였다.

덧붙임:
원래 글은 tomcat에 포함된 웹 어플리케이션 배포툴을 이용하여 설정하는 방법이었지만... 그게 더 복잡해보여서 그냥 xml을 직접 편집하는 방법으로 수정해 보았습니다.

출처 : http://donny.pe.kr/10

728x90

이 네이밍 규칙은 닷넷 스파이더 팀에서 만든 [C# Coding Standards and Best Programming Practices]를 바탕으로 만들었습니다.

혼자 작업할때는 상관없지만 팀작업을 해야 할 때는 필요한 자료입니다. ^^;

1. 네이밍 관례와 표준


  이 문서 전반에 걸쳐 파스칼표기법과 카멜 표기법이 사용된다.  

  파스칼 표기법 - 모든 단어에서 첫번째 문자가 대문자이며 나머지는 소문자이다.

    예: BackColor

  카멜 표기법 - 최초에 사용된 단어를 제외한 첫번째 문자가 대문자이며
                     나머지는 소문자이다.

    예: backColor


 

1. 클래스 명에는 파스칼 표기법을 사용한다.

public class HelloWorld
{

...

}


2. 함수(Method) 명에는 파스칼 표기법을 사용한다.


void SayHello(string name)
{

...

}



3. 변수와 함수 파라미터에는 카멜표기법을 사용한다.

int totalCount = 0;

void SayHello(string name)
{

string fullMessage = "Hello " + name;

...

}


4. 인터페이스에는 접두사 "I"가 포함된 파스칼표기법에 따른다. ( Example: IEntity )


5. 변수명에 헝가리안 표기법을 사용하지 않는다.

이전에는 많은 프로그래머들이 변수명에 데이타 타입에 해당하는 접두사를 첨가하겨 맴버변수에는 m_을 접두사로 사용하는 헝가리안 표기법을 사용했다. 예를 들어

string m_sName;

int nAge;


그러나 닷넷 코딩 표준에서 헝가리안 표기법은 추천하지 않는다. 데이타 타입을 사용하는 것과 멤버 변수를 표현하기 위한 m_ 은 사용해서는 안된다. 모든 변수는 카멜 표기법을 사용해야 한다.


몇몇 프로그래머들은 아직 m_를 붙이거나 데이타 타입을 표시하는 것을 더 좋아하겠지만, 이제 이것들은 멤버 변수를 확인하기위한 쉬운 방법이 아니다.


6. 변수에 모든 의미를 충분히 담아라. 약어를 사용하지 말것.


좋은 예:

string address

int salary


나쁜 예:

string nam

string addr

int sal


7. i, n, s 같이 한글자로 된 이름을 사용하지 말것. index, temp 같은 이름을 사용할 것.


한가지 예외가 있다면 루프에서 반복을 의미하는 변수를 하용하는 경우이다.


for ( int i = 0; i < count; i++ )

{

...

}


만일 변수가 단지 반복을 위한 카운터로만 사용된다면 그리고 그것이 루프안에 있는 다른 어떤 곳에서도 사용되지 않는다면, 많은 사람들은 아직까지 다른 적합한 단어는 만들어서 사용하는 것보다 i를 사용하는 것을 선호한다.


8. 지역변수에는 밑줄(_)을 사용하지 않느다.


9. 모든 멤버 변수들은 앞에 밑줄(_)을 사용해야 한다. 그래야 다른 지역변수들과 구분할 수 있다.


10. 키워드와 비슷한 이름을 하용하지 말것.


11. boolean 이 들어가는 변수, 속성, 함수(method)등은 "is" 또는 유사한 접두사를 사용한다.


예: private bool _isFinished


12. 네임스페이스 명은 표준 패턴을 따라야 한다.


<회사명>.<제품명>.<최상위모듈>.<하위모듈>


13. UI 구성요소를 위하여 적당한 접두사를 사용해야 한다. 그래서 다른 변수들과 구분할 수 있어야 한다.


여기 추천하는 서로 다른 두가지 방식이 있다.


a. 모든 UI 구성요소를 위하여 공통적인 접두사(ui_)를 사용하는 것이다. 이것은 모든 UI 구성요소를 묶는데 도움을 줄 것이고 쉽게 이해하고 접근하게 할 것이다.


b. 각각의 UI 구성요소마다 접두사를 적용하는 방법. 간단한 목록이 아래에 있다. 닷넷은 다양한 컨트롤들이 제공되므로 더 많은 컨트롤(써드파티 컨트롤을 포함한)에 대한 표준을 정의해야 한다.


 Control  prifix  Control  prifix
 Label  lbl  Checkbox  chk
 TextBox  txt  CheckBoxList  cbl
 DataGrid  dtg  RadioButton  rdo
 Button  btn  RadioButtonList  rbl
 ImageButton  imb  Image  img
 Hyperlink  hlk  Panel  pnl
 DropDownList  ddl  PlaceHolder  phd
 ListBox  lst  Table  tbl
 DataList  dtl  Validators  val
 Repeater  rep    
   

14. 파일명은 클래스 명과 같아야 한다.


예를 들어, 클래스 명이 "HelloWorld" 라면 파일명은 "HelloWorld.cs" 이어야 한다.


15.  파일명은 파스칼 표기법을 사용한다.




2. 들여쓰기


1. 들여쓰기에는 TAB 을 사용한다. SPACE를 사용하지 않는다. Tab 사이즈는 4로 정의한다.


2. 주선은 코드와 같은 레벨에 있어야 한다(들여쓰기의 레벨을 같이 사용한다.).


좋은 예:


// Format a message and display


string fullMessage = "Hello " + name;

DateTime currentTime = DateTime.Now;

string message = fullMessage + ", the time is : " + currentTime.ToShortTimeString();

MessageBox.Show ( message );


좋지 않은 예:


// Format a message and display

    string fullMessage = "Hello " + name;

    DateTime currentTime = DateTime.Now;

    string message = fullMessage + ", the time is : " + currentTime.ToShortTimeString();

    MessageBox.Show ( message );


3. 중괄호는 중괄호 밖에 있는 코드와 같은 레벨에 있어야 한다.

            
4. 논리적인 코드 그룹은 다른 코드와 한칸 띄어서 구분한다.


좋은 예:

        bool SayHello ( string name )

        {

               string fullMessage = "Hello " + name;

               DateTime currentTime = DateTime.Now;


               string message = fullMessage + ", the time is : " + currentTime.ToShortTimeString();


               MessageBox.Show ( message );


               if ( ... )

               {

                       // Do something

                       // ...


                       return false;

               }


               return true;

        }


안 좋은 예:


        bool SayHello (string name)

        {

               string fullMessage = "Hello " + name;

               DateTime currentTime = DateTime.Now;

               string message = fullMessage + ", the time is : " + currentTime.ToShortTimeString();

               MessageBox.Show ( message );

               if ( ... )

               {

                       // Do something

                       // ...

                       return false;

               }

               return true;

        }


5.     There should be one and only one single blank line between each method inside the class.


6. 중괄호는 다른 라인과 분리되어 있어야하며 라인을 같이 쓰면 안된다.


좋은 예:

               if ( ... )    

               {

                       // Do something

               }


안 좋은 예:


               if ( ... )     {

                       // Do something

               }


7. 지시자(operator)와 괄호 앞뒤로는 한 칸의 공간을 남긴다.


좋은 예:

               if ( showResult == true )

               {

                       for ( int i = 0; i < 10; i++ )

                       {

                              //

                       }

               }


나쁜 예:


               if(showResult==true)

               {

                       for(int    i= 0;i<10;i++)

                       {

                              //

                       }

               }



8. 연관된 코드를 묶을때는 #region을 사용해라. #region을 사용해서 묶는다면 그 페이지는 훨씬 간략해질 것이다.


9. private 멤버 변수, 속성, 그리고 메쏘드는 파일의 하단에 그리고 public 멤버들을 파일의 하단에 위치하도록 하라. 


 

+ Recent posts