skip navigation

들여쓰기와 공백

01. 들여쓰기

들여쓰기 예, 규칙
규칙
public class Test {
▨▨▨▨private String name;
}
  • - 들여쓰기(indentation)는 탭을 사용하지 않고 스페이스 4칸을 사용

  • - tab을 스페이스 4칸으로 설정

  • - 한 line 은 80문자 내에서 작성

private int sum = a + b + c + d + e + f
▨▨▨▨▨▨▨+ g + h + i + j;
  • - Statement가 한 line을 초과 하는 경우, 콤마 후 또는 연산자 앞에서 line을 변경

▨▨▨▨private int a = 0;
▨▨▨▨private int b = 0;
  • - 신규 line의 들여쓰기는 이전 line와 같은 level의 들여쓰기 사용

private static void longName(int longNameArg1,
▨▨▨▨▨▨▨▨Object longNameArg2) {
▨▨▨▨// Statements
};
  • - 한 라인을 초과하는 경우 스페이스 8칸으로 설정

result = (aLongBooleanExpression) ? value1
▨▨▨▨▨▨▨▨: value2;
  • - 문장이 한 line을 초과 하는 경우, “:”이후 문장을 스페이스 8칸으로 설정

02. 공백

공백 예, 규칙
규칙
for (expr1;▨expr2;▨expr3) {
    // Statements
};
  • - semicolon 뒤에는 스페이스 1칸을 사용한다

doSomething(para1,▨para2,▨para3,▨para4);
  • - comma 뒤에는 스페이스 1칸을 사용한다

if▨(condition)▨{
    // Statements
};
  • - Keyword와 괄호 사이는 스페이스 1칸으로 분리

doMethod((byte)▨num, (Object)▨obj);
doMethod((byte)▨(num + 5), (int)▨(i + 3) + 1);
  • - Cast 다음에 스페이스 1칸을 사용

a▨+=▨c▨+▨d;
a▨=▨(a▨+▨b)▨/▨(c▨*▨d);
  • - 모든 binary operation (단항 연산자 제외)의 경우, 피 연산자의 분리를 위하여 스페이스 사용

i++;  // Don’t use this i▨++;
i--;  // Don’t use this i▨--;
  • - unary operation은 스페이스를 사용하지 않음

// Statements #1
▨
// Statements #2
  • - 가독성을 향상을 위해 적절히 blank line을 사용

public void doMethod1() {
}
▨
public void doMethod2() {
}
  • - method 사이에서 스페이스 1칸 사용

주석

01. 기본 주석문(Comments)

블록 주석문(Block Comments)
  • - 파일, 메소드, data structures, algorithms 등을 설명하기 위해 주로 사용 가능

  • - 각 file, method, variable 시작에 작성합니다

  • - 메소드 내의 블록 주석문은 다음 라인과 동일한 들여쓰기를 기준

▨▨▨▨/**
▨▨▨▨▨*
▨▨▨▨▨*/
▨▨▨▨private String name;
단일 라인 주석문(Single-Line Comments)
if (condition) {
▨▨▨▨// Statements
};
꼬리 주석문(Trailing Comments)
if (condition) {
▨▨▨▨return;   // Statements
} else {
▨▨▨▨ return;  // Statements
};

02. Java 주석

문서화 주석(Documentation Comments)
  • - 직접 소스코드를 가질 필요가 없는 개발자들에 보여주거나 소스코드의 설계 명세서를 작성하기 위한 JAVA Documentation을 생성한다.

  • - class, interface, constructor, method, field에 대한 comment를 생성한다.

  • - 특징 : comment안에 java document tag와 html tag가 들어간다.

Java Document Tag
Java Document 지원 태그, 설명
지원Tag 설명
@author 클래스나 인터페이스의 제작자 정보
@deprecated 사용하지 않는 메소드에 대한 설명
@throw 예외에 대한 정의
@param method의 parameter, output parameter는 <b>...</b>로 강조
@return method의 return 값에 대한 설명
@see 다른 클래스, 메소드, 또는 필드와 같이 다른 이름을 가진 프로그램에 대한 링크
@since 코드에 대한 소개 시점
@throws 메소드가 어떤 예외처리를 가져야 하는지에 대한 설명
@version 코드의 버전 정보
Java class 주석
  • - 주석은 아래의 표준을 준수하여 작성하며, 자바 문서화 주석(javadoc)으로 생성 및 사용한다.

