전체 글 137

[컴퓨터 네트워크] Chapter4. Network Layer (1)

Intro Application Layer, Transport Layer을 배우고나서 Network Layer까지 왔다 ! 이 챕터에서는 네트워크 서비스에 있는 원리들을 배울 것이다. 바로 data plane과 control plane: - 네트워크 레이어와 서비스모델 - 포워딩 (forwardong) vs 라우팅(routing) - router가 작동하는 방법 - Generalized forwarding - SDN controllers - Internet Control Message Protocol(ICMP) - 네트워크 관리 Instantitaion, implementation in the Internet : 인터넷에서의 구현, 실체화 Network Layer : 네트워크 계층 -sending hos..

[⚠️ Error] Cannot read properties of null (reading 'edgesOut')

리액트에서 styled-components를 설치하기 위해 npm i install styled-components 명령어를 사용했다! 계속되는 Cannot read properties of null (reading 'edgesOut') 에러코드 .. log파일에 들어가봐도 똑같은 말 반복 1. 이 오류는 npm 캐시에 있는 일부 데이터가 손상되어 발생할 수 있는데, 이 경우 다음과 같은 명령어를 사용해서 npm 캐시를 강제로 지울 수 있다. npm cache clean --force 이 방법으로 시도해보니 음 .. 오류 하나는 줄어들었지만 어쨌든 해결되지 않았다 (아마 캐시 문제 + 다른 문제가 있지 않았을까 싶다) 2. 캐시, 노드 모듈 등을 삭제하고 다시 설치하기를 반복하다가 방법을 찾았다.. 찾은..

[컴퓨터 네트워크] 3.4 (1) principles of reliable data transfer

Transport layer에서 가장 중요한 역할은 end-to-end 통신의 신뢰성을 확보하는 것이다. 그럼 데이터를 어떻게 reliable하게 보낼까 ?에 관한 고민이 담긴 것이 바로 이 챕터이다. 3.4는 아주아주 .. 방대하고 ... 어렵고 양이 많은 챕터이다 (학생인 나는 죽어난다 ㅜㅜ ~ ) 조금 더 자세하지만 이해하기 쉽게 천천히 다루어보겠다 ! 1. principles of reliable data transfer application layer입장에서는 보내기만 하면 reliable이 보장 된다고 생각한다. → transport layer에서는 reliable을 보장해주어야한다. (3장 포스팅마다 쓰는 것 같다 .. ) 신뢰성있는 데이터 전송 프로토콜을 구현할 때, 통신 채널의 신뢰성 여..

[소프트웨어공학] Chapter 3. 소프트웨어 프로세스

