본문 바로가기
728x90
반응형

2019/0518

프로미스 프로미스란? 자바스크립트 비동기 처리에 사용되는 객체 특정 코드의 실행이 완료될 때까지 기다리지 않고 다음 코드를 먼저 수행하는 자바스크립트의 특성 동기/비동기 동기(synchronous) : 하나가 끝나면 다음 코드가 실행되는 방식 비동기(asynchronous) : 해야할 일을 위임하고 기다리는 방식 setTimeout 지정된 시간 뒤에 원하는 함수를 실행시키는 콜백 함수 setTimeout(()=> { console.log("yes"); },5000); 자바스크립트는 싱글스레드이기 때문에 만약 setTimeout함수가 스레드를 점유하고 있게 되면 이 어플은 5초 동안 아무 동작도 하지 않는 idle 상태가 된다. 따라서 프로미스가 필요하다. 콜백 함수란? 나중에 호출되는 함수 어떤 이벤트가 발생했거.. 2019. 5. 4.
디자인 패턴 생성 패턴: 객체의 생성방식을 결정하는 패턴 싱글턴 패턴 - 하나의 인스턴스만 생성해서 공유사용 행동 패턴: 객체의 행위를 조직, 관리, 연합하는데 사용하는 패턴 옵저버 패턴 - 상태 변화를 통보 받는 구조 ( 이벤트 핸들러 구조 ) 객체의 상태 변화를 관찰하는 관찰자들, 즉 옵저버들의 목록을 객체에 등록하여 상태 변화가 있을 때마다 메서드 등을 통해 객체가 직접 목록의 각 옵저버에게 통지하도록 하는 디자인 패턴 2019. 5. 4.
운영 체제 운영체제란? "자원 관리자" 물리적인 자원을 가상화 시켜서 더 효율적으로 자원을 관리할 수 있도록 해주는 시스템 운영체제의 역할 프로그램을 실행하기 쉽게 만든다. 시스템을 올바르고 효율적이게 작동하도록 관리한다. 스케쥴링이란? 여러 프로세스가 있고, 이 프로세스들이 자원을 동시에 요구하는데 자원은 한정되어있다. 제한된 자원들을 어떻게 나눠줄 것인지에 대한 정책 스케쥴링 종류 FIFO(First In, First Out) : 먼저 들어온 프로세스를 먼저 스케줄, 비선점형 스케줄링 SJF(Shortest Job First) : 들어온 프로세스 중 가장 짧은 프로세스를 스케줄, 비선점형 스케줄링 STCF(Shortest Time to Completion First) : SJF의 단점을 보완한 스케줄, 선점형 .. 2019. 5. 3.
BFS와 DFS 너비 우선 탐색(BFS , Breadth-First Search) 루트 노드(혹은 다른 임의의 노드)에서 시작해서 인접한 노드를 먼저 탐색하는 방법 사용하는 경우 : 두 노드 사이의 최단 경로 혹은 임의의 경로를 찾고 싶을 때 선택 ex) A,B사이에 존재하는 경로를 찾는 경우, A에서 가까운 곳 부터 탐색 그래프 탐색의 경우, 어떤 노드를 방문했었는지 여부를 반드시 검사해야 한다. -> 이를 검사하지 않을 경우, 무한루프에 빠질 위험이 있다. BFS는 방문한 노드들을 차례로 저장한 후 꺼낼 수 있는 자료구조인 큐를 사용한다. ->프림과 다익스트라 알고리즘과 유사하다. BFS(G,k) q.push(G.root) root.visit = true while !q.isEmpty() node r = q.fron.. 2019. 5. 2.
728x90
반응형