전체 글
-
[DevOps] 도커란? - 도커 개념 정리DevOps 2024. 8. 19. 20:07
도커?도커(Docker)는 리눅스 컨테이너에 리눅스 애플리케이션을 프로세스 격리 기술을 사용하여 더 쉽게 컨테이너로 실행하고 관리할 수 있게 해주는 오픈소스 프로젝트이다.도커는 일반적으로 도커 엔진(Docker Engine) 혹은 도커에 관련된 모든 프로젝트를 말한다.도커 엔진?도터 엔진(Docker Engine)은 컨테이너를 생성하고 관리하는 주체로서 이 자체로도 컨테이너를 제어할 수 있고 다양한 기능을 제공하는 도커의 프로젝트이다.도커의 생태계에 있는 여러 프로젝트들은 도커 엔진을 좀 더 효율적으로 사용하기 위한 것에 불과하기 때문에 도커의 핵심은 도커 엔진이라고 할 수 있다.도커 컴포즈?도커 컴포즈(Docker Compose)는 여러 개의 도커 컨테이너를 정의하고 실행하기 위한 도구로, 하나의 설정..
-
[Cloud] 클라우드 컴퓨팅이란 무엇인가?Cloud 2024. 8. 12. 17:19
클라우드 컴퓨팅클라우드 컴퓨팅은 IT리소스를 인터넷을 통해 온디맨드로 제공하고 사용한 만큼만 비용을 지불하는 것을 말한다.물리적 데이터 센터와 서버를 구입, 소유 및 유지 관리하는 대신, Amazon Web Service(AWS)와 같은 클라우드 공급자로부터 필요에 따라 컴퓨팅 파워, 스토리지, 데이터베이스와 같은 기술 서비스에 액세스할 수 있다.모든 유형, 규모 및 산업의 조직이 데이터 백업, 재해 복구, 이메일, 가상 데스크톱, 스프트웨어 개발 및 테스트, 빅데이터 분석, 고객 대상웹 애플리케이션 등 다양한 사용 사례에 클라우드를 사용하고 있다.클라우드 컴퓨팅의 이점민첩성클라우드를 통해 광법위한 기술에 쉽게 액세스 할 수 있으므로, 더 빠르게 혁신하고 상상할 수 있는 거의 모든 것을 구축할 수 있다...
-
[DevOps] CI/CD란 무엇인가?DevOps 2024. 6. 18. 23:44
CI (Continuous Integration)지속적인 통합을 의미한다.새로운 코드 및 변경 사항이 정기적으로 빌드 및 테스트되어 공유 레퍼지토리에 통합하는 것을 의미한다.다수의 개발자가 형상 관리 툴을 공유하여 사용하는 환경이어야 한다.기능별로 빌드, 테스트, 머지를 하면 매우 번거롭다.이런 상황에서, 자동화된 빌드, 테스트는 원천 소스코드의 충돌 등을 방어하는 이점을 제공해 줄 수 있다.CD (Continuous Delivery/Deployment)지속적인 서비스 제공 또는 지속적인 배포를 의미한다.개발자의 변경사항이 레포지토리를 넘어, 고객의 프로덕션 환경까지 릴리즈 되는 것을 의미한다.Continuous Delivery와 Continuous Deployment의 차이지속적 제공에는 자동 프로덕션..
-
[Spring] SpringFramework, SpringBoot의 개념 및 차이점Spring 2024. 5. 16. 23:11
Spring FrameworkJava 기반의 오픈소스 Back=end 프레임워크이다.Java 애플리케이션을 구축하기 위한 종합적인 프레임워크이다.주로 엔터프라이즈급 애플리케이션을 만들 때 사용되며, 종속성 주입(Dependency Injection)과 관점 지향 프로그래밍과 같은 핵심 기능을 제공한다.Spring은 다양한 모듈로 구성되어 있어서 웹 개발부터 데이터 액세스, 보안, 트랜잭션 관리등 다양한 영역에서 사용할 수 있다.Spring Framework를 사용하는 이유 및 장점 경량화와 모듈화 경량화된 구조를 가지고 있으며 필요한 기능을 모듈화 하여 제공한다.이는 개발자가 필요한 모듈만 선택하여 사용할 수 있고, 필요한 경우 다른 모듈로 쉽게 확장할 수 있다는 장점을 제공한다. 의존성 주입 Sprin..
-
[JAVA] 생성자, Getter&Setter, BuilderJava 2024. 5. 16. 08:11
생성자 (Constructor)생성자는 객체가 생성될 때 호출되는 객체 초기화 메서드이다.인스턴스 변수의 초기화 작업에 주로 사용되며, 인스턴스 생성 시에 실행되어야 할 작업을 위해서도 사용된다.생성자에서 초기값을 세팅해 주었어도 언제든 값을 바꿀 수 있다.메서드처럼 클래스 내에 선언되며, 구조도 메서드와 유사하지만 리턴값이 없다.조건메서드 이름과 클래스 이름이 동일해야 한다.클래스로부터 객체를 생성할 때 어떤 클래스의 생성자를 호출할지 결정하는 데 사용되기 때문이다반환 타입이 없거나 void 이여야 한다.생성자가 호출될 때 객체가 생성되고, 새로운 인스턴스에 대한 참조가 반환되기 때문이다.생성자는 오버로딩 될 수 있다.하나의 클래스에 여러 개의 생성자를 정의할 수 있고, 이를 통해 다양한 매개변수 조합..
-
[JAVA] Wrapper Class (래퍼 클래스)Java 2024. 5. 13. 21:19
Wrapper Class(래퍼 클래스)자바의 기본 타입을 클래스 화한 변수형 객체로써 변수를 객체처럼 활용하기 위해 사용된다.int, double, boolen등은 객체가 아니다 그러므로 객체로 다루어야 할 때 사용한다.예를 들어, 객체 기반의 컬렉션에서 기본 데이터 유형을 사용하기위해 Wrapper클래스를 사용한다.래퍼 클래슨느 각각의 타입에 해당하는 데이터를 인수로 전달받은 후, 해당 값을 가지는 객체로 만들어 준다.즉 기본 타입을 객체 형태로 '포장'하는 것을 의미한다.로직이 필요하거나 컬렉션, 제네릭 활용으로 타입 안정성을 보장하기 위해서 사용된다.넓은 범위의 유틸리티 메서드를 활용할 수 있다.java.lang 패키지에서 제공된다. 기본타입 | 래퍼 클래스 byte | Byteshort | Sho..
-
[JAVA] 컬렉션 프레임워크 (Collection Framework)Java 2024. 5. 12. 03:37
컬렉션(Collection)여러 객체(데이터)를 담을 수 있는 자료구조, 다수의 데이터 그룹 또는 집합을 의미한다.프레임워크(Framework)복잡하게 설명할 수 있지만 간단하게 표준화된 프로그래밍 방식을 의미한다.컬렉션 프레임워크 (Collection Framework)켈렉션 프레임워크란 데이터 그룹을 지정하는 클래스들을 표준화한 설계이다.컬렉션 프레임워크를 활용하면 객체 지향적이고 재사용성이 높은 코드를 작성할 수 있다.JDK 1.2버전 부터 java.util 패키지에서 지원하기 시작하였고 이전에는 Vector, Properties, Stack, Hash Tables, Dictionary와 같은 것들이 존재하였으나 통일성이 없고 표준화된 인터페이스가 존재하지 않았다 CollectionFramework..
-
[JAVA] 오버라이딩 (Overriding), 오버로딩 (Overloading) 개념 및 차이점Java 2024. 5. 12. 00:22
오버라이딩 (overriding)부모 클래스로부터 상속받은 메서드를 자식 클래스에서 재정의 하는 것.상속받은 메서드를 그대로 사용할 수도 있지만. 자식 클래스에서 상황에 맞게 변경해야하는 겅우 오버라이딩할 필요가 생긴다.오버라이딩의 조건부모 클래스의 메서드를 재정의하는 것으로 메소드의 이름이 일치해야 한다.메소드 매개변수의 개수, 순서 그리고 데이터 타입이 일치해야 한다.메서드의 return 타입이 일치해야 한다.@Override는 어떤 용도인가?검증하는 기능을 한다.오버라이딩을 검증하는 기능을 한다.부무 클래스의 메서드를 오버라이딩 하는 것은 내용만을 새로 정의하는 것이므로 선언부는 부모의 것과 완벽히 동일해야 한다.부모의 메서드의 이름만 빌려와서 자기의 방식대로 재정의하는것을 오버라이딩이라고 한다.오..