import java.util.Scanner;
public class TriangleProperty {
public static void main(String[] args) {
int a, b, c;
String result;
Scanner scanner = new Scanner(System.in);
a = scanner.nextInt();
b = scanner.nextInt();
c = scanner.nextInt();
scanner.close();
result = classifyTriangle(a, b, c);
System.out.println(result);
}
public static String classifyTriangle(int a, int b, int c) {
if ((a + b <= c) || (a + c <= b) || (b + c <= a))
return "Invalid";
if (a == b && b == c)
return "정삼각형";
if (a == b || b == c || a == c)
return "이등변삼각형";
return "비등변삼각형";
}
}
앞에서 말한
"그리고 테스트하려는 단위를 결정할 때 프로그램 코드상의 수행경로를 정의하고, 그 경로를 커버하는 테스트 케이스를 수행하면 된다. "
=> 여기서 세 정수를 입력 받아 정삼각형인지 이등변, 비등변삼각형인지 알아보는 수행경로를 정의했고,
classifyTriangle 메소드 단위를 테스트할 것이다.
JUnit5 도구를 사용할 것인데 JDK에 설치되어 있다.
프로젝트 오른쪽 버튼을 눌러서 Build Path > Add Libraries 눌러서 JUnit 선택하면 된다.
2-2) 테스트 실행
그리고 작성한 TriangleProperty.java 클래스 파일에 오른쪽 버튼을 눌러서 JUnit Test Case 선택해서 생성해준다.
1) 채팅할 때 화면에 나오는 나는 오른쪽, 친구는 왼쪽 정렬이 너무 어려웠다. 하아ㅏㅏㅏㅏ 이걸로 거의 일주일은 날린 것 같다.
처음에 JTextArea를 사용했다. 그런데 왼쪽, 오른쪽 정렬이 따로 되지 않는 것과 이미지는 불가능하다는 것.
그래서 구글링하다가 JTextPane을 발견했다. 이것을 사용하면 될 것 같은데 정보가 많이 없었다..ㅠㅅㅠ
일주일동안 삽질하다가 인턴 같이 하는 오빠가 메소드 하나하나씩 분석해가면서 성공시켰다.!!!!!!!!!!!!!!!!!!!!!!
덕분에 잘 적용할 수 있었다. 고마워요...
아 지금 이거 적다가 나머지 힘들었던 2가지가 기억나질 않는다. (큰일) 2가지만 적어야지..
2) 그룹채팅이 아니라 1대 1 채팅 만든 것.
이것저것 참고해가면서 채팅 프로그램을 만드는데 보통 다 그룹채팅 형식이었다. (서버쪽에서 연결된 모든 클라이언트를 저장하는데, 메시지를 받고 보낼 때 모든 클라이언트한테 전송함 - 조건을 주지 않으므로 더 간단함.) 그래서 처음 소켓 통신 성공시키고 대화하는데 웃겼다. 내 아이디로 로그인해서 A친구 채팅방에 글을 쓰고 전송 누르면, A친구한테만 전달되는 것이 아니라 열려 있는 모든 채팅방 친구들한테 다 전달이 된다.ㅋㅋㅋ
하지만 내 채팅은... 카톡처럼 친구 리스트(?)를 누르면 그 친구랑 대화하도록 GUI를 만들어서 그럴 수 없다구,,, 1:1 이어야 한다구.... 결론은 성공시켰지만 생각보다 간단하지 않았다. 채팅창의 정보도 저장하고 있어야하고 보내는 사람, 받는 사람 비교 도 필요하고! 아 그냥 직접 해봐야 알 수 있는 것..
코드 정리를 더 완벽하게 하고 싶은데 여기서 마무리하려고 한다.
시간을 길게 가진다고 되는 것이 아니라는 걸 너무 느꼈기 때문에...@!@!
나중에 폭풍성장하고 그때 다시 와서 보면 더 완벽하게 할 수 있지 않을까 싶다ㅎㅎㅎ
KEVotingTalk
자바 스윙을 이용한 소켓 채팅 프로그램
사용 기술 : JAVA
설명 : 1 대 1 채팅 KEVotingTalk입니다. GUI를 구현하기 위해 swing을 이용했고 서버와 클라이언트는 소켓 통신을 통해 연결됩니다. 마지막으로 회원관리를 위해 MySQL DB 사용했습니다.