목록CS (6)
종식당

📚 ddl-autoddl-auto 옵션은 스프링 부트 애플리케이션에서 Hibernate와 같은 JPA구현체를 사용할 때 데이터베시스 스키마 관리를 제어하는 설정이다. 이 옵션은 application.properties, application.yml파일에서 설정할 수 있으며, 다양한 값에 따라 데이터베이스 스키마에 대해 다른 동작을 수행하게 된다. ddl-auto 옵션에는 none, validate, update, create, create-drop등이 존재한다. 🕵️ 각 옵션에 대한 설명none데이터베이스 스키마와 관련된 어떤한 작업도 수행하지 않는다. 데이터베이스 스키마를 수동으로 관리하고 싶을 때 유용할며, 프로덕션 환경에서 주로 사용된다.validate애플리케이션이 시작될 때, 엔티티 매핑이 ..

클로저는 함수가 선언될 때의 스코프를 기억하여, 함수가 생성된 이후에도 그 스코프에 접근할 수 있는 기능이다.즉, 함수가 자신이 생성된 환경을 기억하는 것이라고 할 수 있다.클로저는 자바스크립트의 함수가 일급 객체라는 특성과 렉시컬 스코프의 조합으로 만들어진다. function outerFunction(outerVariable) { return function innerFunction(innerVariable) { console.log('Outer Variable: ' + outerVariable); console.log('Inner Variable: ' + innerVariable); };}const newFunction = outerFunction('outside');newFunctio..

Limited Direct Execution 여러 개의 프로그램을 동시에 작동하기 위해서는 CPU가상화가 필요하다. 실제로 time sharing을 통해 구현할 수 있는데 이때 고려할 것이 있다. 성능과 제어를 유지하면서 CPU가상화를 구현해야 하는데 이에 대해서 알아보겠다. Direct Execution 다음은 Limit가 빠진 Direct Execution이다. 이는 프로그램을 한 번 수행하면 종료될 때까지 수행하는 방법이다. 위에서 보는 것처럼 한 번 실행된 프로세스에 대해서 제어를 할 수 없으며 즉, time sharing을 할 수 없다. 이제 여기에 다양한 Limit를 주어서 CPU가상화를 할 수 있다. 이에 대해서 살펴보겠다. Problem 1 : Restricted Operation Dire..

병합 정렬 주어진 배열을 더 이상 쪼갤 수 없을 때까지 데이터 크기의 절반으로 계속 나누어, 재귀적으로 정렬을 수행하면서 통합하는 정렬 알고리즘 이 알고리즘 총 3단계로 나눌 수 있다. Divide 주어진 배열을 데이터 크기의 절반으로 나누어 2개의 부분 배열로 분할한다. 이를 더 이상 쪼갤 수 없을 때까지 분할한다. Conquer 나누어진 부분 배열에 대해서 재귀적으로 합병 정렬을 한다. Combine 정렬한 2개의 부분 배열을 통합하여 원래 크기의 정렬된 배열로 만든다. Merge sort의 슈도 코드 Merge sort의 수행 과정 Merge sort의 시간 복잡도 먼저 전체 리스트를 반으로 나누어 가면서 리스트를 분할한다. 만약 길이가 8인 리스트라면 이를 총 3번 나눌 것이고, 길이가 16인 리..

프로세스란? 프로세스는 현재 실행 중인 프로그램이라고 할 수 있다. 프로그램은 디스크에 저장되어 있는 실행 가능한 것이다. 컴퓨터는 CPU를 통해 프로그램을 메모리에 load 하고 이를 처리한다. 보통 우리는 컴퓨터를 통해 여러가지 프로세스를 동시에 이용하지 한 대의 컴퓨터로 하나의 프로세스만을 실행시키지는 않는다. 그럼 여러 개의 프로세스를 동시에 동작하는 방법에 대해서 알아보겠다. Multiple processes OS는 여러개의 프로그램을 동시에 실행시키기 위해 CPU를 가상화하는 방법을 이용한다. 이를 Virtualization이라고 부른다. 실제로 물리적인 CPU는 1개이지만 이를 프로그램들에게는 여러 개의 CPU가 있는 것처럼 가상화시켜 여러 개의 프로그램을 동시에 실행시킬 수 있게 됩니다. ..