본문 바로가기

Spring공부

(29)
Lombok과 application.properties Lombok이란? Lombok(이하 롬복)은, 자바 프로젝트를 진행하는데 거의 필수적으로 필요한 메서드/생성자 등을 자동 생성해줌으로써 코드를 절약할 수 있도록 도와주는 라이브러리입니다. application.properties application.properties는 Spring과 관련된 설정을 할 때 사용되는 파일입니다. Spring과 SpringBoot의 차이에 대해 학습할 때 SpringBoot를 사용하면 개발에 필요한 설정 정보들이 자동으로 설정된다고 배웠습니다. 이 파일을 사용하면 자동으로 설정되고 있는 설정 값을 쉽게 수정할 수 있습니다. 뿐만아니라 DB 연결 시 DB의 정보를 제공해야하는데 이러한 경우에도 이 파일을 이용하여 쉽게 값을 전달할 수 있습니다.
테스트 코드 테스트의 필요성 버그' (bug) 란? 버그는 소스 코드나 '설계과정에서의 오류' 때문에 발생합니다. 간혹 우리는 용어의 “정의”를 소홀히 하기도 하는데, 때로는 이렇게 용어를 다시 정리해보는 것 도 좋다. 버그라는 단어가 “소프트웨어가 예상하지 못한 결과를 내는 것” 이라는 정의를 가진다. 개발 코드 배포 전, 버그를 (최대한 많이) 찾아내는 법 - 테스트! 블랙박스 테스팅 블랙박스 테스팅이란 소프트웨어 내부 구조나 동작원리를 모르는 블랙박스와 같은 상태에서, 즉 웹 서비스의 사용자 입장에서 동작을 검사하는 방법입니다! 장점 누구나 테스트가 가능합니다 - 개발자부터 디자이너, 베타 테스터 혹은 사장님까지! 단점 기능이 증가될 수록 테스트의 범위가 증가합니다. 시간이 갈수록 테스트하는 사람이 계속 늘어나..
HTTP란 무엇일까? HTTP(HyperText Transfer Protocol)란? 데이터를 주고 받는 양식을 정의한 "통신 규약"중 하나가 HTTP입니다. 매우 범용적인 양식을 가지고 있어 전 세계에서 제일 널리 쓰이는 통신 규약입니다. 여기서 말하는 통신 규약이란, 컴퓨터끼리 데이터를 주고 받을 때 정해둔 약속을 의미합니다. 따라서 현재 이용되는 대부분의 웹 서버가 HTTP를 기반으로 정해준 규칙에 맞게 데이터를 주고 받습니다. 우리는 어떻게 HTTP로 데이터를 주고 받을까? HTTP에서는 언제나 Request, Response라는 개념이 존재합니다. 서버와 브라우저의 관계로 가볍게 말해보면 아래와 같이 동작합니다. 브라우저는 서버에게 자신이 원하는 페이지(URL 등의 정보)를 요구(Request)합니다. 서버는 브라우..
서버란 무엇일까? 네트워크란? 네트워크는 여러대의 컴퓨터 또는 장비가 서로 연결되어서 정보를 주고 받을 수 있게 도와주는 기술입니다. 컴퓨터, 라우터, 스위치, 허브 등의 장비들이 각각의 역할을 수행하여 정보를 주고 받습니다. 서로 정보를 주고 받기 위해서는 IP 주소, 서브넷 마스크, 게이트웨이등의 정보를 설정하고 네트워크 프로토콜을 이용하여 통신을 하게 됩니다 Client와 Server Client 즉, 브라우저에서 서버에 정보를 요청하는 과정을 간략하게 표현한 부분입니다. 보시는 것 처럼 사용자는 브라우저를 이용하여 서버에 정보를 요청하고 응답을 받습니다. 이때 사용자의 요청이 서버에 도달하기 위해서는 해당 서버의 정보가 필요합니다. 이 때 사용자의 요청이 해당 서버에 정확하게 도달할 수 있게 제공되는 정보가 IP ..
그레이들(Gradle)이란 무엇일까? Gradle이란? Gradle은 빌드 자동화 시스템입니다. 우리가 작성한 Java 코드를 설정에 맞게 자동으로 Build해 줍니다. Build란 소스 코드를 실행 가능한 결과물로 만드는 일련의 과정을 뜻합니다. Gradle을 사용하면 간편하게 Java 소스 코드를 실행한 가능한 jar 파일로 만들어줍니다. build.gradle build.gradle은 Gradle 기반의 빌드 스크립트입니다. 이 스크립트를 작성하면 소스 코드를 빌드하고 라이브러리들의 의존성을 쉽게 관리할 수 있습니다. groovy 혹은 kotlin 언어로 스크립트를 작성할 수 있습니다.