Study/기술 및 용어 정리 19

Docker란?

요즘 도커가 핫하다는데.....도커....컨테이너... 애매하게는 들었지만 확실하게는 몰라서 개념을 정리하기로 한다. https://youtu.be/IiNI6XAYtrs 오늘도 테코톡의 도움을 받아봅니다^^~ Docker 컨테이너 기반 가상화 도구 서버 가상화 하나의 물리적 서버 호스트에서 여러 개의 서버 운영 체제를 게스트로 실행할 수 있게 해주는 소프트웨어 아키텍쳐 = 하나의 서버의 자원을 여러 서버들이 할당받아서 성능을 분산시키고, 분산 서버는 다른 서비스를 수행 가능. 각 가상머신에는 여러 운영체제가 설치되어 있고, 하이퍼바이저에 의해 생성되고 관리되는 운영체제를 게스트 운영체제라고 부른다. 하이퍼바이저 OS들에게 자원을 나누어주며 조율한다. OS들의 커널을 번역해서 하드웨어에게 전달한다. 대표적..

Spring과 Spring Boot의 개념과 차이

https://www.youtube.com/watch?v=6h9qmKWK6Io [10분 테코톡] 🦊닉의 Spring vs Spring Boot https://velog.io/@h000/Spring-Framework 영상과 블로그를 보고 정리해봤다. Spring 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있다. 특징 POJO(Plain Old Java Object) 특정 기술에 의존적이지 않은 순수한, 객체 지향 원리에 충실한 자바 객체를 의미한다.스프링은 POJO 방식의 프레임워크로, 특정 기술에 의존적이지 않은 자바 객체를 사용해서 프로그래밍한다. IoC/DI(Inversion of Control) 제어의 역전이라는 의미로, 원..

용어정리 - JSP / 서블릿

내가 사용했고 사용하고 있음에도 ~가 뭐예요? 라고 물어보면 바로 대답하기가 어려운 것들에 대해 정리하기로 한다. 오늘은 JSP와 서블릿의 개념과 차이를 정리했다. JSP(JavaServer Pages) Java 언어를 기반으로 하는 Server Side 스크립트 언어 HTML 코드에 JAVA 코드를 넣어 동적 웹페이지를 생성하는 웹 어플리케이션 도구이다. JSP가 실행되면 서블릿으로 변환되며 웹 어플리케이션 서버에서 동작되며 필요한 기능을 수행하고 그렇게 생성된 데이터를 웹페이지와 함께 클라이언트로 응답한다. ASP와 비교해서 JSP는 안정적이고, 유지보수가 쉽다. 반면 PHP는 개발 속도가 빠르다. (요즘 대세는 Node.js인듯...) 웹(web) 웹이란 인터넷 기반의 정보기술로 World Wide..

정렬 개념 정리 - 퀵 정렬(Quick Sort), 합병 정렬(Merge Sort)

퀵 정렬(Quick Sort) 분할 정복(divide and conquer) 방법 을 통해 주어진 배열을 정렬한다. 배열 가운데서 하나의 원소를 고른다. 이를 피벗(pivot) 이라고 한다. 가장 왼쪽에 있는 수에 left마커, 오른쪽에 있는 수에 right마커를 표시한다. 마커를 사용하여 일련의 작업을 재귀적으로 반복한다. left 마커를 오른쪽으로 이동 - 피벗 수 이상인 수에 도착하면 멈춤 right 마커를 왼쪽으로 이동 - 피벗보다 작은 숫자에 도달하면 멈춤 좌우 마커가 멈춘 시점에서 마커의 숫자를 교체함 (right 마커가 움직여서 두 마커가 만날 때는 해당 원소와 피벗을 교체) 두 마커가 있는 원소를 정렬 완료 상태로 둠 피벗양쪽으로 같은 작업을 반복 퀵 정렬은 다음의 단계들로 이루어진다. 정..

정렬 개념 정리 - 거품 정렬(Bubble Sort), 선택 정렬(Selection Sort), 삽입 정렬(Insertion Sort)

