전체 글
-
Maven & GradleSpring&Spring Boot Story 2023. 5. 14. 00:33
빌드 관리 도구 프로젝트 빌드 과정을 자동화하며, 코드 컴파일, 의존성 관리, 테스트 실행, 패키징 등을 수행한다. 즉, 프로젝트 생성, 테스트 빌드, 배포 등의 작업을 위한 전용 프로그램이라고 할 수 있다. 우리가 프로젝트에서 작성한 Java 코드와 프로젝트 내에 필요한 각종 xml, properties, jar 파일들을 JVM이나 WAS가 인식할 수 있도록 패키징 해주는 빌드 과정(빌드 자동화 도구)이라 할 수 있다. 애플리케이션을 개발하면서, 일반적으로 개발에 필요한 다양한 외부 라이브러리들을 다운로드하고, 해당 라이브러리를 사용하여 개발해야하는 상황이 많다. 이 때, 각 라이브러리들을 번거롭게 모두 다운받을 필요 없이, 빌드 도구 설정 파일에 필요한 라이브러리 종류와 버전들, 종속성 정보를 명시하..
-
JUnitSpring&Spring Boot Story 2023. 5. 14. 00:19
유닛테스트(단위테스트) 소프트웨어 개발 과정에서 소스 코드의 작은 단위인 메소드, 클래스, 모듈 등이 예상대로 잘 동작하는지를 검증하는 테스트이다. 즉, 소프트웨어의 각 구성요소들이 개별적으로 올바르게 작동하는지를 검증하는 절차이다. 프로그램을 작은 단위로 쪼개어 각 단위가 정확하게 동작하는지를 검사함으로써 프로그램의 안정성을 높인다. System.out.println()으로 하는 번거로운 디버깅이 필요없으며, 개발기간 중 대부분을 차지하는 디버깅 시간을 단축한다. JUnit Java 언어를 위한 오픈 소스 단위 테스트 프레임워크이다. 소스 코드의 작은 단위인 메소드, 클래스, 모듈 등을 테스트할 수 있다. 단위 테스트를 작성, 실행 및 관리하기 위한 다양한 기능을 제공한다 assertXXX를 사용하여 ..
-
SLF4JSpring&Spring Boot Story 2023. 5. 13. 22:55
SLF4J Simple Logging Facade for java 로깅 프레임워크에 대한 추상화(인터페이스) 역할을 하는 라이브러리이다. 추상 로깅 프레임워크이기 때문에 단독으로 사용하지 않는다. 인터페이스를 사용하여 로깅을 구현하게 되면 좋은 점은 추후에 필요로 의해 로깅 라이브러리를 변경할 때 코드의 변경 없이 가능하다는 점이다. 예시 코드 import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import java.util.ArrayList; import java.util.HashMap; import ..
-
Semantic Web과 Semantic TagIT Story 2023. 5. 13. 08:35
Semantic Web Semantic : '의미의, 의미론적인'이라는 뜻이다. Semantic Web은 '의미있는 웹'이라고 할 수 있다. Semantic Web의 목적 단순히 사람만이 웹의 정보를 파악하는 것이 아니라, 자동화된 기계가 그 의미를 해석하고, 정보 간의 관계를 이해할 수 있도록 하는 것이다. 검색 엔진에 노출(검색 엔진은 매일 웹 사이트 정보들을 수집하여 예상되는 검색 키워드에 대응하는 인덱스를 만들어 놓는데, 그 인덱스를 수집하는 기준이 HTML에서 Semantic Tag 사용 유무에 따라 인덱스에 포함 여부가 결정된다.) Semantic Tag Semantic Tag는 '의미있는 태그'라고 할 수 있다. 즉, HTML Tag들 중에서도 나름의 의미가 있는 태그들을 말한다. Seman..
-
ControllerSpring&Spring Boot Story 2023. 5. 13. 07:52
Controller 웹 애플리케이션의 엔드포인트를 처리하는 데 사용되며, Spring Framework에서 핵심 구성 요소 중 하나이다. 클라이언트로부터 요청을 수신하고, 적절한 로직을 수행한 후 응답을 반환한다. 모델과 뷰를 연결하는 역할을 하며, 비즈니스 로직과 데이터 처리를 수행한다. Controller는 디자인 패턴 중 하나인 MVC 패턴에서 C(Controller)에 해당한다. Spring에서는 Controller의 역할을 하는 클래스를 다양한 방식으로 정의할 수 있다. @Controller 어노테이션을 사용하거나, @RestController 어노테이션을 사용하여 RESTful 웹 서비스를 구현할 수도 있다. 대표적으로 GET, POST, PUT, DELETE 등의 여러 종류의 요청을 처리할 ..
-
YAMLIT Story 2023. 5. 13. 07:45
YAML이란? YAML Ain't Markup Language의 약자다. 구성 파일 작성에 자주 사용되는 데이터 직렬화 언어이다. XML과 같은 다른 마크업 언어와는 달리, 사람이 읽고 쓰기 쉽고, 기계가 파싱하고 생성하기 쉽다. 가벼운 데이터 구조이다. YAML 구문 JSON의 상위 집합이므로 YAML에서 JSON 파일을 사용할 수 있다. Python 스타일의 들여쓰기 방법으로 중첩을 표시한다. 탭 문자는 허용되지 않으므로, 공백을 대신 사용한다. 중괄호, 대괄호, 닫기 태그 또는 따옴표와 같은 통상적인 형식 기호는 없다. .yml 또는 .yaml이라는 확장자를 사용한다. 맵 또는 목록 구조로 되어 있다. YAML 예시
-
QuokkaQuokka Story 2023. 5. 13. 06:16
많은 사람들이 나에게 물어본다. " 너는 왜 블로그 이름이 Quokka young이야?? " ... 음.. 단순하다. 쿼카라는 동물을 닮아서 내 별명이 쿼카가 됐다. 뒤에 young은 내 이름의 마지막 글자다! (매우 단순) 쿼카는 캥거루과에 속하는 소형 포유류 동물이다. 항상 웃는 인상 때문에 '세상에서 가장 행복한 동물'이라고 불린다. 천적이 없었기에 사람을 만나도 무서움을 못 느끼고 쿼카 특유의 친화력으로 사람들에게 다가가 함께 사진도 찍을 만큼의 귀여운 동물이다. 나는 꿈도 희망도 없었고, 내 미래가 그려지지 않았던 평범한 학생이었다. 그러다 퍼블리셔라는 직업을 갖게 되었고, 개발자들과 소통하면서 알아듣지 못하는 이야기 속에 같이 끼고 싶었다. 도대체 자바라는 건 무엇이며, C언어라는 건 어떤 것..