-
Github 기본 설명서 1편 :: 마이구미GitHub 2016. 7. 1. 17:38
GitHub Git 많이 들어봤을 것이다. 이번 글에서 세부적인 내용들은 생략을 할 것이고, 큰 틀에서 바라볼 것이다.이것들만 알면 충분히 유용하게 사용할 수 있다. Git은 무엇이고 GitHub은 무엇이다. 많은 글들이 있다.자칫 어렵게 보일 수도 있는 글들이 너무 많다.중요 핵심만 설명하면 간단하다.아래 이미지를 보자. Git은 많이 듣던대로 프로젝트를 할 때 소스 관리를 위해 사용된다.더 와닿게 설명한다면.다들 공감하겠지만 나 또한 겪은 경험으로 말해보겠다.뭐가 됬든 무언가를 개발하고자 할 때 그냥 막 코드를 짠다.그리고 ' 버그 없네 잘되고 있네 ' 개발을 한다.그리고 가끔 파일을 저장한다면 이런식으로 저장해둘 수도 있다. 하지만 작업 중 버그로 인해 전체에 영향을 미치게 되었다.이 때 어디서부터..
-
백준 1157번 단어 공부 [아스키 코드] :: 마이구미알고리즘 풀이/수학 2016. 6. 28. 16:11
이번 글은 백준 알고리즘 1157번 단어 공부 문제를 풀어보겠다.문제는 간단하다.알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오.단, 대문자와 소문자를 구분하지 않는다. 어떻게 접근하겠는가?사람마다 당연히 다르겠지..?나는 아스키 코드를 사용해봐야겠다고 생각이 들었다.아스키 코드를 어떻게 활용해서 문제를 풀 지 한 번 생각해보고 읽기 바란다. 다들 아스키 코드 잘 알고 있을 것이다.문제에서는 알파벳만을 사용하므로 65번부터 122번 까지만 사용하면 된다. 일단 먼저 크기가 26인 배열을 선언할 것이다.왜 26만 선언할까?? 눈치 챘을거다. 알파벳의 갯수는 26개이다. int[] arr = new int[26]; String str = ..
-
카카오 프로필 업데이트 안되는 현상 :: 마이구미오픈 API 2016. 6. 27. 20:04
이전 글에서 로그인과 프로필 정보 조회 API에 대해서 알아보았다.이번 글은 프로필에 관련된 문제를 살짝 짚고 넘어가보고자 한다.이슈는 카카오만 유일하게 프로필이 업데이트가 안되는 현상이다.카카오톡 프로필 사진을 변경하는 횟수는 정말 많다. 그런데 프로필 변경을 하더라도 반영되지 않는 문제를 보았다.다른 SNS들은 프로필 변경을 하면 자동으로 업데이트가 되는데 카카오만 유일하게 되지 않았다.일단 천천히 살펴보자. 프로필 API를 사용하는 이유는 거의 해당 계정의 프로필 이미지를 사용하고자 할 것이다.API를 통해 이미지 경로를 내려받을 수 있기 때문에 쉽게 이용할 수 있다. 위 이미지의 img 태그를 보면 알다시피 내려받은 URL을 통해 프로필 이미지들을 이용할 수 있다.이용하는 SNS에 API를 요청하..
-
ie에서 indexOf() 해결 방안을 알아보자.크로스 브라우징 2016. 6. 19. 15:05
이번 글은 자바스크립트의 Native 메소드인 indexOf()에 대해서 알아보자. 누구나 한 번쯤은 썼을 것이다. 유용한 메소드이기 때문이다.간략히 말하면 문자열의 위치를 알려주는 메소드이다.간단한 예제를 보자. var str = "자바스크립트 indexOf" str.indexOf('indexOf') // 7 var arr = ['자바스크립트','indexOf'] arr.indexOf('indexOf') // 1 indexOf를 사용할 때 뭔가를 찾고 싶을 때 사용할 것이다. 여기서 내가 말하고자 하는 것은 indexOf 메소드는 하나의 메소드가 아니다.무슨 말이냐하면.indexOf 메소드는 String의 네이티브 메소드, Array의 네이티브 메소드 각각의 네이티브 메소드이다.즉 기능은 같지만 엄연히..
-
euc-kr 문제 해결을 위한 iconv :: 마이구미Nodejs 2016. 6. 17. 19:47
이번 글은 Node.js 모듈 iconv에 대해 알아보자.본인의 경험을 토대로 글을 써보겠다.본인은 cherrio를 활용하여 네이트 페이지를 크롤링을 시도했다.살짝 잘 가져오는 지를 확인하기 위해 크롤링을 시도해보았다. 기본적인 예제다. 문제 없는 코드이다. 하지만 예측하지 못한 결과가 나왔다. 문자가 깨진 상태로 출력되었다.그 이유는 utf-8이 아닌 euc-kr을 쓰는 페이지였다. 이러한 경우 iconv을 쓰면 간단히 해결 가능하였다. $ npm install iconv 혹시나 본인이 경험했던 iconv 모듈 설치 시 에러가 뜨는 경우가 있을 것이다.아래를 보자. node-gyp 관련 문제이다.자세히 알아보기 위해 문서를 보자. npm 사이트에서 node-gyp 문서의 Installation을 확인해..
-
백준 1003번 피보나치 함수 :: 마이구미알고리즘 풀이/수학 2016. 6. 15. 22:07
이번 글은 백준 알고리즘 문제 1003번 "피보나치 함수"에 대해 다뤄본다.피보나치 수는 너무도 대중적이기에 많이 들어보았으리라 생각한다.' 0 1 1 2 3 5 8 13 21 34 55.......' 일단 문제를 보자. n번째 피보나치 수를 구하는 과정에서 재귀를 통해 돌아갈 때 n이 0일 때와 1일 때의 경우가 얼마나 되는지 카운트를 구하는 문제이다. 먼저 순수한 방법으로 풀어보자.위 그림에 있는 소스를 활용해서 0일때 1일때 카운트 변수 만들어서 if문 들어가면 ++해주면 된다. 이렇게 하더라도 사실상 원하는 결과값이 나온다.알고리즘 문제에는 시간 제한이 있다.그 말은 막 짜면 안되고, 문제가 원하는 로직은 꼭 존재한다.그걸 캐치하여 최소한의 시간으로 돌아가도록 소스를 짜야한다. (속도를 고려하는 ..
-
Oauth 2.0 비전공자 쉽게 알아보자 2 :: 마이구미오픈 API 2016. 6. 14. 21:14
이번 글은 로그인 API와 프로필 조회 API를 살펴볼 것이다. 예시는 네이버를 활용하자.시작하자. 네이버 개발자 센터에서 애플리케이션을 만들면 위 그림과 같이 Client ID, Secret 키를 얻을 수 있다.이 두 녀석이 꼭 필요하다. 로그인 API를 이용하기 위한 네이버에서 내려준 고유 식별키라고 생각하자.기본적인 셋팅은 생략하겠다. 이 두가지 api 요청 URL만 이용하면 로그인 뚝딱이다.먼저 로그인을 하기 위해서 네이버 로그인 페이지로 이동을 위하여 위 그림 설명에도 나와있듯이'네이버 아이디로 로그인 인증 요청'의 요청 URL을 이용한다.요청 URL의 요청 변수 명세에 따라 파라미터를 붙여주어 페이지 이동을 하게 한다.그렇다면 https://nid.naver.com/oauth2.0/author..
-
Oauth 2.0 비전공자 쉽게 알아보자 1 :: 마이구미오픈 API 2016. 6. 13. 20:45
오픈 API 중 가장 많이 이용하는 건 SNS 로그인이라고 생각한다. 그렇다면 Oauth가 빠질 수 없다. Oauth는 무조건 알고 가야 각 SNS의 오픈 api들을 활용하기 정말 쉬워진다. 나는 정말 쉽게 쉽게 쉽게 설명을 해보려한다.비전공자도 알아볼 수 있을만큼.....왜냐면 현재 많은 웹 페이지 상에서 sns 로그인이 정말 많이 이용되고 있다.혹시나 혹시나 나의 sns 계정 정보가 접속한 웹 페이지에서도 가져가는 것인가? 해킹 당하는 게 아닌가?하고 생각할 수도 있는 비전공자들을 위해~~~왜냐.. 처음 접했을 때 구글링하면 나오는 이미지들.. 솔직히 처음에는 잘 이해하지 못했다.그리고 직접 구현을 하고 이해를 하니 그때서야 이해할 수 있었다. (내가 바보일 수도..?)그래서 나 같은 사람을 위해 글..