서론 우리가 프로그램을 실행하면 프로세스가 실행됩니다. 하지만, 비슷한 개념으로 쓰레드라는 개념이 존재합니다. 그래서 쓰레드와 프로세스를 혼동하기도 합니다. 저도 두 개념의 차이점을 말하라고 한다면 잘 설명하지 못했습니다. 이번에는 두 개념에 대해서 알아보는 시간을 가지고자 합니다. Process, Thread? Program 프로그램은 명령어, 코드 및 정적인 데이터의 묶음이다. 개발자들이 코드를 짜서 프로그래밍을 해서 프로그램을 만든다. 하지만 이걸 실행시키지 않으면 단순한 데이터 덩어리일 뿐이다. 프로그램을 살아있는 서비스로 만들기위해 프로세스가 되어야한다. Process 프로세스란 프로세서에 의해 실행되는 프로그램이다. 혹은 운영체제로부터 시스템 자원을 할당 받는 작업의 단위라고 부른다. 간단하게..
서론 저는 이때까지 spring Boot로 개인 프로젝트나 공부를 할 때, 하나의 패키지를 만들었습니다. src폴더안에 서비스별로 나누고(유저에 대한 Member, 게시판에 대한 board, 설정 파일들이 있는 Configration등등...), 서비스들 안에는 controller, service, dto 등등을 구성했습니다. 하지만 이렇게 하면 폴더를 타고 폴더를 타고.. 이런 과정이 많아지고, 가시성이 안좋을 수도 있으며 테스트하기에도 불리할 수도 있습니다. 이를 위해서 멀티 모듈을 구성해 모듈로서 관심사를 구분하는 멀티모듈 프로젝트를 구성해보고자 합니다. 멀티 모듈 프로젝트의 장점 멀티 모듈은 하나의 프로젝트를 여러 개의 작은 모듈로 나누어서 개발하고 관리하는 방식을 의미합니다. 각각의 모듈은 독립..
https://www.acmicpc.net/step/2 2차원 배열 단계 2차원 배열을 활용하여 색종이로 평면을 덮는 문제 www.acmicpc.net 오늘은 일반 수학1을 단계별 문제로 풀었다. 2차원 배열 총 4문제를 풀었다. 이번에는 일차원 배열과는 다르게 2차원이므로 신경써야할 것이 조금 더 있었다. 풀었던 문제중에서 인상깊었던 문제 몇 개를 적어본다. 백준 2566 - 최댓값 https://www.acmicpc.net/problem/2566 2566번: 최댓값 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 위치한 행 번호와 열 번호를 빈칸을 사이에 두고 차례로 출력한다. 최댓값이 두 개 이상인 경우 그 중 한 곳의 위치를 출력한다. www.acmicpc.net 문제분석 문제를 요약하자면, 9..
0. 서론 OOP, 객체지향이란 무엇일까? 처음 프로그래밍, 코딩을 처음 접했을 때 가장 생소했던 단어중 하나이다. 객체지향? 객체라는 요소를 이용해서 모델링이니...뭐니... 하는 아리송한 말로만 들려왔다. 지금 와서 내가 이해한 객체지향에 대해서 간단하게 정리를 해보는 시간을 가지고자 한다. 1. OOP가 뭔데? OOP, 즉 객체지향 프로그래밍이란, 프로그래밍 개발방법론 중 하나로, 이런식으로 "개발해야한다~" 라는 의미이다. OOP에 대해서 찾아보면, 사람이 직관적으로 이애하기 쉽고, 유지보수를 용이하게 한다는 설명을 찾을 수 있다. 하지만 이를 이해하기 위해서 몇가지 알아야할 지식들이 있다. 객체 간단하게 말하자면, 아래와 같다. 객체는 현실의 무언가에 대응하는 개념이다. class는 객체를 표현..
https://www.acmicpc.net/step/8 일반 수학 1 단계 벌집이 형성되는 규칙에 따라 벌집의 위치를 구하는 문제 www.acmicpc.net 오늘은 일반 수학1을 단계별 문제로 풀었다. 일반 수학1 총 7문제를 풀었다. 이번에는 진법에 대한 문제들이 많이 나왔다. 풀었던 문제중에서 인상깊었던 문제 몇 개를 적어본다. 백준 11005 - 진법 변환 2 https://www.acmicpc.net/problem/11005 11005번: 진법 변환 2 10진법 수 N이 주어진다. 이 수를 B진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 www.acmicpc.net 문제분석 요약하자면, 1..
0. 서론 최근 프로젝트에서 proxy서버를 만들면서 Nginx라는 웹 서버를 사용하게 되었다. 웹 서버에 대해서는 Apache에 대해서만 알고 있었는데, 최근에는 Apache보다 더 많이 사용된다고 한다. 이번에는 nginx에 대해서 더 알아보기 위해서 분석해보고자 했는데, Youtube영상 중 피케이님이 Nginx에 대해서 정리를 해주신 영상을 토대로 내용을 정리해보고자 한다. 우아한 테크 - 피케이의 Nginx [https://www.youtube.com/watch?v=6FAwAXXj5N0] 1. Nginx이전의 시대 1995년 당시, unix기반으로 만들어진 NCSA HTTPd라는 최초의 웹서버가 존재했었다. 하지만, 버그가 많아서 개발자들이 사용하기 힘들었다. 이를 개선하기 위해 뛰어난 개발자들..