개발 블로깅
-
[2019.03.26] NoSQL MongoDB 기초개발 블로깅/Server&DataBase 개념 2019. 3. 26. 21:54
MongoDB는 NoSQL의 종류 중 하나이다. NoSQL은 빅데이터 기반의 데이터베이스로, 정해진 칼럼이 아니라컬렉션에 document가 계속 추가되는 방식이다. # MySQL과의 비교mysql은 database를 새로 만들어주고 table을 생성할 때 칼럼명과 타입을 지정해 주며 생성.MongoDB는 database를 새로 만들어주고, collection을 생성, collection에 들어갈 document를 입력 (document는 json 타입) # MongoDB 설치 및 실행brew update brew install mongodb mkdir -p /data/db mongod # dbpath 지정 mongod --path 이후에 다른 터미널로 아래와 같이 명령어를 입력한다.$ mongo Mong..
-
[2019.03.13] 순차적으로 추가되는 연속 콜백함수 구현개발 블로깅 2019. 3. 13. 14:56
오늘 AMA시간에 클로저 관련된 문제를 더 풀어보고자, 클로저 관련 문제를 어디서 구할 수 있나 여쭤보니까, 엔지니어분께서 한 문제를 풀어보라고 제시해주었다. # 함수를 호출하는 방식과 해당 결과값1234567var call = recursive(); call(1); // 1call(1)(2); // 2call(1)(2)(3); // 6call(1)(2)(3)(4); // 10...cs # 처음에 이 문제를 접하고 생각이 들었던 문제풀이방식 한번씩 호출이 될 때마다 카운트를 증가를 시켜야한다. (콜백함수가 늘어나야하기때문에..)카운트만큼 return 값을 콜백함수로 넘겨줘야한다.반복적인 행위이므로 recursive하게 구현해야한다. # 해당 문제에 대한 알고리즘 구현 소스코드1234567891011121..
-
[2019.03.06] 비동기 처리방식 Promise와 Async await개발 블로깅/Modern script 2019. 3. 6. 16:54
비동기적 통신방식인 AJAX가 있는데, 그것 말고 비동기적 처리 방식인 Promise가 따로 있다. 사실 둘의 무슨 차이인지는 모르겠다.AJAX는 통신이고, Promise는 함수처리를 비동기적으로 하는 것일까..? 우선 Promise가 향후에 많이 쓰여질 방식이라고 하는 것 같아, 사용방식에 대해 공부를 해봤다. # Promise 사용법 기본적인 사용 예제12345678910111213function delayP(sec){ return new Promise((resolve, reject)=>{ setTimeOut(()=>{ resolve('run!'); }, sec * 1000); }} let finalVal = delayP(1).then((result)=>{ console.log(result); ret..
-
[2019.03.05] ECMA Script6 기초문법개발 블로깅/Modern script 2019. 3. 5. 20:25
우리가 평소 사용하던 자바스크립트 방식은 ECMA5의 방식이라고 한다.Jquery라는 훌륭한 라이브러리가 나오면서, 오직 자바스크립트만으로는 처리하기 힘든 일들을(큰 예로는 DOM 접근 및 처리) 쉽게 처리할 수 있도록 해주었다.그러나 Jquery는 자바스크립트의 표준이 아니다.우리가 지금껏 사용한 표준인 ECMA5만이 오직 표준이였고, 그 이후에 나온 표준이 ECMAScript6 (ES6)이다. 앞으로 자바스크립트를 다루면서 더욱 표준화된 방식으로 코딩을 하고자 하여, ECMA6 방식에 대한 정리를 어느정도 해봤다. # var를 대신하는 키워드 let과 const기존은 함수 스코프 변수인 var는, 전역 범위로 스크립트 내 어디서나 참조가 가능하다.123456var runFunction = functi..
-
[2019.03.04] Visual Studio Code 단축키개발 블로깅 2019. 3. 4. 22:32
앞으로 vsCode를 편리하게 자주 쓰기 위해서는 단축키를 어느정도 자유자재로 쓸 수 있으면 좋겠다고 생각해서,VScode 단축키 중 내가 활용을 많이 할 것 같다 싶은 것들만 따로 정리해보려고 한다. command + p : 파일 선택 Command + shift + p : 명령어 option + up,down : 현재 줄 위 아래로 이동 command + b : 왼쪽 탭 활성비 비활성화 command + [ : 왼쪽 들여쓰기 (반대도 가능) command + j : 터미널 밑 하단 탭 열기 command + shift + k : 해당 줄 삭제 command + / : 주석 (여러 줄 가능) command + i : 현재 줄 선택 option + shift + a : 다중 주석 command + shi..
-
[2019.03.01]javascript에서 함수 선언에 따른 차이점.개발 블로깅/Javascript 개념 2019. 3. 1. 23:49
javascript에서 함수를 선언하는 방식은 기본적으로 두 가지가 있다. (아마 더 있을 수도 있지만..)변수에 함수를 생성하여 할당하는 방법그냥 함수를 선언하는 방식이다.# 변수에 함수를 할당하는 방법123var addValue = function(a, b){ return a + b;}cs # 일반적으로 함수를 선언하는 방법123function addValue(a, b){ return a + b;}cs위 두 코드와 같이, 사용하려는 함수를 생성하는 방법이 두 가지가 있다.하지만 역시 이 두 가지에 대한 차이점이 있다는 것! 우선 '변수에 함수를 할당하는 방법'은, 해당 함수를 사용하기 전에, 먼저 그 함수가 위에 선언이 되어야 한다.1234567addValue(1, 2); //
-
[2019.02.28] javascript의 prototype 개념, 그리고 this.개발 블로깅/Javascript 개념 2019. 2. 28. 23:12
자바스크립트를 몇번 다뤄봤었지만, 이번에 prototype이란 개념이 있는지는 처음 알았다..!!역시..!! 퀵패스 말고 프리코스부터 하기 잘했다..!! 모르는 기초개념 부분이 참 많다...! (역시 아직 많이 멀었구나..) Prototype이란?코딩 객체지향 개념에서 맨 처음 배우는 그 유명한 '붕어빵 틀'. 바로 클래스가 자바스크립트에서는 prototype이였던 것이다! # Function.Prototype1234567function Person(){ this.name; this.age; this.address; } var inyong = new Person();cs 위 코드에서는 prototype이 Person이다. new Person();이 인스턴스이다. (인스턴스라는 용어의 개념도 이번에 알게 ..
-
[2019.02.27] for문 사용에 주의해야 할 점(?)개발 블로깅/Javascript 개념 2019. 2. 27. 23:18
무턱 underbar 과제를 진행하는 중에, 한 문제에서 엄청 시간을 쏟았다....문제내용은, 하나의 배열이 있으면, 거기 안에 있는 Element와 Index 값을 같이 저장하는 문제였던 것 같다. (문제 다시 확인해보기 귀찮..)그렇다. 그냥 for문 돌려서 하나씩 보내주면 된다.엄청 쉬운 문제였다.. 정말 간단한거다...당연히 코드에 이상없다. 결과물도 이상없다.... 근데 왜 도대체 테스트케이스에서 passed가 되지 않는 것이야..!!! 😡 엄청난 시간을 쏟아 겨우 찾아낸 원인.... 인덱스의 타입이 String이였던 것.평소 for문을 돌리면 Index는 무조건 정수형일 줄 알았다... 그런데 오늘 처음 알았다!12345var array = [1, 2, 3, 4, 5]; for(var inde..