분류 전체보기274 [10주 차] - 프로그램의 오류와 예외 처리(Exception handling), 서버와 클라이언트(Server & Client), 포트의 개념, 로컬 환경에서 서버 구성하기 과목명 : 웹 서버 프로그래밍(Web Server-side programming with Node.js) 수업일자 : 2023년 05월 04일 (목) 1. 예외 처리(Exception handling) 1-1. 오류와 예외는 비슷해 보이는데 어떤 차이점이 있을까? (1) 오류(Error)는 개발자가 잘못 작성한 구문으로 인한 문법 오류(Syntax error)와 문법상 문제가 없더라도 프로그램이 수행되는 과정에서 예상하지 못한 오류가 발생하여 실행 중인 *프로세스가 중지되는 것을 말합니다. * 프로세스(Process) : 프로그램이 실제 메모리로 로드되어 실행되고 있는 프로그램의 독립적인 인스턴스 (2) 이러한 오류들은 운영체제 레벨에서 치명적인 범주로 다루고 있고 개발자가 미리 예측하여 이러한 오류의 .. 2023. 5. 8. [VSCode] - 단축키, 환경 설정, 플러그인 정리 - 현재 Java 개발로는 IntelliJ IDEA, JavaScript 개발은 VSCode를 사용하고 있습니다. - VSCode를 사용하면서 유용한 단축키 및 환경설정, 플러그인(Plug-in)들은 이후 로컬 환경이 변했을 때도 그대로 유지 및 기억해 두기 위해 따로 정리하고자 합니다. - 해당 포스팅은 현재 Windows 기준으로 작성되었습니다. 1. 환경 설정(Environment settings) 1-1. Editor : Wordwrap Off (1) Wordwrap 속성을 끄게 되면 코드 라인이 스크롤을 넘어 길어지더라도 한 화면에 모두 표시되지 않고 스크롤을 움직여야 볼 수 있습니다. (2) 디폴트 값으로는 해당 속성이 OFF로 되어 있지만 모든 화면에서 소스 코드 라인 전체를 보고 싶으시다면.. 2023. 5. 2. 백엔드 엔지니어링 : Back-end(Server-side) Engineering 2023.03.07(Tue) 백엔드 엔지니어링에 대한 평소 가지고 있었던 생각, 공부했던 내용들을 포스팅으로 정리해 보고자 합니다. 1. 백엔드 엔지니어링(Back-end Engineering)이란 무엇인가? - 웹 개발 분야 중 하나로써 간단히 정의해 보자면, 도메인(Domain)을 위해 서버의 데이터베이스 및 비즈니스 로직, 이들을 제공하기 위한 API를 설계하고 개발, 운영하는 전반적인 기술을 의미합니다. 사람마다 조금씩 다르게 정의할 수도 있지만 대부분 아래와 정의해 주시는 분들을 많이 봤습니다. (1) 웹 또는 앱에서 사용자가 시각적으로 볼 수 없는 서버 사이드, 데이터베이스를 관리하는 전반적인 기술 (2) 사용자로부터 들어온 요청에 대해 이에 맞는 응답을 반환할 수 있는 비즈니스 로직을 개발하.. 2023. 5. 1. [9주 차] - Node의 fs 모듈 (Stream, 디렉토리와 파일 생성 및 수정, 삭제, fs.copyFile() 메소드), Buffer 모듈 활용, 이벤트 생성과 호출 과목명 : 웹 서버 프로그래밍(Web Server-side programming with Node.js) 수업일자 : 2023년 04월 27일 (목) 1. Module : fs - 동기식 메소드(Synchronous method), 비동기식 메소드(Asynchronous method) 1-1. Node는 대부분의 내장된 모듈 메소드를 비동기 방식으로 처리 (1) 비동기(Asynchronous) 방식의 경우 코드 라인의 순서와 코드의 실행 순서가 일치하지 않는 것을 의미하기도 합니다. (2) 일부 메소드들은 동기식(Synchronous) 방식으로도 사용할 수 있습니다. (3) fs 모듈의 메소드를 사용하기 때문에 require('fs') 함수를 호출합니다. (4) 아래의 코드 예제로 fs 모듈의 비동기식 .. 2023. 4. 29. [8주 차] - Memory Management, Virtual memory management techniques : Segmentation and Paging 과목명 : 운영체제(Operating System) 수업일자 : 2023년 04월 26일 (수) 1. To run Programs? 1-1. 프로그램이 실행되는 과정 (1) 사용자가 응용 프로그램을 실행합니다. (2) 로컬 환경의 물리 저장소(HDD 또는 SSD)의 실행 파일을 탐색합니다. (3) Loader program은 실행 파일의 내용을 분석하여 text, data, heap, stack 영역을 프로세스의 가상 공간에 배치합니다. (4) MMU(Memory Management Unit)에 의해 가상 공간으로 배치된 요소들은 Physical memory의 일정 공간을 할당받아 점유하게 됩니다. - 운영체제는 자료구조를 통해 이러한 정보를 관리하게 됩니다. - Page Directory Table(P.. 2023. 4. 27. [7주 차] - Process Management (2) 과목명 : 운영체제(Operating System) 수업일자 : 2023년 04월 19일 (수) 1. Process vs Thread 1-1. Process (1) 각각의 프로세스는 프로그램을 실행하는 데 필요한 리소스를 제공하며, 메모리에 로드되어 운영체제로부터 자원을 할당받은 작업의 단위를 의미합니다. (2) 프로세스는 가상 주소 공간, 실행 가능한 코드, 시스템 오브젝트에 대한 Open handle, 보안 코드의 컨텍스트, 고유한 프로세스 식별자, 환경 변수, 우선 순위 클래스, 최소 및 최대 작업의 Set, 최소 하나의 실행 가능한 스레드를 보유하고 있습니다. (3) 이러한 프로세스는 기본적인 protection 단위로써 서로 완전히 분리되어 동작합니다. (4) 프로세스는 별도의 주소 공간을 보유.. 2023. 4. 25. 이전 1 ··· 19 20 21 22 23 24 25 ··· 46 다음