Showing posts from September, 2015

bind, call, apply self-testing

name = "super-man";var obj = { name :"mart-man", // generalhello : function(){ console.log("hello : " +; this.test(function(){ console.log("hello > callback : " +; }); }, // bindhello_bind : function(){ console.log("hello_bind : " +; this.test(function(one, two){ console.log("hello_bind > callback : " +; }.bind(this)); }, test : function(callback){ callback(); } } test = function(){ console.log("out test"); } console.log(1,; console.log(2, name); console.log(3); obj.hello(); console.log(3.5); var hello_outer = obj.hello; hello_outer(); console.log(4); obj.hello_bind(); console.log(5);; obj.hello.apply({name:'kings-man', test:function(){console.log("third test")}}); console.log('end');If you don't understand well why this logs printed.I sugu…

project euler 320 problem

1. A
2. B
3. AB
4. BAB

At first, I tired to find some repeated pattern.  between A And B.
Maybe I took one hour to find it.
but the result was failed. there is no pattern and had not to think about findind pattern.
Finally I thought this way.

A :


Fibonaci (n) = Fibonaci(n-2) + Fibonaci(n-1);

so make array to put length of F(n);

arr[1] = 100;
arr[2] = 100;
arr[3] = 200;
arr[4] = 300;
arr[5] = 500;

if i want to find 320 I should find from arr[5]
because 500 covered 320 index word.
and find 20 position from arr[4];
arr[4] is made of arr[2] + arr[3]
next find 20 position of arr[2]

if the index of arr[] is 1 or 2, the answer is arr[1 Or to].charIndex(20);

My java code is below.
(Actually It is dirty code, need to be refac…

Nodejs Mapper + transaction Opensource 진행과정3

github에서 opensource 를 작업한다고 시작한지 꽤 시간이 지난것 같다.
어쩌다 보니 최초 계획한대로 정리가 된것 같은데.. 오늘은  query 부분에  Array 가 동적 바인딩이 되도록 진행했다.
처음 코딩을할때 널체크만 생각하고 query 조건들을 파싱하는구조로 잡았었는데 생각이 짧았었다 확장에서 있어 정말 유지보수가 힘든 구조였다.
재귀 방법으로 지금 다시 고민을 하고 있다.

앞으로 해야하는 작업이 조금더 더 깔끔하게 Queue들을 날릴수 없나에 대해 고민해보고 js 테스트 도구 등을 사용해서 단위 테스를 진행하도록 해야겠다.
그리고, 재귀 호출을 통해서 depth의 depth도 체크하는 구조를 만들어야 겠다.
지금 라이브러리로 사이트를 운영중이라서 사용해서는 안된 말은 아니다. 음..