Loading...
2019.09.29 10:09

[GP] Junit5를 사용한 Java 테스트 코드 작성

이 글은 N.K Dev Lab에서 작성된 글입니다. 안녕하세요. 오늘은 유닛 테스트에 대한 이야기를 해보고자 합니다. 프로그래밍 하다보면 자신이 작성한 코드가 원하는 형태로 작성되었는지 안되었는지를 테스트해보고 싶을 때가 있습니다. 저는 처음 프로그래밍을 GUI 프로그래밍으로 했다보니 그 결과를 보통 눈으로 확인하곤 했습니다. 하지만 CLI 프로그래밍을 하다보면 원하는 결과가 나오는지 안나오는지 일일이 손으로 입력하고 결과를 본다는 것이 쉽지만은 않습니다. 그럴 때 유닛 테스트를 사용해보세요. What is Unit Test ?그렇다면 유닛 테스트는 무엇인가요? 유닛 테스트는 컴퓨터 프로그래밍에서 소스 코드의 특정 모듈이 의도대로 정확히 작동하는지 검증하는 일련의 절차 과정입니다. 좀 더 자세한 설명을 ..

[GP] Spring boot에서 DBMS를 연동하는 방법 - JPA 기본편

이 글은 N.K Dev Lab에서 작성된 글입니다. 지난 포스트에서 간단한 REST API 개발에 대해서 알 수 있었습니다. 아주 쉽게 GET 메소드에 대한 것만 정의하였고 나머지에 대한 메소드는 다루지 않았는데요. 오늘은 모든 REST API를 사용해보면서 테스트 또한 진행할 것입니다. 그러면 DBMS 연동에 대한 이야기 시작하도록 하겠습니다. DBMS Spring boot PHP, Node.js 등에서 DBMS를 연동하기 위해서는 PDO를 사용하거나 mongoose 등의 라이브러리를 사용하는 방법이 존재합니다. 여기서 mongoose는 Node.js에서 MongoDB를 사용하기 위한 라이브러리이고, PDO는 PHP에서 MySQL 등의 DBMS를 연동하기 위한 객체입니다. Spring boot에서는 S..

2016.12.29 16:08

MVC Pattern에 기반한 GUI 라이브러리 JavaFX

Java GUI Programming 라이브러리에는 AWT, SWT, Swing, JavaFX가 있습니다. 저의 경우, AWT와 Swing으로만 프로그래밍 했었는데요. 아마 해보신 분들이라면, Java의 GUI 프로그래밍이 좀 답답함을 많이 느끼실 것입니다. 제가 GUI Programming으로 처음 접했던 것은 Visual Basic 6.0 이었습니다. 딱딱하고 고정적인 느낌의 UI였지만 분명한 것은 컴포넌트를 이용한 프로그래밍어서 굉장히 쉽다는 점과 더불어 디자인을 그냥 마우스로만 왔다갔다 할 수 있었다는 점이 매우 메리트 있었지요. 그리고, 로직만 코드로 짜면, 프로그램이 금방 개발이 되어 생산성이 매우 좋았던 프로그래밍 언어이기도 했었습니다. 물론 지금도 존재하는 언어지요. 하지만 유일한 단점은 ..

2015.11.08 23:41

Android Studio 외부 라이브러리 추가하기

Android Studio를 사용한지 한 1주일 가량 쯤 된 것 같다. Eclipse와 친화적이어서 사용하는 데 큰 불편함은 없었지만 Android Studio에서 제공해주는 방법을 사용한 외부 라이브러리 추가하는 방법을 여기에 쓰고자 한다. 프로젝트 탐색기에 왼쪽 상단에서 정렬 방식을 Projects 방식으로 설정합니다. app 폴더에 libs 디렉토리 안에 jar 파일 등의 라이브러리를 넣어줍니다.그리고, 해당 jar 파일을 오른쪽 클릭하여 'Add As Library' 버튼을 클릭해줍니다. 모두 마치셨으면 [File] - [Project Structure] 로 이동합니다. Dependencies 탭에서 자신이 원하는 jar 파일이 추가가 되었으면 성공입니다. 마지막으로 자신이 해당하는 포로젝트의 B..

2013.08.07 15:55

Java Puzzlers - Scraping the Bottom of the Barrel (Google I/O 2011)

포털을 돌아다니던 중에 재밌는 Java 요소를 발견했습니다. 바로 Google I/O 2011에 있었던 Java Puzzler라는 것인데요. 이 영상에서는 발표자 JOSH BLOCH, JEREMY MANSON 두 사람이 6가지의 Java 프로그래밍 언어의 퍼즐을 발표합니다. 먼저 그 첫 번째, Time for a Change, 영상에 나온 소스대로 입력했을 때, 거스름 돈은 얼마입니까? 라는 문제지요. 여기서 가장 중요한 것은, 자료형이 double이라는 것입니다. 거스름돈은 0.8999999999999999가 나옵니다. 왜 그럴까요?Java에서 double 연산은 정확한 값을 제공해주지 않는다며, big decimal을 사용하라고 권장합니다. 따라서 Big Decimal을 사용해 다시 한 번 연산을 해..

2013.08.01 11:48

Eclipse와 Genymotion을 사용한 Android 개발 환경 구축하기

Eclipse로 Android 개발 환경을 구축해보신 분들은 한 번 쯤은 AVD라는 것을 사용해봤을 것입니다. 오래 전부터 필자는 AVD가 너무 느리고 안정화가 되지 않은 듯하여 안드로이드 개발을 꺼려했지만 Windows 환경에서는 ADT의 추가 플러그인인 Intel x86 Accelator를 설치하면 조금 완화된 환경을 제공받는다고 얘기를 들은 바 있습니다. 하지만 필자가 사용하는 OS는 Ubuntu Linux이며 아직 Ubuntu에서는 이를 지원하지 않는 것으로 보입니다. 그렇다고 최신 환경을 제공해달라는 것도 아닙니다. AVD는 Android의 새 버전이 나올 때마다 바로바로 SDK가 나오지요. 그래서 저는 안드로이드 개발/디버깅을 해야한다고 한다면, 제가 쓰는 안드로이드폰으로 디버깅을 했습니다. ..