전체 글

Algorithm/problem solving

Today's Algorithm(2018-10-01)

Today's Algorithm(2018-10-01) boj 1008 문제 자체는 아주 기본적이었지만 출력 조건이 절대/상대 오차 허용 까지 허용한다는 점에서 그 의미를 파악하지 못하여 어려움이 있었습니다. 이 말은 다르게 표현하면 "출력값을 소수점 아래 9개 이상 출력한다"로 나타낼 수 있습니다. 아래와 같이 나타낼 수 있습니다. #include int main() { double a,b; scanf("%lf %lf", &a, &b); printf("%0.9lf\n", a/b); return 0; } 전 처음에 %0.9없이 double형 자료형을 사용하면 출력도 그 범위만큼 출력될 줄 알았는데 출력하니 1/3의 결과가 0.333333로 나오더라구요. 따라서 소수점 아래 7자리 이상에 대해서 명시적으로 ..

Language/Java

DTO와 Java Bean

DTO와 Java Bean 안녕하세요, Brad입니다:) 자바를 공부하면 DTO에 대해 누구나 한번씩 들어봅니다. 하지만 전 그 필요성과 그 사용에 대해서 명확하게 파악하고 있진 않았던 것 같습니다. 오늘 수업에서 그것에 대한 작은 깨달음을 얻을 수 있었습니다! DTO가 무엇인가? DTO는 Data Transfer Object의 약자로 데이터를 다른 서버로 전달하기 위한 것이 주목적이라고 합니다. 하지만 지금 단계 전 DB를 사용하고 있지 않으니 현재는 다음 프로세스(출력)를 위한 데이터를 담는 용도로 주로 사용하고 있습니다. 비슷한 개념으로 VO(Value Objec)도 있는데요. 이 부분은 좀 더 공부하고 기록하려고 합니다. 왜 필요한가? 객체지향 프로그래밍 관점에서 DTO를 만들어내는 것이 큰 의미..

TIL

Today's Dev Notes(2018-09-30)

Ladder 5단계 다시 구현하기 Ladder 5단계 다시 구현하기 안녕하세요. Brad입니다. Ladder 5단계를 기존에 제가 생각하던 로직으로 구현하였는데요. 좀 더 객체지향적으로 짜보고 싶다는 생각이 들었습니다. 그래서 5단계에서 Pobi 힌트의 구조를 참고하여 다시 짜보려고 합니다. 그럼 Pobi의 구조는 어떻게 설계되어 있을까? 사다리 한 Line 추상화 → LadderLine 한 LadderLine의 모든 Point의 초기화와 이동 담당 근데 init() 메서드에서 initFirst(), initBody(), initLast()가 의미하는 것은 뭘까? 우선 init() 메서드는 저기 3가지 메서드를 모두 총괄하는 메서드이네요. initFirst()안에 Point의 first()메서드의 ret..

TIL

Today's Dev Notes(2018-09-29)

Today's Dev Notes(2018-09-29) java에서 null 체크를 어떻게 할 것인가 AsyncTask에서 작업을 처리하기 위해 파라미터로 String넘겨줄 작업이 있었다. String 타입을 가진 변수를 파라미터로 전달하려고 하니 Null오류가 발생하였다. 그래서 우선 처리한 것은 String값이 없을 때 ""로 입력하고 정상적으로 넘기는 것이었다. 넘겨준 것을 받은 쪽에서는 equals("")통해 비교하거나 isEmpty() 둘 다 정상적으로 ""값을 받을 수 있었다. 하지만 == null 은 null값이 아니라 그런지 "" 값을 제대로 비교하지 못하였다. 그렇다면 이렇게 String값이 없을 때 ""로 처리하는 것이 좋은 방법일까?

Brad Lee
Brad's blog