Upload
arahansa-yong
View
679
Download
3
Embed Size (px)
DESCRIPTION
한빛교육센터에서 자바 과정 교육을 들으면서 포트폴리오로 만들어본 Pc방 프로그램 발표보고서입니다.
Citation preview
PC방 프로그램 구조도
로그인화면
메인화면
개발 환경
MVC 패턴
M
V
C
클라이언트 프레임
메인 프레임
50개의 좌석패널
좌석
회원
재고
카운터 현재유저
계산 메세지
채팅창
채팅창
V컨트롤러
호스트서버
DB쿼리
디비쿼리
M V C
핵심 : 다중채팅 알고리즘
Accept() 메소드 실행 계속 생긴 socket들은 HashMap에 저장시킨다.
호스트 서버의 모든 것
VC
상황설명
경우의 수는 컴퓨터On/Off, 로그인On/Off
컴퓨터 접속상태는 이정도.
가장 기본적인 알고리즘은
다중채팅알고리즘
프로그램 시나리오
V컨트롤 (MF, MAP, SEAT)
서버
유저
메인F (PAN)
하나의 좌석F *50
좌석 모델
M
V C
여기서 문제점! 브이컨트롤러의 주소 동기화
1. 생성할때마다 생성자로 주소 전달
2. 싱글톤패턴사용
브이컨트롤러의 핵심.
가장 힘들었던 트러블슈팅!
V컨트롤
메인F (PAN)
하나의 좌석F *50
Q
New객체는 싱글톤 메소드 아무거나 접근가능
New객체 안에서 생긴 싱글톤값가지는 객체들은 싱글톤의 스태틱만 접근이 가능했다.
가장 힘들었던 트러블슈팅!
Error! 발생!
트러블 슈팅!
Q
• 서버 작업은 가능하면 쓰레드로 주자!
• 단일 프레임(매니지먼트)작업시에는 화면이 잘 나왔는데..
• 같은 main소스를 호출함에도 로그인패널에서 실행하면 매니지먼트 프레임이 실행이 제대로 안됐음. 이유를 알고보니..싱글톤문제가 아니라..서버while문제..ㅠ.ㅠ.
트러블 슈팅!
• GUI와 쓰레드, 네트워크, 파일전송등등에 대한 대략적인 감각~
• 추상적 클래스의 유지보수
• 자바 패턴 조금 맛만..
배운점
매니지
매니지 프로토
매니지 HUD