제작기간 3주 제작 인원 5명 사용 기술 : Java Swing, Oracle Database 주요 기능 : 로그인, 회원가입, 쪽지, 귓속말, Socket을 이용한 채팅, 그림 그리기. 정처기 필기 시험으로 인해 프로젝트 발표 직후 진행하지 못했던 코드리뷰를 2주가 지나서 드디어! 5명이 모여서 코드리뷰를 2시간 가량 진행했다. 코드리뷰하며 헷갈렸던 점 정리 더보기 11) 서버가 클라이언트를 낚아채서 핸들러와 짝궁 지어줄 때 list의 주소값을 주는 것이기 때문에 해당 리스트에 추가되는 값, 제거되는 값이 동일하게 적용된다. 만들어진 list 객체를 넘겨주는 게 아니라 list객체가 있는 곳(주소)을 알려주는 것이다! 2) 최초 입장 메시지 처리 시에 dto에서 닉네임 값을 꺼내서 필드에 선언해둔 ni..
미니 프로젝트 캐치마인드가 드디어 완성단계에 접어들었다. 이메일인증, 스레드를 통한 실시간 유효성 검증, 음악재생, 채팅창 구성, db 연동. 로그인 이후 JTable과 DefaultTableModel, 스레드와 db연동을 활용한 접속자 및 방 목록 노출. 포트의 분할을 통한 채팅 데이터의 분리. 그리고 드디어 방금 ObjectOutputStream을 통해서 그림에 대한 좌표값을 DTO에 담아서 네트워크로 주고받는 것을 구현하는데에 성공했다. 처음엔 너무나 이해 안 가는 부분이 많았던 네트워크 TCP 채팅이었는데. 여전히 이해가 안 가는 부분이 많다. 그러나.. 어쨋든 최소한의 구동 방법에 대해 이해하게 되어 구현할 수 있었다. 나는 로그인 창에 없는 채팅창을 만들며 채팅을 복습했고 대기실과 게임방을 만..
1. 명령프롬프트에서 컴파일과 실행 동시에 하기 javac -encoding UTF-8 ClassName.java && java ClassName UTF-8로 인코딩하는 방법을 검색하다가 위와 같은 명령어를 발견. 두 줄에 나눠 쓸 것을 && 를 사용해 이어붙여서 한 문장으로 사용 가능. EditPlus에서 Eclipse로 갈아탄지 좀 됐지만 이걸 이제 알았다니 크흠.. 2. 네트워크 Socket 연습 채팅 구현 방식이 나의 상상과 약간 다른 부분이 있었다. 입력을 하면 내 화면엔 내 입력값이 들어가고 해당 입력값을 서버와 동기화(?)해주는 방식으로 진행되는 줄 알았는데 나의 입력마저도 서버로 갔다가 서버에서 전달해주는 값을 리턴하는 것이었다. 물론 이게 현재 TCP 동기 방식으로 진행하기 때문인지 까지..