/**
* <pre>
* Statements
* </pre>
*
* @ClassName : ClassName.java
* @Description : 클래스 설명을 기술합니다.
* @author : Author Name
* @since : 20xx. x. x.
* @version : 1.0
* @see
* @Modification Information
*
<pre>
*  since                author                 description
*  =========    ===========    ===========================
*  20xx. x. x.       Author Name     최초 생성
* </pre>
*/

public class Test {
}
Java method 주석
/**
* Statements
*
* @param name
* @param age
* @return
* @throws Exception
*/

public String doMethod(String name, int age) throws Exception {
    String result = "";
    return result;
}
Java 전역 변수 주석
  • - 변수의 이름 및 용도를 기술

/**
* Statements
* (Sting) name
*/
private String name;
Java method 내의 변수 주석
  • - 변수의 용도를 기술

  • - 설명의 길이가 1줄이면 single-line comment 사용하고, 2줄이상이면 Block comment 사용

public void doMethod() throws Exception {
    String name = ""; // 사용자 이름
    /*
    * Statements
    */
}

03. JavaScript 주석

문서화 주석(Documentation Comments)
  • - 직접 소스코드를 가질 필요가 없는 개발자들에 보여주거나 소스코드의 설계 명세서를 작성하기 위한 Js Documentation을 생성한다.

  • - class, interface, constructor, method, field에 대한 comment를 생성한다.

  • - 특징 : comment안에 js document tag와 html tag가 들어간다.

JS Document Tag
JS Document 지원 태그, 설명
지원Tag 설명
@author 클래스나 인터페이스의 제작자 정보
@deprecated 사용하지 않는 메소드에 대한 설명
@throw 예외에 대한 정의
@param method의 parameter, output parameter는 <b>...</b>로 강조
@return method의 return 값에 대한 설명
@see 다른 클래스, 메소드, 또는 필드와 같이 다른 이름을 가진 프로그램에 대한 링크
@since 코드에 대한 소개 시점
@throws 메소드가 어떤 예외처리를 가져야 하는지에 대한 설명
@version 코드의 버전 정보
@copy 다른 클래스에 입력되어진 Tag의 내용을 그대로 복사
@constType const 속성에 대한 값을 출력
@eventType 이벤트 타입을 지정
JS 파일 주석
/**
* Supported Browser : MSIE, Chrome , FireFox
*
* Object       : test.js
* Description  : js 파일 설명을 기술합니다.
* Author       : Author Name
* Since        : 20xx.x. x.
* Version      : 1.0
*
* Modification Information
*  since                author                 description
*  =========    ===========    ===========================
*  20xx. x. x.       Author Name     최초 생성
*/
javascript 전역 변수 주석
  • - 변수의 이름 및 용도를 기술

/**
* 이름
* name
*/
var name;
javascript method 내의 변수 주석
  • - 변수의 용도를 기술

  • - 설명의 길이가 1줄이면 single-line comment 사용하고, 2줄이상이면 Block comment 사용

function doSometing() {
var name = ""; // 사용자 이름
/*
* Statments
*/
}
javascript 공통 function 주석
/**
* fn name     : function Name
* Description : function 설명을 기술합니다
* Author      : Author Name
* Since       : 20xx. x. x.
* Version     : 1.0
*
* Modification Information
*  since                author                 description
*  =========    ===========    ===========================
*  20xx. x. x.       Author Name    최초 생성
*/

/**
* method description
* @param obj
* @returns {Object}
*/
function doSometing(obj){
return obj;
}

function doSometing(obj){
    return obj;
}

04. JSP 주석

<%--
    JSP Name : jspName.jsp
    Description : 설명을 기술합니다.
    author : Author Name
    since : 20xx. x. x.
    version : 1.0
    Modification Information
    since                author                 description
    =========    ===========    ===========================
    20xx. x. x.       Author Name    최초 생성
--%>

05. SQL 주석

SQL 파일 주석
<!--
    SQL Name : sqlname_sql.xml
    Description : 설명을 기술합니다.
    author : Author Name
    since : 20xx. x. x.
    version : 1.0
    Modification Information
    since                author                 description
    =========    ===========    ===========================
    20xx. x. x.       Author Name    최초 생성
--%>
SQL 문 주석
<!--
    Query Name : XXXDAO.XXXXX
    Description : 설명을 기술합니다.
    author : Author Name
    since : 20xx. x. x.
    Modification Information
    since                author                 description
    =========    ===========    ===========================
    20xx. x. x.       Author Name    최초 생성
--%>
SQL 기타 주석
SQL 기타 주석 예, 규칙
규칙
-- SQL 내의 주석
<!-- --> XML 내의 주석