- [ 데브코스/영상과제 ]셸 스크립팅 에센스 E01 - 셸. 커널. 터미널. (shell. kernel. terminal)2024-12-19 00:53:12https://youtu.be/9ZLSLi5a6Xw?si=ar49chswNlqSnalN 셸 Shell운영체체(커널)를 감싸는 껍데기운영체제의 서비스를 사용자나 응용프로그램에게 노출하드웨어와 커널이 직접 연결되어있고 셸이 감싸고 있다커널 kernel운영체제의 핵심하드웨어를 직접 제어운영체제로서 서비스를 제공사용자가 직접 통제 불가Exokernel처럼 응용 프로그램이 직접적으로 제어할 수 있게 열어주는 경우도 있으나 흔치않음커널은 사용자가 직접 통제할 수 없어 사용자와 응용프로그램은 셸을 통해 커널을 사용하게됨이때 사용자는 셸의 인터페이스를 통해 사용 셸 인터페이스GUl 그래픽 유저 인터페이스macOS finder, 윈도우 탐색기직관적이고 사용하기 쉽다CLI 커맨드 라인 인터페이스bash shell, zs..
- [ 데브코스/TIL ]스프링 부트 매개변수 이름 인식2024-12-17 16:52:49[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: java.lang.IllegalArgumentException: Name for argument of type [java.lang.String] not specified, and parameter name information not available via reflection. Ensure that the compiler uses the '-parameters' flag.] with root cause매개변수 바인딩이 안된다..@Request..
- [ 데브코스/영상과제 ]REST API가 뭔가요?2024-12-17 16:39:05https://youtu.be/iOueE9AXDQQ?si=UoDTcjnTEA_cXNUz REST API(Representational State Transfer)웹기반 애플리케이션과 서버 간에 데이터를 교환하기 위해 사용되는 아키텍처 스타일클라이언트-서버 구조에서 리소스를 효율적으로 관리하고 전송하는 데 중점을 두며 HTTP 프로토콜을 기반으로 구현과거 SOAP 형식을 대체 REST API와 SOAP의 차이점특징RESTSOAP프로토콜HTTP 기반HTTP, SMTP 등 다양한 프로토콜 지원데이터 포맷JSON, XML 등XML구조간단하고 가볍다복잡하고 무겁다유연성유연하고 다양한 표준 지원엄격한 규격 핵심 개념리소스REST에서 모든 정보를 리소스로 간주리소스는 고유한 URI(Uniform Resource I..
- [ 데브코스/영상과제 ]가장 쉽게 배우는 도커2024-12-16 16:40:54https://youtu.be/hWPv9LMlme8?si=oN_-jjiNDI1BctxFDockerfile도커파일은 이미지를 어떻게 구성하고 설정할지 명령어 형식으로 기술한 파일도커 이미지의 구성 요소와 환경을 정의한 스크립트 파일, 이를 통해 이미지를 자동으로 빌드FROM이미지 기반이 될 부모 이미지RUN컨테이너 내에서 실행할 명령어보통 패키지 설치나 설정 변경 등 수행COPY/ADD로컬시스템에 있는 파일이나 디렉토리를 도커 이미지 안으로 복사할 때 사용copy는 복사, add는 압축풀기, URL에서 파일 가져오기 등 추가 기능WORKDIR현재 작업 디렉토리를 설정CMD / ENTRYPOINT컨테이너가 실행될 때 실행할 기본 명령어 정의cmd는 기본 명령어만 지원 entrypoint는 실행될 명령을 고정..
- [ 데브코스/영상과제 ]도커가 뭐고 왜 쓰는건가요?2024-12-16 12:43:32https://youtu.be/tPjpcsgxgWc?si=Q6CuBS-hxcKqFPer 도커?컨테이너화기술을 활용한 오픈소스 플랫폼애플리케이션을 더 쉽게 배포, 실행, 확장할 수 있도록 도와주는 도구애플리케이션과 그 실행 환경을 일관되게 패키징다양한 환경에서 애플리케이션을 같은 방식으로 실행할 수 있도록 도와줌 도커는 기본적으로 컨테이너라는 가벼운 가상화 환경을 사용해 실행애플리케이션과 그에 필요한 모든 환경(라이브러리, 설정 파일 등)을 포함하고 있어 컨테이너가 실행되는 환경이 무엇이든 애플리케이션이 동일한 방식으로 실행 도커 구성 요소도커 엔진도커 컨테이너를 관리하고 실행하는 기본적인 엔진, 호스트 OS위에서 도커 컨테이너를 실행하고 관리도커 이미지애플리케이션과 그 의존성을 포함한 읽기 전용 템플릿 ..
- [ 데브코스/영상과제 ]가장 쉬운 리눅스 강좌2024-12-16 11:37:33https://youtu.be/tPWBF13JIVk?si=tYLyutw1zCLw72fe 1. 리눅스리눅스는 개발자 친화적인 운영체제시스템을 커스터마이징 할 수 있고 필요에 의해 최적화된 환경을 만들 수 있음윈도우, 맥OS, 모바일 안드로이드, iOS 등은 일반 사용자 end-user 대상으로 만든 운영체제, 시스템 변경 없이 주어진 GUI(Graphic User Interface)를 이용해 사용 리눅스는 주로 CLI(Command Line Interface) 사용 2. 오픈소스리눅스는 오픈소스자신만의 운영체제를 만들거나 기존 운영체제에 기여할 수 있는 오픈소스임자유롭게 사용하고 수정이 가능리눅스를 필요에 따라 개조하고 발전시키면서 우분투, 민트, CentOS 등 같이 무수한 버전이 생성윈도우나 맥OS 같..
- [ 데브코스/영상과제 ]가비지 컬렉터가 뭐하는 건가요? (Feat. 메모리 관리)2024-12-06 08:38:50https://youtu.be/24f2-eJAeII?si=6s_nM0nzJ_bRJojn 메모리 관리가 필요한 이유컴퓨터의 메모리는 제한적으로 효율적으로 관리하지 않으면 프로그램 실행이 느려지거나 시스템이 멈출 수 있음여러 프로그램을 동시에 실행하려면 메모리 자원을 효과적으로 분배해야 함특히 장시간 실행되는 서버 프로그램에서는 메모리 관리가 필수 메모리 누수 Memory Leak사용하지 않는 메모리를 적절하게 해제하지 않으면 메모리 누수 발생메모리 누수가 누적되면 성능저하와 충돌 발생 메모리 관리 방식numanaged language 수동 메모리 관리C, C++ 같은 언어는 개발자가 메모리 할당과 해제를 직접 관리managed language 자동 메모리 관리자바, 파이썬과 같은 언어는 메모리 관리를 가비..
- [ 데브코스/영상과제 ]프로세스는 뭐고 스레드는 뭔가요?2024-12-05 14:58:21https://youtu.be/iks_Xb9DtTM?si=H-O7RXjMW4PKETm6 프로세스(Process)프로그램이 실행되고 있는 상태, 컴퓨터가 실행 중인 작업 단위프로세스는 독립적인 실행단위운영체제는 여러 프로세스를 동시에 실행(멀티태스킹) 가능운영체제가 자원을 할당각 프로세스는 자신의 고유 메모리 공간을 가짐 동시성 Concurrency여러 작업이 동시에 진행되는 것처럼 보이는 상태단일 CPU에서 시간을 분할하여 여러 작업을 번갈아 실행빠르게 작업을 전환하여 사용자는 동시에 실행되는 것처럼 느낌작업을 전환하는 과정 : 문맥 교환 context switching 병렬적 Parallelism여러 작업이 실제로 동시에 실행되는 상태멀티코어 CPU에서는 각 코어가 독립적으로 작업을 수행프로세스 하나에..
- [ 데브코스/영상과제 ]객체지향 프로그래밍이 뭔가요?2024-12-05 14:08:13https://youtu.be/vrhIxBWSJ04?si=3xnfoJgedN0OGaj1 객체지향프로그래밍 방식, 방법론데이터(속성)와 기능(메서드)을 캡슐화하여 객체로 모델링하는 방식현실 세계의 사물과 개념을 소프트웨어로 표현캡슐화, 상속, 다형성, 추상화를 주요 원칙으로 사용 객체데이터와 기능이 클래스로 캡슐화된 컴퓨터 자원의 묶음데이터 : 객체의 상태를 나타냄, 속성, 필드기능 : 객체가 수행할 동작, 메서드객체 생성 : 클래스라는 설계도를 기반으로 실제 사용 가능한 인스턴스를 생성 은닉성객체의 내부구조(필드와 메서드)는 외부로부터 숨기고 필요한 인터페이스만 공개내부필드는 private로 감춰놓고 외부에서 접근 가능한 메서드는 public으로 공개외부에서 직접 데이터에 접근하거나 수정하지 못하도록 보..
- [ 데브코스/영상과제 ]깃. 깃허브. 기초개념 잡아드림2024-12-05 12:32:53https://youtu.be/YFNQwo7iTNc?si=WEIW_uvyYke6aQC4Git 분산 버전 관리 시스템으로 소스 코드 변경 내역을 관리하고 협업을 효율적으로 지원모든 개발자는 로컬 컴퓨터에 프로젝트의 전체 히스토리를 저장하므로 네트워크 연결 없이도 작업 가능여러 사람이 동시에 작업할 수 있도록 브랜치와 병합 기능을 지원 GitHub깃을 기반으로 하는 클라우드 호스팅 서비스소스코드 저장소를 관리하고 개발자들이 협업할 수 있는 플랫폼을 제공소스코드를 클라우드에 저장하여 어디서나 접근 가능한 원격저장소(Remote Repository)가 있다 Git과 GitHub의 차이 GitGithub역할분산 버전 관리 도구Git을 기반으로 한 클라우드 호스팅 서비스설치 여부로컬에 설치하여 사용웹 기반 서비스로..
- [ 데브코스/영상과제 ]기본 개발용어 알아보기2024-12-05 08:42:35https://youtu.be/GYmuQJiPeM4?si=vFWtmrMyVAgNxS2R 디버그소프트웨어에 발생하는 문제의 원인을 찾는 것디버그는 배포와 대비되서 개발중인 상태를 의미오타나 문법적인 오류, 논리적 설계 문제, 코드가 실행 환경과 맞지 않거나 예상하지 못한 데이터 등으로 인해 발생특정 단계들마다 상태를 확인해서 오류 발생 요소를 찾아야 함 컴파일러와 인터프리터작성한 코드를 컴퓨터가 이해할 수 있는 기계어 혹은 중간 단계 언어로 번역미리 번역 → 컴파일 언어실행할 때마다 번역 → 인터프리터 언어 빌드소스코드, 라이브러리, 소프트웨어에 필요한 파일들을 출시하기 적합한 형태로 변형 또는 압축하는 것윈도우 .exe 처럼 파일 하나로 제공하거나 코드를 압축해 전체 크기를 줄이거나 코드 난독화컴파일 언..
- [ 데브코스/영상과제 ]웹과 인터넷 개념2024-12-05 01:10:33https://youtu.be/Pt5xkFPOPGs?si=87aszjrme0Fsj_2W 인터넷원거리 접속이나 파일 전송, 전자 메일 등 데이터 통신 서비스를 받을 수 있는 컴퓨터 네트워크 시스템 WWW(World Wide Web)하이퍼 텍스트와 멀티미디어를 통해 서비스를 이용할 수 있도록 구축사용자끼리 정보를 공유할 수 있는 공간인터넷 상의 다양한 정보를 효과적으로 검색할 수 있는 시스템 HTTP 프로토콜요청과 응답의 형태로 이루어진 웹 통신 규약 웹 서버와 클라이언트웹 서버 : 클라이언트의 요청을 처리하여 응답함클라이언트 : 웹 서버에 원하는 정보를 요청함클라이언트가 웹 서버에 html을 요청웹 서버는 응답하여 html을 클라이언트에게 전송클라이언트의 웹 브라우저는 html 파일을 해석하여 클라이언트..