분류 전체보기
-
[nodejs] redis session 저장소 관리 :: 마이구미Nodejs 2017. 1. 8. 14:54
이번 글은 redis 서버를 통한 세션 관리를 다뤄본다.nodejs의 express 프레임워크를 사용하여 예제를 진행한다. 현재 NoSQL의 일종으로 redis는 많은 목적으로 활용되고 있다.redis란 무엇인가? 위키의 정의를 보자. 레디스(Redis)는 오픈 소스이며 네트워크화, 인메모리 데이터베이스, 선택적 영구성 키-값 데이터 저장소이다. 레디스의 개발은 2013년 5월부터 Pivotal의 지원을 받고 있으며, 그 전에는 VMWare의 지원을 받았다. DB-Engines.com의 월간 랭킹에 따르면, 레디스는 가장 인기 있는 키-값 저장소이다.* 인메모리 데이터베이스(In-Memory Cache) - I/O 성능을 위해 데이터를 메모리에 적재하는 데이터베이스 redis를 들어봤다면 "빨라. mys..
-
레아이웃 팝업창 투명도 조절 :: 마이구미HTML, CSS 2017. 1. 5. 21:40
이번 글은 레이아웃 팝업창에 대해서 다뤄본다.팝업창은 누구나 보았거나 개발해봤으리라 생각한다. 팝업창은 크게 2가지로 나눌 수 있다.1. window.open을 사용해 새창으로 팝업창을 띄우기2. 새창을 띄우지 않고 레이아웃 형식으로 팝업창 띄우기 이번 글은 레이아웃 형식의 팝업창에 대해 다룰 것이다.레이아웃 팝업을 사용한다면 거의 투명도 조절을 하리라본다. 위처럼 팝업을 띄우고 팝업 주변은 불투명하게 보여지는 것을 볼 수 있다.레이아웃 팝업은 이런 식으로 많이 활용하고 있다. 구현에 있어서는 어렵지 않다.css를 통해 opacity 속성을 통해 투명도를 조절해주면 된다.#popup { opacity : 0.5; } // 0~1 낮아질수록 투명예를 들어 html로 레이아웃 팝업을 위해서는 아래와 같이 구..
-
백준 1932번 숫자삼각형 [DP] :: 마이구미알고리즘 풀이/동적계획법 2017. 1. 3. 23:26
이번 글은 백준 알고리즘 문제 1932번 "숫자삼각형" 을 다뤄본다.이 문제의 풀이 방식은 DP(동적계획법)이다.문제를 한번 보자. 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5위 그림은 크기가 5인 숫자 삼각형의 한 모습이다.맨 위층 7부터 시작해서 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 때, 이제까지 선택된 수의 합이 최대가 되는 경로를 구하는 프로그램을 작성하라. 아래층에 있는 수는 현재 층에서 선택된 수의 대각선 왼쪽 또는 대각선 오른쪽에 있는 것 중에서만 선택할 수 있다.맨 위층을 0층으로 가정하겠다.1 층 : 7 -> 3 || 7 -> 82 층 : 7 -> 3 -> 8 || 7 -> 3 -> 1 || 7 -> 8 -> 1 || 7 -> 8 -> 0................
-
백준 2688번 줄어들지 않아 [DP] :: 마이구미알고리즘 풀이/동적계획법 2017. 1. 2. 20:47
이번 글은 백준 알고리즘 2688번 "줄어들지 않아" 문제를 다뤄본다.핵심은 DP라고 불리는 동적계획법이다.일단 문제를 보자. 어떤 숫자가 줄어들지 않는다는 것은 그 숫자의 각 자리 수보다 그 왼쪽 자리 수가 작거나 같을 때 이다.예를 들어, 1234는 줄어들지 않는다. 줄어들지 않는 4자리 수를 예를 들어 보면 0011, 1111, 1112, 1122, 2223이 있다. 줄어들지 않는 4자리수는 총 715개가 있다.이 문제에서는 숫자의 앞에 0(leading zero)이 있어도 된다. 0000, 0001, 0002는 올바른 줄어들지 않는 4자리수이다.n이 주어졌을 때, 줄어들지 않는 n자리 수의 개수를 구하는 프로그램을 작성하시오.각 자리 수에 따라 줄어들지 않는 경우의 수를 구하면 된다.간단하게 나타..
-
쿠팡이 네이버 쇼핑검색에서 빠진 이유 :: 마이구미책 리뷰 2017. 1. 2. 20:46
개발 관련 글만 쓰다가 오랜만에 기사에 대해 써본다.이번 글은 쿠팡에 관한 기사에 대해 살펴볼 것이다. 본인은 쿠팡의 방향과 전략에 대해 항상 관심이 많아 쿠팡에 대한 기사는 자주 보는 편이다.그러다가 최근 "쿠팡이 네이버와 손 잡은지 1년 3개월만에 네이버 쇼핑검색에서 빠졌다" 라는 기사를 봤다.이것이 의미하는 바로는 쿠팡은 모르는 사람이 없다는 걸로도 판단된다. 쿠팡은 빠진 외부적으로 알려진 이유로는 네이버쇼핑을 통한 유입이 크지 않다고 밝혔다.뭐 다른 이유도 많겠지만 그렇다. 맞는 말이다.본인 또한 실제 쿠팡 고객들은 네이버를 통한 유입이 아닌 쿠팡으로 직접 유입한다고 생각한다.본인은 사실 쇼핑검색에 노출되고 있었는지도 몰랐다. 한편으로는 이미 쿠팡은 이커머스 1위지만 아직은 안심할 수 없다.쿠팡은..
-
페이스북 글 가져오기 Page api :: 마이구미오픈 API 2016. 12. 31. 17:35
이번 글은 페이스북의 오픈 API 중 Page API를 통해 자신의 글을 가져오는 기능을 다뤄본다.많은 페이지들이 본인의 페이스북의 글들을 가져와 노출을 활용하고 있다.누구든지 쉽게 할 수 있다.이번 계기로 자신의 홈페이지도 활용해보자.본인 정현연구소 페이지에 있는 글을 가져오는 과정을 진행하겠다. 오픈 API를 사용하기 위한 기본적인 절차들은 생략하겠다.먼저 가장 기본적인 액세스 토큰을 살펴보자.위 그림과 같이 크게 3가지로 볼 수 있다 이번 글에서는 앱 액세스 토큰을 사용하겠다.자신의 글만 가져오면 되기 때문에 만료되지 않는 토큰을 사용하는 것이 구현에 있어 쉽다.실제로 클라이언트에서 작업을 한다면 앱 액세스 토큰은 시크릿 코드와 관계가 깊기 때문에 노출되면 안되기 때문에 서버에서 작업하길 바란다.h..
-
백준 1377번 버블 소트:: 마이구미알고리즘 풀이/정렬 2016. 12. 28. 22:52
이번 글은 백준 알고리즘 사이트의 1377번 "버블 소트" 를 다뤄본다.정답률은 20% 대로, 200명정도이다.1377번 버블 소트 - https://www.acmicpc.net/problem/1377 이미 문제에서도 버블 소트의 소스를 보여줬다.출력되는 정답이 의미하는 건 버블 정렬이 몇단계를 거쳤는지를 알아내는 것이다.버블 정렬을 잠깐 살펴보자. (기본적으로 버블 정렬을 숙지하고 있다고 가정하겠다.)다음과 같이 주졌다고 하자. (10 4 2 5 9 1)10 4 2 5 9 1 -> 4 10 2 5 9 1 -> 4 2 10 5 9 1 -> 4 2 5 10 9 1 -> 4 2 5 9 10 1 -> 4 2 5 9 1 10위의 경우가 1단계라고 하자.그렇다면 다음이 2단계라고 할 수 있다.4 2 5 9 1 1..
-
StringBuilder vs System.out.println :: 마이구미Java 2016. 12. 28. 20:16
이번 글의 제목은 "StringBuilder vs System.out.println" 이다.글의 목적은 알고리즘 문제들의 시간을 줄이는 것이다.그렇다면 어떻게 줄일 수 있는지 천천히 살펴보자. 대부분 알고 있듯이 System.out.println은 출력을 하기 위해 사용하고 있다. int a = 123;System.out.println(a);// 123System.out.println("Hello World!");// Hello World! 간단히 보면 표준 입출력 기능을 제공해준다고 봐도 된다.그렇다면 조금 더 깊게 System.out.println을 내부적으로 어떻게 되어있는지 보자. public void println(String x) { synchronized (this) { print(x); n..