분류 전체보기
-
[2019.04.06] 이머시브 6일차..고통스러운 목감기..핵인싸 개발자의 길/코드스테이츠 Immersive Course 2019. 4. 7. 14:35
어제 썼어야 했던 글을 지금 쓴다... 어제도 목감기는 나아질 생각이 없고 계속 기침과 가래가 나오며 숨 쉬기도 힘들정도였다. 더군다나 몸에 열도 올라서 해야 될 일을 못하고 의욕이 떨어졌다...어제 있었던 이머시브12기수 회식도 못하고 바로 집에 왔다. 어제부로 Data Structure 스프린트가 끝나고 여러 사람끼리 서로 코드를 짠 것을 보며 리뷰를 남기는 코드리뷰 시간을 가졌다. 같은 문제풀이를 하는데도 여러방식의 코드 스타일을 볼 수 있었다. 자료구조 개념이나 구현하는 것은 많이 해왔기 때문에 이번 스프린트는 꽤나 수월했지만, 처음 접하는 사람들은 개념부터 숙지하느라 정말 고생했을 것 같다.아마 다음주부터는 또 새로운 스프린트로 들어가고 페어도 또 바뀔 것 같다. 마지막에 hashTable의 A..
-
[2019.04.06] this, setTimeout Check point정리개발 블로깅 2019. 4. 7. 14:06
# 11234567891011var name = "Window";var alice = { name:"Alice", sayHi:function(){ alert(this.name + "say hi"; }};var bob = {name : "Bob"};setTimeout(function(){ alice.sayHi();}, 1000);cs 9번째 줄에서 function() {} 으로 감싸주고 실행시키기 때문에 1초뒤에 실행됨. 1초 뒤에 alice의 속성인 sayHi 함수를 실행시키므로 this는 Alice.# 2123456789var name = "Window";var alice = { name: "Alice", sayHi: function() { alert(this.name + " says hi"); }};..
-
[2019.04.05] 이머시브 5일차, 두번째 스프린트 DataStructure 페어프로그래밍핵인싸 개발자의 길/코드스테이츠 Immersive Course 2019. 4. 5. 21:44
어제는 DataStructure Part1 스택, 큐, 오늘은 Part2인 Binary Search Tree, Tree, Linked List, Graph를 페어 프로그래밍 했다. 토요일 오후5시까지 HashTable 마저 구현하면 된다. 자료구조를 오랜만에 이렇게 코딩을 해볼 줄이야.. 그런데 자바스크립트에서는 oop 방식이 많이 다르다보니, 구현방식이 많이 생소했다. 원래면 class node를 작성하고 객체를 하나하나 만들어서 작성을 했을텐데, 자바스크립트에서는 인스턴스에다가 속성과 메소드를 전부 추가시켜주고 반환을 하는 방식으로 작성했어야 했다. 이머시브 과정을 하면서 정말 페어프로그래밍을 진득하게 하게 되는 것 같다... 그래도 다들 재밌게 코딩을 하시는 것 같아서 나도 괜히 뭔가 들뜨고 재밌게..
-
[2019.04.04] 이머시브 4일차, 객체지향 프로그래밍(OOP) 기법, Big(O) TimeComplexity핵인싸 개발자의 길/코드스테이츠 Immersive Course 2019. 4. 4. 21:19
Class - object틀, 붕어빵 틀 objects - object, 붕어빵 실제 사용되는 instance(?) # 객체지향 특징 Encapsulation : 최대한 다른 기능들과 연관성을 줄이는 것 Inheritance : 상위 속성을 가져와서 물려받는 상속성 Abstraction : 공통된 특성들끼리 묶고, 불필요한 특성은 삭제 Polymorphism : 부모 클래스의 공통특성을 물려받아, 자신에게 맞는 방식으로 사용 # javascript에서 oop방식 Functional Functional Shared Prototypal Pseudoclassical 오늘 다음 스프린트 과제를 위해 페어 변경을 하였다. 다음 페어 프로그래밍 할 내용은 자료구조 스택, 큐, 링크드리스트 등...어제 블로깅 한 내..
-
[2109.04.03] 이머시브 3일차.. underbar,recursion 스프린트를 끝내며핵인싸 개발자의 길/코드스테이츠 Immersive Course 2019. 4. 4. 10:02
어제 후기를 지금 쓴다...ㅜㅜ 1,2일차의 underbar, recursion 스프린트를 마치고 같이 페어한 사람들끼리 페어 리뷰를 했다. 내가 받은 페어 리뷰 같이 코드를 따라가려고 하는 모습이 보였으나, 조급함이 느껴짐. 조급함..ㅜㅜ 내가 바꿔야되는 부분이다. IMT 2차 시험때도 호용 엔지니어님께 지적 받았던 문제이다. 그때는 오히려 시험중이라 엄청 조급함 보이기는 했었다. 그래서 이머시브 중에는 서두를 것 없어서 나름 차근차근 한다고 생각 했었는데, 그래도 내가 조급함이 보이는가보다. 조금 더 신경써서 차근차근 진행하도록 해보자! 오후부터는 '자료구조' 스프린트에 들어갔다. # 자료구조 내용 Stack Queue Linked list Tree B-Tree Hash table Graph 충분한 ..
-
[2019.04.03] 자료구조- Graph의 개념개발 블로깅 2019. 4. 4. 09:39
단순히 노드와 그 노드를 연결하는 선들을 하나로 모아 놓은 구조이다. # 그래프 종류 무방향 그래프 : 방향이 없는 간선 사용, 양방향 이동가능 방향 그래프 : 방향 간선 사용, 한쪽으로만 이동가능 가중치 그래프 : 선에 가중치(우선순위? 순서?)가 할당된 그래프 # 그래프 표현방법 인접행렬 : 노드의 인접여부를 2차원 배열로 구분 노드의 개수만큼 행 열을 만든다. 각 행열에 맞게, 선이 존재하면 해당 행열 자리의 값은 1이 들어가고 없으면 0이 들어간다. 인접 리스트 : 각 정점에 인접한 정점을 연결 리스트로 표현 각 노드가 연결된 선을 링크드리스트로 연결한다. 연결된 노드들을 한번씩 접근하여 해당 노드의 가중치를 자신의 노드 리스트에 노드를 추가한다. # 그래프 탐색 깊이 우선 탐색(DFS) : 자기..
-
[2019.04.03] 자료구조-해시테이블개발 블로깅 2019. 4. 3. 23:54
해시함수란 임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수이다. 이때 매핑 전 원래 데이터의 값을 키, 매핑 후 데이터의 값을 해시값, 매핑하는 과정 자체를 해싱 이라고 한다. 만약 두개의 키가 동일한 해시값을 가지게 되면, 해시충돌이 일어난다. # 해시 테이블의 장점 적은 리소스로 많은 데이터를 효율적으로 관리가 가능하다. 모든 데이터를 살피지 않고도 검색, 삽입, 삭제가 빠르게 수행가능하다. hash테이블게 key값을 넣으면 hash에 저장된 index값이 반환된다. bucket영역에서 index값에 매칭되는 value값을 찾아낸다. 이렇게 key값으로 인해서 value값을 가져올 수 있다. hashTable에서는 인덱스값을 고유하게 만드는 것이 중요하다. 데이터를 삽입 중에 특정 키가 ..
-
[2019.04.03]자료구조- B-tree개발 블로깅 2019. 4. 3. 21:15
B-tree는 일반적인 이진트리와 다르게 하나의 노드에 다수의 키를 가지고 있다. 자식을 두개만 가질 수 있는 이진트리를 확장하여 더 많은 수의 자식을 가질 수 있게 만든 방식이다. b-tree의 조건 모든 단말노드는 동일한 높이를 가진다. 각 내부노드의 자식노드는 M/2 이상 M 이하이다. 루트의 자식 수는 2 이상이다. B-tree 탐색 위 노드에서 40인 값을 찾을 시, 최상위 노드부터 탐색을 한다. 50보다 작으므로 왼쪽 노드로 이동한다. 왼쪽 노드로 가니 10, 25가 있다. 둘 중 큰 숫자인 25보다 크므로 오른쪽 자식 노드로 내려간다. 30,35,40,45값 중 40을 찾게 된다. B-tree 삽입 25라는 값을 추가하기 위해 트리를 탐색한다. 삽입을 할 위치를 찾아보니, 해당 노드에는 더이..