(개인 프로젝트) Java로 만든 채팅 프로그램 - IntraMessenger

소개

내용

부대에서 사용하기 위해 개발했던 것으로 지금은 DB가 없어서 작동하지 않으며, 스크린샷도 존재하지 않습니다.

작동 방식

  • 로그인 기능 구현 : ID와 PW를 DB에서 동시에 검색하여 나온 필드가 존재한다면 로그인이 됩니다.
  • 실시간 채팅 구현 : 채팅창이 활성화 되어있는 동안에는 스레드를 생성하여 새로 도착한 메시지가 있는지 계속 확인합니다.

단점 및 취약점

  • DB를 제외하고 별도의 서버가 존재하지 않아서 DB접속을 위한 ID와 PW가 클라이언트에 노출되어 있음
  • 실시간 채팅을 위해서 DB에 로그인하고 쿼리를 보내 계속 확인 작업을 해야하므로 DB에 큰 무리가 있음

어려웠던 점

개발 당시에 Java를 처음 공부했던 시절이라 코드를 비효율적으로 작성해서 유지보수가 어려웠습니다. DB와 Java를 연동해보는 일도 처음이어서 개발하는 컴퓨터로는 프로그램이 작동하는데, 사용자의 컴퓨터로는 Oracle 드라이버가 로딩되지 않아서 프로그램이 작동하지 않는 오류도 있었습니다. 사소한 부분에 오류가 있었고, 부대에서는 정보검색에 한계가 있어서 이 부분을 해결하는 일이 어려웠습니다.

배운 점

일과시간에 항상 이 프로그램을 만들 수는 없기 때문에 저녁에 손으로 코드를 작성하고, 일과시간에는 전날 저녁에 작성한 코드를 입력하는 방식으로 프로그램을 천천히 완성하였습니다. 손으로 코드를 작성하는 일을 많이 하다보니 눈으로 디버깅하는 능력이 좋아져서 컴퓨터로 옮기더라도 오류가 거의 나지 않고 잘 작동하였습니다. 그래서 평소에 소스코드를 눈으로 보더라도 어디가 잘못된 곳인지 찾아내는 능력이 많이 향상되었습니다.