거의 다 적었었는데 내용이 날라갔습니다.. 이번 포스팅 길다 생각했는데 이게 날라갈 줄이야 ~ 더 잘 적으라는 뜻으로 알고 다시 공부해서 적어봅니다 .. 。゚(゚´ω`゚)゚。 우리는 이전까지 소프트웨어 개발 과정에 있어서 5가지 접근 단계를 알아보았고 그 중 특히나 '프로세스 단계'에 대해서 자세히 알아보았다! 프로세스 중에서도 프레임워크 활동 ' 대화 - 계획 - 모델링 - 구현 - 설치 '과정에 대해서 알아보았는데 ... 과연 모든 프로세스가 이 과정을 순서대로 따라만할까? 이 물음에 대한 해답을 찾아보자 ! 그러기 위해서는 프로세스 모델이 등장한다. 프로세스가 돌아가는 다양한 방식에 대한 모델이 존재한다는 것이다. 프로세스 모델 프로세스 모델은 각 요소들을 서로 연결하여 일련의 소프트웨어 개발 프..

[React Native] 맥 OS 개발환경 설정중 발생한 오류

react-native를 설치해서 사용할 수 있는 방법은 크게 react-native-cli를 설치하거나 expo-cli를 설치하는 것인데 expo 설치는 처음이 쉽지만 여러가지 제약이 있어 불편한 점이 있다. 따라서 react-native-cli를 설치해서 사용했다. 이 자식은 처음 설치가 굉장히 굉장히 복잡하고 .. 번거롭다 . 1. homebrew 설치 2. rbenv 설치 3. node.js 설치 4. watchman 설치 5. react-native-cli설치 6. xcode 설치 7. cocoapods 설치 8. jdk설치 9. 안드로이드 스튜디오 설치 이렇게 9개를 설치했는데 오류가 많이 떴다 컴퓨터를 Expo로 갈아타고 싶었으나 .. 어찌저찌 해냈다 .. 휴 ~ 설치과정은 프로젝트가 끝나면..

FE/React 2023.04.22

[소프트웨어공학] Chapter 6. 요구사항 개념

요구공학 요구공학이란 문제의 요구사항들을 이해하는 것 소프트웨어 엔지니어가 직면한 더 어려운 문제 RE: Requirement engineering → 커뮤니케이션 활동으로부터 모델링 활동까지 → 디자인과 구현을 이어주는 다리 요구공학의 Task ✅ customer가 무엇을 원하는지 ✅ needs를 분석 ✅ feasibility(실행할 수 있음)을 평가 ✅ 합리적인 접근법을 중재 ✅ 문제를 정확하게 명시화 ( → 모델링 ! ) ✅ specification 유효성 검증 ✅ 요구사항이 제대로 반영되어서 구현되었는지 관리 요구공학 단계 Inception(착수) - Elicitation(추출) - Elaboration(상세) - Negotiation(협상) - Specification(명세) - Validati..

[소프트웨어공학] Chapter2-2. 소프트웨어 공학 개요(2)

chapter 2에서는 소프트웨어공학에 관해 다룬다. 즉, 우리가 3,4 .. 장에서 차차 배워갈 내용을 쭉 다룬다. 소프트웨어의 정의와 역할과 진화 그리고 이 소프트웨어의 문제점, 응용분야를 다루어봤고 이번 포스팅에서는 소프트웨어공학을 단계별로 접근하는 방식에 관해 배운다. 우선 소프트웨어 공학의 정의부터 다시 상기시켜보자 ! 소프트웨어 공학, Software enginerring 소프트웨어 공학이란 신뢰성있고 실제 기계에서 효율적으로 작동하는 소프트웨어를 경제적으로 구현하고 사용하기 위해 건전한 공학 원칙을 수립하고 적용하는 것을 의미한다. 이 때 공학 원칙이란 앞서 말한 오류가 없고 효율적이라는 뜻을 내포하고 있다. 1) 소프트웨어 개발, 운영 및 유지보수에 체계적이고 집중된, 측정 가능한 방법론을..

[운영체제/OS] 2. OS의 역사

운영체제가 어떻게 개발되었고 어떤 문제점을 거쳐 현재의 모습으로 자리 잡았는가에 대한 장이었다. Phase 0 - 하드웨어는 매우 비싼 experiment; 운영체제가 존재하지 않는 단계 1. One user at console : 한명의 콘솔 사용자 - 한 번에 하나의 기능 ( 연산, I/O, 사용자 생각/응답 ) - 카드 덱을 통해 프로그램 로드: I/O 장치 드라이버 라이브러리 - 사용자는 콘솔에서 디버그 수행 Phase 1- 하드웨어는 비싸고 인간은 싸다 2. 간단한 배치 처리 : 프로그램을 로드하고 실행한 후 결과를 출력하고 삭제한 다음 반복한다. - 사용자는 (카드나 테이프로 된) 프로그램을 운영자에게 제공하고 작업을 예약한다. - Resident 모니터가 자동으로 사용자 작업을 로드, 실행,..

[알고리즘/Python] CCW 알고리즘 : 벡터의 외적

CCW 알고리즘이란 ? Counter Clockwise의 약자로 세 점의 방향성을 구하는 알고리즘이다! 즉, 평면상에 존재하는 세 점에 대해서 위치 관계를 알 수 있는 알고리즘임 ~ 결론만 먼저 말해보자면 세 점 A(x1,y1), B(x2, y2), C(x3, y3)이 주어졌을 때 , 점 A,B,C를 순서대로 봤을 때 반시계 방향이면 양수를, 시계 방향이면 음수를, 직선상에 있으면 0을 반환한다. CCW 공식 : (Bx-Ax) * (Cy-Ay) - (Cx-Ax) * (By-Ay) 벡터의 외적(Cross product) CCW 알고리즘에 관한 증명 기하 알고리즘에서 필수적으로 알아야한다는 기초적인 개념인 외적, 열심히 배워보고 까먹지 않도록 하자 ~ 이 경우에서 점 C는 선분 AB의 반시계방향에 위치하고 ..

[알고리즘] 2023.04.11

[컴퓨터 네트워크] 3.3 connectionless transport : UDP

현재 우리는 Trasnport layer에 대해 알아보고 있다. 3장에서 주구장창 말하겠지만 Transpor tlayer은 ent-to-end 에서 데이터 전송의 신뢰성을 제공한다는 것이다. 소켓을 통하여 신뢰성을 보장하는 계층이다. UDP, TCP 프로토콜을 주로 사용하여 UDP, TCP에 대한 설명을 자세히 해보려한다. 이번 포스팅에서는 연결비지향성 UDP에 대해 배워볼 것이다. 여러번 반복해서 나온 내용이니 빨리 짚고 넘어가보겠다. UDP : User Datagram Protocol [RFC 768] no frills, bare bones Internet transport protocol : 아무런 장식없고 필수적인 것만을 갖춘 프로토콜 best effort 서비스 : ** 네트워크에서 데이터를 전..