본문 바로가기

자바스크립트4

[21JAN, 2021] Graph Graph(그래프) : 그래프는 연결관계를 표현할 수 있는 자료구조이다. 예를 들어 사회 연결망, 위치 데이터 등을 그래프를 통해 나타낼 수 있다. 페이스북 및 SNS에서 팔로우 등의 연결관계, 구글 맵과 같은 지도, 지하철 노선도에서 최단경로, 구글을 통해 웹페이지를 검색할 때 하이퍼링크를 통해 다른 사이트와 연결된 관계 등 다양한 연결관계를 그래프로 표현할 수 있다. 그럼 그래프를 그림으로 보면서 이해해보자! * Vertex(Node, 정점), * Edge(간선): 노드를 연결하는 선 * Degree(차수): 하나의 노드에 연결된 간선들의 수 * 방향그래프 => in-degree(진입 차수): 외부에서 오는 간선의 수, out-degree(진출 차수): 외부로 향하는 간선의 수 * 경로 길이: 경로를.. 2021. 1. 22.
[19JAN, 2021] Stack & Queue 개념정리 Stack과 Queue에 들어가기 앞서 자료구조에 대해 간단히 짚고 넘어가자! 자료구조(Data Structure)란? 자료구조라는 말을 이해하기 위해선 데이터 즉 자료란 무엇인지, 데이터 타입은 무엇인지를 알아야 원활하게 이해할 수 있을 것이다. 자료(Data)란, 문자, 숫자, 그림, 영상. 단어 등의 형태로 된 의미단위로 이 세상의 모든 것은 자료, 즉 데이터가 될 수 있다. 그리고 이 데이터들은 컴퓨터에 0과 1로 저장되어 있는데 이 데이터를 어떻게 해석하고 처리해야 할지 정의한 것이 데이터 타입이다. 데이터 타입은 우리가 앞서 많이 배웠듯 Primitive 타입과 Reference 타입이 있다. 이러한 데이터들을 더 효율적으로 저장하고 관리(사용)할지 정의한 것이 자료구조이다. 수많은 데이터를 .. 2021. 1. 19.
[17JAN, 2021]OOP2)Prototype in JavaScript. 자바스크립트는 Prototype 기반 언어이다. Class 기반의 언어에서는 Class 안의 내용을 기반으로 인스턴스를 생성하여 객체를 사용하지만 자바스크립트는 Class 가 존재하지 않는다. 그래서 자바스크립트는 프로토타입을 이용한다. 그럼 이 Prototype이 뭘까?! (ES6에서는 Class문법이 추가되었지만 자바스크립트가 클래스 기반의 언어로 바뀌었다는 것은 아니다.) 프로토타입에 대해 설명하기에 앞서 클래스와 인스턴스에 대한 개념을 한 줄로 정리하고 가고 싶다. 동기분들이 공유해준 블로그 중 하나에서 깔끔한 정리를 찾을 수 있었다. 객체(Object)는 소프트웨어 세계에 구현할 대상이고, 이를 구현하기 위한 설계도가 클래스(Class)이며, 이 설계도에 따라 소프트웨어 세계에 구현된 실체가 인.. 2021. 1. 17.
[14JAN, 2021] OOP1)What is Object-oriented Programming?! 객체 지향??!! 나처럼 프로그래밍을 처음 접한 사람들에게는 이 객체지향이라는 말이 생소하게 느껴질 것이다. 우리의 일상생활에서 쓰이지 않는 말이기 때문이다. 나는 프로그래밍을 접하기 전, 이 단어를 딱 들었을 때 '객체가 뭐길래 지향한다?? 지향이면 그래도 선호한다는 건데..?'이라는 생각을 했다. 그래서 이 객체 지향을 이해하는 데에는 우선 객체가 무엇인지 이해를 해야 객체지향도 이해할 수 있다고 생각한다. 객체(Object): 객체는 ''Thing', '어떤 것'으로 생각하면 조금 더 이해하기 쉽다. 그래서 객체는 사람이 될 수 있고, 자동차가 될 수도 있으며 컴퓨터, 책 등등 무엇이든 될 수도 있다. 클래스(Class): 그럼 자동차로 예를 들어보자. 자동차는 사람들이 이동할 때 타는 운송수단이다.. 2021. 1. 15.