프론트엔드 개발자로 일하기

보일러플레이트(boiler Plate) 코드

프론트루나 2024. 9. 1. 15:20
반응형

보일러플레이트 코드란?
여러가지 상황에서 거의 또는 전혀 변경하지 않고 재사용할 수 있는 컴퓨터 언어 텍스트.

상황에 따라 변경을 최소화하면서 문서 템플릿이나 보일러플레이트를 재사용하는 문서관리에서 유래했다.

예를들어 변호사들은 다양한 업계의 고객을 위해 신속하게 맞춤화할 수 있는 계약 보일러플레이트를 사용한다.

마찬가지로 소프트웨어 개발자들은 다양한 프로그램 모듈에서 약간만 변형한 보일러플레이트 코드를 재사용한다. 일부 최신 프로그래밍 언어에서는 함수, 클래스 및 기타 프로그래밍 구조로 보일러플레이트 코드를 캡슐화하여 최소화할 수 있다.

보일러플레이트 코드의 이점

  1. 코드 재사용 가능성 지원
    개발자가 이전에 작성한 코드를 자신이 만든 후속 모듈에 적용할 수 있는 재사용 가능한 프로그래밍에 유용합니다. 개발자는 프로그래밍할때 반복적으로 보이는 코드를 식별하여 보일러플레이트로 바꿀 수 있다. 전체 소스코드를 처음부터 작성하는 대신 필요할때 보일러플레이트 코드를 복사하여 붙여넣습니다.

  2. 적용 가능한 솔루션 제공
    보일러플레이트 코드는 개발자가 익숙하지 않은 소프트웨어 함수를 작성할때 참조를 제공한다. 기존에 개발자는 처음부터 전체 코드를 작성하고 제대로 작동하는지 테스트해야했었다.
    예를 들어, 웹 개발 프로젝트를 시작할떄 웹페이지에 보일러플레이트를 사용할 수 있다. 웹페이지에 필요한 기본 HTML구조를 다시 만들 필요가 없다.

  3. 지식 공유 허용
    개발자는 소프트웨어 테스트 및 품질검사를 수행하면서 코드를 지속적으로 개선한다. 보일러플레이트를 사용하여 이러한 개선사항을 통합할 수 있다.
    예를들어 프로그래머는 보일러플레이트 코드에서 버그를 발견할때마다 이를 개선하고 보일러플레이트의 변경 내용을 문서화할 수 있다. 이렇게하면 재사용 가능한 코드를 적용하는 모든 프로그래머가 최적화의 이점을 누릴 수 있다.

  4. 코드 품질 개선
    보일러플레이트 코드는 코딩에서 실수 발생 위험을 줄이고 소프트웨어 품질을 개선합니다. 보일러플레이트 코드를 사용하면 철저한 테스트를 거친 코드로 소프트웨어 함수를 지원할 수 있다. 코드 몇 줄을 작성하는 것으로 소프트웨어에 사용자 지정된 기능이나 사소한 기능을 추가할 수 있다.

  5. 코딩시간 단축
    보일러플레이트를 사용하면 코드를 불필요하게 반복할 필요가 없으므로 소프트웨어 개발 프로세스가 단순화된다. 재사용 가능한 코드를 사용하면 초보 개발자도 번거로운 학습 과정 없이 유사한 프로젝트를 빠르게 시작할 수 있다. 일반적으로 빌드하는데 시간이 오래 걸리는 소프트웨어 함수를 추가할때 보일러 플레이트를 거의 또는 전혀 변경하지 않고 삽입하여 사용할 수 있다.


보일러플레이트 코드의 예

  1. 클래스 선언
    보일러플레이트는 객체를 클래스로 표현하는 객체 지향 프로그래밍(OOP) 및 하이브리드 언어에서 흔히 사용된다.

    getName과 setName 은 모두 개발자가 코드를 다시 작성하지 않고도 여러 Customer클래스 선언에서 직접적으로 호출할 수 있는 보일러플레이트 코드.
    public class Customer {
     private String name;
    
     public String getName(){
         return name;
     }
    
     public void setName(String name){
         this.name = name;
     }
    }
  2. 함수 캡슐화

    보일러플레이트를 사용하여 애플리케이션에서 일반적으로 반복되는 소프트웨어 함수를 캡슐화할 수도 있습니다. 
    try(BufferReader reader = new BufferedReader(new FileReader(fileName))){
     String text;
     while(Object.nonNull(text = reader.readLine())){
     // inster code to process read info
     }
    } catch(IOException e) {
     String message = String.format("read file(%s) exception", fileName);
    
     log.error(message, e);
    
     throw new ExampleException(message, e);
    }
  3. 웹 페이지 템플릿

    <!DOCTYPE html>
    
 <meta name="viewport" content="width=device-width, initial-scale=1.0">

 <meta http-equiv="X-UA-Compatible" content="ie=edge">

 <title>Webpage Title</title>

 <link rel="stylesheet" href="style.css">

4. 데이터베이스 관리
보일러플레이트를 사용하여 데이터베이스 연결 및 데이커 퉈리를 위한 코드를 단순화합니다. 표준화된 코드 구조를 애플리케이션 전체에서 반복할 수 있는 사용자 지정된 데이터 관리 함수로 채울 수 있다. 

public class Database {
private Connection conn;
public void connect(){
// insert codes for database connection
}

public void disconnect(){
    // insert codes for database disconnect
}

public ResultSet runQuery(String query){
    // insert codes to run a query

    return null;
}

}



### 보일러플레이트는 언제 어떻게 사용해야하나요?























반응형