[공부] 프로그래밍
-
암호화, 복호화 처리[공부] 프로그래밍/Spring・Spring Boot (JAVA) 2024. 3. 14. 14:44
// AES 암호화 알고리즘private static final String AES_ALGORITHM = "AES/CBC/PKCS5Padding";// 16자로 인코딩된 암호화 키private static final String ENC_KEY = "!testtesttestTTT";// 암호화에 사용되는 초기화 벡터private static final String IV_KEY = "testtesttestTTT";// 문자열을 바이트로 변환하는 데 사용되는 문자 인코딩private static final String CHARSET = "UTF-8";AES_ALGORITHM (AES 암호화 알고리즘):◇ 이 변수는 AES 암호화에 사용할 알고리즘 및 암호화 모드와 패딩 방식을 지정합니다.◇ AES는 Advan..
-
API[공부] 프로그래밍/프로그래밍의 기초 2024. 3. 13. 13:18
API API(응용 프로그램 프로그래밍 인터페이스)란 소프트웨어끼리 손쉽게 소통할 수 있도록 도와주는 도구입니다. 예를 들어 당신이 레스토랑에 있다고 상상해보세요.당신은 손님이고 음식을 주문하고 싶어합니다. 웨이터는 당신과 주방 사이의 중개자 역할을 합니다. 당신은 주방이 음식을 준비하는 방법을 알 필요가 없습니다. 단지 주문을 웨이터에게 전달하면 됩니다. 이 비유에서: 당신은 클라이언트 애플리케이션입니다.주방은 서버 또는 기능을 제공하는 서비스입니다.웨이터는 API입니다. 주문(요청)을 받고 주방에 전달하며 준비된 음식(응답)을 다시 가져와서 당신에게 제공합니다. API(웨이터)는 음식이 어떻게 준비되는지 모든 세부 사항을 이해하지 않고도 주방(서버)과 상호 작용할 수 있는 구조화된 방법을 제공하여 프..
-
클러스터[공부] 프로그래밍/프로그래밍의 기초 2024. 3. 12. 15:28
클러스터클러스터란 여러 대의 컴퓨터나 서버가 함께 연결되어 하나의 시스템으로 동작하도록 구성된 것을 말합니다. 클러스터는 주로 성능, 신뢰성, 확장성을 향상시키기 위해 다양한 컴퓨팅 환경에서 사용됩니다.클러스터의 주요 특징은 다음과 같습니다:◇ 상호 연결: 클러스터 내의 컴퓨터나 서버는 네트워크를 통해 서로 연결되어 있어 통신하고 자원을 공유할 수 있습니다. 병렬 처리: 클러스터는 병렬 처리 기술을 사용하여 여러 노드가 동시에 작업을 수행할 수 있습니다. 이는 빠른 계산과 데이터 처리를 가능하게 합니다.◇ 고가용성: 클러스터는 고가용성을 보장하기 위해 중복 및 장애 조치 메커니즘을 갖추고 있습니다. 하나의 노드가 고장 나도 작업이 중단되지 않고 다른 노드로 자동으로 전환됩니다.◇ 확장성: 클러스터는 필요..
-
[Spring Boot] IoC 와 DI[공부] 프로그래밍/프로그래밍의 기초 2024. 3. 8. 14:30
IoC스프링 프레임워크의 기본 개념 중 하나로, 프레임워크가 애플리케이션의 종속성을 관리하고 제어할 수 있게 합니다. IoC는 객체를 생성하고 그 종속성을 관리하는 제어를 애플리케이션 코드에서 스프링 컨테이너로 전환하는 것을 의미합니다.간단한 예제를 통해 Spring Boot의 IoC를 설명해 보겠습니다: Car 클래스가 Engine 클래스에 종속되는 상황을 가정해 보겠습니다. Spring Boot의 IoC 없이는 Car 클래스 내에서 Engine의 인스턴스를 직접 생성할 수 있습니다.public class Car { private Engine engine; public Car() { this.engine = new Engine(); // Engine 인스턴스를 직접 생성 }..
-
개념 정리[공부] 프로그래밍/자료구조와 알고리즘 2024. 3. 7. 14:24
자료구조와 알고리즘자료구조(Data Structure)는 데이터를 조직화하고 저장하는 방법을 의미하며, 알고리즘(Algorithm)은 문제를 해결하기 위한 단계적인 절차나 방법을 나타냅니다.◇ 자료구조(Data Structure):자료구조는 데이터를 효율적으로 조직화하여 저장하고 관리하는 방법을 제공합니다. 이를 통해 데이터에 대한 빠른 접근과 검색, 삽입, 삭제 등의 작업을 수행할 수 있습니다. 예를 들어, 배열, 연결 리스트, 스택, 큐, 트리, 그래프 등이 자료구조의 예시입니다.◇ 알고리즘(Algorithm):알고리즘은 문제를 해결하기 위한 명확한 단계적인 절차나 방법을 나타냅니다. 주어진 입력에 대해 원하는 출력을 생성하기 위한 효율적인 방법을 정의합니다. 알고리즘은 특정 작업을 수행하는 데 사용..
-
enum[공부] 프로그래밍/Spring・Spring Boot (JAVA) 2024. 3. 5. 11:53
enumEnum은 "열거형"이라고 불리며, 프로그래밍에서 사용되는 데이터 형식 중 하나입니다. 열거형은 특정한 값들의 집합을 정의할 때 유용하게 활용됩니다. 보통 상수들의 집합으로 이루어져 있으며, 이러한 상수들은 일련의 식별자로 사용됩니다. 열거형을 사용하면 코드의 가독성과 유지보수성을 향상시킬 수 있습니다. 예를 들어, 계절을 열거형으로 정의한다고 가정해 봅시다. 봄(Spring), 여름(Summer), 가을(Fall), 겨울(Winter)이 각각의 상수로 정의될 수 있습니다. 이렇게 하면 코드에서 계절을 다룰 때 상수를 사용하여 가독성을 높일 수 있습니다.public enum Season { SPRING, SUMMER, FALL, WINTER}public class Main {..