전체 글

웹개발을 babystep만큼 사부작거리는 사람
보호되어 있는 글입니다.
cocoa-room.tistory.com/8?category=731760 모두의 네트워크 스터디 10일만에 읽는 책이지만 나는 속도가느리니깐 아래 일정처럼 느긋하게 목표로 읽고 정리시작. 전체 목표 : 모두의 네트워크 책을 읽고 정리 월금 : 책읽기 토일: 복습과 포스팅( 매일 매일 포스팅 cocoa-room.tistory.com
[ 4차시 21-01-08 금요일 ] [필기- 소프트웨어설계] 요구사항 확인 C 요구사항 요구사항의 개념 -// 요구사항에 대한 설명, 요구사항의 제약조건들, 유지보수 과정에서 필요한 기준과 근거를 제공해준다. 요구사항으로 개발하고자하는 전반적인 소프트웨어내용을 확인할수있게해주기에 개발자들간에 의사소통을 원활하게 해준다. 요구사항이 제대로 돼 있어야 개발하는데 불편할 수 있다. 어떤문제를 해결하기위한 서비스에 대한 설명 요구사항의 유형 기술하는 내용에 따라 //기능 요구사항 / 비 기능 요구사항으로 나뉜다. //기능요구사항 : 시스템이 무엇을 하는가 이시스템이 어떤기능을 하는가 사용자는 시스템을 통해서 무엇을 제공받기를 원하는가 //비기능 요구사항 : 장비(소프트웨어 , 하드웨어) , 성능, 인터페이스 ..
[ 3차시 21-01-05 화요일 ] [필기- 소프트웨어설계] 요구사항 확인 B 요구사항 확인 요구사항 확인 분석모델에 대해 확인하고 현행 시스템에 대해 분석 요구사항을 보고 SW개발을 한다. 요구사항은 모두 문서화를 할것이고 요구사항을 분석하기위한 모델이 있을것이고 요구사항 분석 모델을 확인하고 현행 시스템을 분석한다. 현행 시스템 분석 지식 산업분야 플랫폼 프로젝트 환경 플랫폼 기능 , 플랫폼 성능 가상화 클라우드 기술 환경분석 //내부 외부 환경분석 운영체제 // 구성과 관리하는법 저장장치 // 구성과 관리하는법 네트워크 // 관리하는법 DBMS // 기술 가상화 // 기술 // 현행시스템분석이 필요한 이유 개발하고자하는 SW가 현재 시스템에 잘 동작하기 위해서는 소프트웨어에 대한 이해가 필요 현행..
[필기- 소프트웨어설계] 요구사항확인 A 제 1과목 소프트웨어 설계 요구사항 확인 소프트웨어 생명주기 폭포수형 모형 프로토 타입 모형 나선형 모형 애자일 소프트웨어 생명주기가 꼭 필요한가? 하는 이유: 비용산정 개발계획의 밑받침 골격제공해서 편하다 표준화를 가능하게 한다. 프로젝트 관리를 용이하게 해준다. 폭포수형 모형 폭포수 모델을 따르기 위해서는 완전히 순차적으로 한 단계, 한 단계를 진행해 나가야한다. 폭포수 모델은 전 단계가 수행되어 완료되기 전에는 다음 단계로 진행할 수 없도록 제한한다. -> 계획 -> 요구 분석 - 설계 -> 구현 -> 테스트 -> 유지보수 계획 : 타당성이 있는지 확인하는 과정 , 비용 자원 기간 산정 요구 분석 : 의뢰한 사람들이 요구한걸 문서화하는 과정 설계 : 프로그램..
2021년을 맞아서 자격증을 따고 싶어서 인강을 듣기시작했다. 경기도에서 제공하는 무료 인강이 있어서 들어보려고 한다. https://www.dream.go.kr/dream/lectureRoom/goLectureRoom.do?menuSeq=226&courseSeq=11092&trnTypeCd=TT001&trainingReqSeq=100240179 로그인 - 온라인취업지원서비스 꿈날개 로그인 중입니다 잠시만 기다려주세요. www.dream.go.kr 여기서 온라인 강의에 들어가서 자격증을 선택후 정보처리기사를 선택하면 인강을 들을 수 있다. 그리고 강사님 말하시는 속도가 좀 느리신데 크롬 확장프로그램써서 1.5배속으로 보면된다. chrome.google.com/webstore/detail/video-spe..
멀티 플렉싱 서버의 구현 지금 까지 익혀온 select 함수의 사용법을 바탕으로 멀티 플렉싱 서버를 구현할 차례이다. 다음예제는 멀티플렉싱 기반의 에코 서버이다. echo_selectserv.c #include #include #include #include #include #include #include #include #define BUF_SIZE 100 void error_handling(const char *buf); int main(int argc, char *argv[]) { int serv_sock, clnt_sock; struct sockaddr_in serv_adr, clnt_adr; struct timeval timeout; fd_set reads, cpy_reads; socklen_t..
최종 select 함수를 호출하는 예제의 확인 select.c #include #include #include #include #define BUF_SIZE 30 int main(int argc, char argv[]) { fd_set reads, temps; int result, str_len; char buf[BUF_SIZE]; struct timeval timeout; // 14 // 다소 복잡해 보이지만 아주 쉬운 예제다 일단 이 라인에서 fd_set형 변수를 // 초기화하고 아래에서 파일 디스크립터 0의 위치를 1로 설정해 주고 있다. // 즉 표준 입력에 변화가 있는지 관심을 두고 보겠다는 뜻이다. FD_ZERO(&reads); FD_SET(0, &reads); // 0 is standard ..
검사(관찰)의 범위지정과 타임아웃의 설정 select함수 #include #include int select( int maxfd, fd_set *readset, fd_set *writeset, fd_set *exceptset, const struct timeval *timeout); -> 성공시 0 이상 실패시 -1 반환 maxfd : 검사 대상이되는 파일 디스크립터의 수 readset : fd_set형 변수에 "수신된 데이터의 존재여부"에 관심 있는 파일 디스크립터 정보를 모두 등록해서 그 변수의 주소 값을 전달한다 . writeset : fd_set형 변수에 "블로킹 없는 데이터 전송의 가능여부"에 관심있는 파일 디스크립터 정보를 모두 등록해서 그 변수의 주소값을 전달한다. exceptset : fd..
12 IO 멀티플렉싱(Multiplexing) 12-1 IO멀티 플렉싱 기반의 서버 멀티프로세스 서버의 단점과 대안 이전 Chapter에서는 다중접속 서버의 구현을 위해서 클라이언트의 연결 요청이 있을 때마다 새로운 프로세스를 생성하였다. 이는 실제 사용되는 방법이지만 문제가 전혀 없는 방법은 아니다 프로세스의 생성에는 상당히 많은 대가를 지불해야 하기 때문이다. 많은 양의 연산이 요구되며 필요한 메모리 공간도 비교적 큰 편이다. 또한 프로세스마다 별도의 메모리 공간을 유지하기 때문에 상호간에 데이터를 주고받으려면 다소 복잡한 방법을 택할 수 밖에 없다(IPC는 다소 복잡한 통신방법이다) ᅟIPC가 필요한 상황에서는 프로그래밍하기가 상대적으로 까다로워진다는 것을 여러분도느끼지 않았는가? " 그렇다면 대안..