거품 정렬(Bubble Sort) 서로 인접한 두 원소의 대소를 비교하고, 조건에 맞지 않다면 자리를 교환하며 정렬하는 알고리즘 void bubbleSort(int[] arr) { int temp = 0; for(int i = 0; i arr[j]) { // 3. // swap(arr[j-1], arr[j]) temp = arr[j-1]; arr[j-1] = arr[j]; arr[j] = temp; } } } System.out.println(Arrays.toString(arr)); } 제외될 원소의 개수를 의미한다. 1회전이 끝난 후, 배열의 마지막..

Web Server와 WAS의 차이

WS(Web Server) Http 프로토콜을 기반으로, 클라이언트의 요청을 서비스하는 기능을 담당 비즈니스 로직을 넣을 수 없음 정적 컨텐츠 제공 - was를 거치지 않고 바로 제공 동적 컨텐츠 제공을 위한 요청 전달 - 클라이언트 요청을 WAS에 보내고, WAS에서 처리한 결과를 클라이언트에게 전달 Nginx, Apache 등 WAS(Web Application Server) DB 조회 및 다양한 로직 처리 요구시 동적인 컨텐츠를 제공하기 위해 만들어진 애플리케이션 서버 비즈니스 로직을 넣을 수 있음 HTTP를 통해 애플리케이션을 수행해주는 미들웨어 WAS는 웹 컨테이너 혹은 서블릿 컨테이너라고도 불림 (컨테이너 : JSP, Servlet을 실행시킬 수 있는 소프트웨어. WAS는 JSP, Servle..

프로세스 관련 용어 정리

기본적인 이론을 알아야 할 것 같아서 공부하던 도중, 개발 관련 모르는 용어들이 보여 공부하며 정리했다. 프로세스와 스레드 프로세스는 실행 중에 있는 프로그램을 의미하며, 작업(Job) 또는 태스크(Task)라고도 한다. 프로그램이 메모리에 적재(Load)되는 순간 프로세스가 된다. 스레드는 프로세스 내부에서 프로세스의 자원을 공유하거나 공유하지 않고 실행되는 작업의 단위이다. 프로세스 제어 블록(Process Control Block) 운영체제가 프로세스를 제어하기 위해 정보를 저장해 놓는 곳이며, 프로세스의 상태 정보를 저장하는 자료구조 프로세스가 생성될 때마다 고유의 PCB가 생성되고, 프로세스가 완료되면 PCB도 함께 제거된다. 프로세스 상태 관리와 문맥 교환(Context switch)을 위해서..

OSI 7계층 설명 영상 및 개념 정리

https://youtu.be/1pfTxp25MA8 [10분 테코톡] 🔮 히히의 OSI 7 Layer 10분 테코톡이지만 40분짜리 강의다. 하지만 너무너무 알기 쉽게 설명해 주셔서 40분 내내 정독했다. 정확히는 OSI7계층이 아니라 TCP/IP모델(updated)를 설명해 주셔서 세션계층과 표현계층은 생략되었지만 그래도 너무 유용하다..... 쏙쏙 들어오는 딕션... 아무것도 모르는 사람도 이해할 수 있을 만한 비유... 그리고 반복설명까지 ㅠㅠ bb 이하 영상 보고, 블로그도 참고해서 정리한 것... 참고한 글 : https://dncjf64.tistory.com/379 https://velog.io/@cgotjh/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-OSI-7-%EA%..

API / 라이브러리 / 프레임워크 개념 및 차이

노션 포트폴리오를 정리하며 사용 기술 및 라이브러리를 적고 있었는데, 문득 API도 여기에 넣어도 되나...? 라는 생각이 들었다. 생각해보면 API와 라이브러리(+프레임워크)의 정확한 개념도 잘 모르고 사용해왔던 것 같아서 이번 기회에 제대로 정리하기로 한다. 참고한 블로그와 강의 주소 : https://rrecoder.tistory.com/94 https://youtu.be/We8JKbNQeLo API (Application Programming Interface) 응용프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어가 제공하는 기능을 제어해주는 인터페이스 응용 프로그램을 만드는데 사용하는 연결 장치 또는 매개체 ex) 내 ---/map/위도&경도 --------> 구글 지도 프로젝트

1 2