목록전체 글 (164)
개발의변화

인터넷 - 유닉스 운영체제를 기반으로 여러 개의 네트워크들이 서로 유기적으로 결합되어 있는 하나의 거대한 네트워크 - TCP/IP 프로토콜을 사용하여 상호 접속하는 네트워크 - 클라이언트/서버 형태의 시스템을 기반으로 한다 - 인터넷 기술에 있어 인트라넷과 엑스트라넷 역시 TCP/IP 프로토콜을 사용한다. 인터넷 접속 방식 - SLIP(Serial Line Internet Protocol): PPP에 비해 오류 검출, 압축 기능과 링크 설정/절단 기능이 없고 IP 이오의 프로토콜에 대응되어 있지 않는 등의 문제점, 현재 PPP가 주류 - PPP(Point-to-Point-Protocol): 두 대의 컴퓨터가 직렬 인터페이스를 이용하여 통신을 할 떄 필요한 프로토콜, 특히 전화회선 통해 PC에 자주 사용된..

반이중 통신(Half Duplex Mode): 양방향으로 데이터가 전송될 수는 있으나 동시에 전송하는 것은 불가능한 방식이다. 비동기식 전송 방식: 긴 데이터 비트열을 연손적으로 전송하는 대신 한 번에 한 문자씩 전송한다. 문자 단위의 재동기를 위하여 맨 앞에 한 문자의 시작을 알리는 시작비트, 맨 뒤에 한 문자의 종료를 표시하는 정지비트를 둔다. 동기식 전송 송수신측이 동일한 클럭(clock)을 사용하여 데이터를 송수신하는 바식 전송할 데이터를 블록으로 구성하여 시작비트나 정지비트없이 전송 아날로그 신호를 디지털 신호로 변조하기 위한 펄스부호변조(PCM)과정 1.표본화: 연속적인 아날로그 신호를 입력 -> 불연속적인 진폭을 갖는 펄스 신호 생성 2.양자화: 표본화 단계로부터 추출된 펄스를 정량화하여 한..
SDLC: 정보 시스템을 개발하는 절차, 개발 단계의 반복현상 계획-분석-설계-구현-시험-유지보수 소프트웨어 생명주기 모형 폭포수 모형(Waterfall Model) - 프로세스에 체계쩍인 원리를 도입하는 방법론 - 단계별 정의 산축물이 명확 즉, 각 단계가 끝난 후 결과물이 명확히 나와야 하낟. - 구현은 시스템을 충분히 이해한 후에 작업을 해야 하는 점 단점: 병행되어 진행되거나 다시 거슬러 올라갈 수 없으며, 반복을 허용하지 않는다. 처음부터 사용자들의 모든 요구사항들을 명확히 설명하는 것은 어렵다 모든 분석은 프로젝트 시작되기 전에 완성해야 한다. 개발과저 중 시간 지연 및 새로운 요구 반영 X 장점: 응용 분야가 단순하거나 내용을 잘 알고 있는 경우 적용 비전문가 사용할 소규모 시스템을 개발하는..

Solaris: 선 마이크로시스템즈사의 유닉스 운용 체계 버전으로 주로 웹 서버용으로 많이 사용 하드웨어 -> 운영체제 -> 응용 프로그램 -> 사용자 커널: 컴퓨터가 가동중인 상태에서 주기억장치에 상주하면서 컴퓨터 하드웨어를 제어하고 프로세스 등 여러 자원을 배분하고 관리하는 핵심 역할 프로세스 종류 1. 운영체제 프로세스: 프로세스 실행 순서를 제어하거나 사용하고 있는 프로세스가 다른 사용자나 운영체제 영역을 침범하지 못하게 감시하는 기능을 가짐 2. 사용자 프로세스: 사용자 코드를 수행한다. 3. 병행 프로세스: 프로세스 여러 개가 동시에 실행되면 병행 프로세스 프로세스 상태: 생성 상태: 사용자가 요청한 작업이 커널에 등록되어 커널 공간에 PCB가 만들어진 상태 준비 상태: 입출력 완료 또는 신호..

운영체제 분류 단일 작업용 운영체제: 한 번에 하나의 프로그램만 실행시킬 수 있는 운영체제 다중작업 운영체제: MS 윈도우나 유닉스 환경에서는 하나의 프로그램이 끝나기 전에 다른 프로그램을 실행시키는 것이 가능하다. -> CPU가 하나밖에 없어 매 순간 하나의 프로그램만 CPU에서 실행될 수 있더라도 번갈아 실행되므로 동시에 작업이 되는 같음 -> 이런 걸 시분할 시스템 다중 프로그래밍 시스템: CPU와 달리 메모리의 경우 여러 프로그램들이 조금씩 메모리 공간을 보유하며 동시에 메모리에 올라가 있을 수 있다. 메모리 공간을 분할해 여러 프로그램들을 동시에 메모리에 올려놓고 처리 다중처리기 시스템: 하나의 컴퓨터 안에 CPU가 여러 개 설치된 경우를 뜻함 주변장치 및 입출려 장치는 CPU나 메모리와 달리 ..

오늘은 Swagger를 설정하려고 했다... 당연히 구글링을 통해 블로그를 보니 properties와 build.gradle을 바꾸고 SwaggerConfiguration (필요도 없었지만) 코드를 복붙하면 쉽게 된다하길래 그대로 했더니 해당 swagger에 대한 import가 되지 않았다. 그래서 이제 삽질은 더 깊게 들어가면서 찾아보니 SpringBoot 3.0이상 부터는 SpringFox가 Swagger를 제대로 지원하지 않는다는 것을 깨달았다. (??) 그래서 다시 implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.2' bulid.gradle에 springdoc을 추가해주고 실행을 하니 /swagger/index.html이..
자바스크립트 역사 자바스크립트는 빠르게 시장 반응을 확인할 수 있는 프로토타입 언어로 출시되어 10일 만에 개발되었다. ->넷스케이프 브라우저에 새로운 기능을 빠르게 늘리면서 추가된 기능은 각자의 브라우저에만 동작했고 특히 각기 다른 브라우저에서 동작하지 않는 크로스 브라우징 이슈가 발생함 결국, 자바스크립트의 변화를 브라우저가 버티지 못했고 이에 따라 폴리필과 트랜스파일 같은 개념이 등장했다. polyfill: 브라우저가 지원하지 않는 코드를 브라우저에서 사용할 수 있도록 변환한 코드조각이나 플러그인을 말한다. -> cores.js, polyfill.io transfile: 최신 버전의 코드를 예전 버전의 코드로 변환하는 과정 -> 바벨 크로스 브라우징을 해결하기 위해 Ecma 인터네셔널에 자바스크립트..
주로 정리할 내용은 다음과 같다 클라이언트와 서버에서의 라우팅 시스템 작동 방식 페이지 간 이동 최적화 Next.js가 정적 자원을 제공하는 방법 자동 이미지 최적화와 새로운 Image 컴포넌트를 사용한 이미지 제공 최적화 기법 컴포넌트에서 HTML 메타데이터 처리 _app.js와 document.js 파일 내용 및 커스터마이징 방법 라우팅 시스템 React의 React Router라이브러리와의 차이는 React 라우팅 시스템은 클라이언트에서의 라우팅만 구현할 수 있다. 모든 페이지가 클라이언트에서만 만들어지고 렌더링 되기에 SSR렌더링은 개입하지 않는다. Next.js는 파일시스템 기반 페이지와 라우팅을 사용 Next.js는 기본적으로 pages/ 디렉터리를 가지고 있다. 이 디렉터리 안의 모든 파일은..