전체 글

TIL

Today's Dev Notes(2018-12-06)

Today's Dev Notes(2018-12-06) 레벨3의 슬럼프 극복 Why Learning to Code is So Damn Hard 선택과 집중의 시기 뭔가 깊이 파고 싶은 주제를 내가 하나 정하고 책을 선정하여 조금씩 공부해갑니다. 피해야할 것은 자기 수준에 맞지 않는 것을 남들이 한다고 해서 하는 것입니다. 오프라인 강좌인 만큼 서로 돕고 함께 해나가야 합니다. 포기만 하지 않으면 다 할 수 있습니다! 레벨3의 목표는 '스스로 공부하는 방법을 익히는 것'입니다. ATDD(Acceptance Test Driven Development) Acceptance Test는 End To End Test라고도 불립니다. 이 부분을 이해하려면 어느 정도의 사전 지식들이 필요하며, 그 중에서도 HTTP에 대..

Spring

IoC/DI & Spring Bean Life Cycle2

IoC/DI & Spring Bean Life Cycle 해당 내용은 DOM의 발표자료 를 참고하여 재구성하였습니다. 자세한 설명은 해당 사이트를 통해 확인하시길 바랍니다. 오늘은 Container에 대해 알아볼려고 합니다. 그 이전에 어제 다루었던 IoC(Inversion of Control)에 대해 다시 한번 살펴보고 넘어가겠습니다. IoC(Inversion of Control) 리뷰 프레임워크를 사용하기 전에는 애플리케이션 내에 있는 코드가 주체가 되어 필요할 때마다 호출되었습니다. 하지만 프레임워크 기반의 애플리케이션은 애플리케이션 코드들이 주체가 되는 것이 아니라 프레임워크가 주체가 되어 필요에 따라 호출되어 사용되게 됩니다. Spring 프레임워크 내에서 이렇게 관리해주는 주체가 되는 것이 C..

Algorithm/problem solving

Today's Algorithm(2018-12-04)

programmers 더 맵게 문제 자체가 어렵진 않았는데 저의 미천한 지식이 더욱 문제를 어렵게 만들었네요. 제가 풀어본 방법은 3가지 입니다. Collections.sort() 를 이용한 정렬 → 시간초과 발생 힙 구현 및 정렬 → 로직이 꼬임, 시간초과 Java의 PriorityQueue이용 → 성공 처음엔 해시 카테고리인 문제임에도 불구하고 Collections.sort() 를 이용하였습니다. 역시나 '시간초과'가 발생하였습니다. 이렇게 처음 푼 이유는 물론 익숙한대로 쓰다보니 쓴 것도 있지만 Collections.sort() 도 시간복잡도가 O(Nlog(N))라고 생각하였고 다른 방법으로 풀어도 빨라봤자 정렬할 때 이 시간복잡도 보다는 빠르지 않을 것이라 생각하였습니다. 하지만 결..

Spring

IoC/DI & Spring Bean Life Cycle1

IoC/DI & Spring Bean Life Cycle 해당 내용은 DOM의 발표자료 를 참고하여 재구성하였습니다. 자세한 설명은 해당 사이트를 통해 확인하시길 바랍니다. Java Bean 규약 Handlebar도 Java Bean 규약에 의거해서 데이터를 가져옵니다. 그런데 Java Bean은 Spring Bean과는 전혀 관련이 없습니다!! 직렬화 시스템 내부에서 사용하는 객체 혹은 데이터를 외부 시스템에서도 사용할 수 있도록 변환시키는 것입니다. JSON이나 CSV 형식으로 내보내는 것도 직렬화라고 하네요. public class Person implements Serializable Dependency(의존성) 추상적인 것에 구체적인 것을 매핑하고 있다는 것입니다. new 키워드를 중심으로 의존..

TIL

Today's Dev Notes(2018-12-03)

Today's Dev Notes(2018-12-03) 안녕하세요, Brad입니다. 오늘 공부했던 내용 정리해볼게요. Ajax에서 error와 success 때 전달하는 JSON값이 다릅니다. success로 전달한 JSON값은 다음과 같이 깔끔하게 data값만 전달됩니다. 반면 error로 데이터를 Console.log로 띄워보면 다음과 같습니다. 그래서 error에서 JSON값을 받으려면 responseJSON.errorMessage 로 받아야 합니다. 왜 그럴까요? 그 이유를 알아보니 js파일에서 success 메서드는 다음과 같이 깔끔하게 데이터를 받는 매개변수가 정의되어 있습니다. 따라서 data를 통해서 깔끔하게 받을 수 있었던 것이죠. 반면 error 메서드는 다음과 같이 정의되어 있는데요. ..

TIL

Today's Dev Notes(2018-12-02)

Today's Dev Notes(2018-12-02) 안녕하세요, Brad입니다. 이번 주말동안 qna step5 미션을 진행하면서 고민했던 부분과 그에 대한 정리를 해보려합니다. Ajax를 통해 데이터를 주고 받을 때 어떻게 에러처리를 해야할까요? 이 부분에 대한 고민을 좀 오래했던 것 같아요. 결과적으로 제가 이해한바로는 'Ajax를 통해 보낸 것은 Ajax를 통해 결국 처리를 해야한다'라는 것입니다. 엥? 이게 무슨 말이냐구요? 이 말은 제가 ajax controller에서 에러발생시 기존 @Controller에서는 다른 url로 redirect가 가능했는데 그것이 안된다는 것입니다. 그럼 어떻게 처리해야 할까요? 일단 @RestController 에서는 데이터만 전달하기 때문에 Error 관련한 ..

Brad Lee
Brad's blog