swing
-
[Tetris] ObjectMapperJava 2022. 4. 30. 19:34
기존에는 Tetris 게임의 scoreboard 처리를 txt 파일 I/O로 처리했었다. 하지만 이 방식이 project를 jar 파일로 만들고 나면 잘 작동하지 않는다는 것을 알게된 후 JSON 파일로 바꾸기로 결심했다. 바뀌는 점을 최소화하기 위해 기존 클래스의 함수 이름을 그대로 사용했다. JSON(Javascript Object Notation) "키:값" 쌍으로 이루어진 데이터 객체를 전달하기 위해 사람이 읽을 수 있는 텍스트를 사용하는 포맷 직렬화(Serialize): 객체들을 문자열로 바꾸어주는것, Object -> String 역직렬화(Deserialize): 데이터가 모두 전송된 이후 문자열을 기존의 객체로 회복시켜주는 것 String -> Object ObjectMapper: JSON ..
-
[Java] 유닛테스트 작성하기Java 2022. 4. 26. 21:06
학교 소프트웨어 공학 과목에서 진행하고 있는 테트리스 프로젝트 처음 해보는 팀프로젝트인데 막상 해보니 제일 힘든건 유닛테스트 작성하기였다. 그렇지만 오늘 유닛테스트를 작성해보니 생각치도 못한 버그를 발견할 수 있었다. 다음에도 작성할 일이 생길 것 같아서 적어본다. 프로젝트 우클릭 -> New -> Other -> Java -> JUnit -> JUnit Test Case 이때 Junit 패키지를 다운로드 하지 않았다면 다운로드 해주어야 한다. Next 눌러주고 Name 항목에 테스트 하려는 클래스명+Test 적어준다음 Class under test 항목에 테스트 하려는 클래스를 Browse 해서 선택해준다. Ok를 눌러주면 JUnit test class가 생성된다. @Test 어노테이션을 붙여주고 As..