Unit Test원칙 - FIRST Fast : 테스트 코드의 실행은 빠르게 진행 되어야 함 Independent : 독립적인 테스트가 가능 해야 함 Repeatable : 테스트는 매번 같은 결과를 만들어야 함 Self-Validating : 테스트는 그 자체로 실행하여 결과를 확인할 수 있어야 함 Timely : 단위 테스트는 비즈니스 코드가 완성되기 전에 구성하고 테스트가 가능해야 함 - 코드가 완성되기 전부터 테스트가 따라와야 한다는 TDD의 원칙을 담고 있음 Junit Test 항목 junit test를 할 때 test code를 작성할 때 짜기 힘들어서 어떤 순서로 작성할지 생각해보았다. Test 항목 및 순서 1.specify key 2.delete a record that key에 맞는 3..
운동 처음 하는 직딩이 처음 탁구 배우기 - 제27편 몸이 탁구에 제법 적응 한 것 갈다 탁구를 시작한지 5개월이 되었다. 이제는 힘을 많이 들이지 않고도 공을 빠르게 칠 수도 있고 제법 쫒아가 받을 수 있을 정도가 된 것 같다. cut 서브 넣는 것도 처음에는 온몸을 써서 열심히 서브를 넣어도 공이 잘 안깎이고 제 위치에 안맞고 미스도 많이 나더니 요즘은 힘을 줄 때 주고 뺄때 빼고 타이밍도 제법 맞출 수 있게 되어서 컷 서브가 제법 잘 들어가는 편이다. 5개월 동안 탁구를 거의 혼자 친 것 같다. 머신하고 치고, 볼박스에서 혼자 서브연습 하고 대부분 이걸로 5개월을 보냈는데 이렇게 했어도 제법 탁구가 많이 늘었다. 여자들이랑 비교하기는 뭐하지만 남자들이 벌떼 처럼 달라 붙어서 쳐주고 가르쳐주고 하는 ..
Sep 15 - 일을 열심히 하고 있나봄 은 내 생각이지만 ㄹㅇ인 것 같기도 함. 왜냐하면 블로깅을 별로 못하게 되는게 대부분 뭘 열심히 하면 블로깅을 비교적 덜 하게 되는 경향이 있음. 뭐 만들어 내는데 정신을 쏟다보면 블로그에 글을 정리해서 올리는 일은 우선순위가 밀리는건 당연한 듯. ㅇㅇ 그러함. 토비의 스프링3도 좀 더 이해하게 되긴 해서 포스트를 올릴때도 된 것 같기도 한데 동기부여가 안되고 있음. 블로그에 포스트를 올리는데 있어서 잉여력은 중요한 자원인것 같은데 요즘은 그 잉여력을 꽤나 잘(?) 쓰고 있는 것 같기도 함. ㅇㅇ. end.
MySql 날짜 1일 더하기 빼기, String 타입 날짜를 date로 변환, date에 format 적용 select * from game where start_datetime >= date_add(curdate(), interval -1 day) and start_datetime '20150910') ) or (a.gdate='20150910' and (a.gstatus = '2' and a.gdate = date_format(now(), '%Y%m%d') ) ) or (a.gdate='20150910' and (a.gstatus = '1' or a.gstatus = '3')) ) order by gtime,dc_lid,home_name 위 쿼리는 아래 내용이 구현된 쿼리 입니다. 1.join 2.날..
Toby의 Spring3 따라하기-제3편 connectionMaker interface 이용해서 분리하기 UserDao.javaimport java.sql.*; /** * Created by krkim on 2015-09-08. */ public class UserDao { ConnectionMaker connectionMaker; public UserDao(ConnectionMaker connectionMaker) { this.connectionMaker = connectionMaker; } public void add(User user) throws SQLException { Connection c = null; try { c = connectionMaker.getConnection(); } catc..
Toby의 Spring3 따라하기-제2편 UserDao.class 만들기 UserDao.javaimport java.sql.*; /** * Created by krkim on 2015-09-08. */ public class UserDao { private Connection getConnection() throws ClassNotFoundException, SQLException { Class.forName("com.mysql.jdbc.Driver"); Connection c = DriverManager.getConnection( "jdbc:mysql://localhost/krkdb", "root", "111111" ); return c; } public void add(User user) throws..
Sep 08 - Type이 있는 언어와 없는 언어에서 변수명 Java는 String name = "kyeongrok"; 와 같이 변수에 타입을 주어서 선언 하지만 PHP같은 언어는 $name = "krk"; 이렇게 타입을 안주고 선언해도 변수에 따라서 언어가 어떤 타입인지를 정해서 연산을 한다. Function이나 Method를 만들 때 parameter를 정해 줄 때 약간 헷갈릴 것 같아서 해본 생각이 변수명을 줄 때 PHP같이 언어가 타입을 정해주는 경우 $s_name 이런 식으로 변수명에 prefix로 type을 주는게 좋지 않을까 하는 생각을 해봤다. ㅇㅇ end.
Sep 07 - 날짜 날짜 다루기는 꽤나 복잡한 이슈다. 새로운 프로그램을 만들 때나 프로젝트 초중반에 이놈에 날짜 가지고 고민을 많이 한다. 날짜를 자꾸 해보니까 이제 조금씩 요령도 생기고 익숙해지긴 하는데 그래도 여전히 까다롭다. 가장 까다로운 부분은 날짜를 표시하는거랑 더하고 빼는부분인데, 날짜 표시의 최종 형태는 String 형이고 db는 mysql 주로 쓰는데 date type으로 저장 할 때도 있고 var_char로 저장 할 때도 있다. 보통은 표시하는 대로 var_char로 저장 하고 "2015-09-07"이런 식으로 스트링으로 저장 한다. 근데 이걸 꺼내서 날짜를 더할려면 String type으로 되어있는 데이터를 date type으로 변환을 해주어야 한다. 이게 언어마다 조금씩 달라서 내..
Sep 07 - Java Class를 만들고 싶을 때 Java는 Class가 기본인데 내가 들어가본 프로젝트는 반복되는 특정 기능을 Static으로 선언해 놓고 어떤 클래스에서든지 호출해서 쓰도록 만드는 패턴을 많이 보았다. 마치 코볼처럼... 근데 나는 스테틱 메소드가 별로 느낌상 좋지가 않다. 일단 얘가 자기 할 일을 끝낸 다음에 메모리에 남아있는 것도 그렇고 혹 static으로 시작을 해서 static method 내부의 local variable이 program에 영향을 줄 수도 있다고 생각하면 기분이 석연치가 않다. 그래서 특정 반복되는 메소드를 사용 할 때 class로 빼는 편인데 주로 class로 빼게 되는 이유는 test code를 작성 할 때 특정 클래스 안의 local method 형태..
VBA 별 찍기 예제 별 찍는 알고리즘은 실제 업무에서 쓸일이 없어보이긴 하지만 제어문을 배우는 괜찮은 방법중 하나인 것 같다. 위와 같은 별을 엑셀로 찍어볼 것이다. 소소코드는 매우 간단한다. Sub printStar() number_of_stars = 10 For i = 1 To number_of_stars For j = 1 To i Range("a" & i).Value = Range("a" & i).Value + "*" Next Next End Sub end.
- Total
- Today
- Yesterday
- docker container tissue box
- Linux
- docker container whale
- 이직
- 도커각티슈케이스
- 도커컨테이너
- 싱가폴
- vim
- Sh
- 개발자
- docker container tissue
- 2017 티스토리 결산
- docker container case
- shellscript
- 도커티슈박스
- 도커각티슈박스
- 도커티슈케이스
- docker container
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |