일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 스프링부트
- sqld
- 싱글톤
- spring
- Effective Java
- 스프링 컨테이너
- 스프링 프레임워크
- DIP
- 스프링 빈
- DI
- 스프링 부트
- thymeleaf
- db
- resultMap
- 스프링 부트 입문
- mybatis
- 필드 주입
- assertThat
- jdbc
- springboot
- Javascript
- 생성자 주입
- 스프링
- java
- JPA
- 스프링 부트 기본
- @Configuration
- kafka
- assertThrows
- SQL
- Today
- Total
선 조치 후 분석
빌드(Build) vs 컴파일(Compile) 본문
빌드(Build)
: 소스코드 파일을 실행 가능한 소프트웨어 산출물로 만드는 일련의 과정.
(war, jar 등의 실행 가능한 파일을 뽑아내는 과정)
빌드의 단계 중, 컴파일이 포함이 되어있는데, 컴파일은 빌드의 부분집합이라 할 수 있다.
*빌드 과정을 도와주는 도구를 '빌드 툴(Tool)'이라 한다.
컴파일(Compile)
: 개발자가 작성한 소스코드를 바이너리 코드로 변환하는 과정.
즉, 컴퓨터가 이해할 수 있는 기계어로 변환하는 작업. 이러한 작업을 해주는 프로그램을 '컴파일러(Compiler)'라고 부른다.
자바의 경우, JVM에서 실행 가능한 '바이트코드' 형태의 클래스 파일이 생성이 된다.
빌드 툴(Build Tool) : 일반적으로 빌드 툴이 제공해주는 기능은 다음과 같다.
1) 전처리(PreProcessing)
2) 컴파일(Compile)
3) 패키징(Packaging)
4) 테스팅(Testing)
5) 배포(Distribution)
대표적인 툴로는, Ant, Maven, Gradle 등이 있다.
조금 더 쉽게 이해할 수 있는 좋은 예(일상)
1. 영문 -> 한글 번역 : 컴파일(Compile)
2. 한글로 번역된 글을 책으로 엮는 것 : 빌드(Build)
3. 서점에 진열 : 배포(Distribution)
*1~2번을 '빌드한다'라고 하기도 한다.
이클립스에서 이해하기
1. 소스코드 작성 후, Run버튼 클릭 : 컴파일 + 실행
2. (정상적으로) 실행이 되면 이것을 war 파일로 뽑아서(빌드-Build) 웹서버에 올리거나(배포)
exe, jar파일로 뽑아서(빌드-Build) 사용자에게 전달(배포)
* 배워도 헷갈리고 까먹어서 다시 한번 정리하고자 적어봤다.
'ETC > IT Knowledge' 카테고리의 다른 글
에러(Error) vs 예외(Exception) (컴파일 에러 vs 런타임 에러) (0) | 2022.06.28 |
---|---|
location.href vs window.open (+ select url 이동) (0) | 2022.06.27 |
[CSS] prop vs attr 차이점 (0) | 2022.06.13 |
[JAVA] 객체의 초기화, String의 초기화는 다르게? (0) | 2022.06.07 |
[컨트롤러 호출 방법] Submit vs Ajax 차이점? + form을 Ajax로 호출하는 방법 (0) | 2022.06.07 |