목록전체 글 (221)
개발자꿈나무

프로세스 프로세스의 정의- 실행 중인 프로그램- 디스크에 저장되어 있던 실행 가능한 프로그램이 메모리에 적재되어 운영체제의 제어를 받는 상태로 해당 프로세스가 사용하고 있는 메모리 영역- 프로세스는 반드시 한 개의 PCB (Process Control Block) 와 연결- 비동기적 행위를 일으키는 주체- 운영체제에서 작업의 기본 단위- 실행 중인 프로시저- 디스패치가 가능한 대상프로세스의 일반적인 메모리 구조- 프로그램은 컴파일한 코드와 초기화 전역변수, 문자열과 문자열 상수 등 정적 데이터를 포함하는 정적 개체- 프로세스는 프로그램 카운터나 레지스터처럼 현재 어떤 자원을 사용하는지 관계 정보가 들어있는 동적 개체스택 (stack)- 데이터를 일시적으로 저장하는 영역- 지역변수, 호출한 함수의 반환 주..
디자인 패턴- 각 모듈의 세분화된 역할이나 모듈들 간의 인터페이스와 같은 코드를 작성하는 수준의 세부적인 구현 방안을 설계할 때 참조할 수 있는 전형적인 해결 방식 또는 예제- 디자인 패턴은 1995년 GoF(Gang of Four)에 의해 처음으로 구체화 및 체계화됨- 아키텍처 패턴과 디자인 패턴의 차이점은 아키텍처 패턴은 상위 수준의 설계에 사용되며 전체 시스템의 구조를 설계하기 위한 참조 모델이라면, 디자인 패턴은 서브시스템에 속하는 컴포넌트들과 그 관계를 설계하기 위한 참조 모델더보기Q. 소프트웨어 설계에서 자주 발생하는 문제에 대한 일반적이고 반복적인 해결 방법을 무엇이라고 하는가?1. 모듈 분해2. 디자인 패턴3. 연관 관계4. 클래스 도출 디자인 패턴 장점 / 단점- 범용적인 코딩 스타일로 ..
소프트웨어 아키텍처- 소프트웨어의 골격이 되는 기본 구조이자, 소프트웨어를 구성하는 요소들 간의 관계를 표현하는 시스템의 구조 또는 구조체- 소프트웨어 개발 시 적용되는 원칙과 지침이며, 이해 관계자들의 의사소통 도구로 활용- 이해하기 쉽고, 명확하게 작성이 되어야 함소프트웨어 아키텍처의 설계- 기본적으로 좋은 품질을 유지하면서 사용자의 비기능적 요구사항으로 나타난 제약을 반영하고, 기능적 요구사항을 구현하는 방법을 찾는 해결 과정- 애플리케이션의 분할 방법과 분할된 모듈에 할당될 기능, 모듈 간의 인터페이스 등을 결정* 기능 / 비기능적 요구사항 : 시스템이 갖춰야할 필수적인 기능에 대한 요구항목들을 기능적 요구사항, 그 외의 품질이나 제약사향에 관한 것을 비기능적 요구사항이라고 함소프트웨어 아키텍처 ..

서론컴퓨터 네트워킹 하향식 접근 책을 읽으면서 중간중간 실습문제들은 꼭 한번씩 공부를 하고 넘어가고자 한다. 그동안 시간이 없어서 우선순위를 뒤로 뒀던 해당 부분을 공부하고 정리해보려고 한다. 본론 와이어샤크 설치하기 와이어샤크는 쉽게 말해 패킷을 캡쳐하고 분석하는 오픈소스 프로그램이다. https://www.wireshark.org/#download Wireshark · Go DeepWireshark: The world's most popular network protocol analyzerwww.wireshark.org 위 링크를 통해 각 운영체제에 맞는 설치파일을 설치해주면 된다.프로그램을 설치해주면 아래와 같은 화면이 뜬다. Wi-Fi: en0을 더블클릭하면 아마 에러가 뜰 것이다. (나는 그..
서론기존 강의는 쇼핑몰 만들기 프로젝트인데 그저 강의를 보고 따라 치면서 똑같은 구조로 구성을 하기보다는 내 프로젝트를 진행하면서 강의를 함께 듣는게 낫다는 판단하에 쇼핑몰 프로젝트가 아닌 자판기 관리 프로젝트를 진행해보려고 한다. 예전에 포트폴리오 구상을 하면서 우연히 일본 자판기에 대해 생각을 하다가 친구가 제안해준 아이디어였는데 괜찮은 생각이었던 것 같아서 진행해보려고 한다. 디테일한 기능들은 추가하기 전에 기본적으로 자판기들의 재고 및 정보들, 그리고 재고가 떨어졌을 때 주문할 수 있는 큰 기능들부터 구현해보려고 한다. 이후에 추가적인 디테일을 넣을 생각이다. 본론일단 웹 페이지를 구상하려면 필수적인게 이미지 삽입인 것 같다. 오늘 중점적으로 배웠던 내용들은 이미지를 삽입하는 다양한 방법이다. ..

서론이제 리액트의 가장 기본이 되는 개념에 대한 설명은 끝났고 이제 본격적으로 쇼핑몰 프로젝트를 진행해볼 예정이다. 오늘은 프로젝트를 생성하고 리액트에서 부트스트랩을 사용하는 방법에 대해 배웠다. 본론 새로운 프로젝트 생성 리액트 폴더에서 터미널을 열고 리액트 프로젝트 생성 명령어를 입력해준다.npx create-react-app [프로젝트명] 이후 VScode를 통해 폴더를 열어주고 터미널을 열어 npm start를 눌러 제대로 프로젝트가 실행되는지 확인해본다. 깃허브에 새로운 레포지토리를 생성하여 프로젝트를 연결해주고 혼자 작업하지만 버전 관리를 더 효율적으로 하기위해 develop 브랜치를 하나 파서 develop 브랜치에서 작업을 진행할 것이다. 부트스트랩 이용하기 html, css를 하나하나..