TY blog

영화예매 시스템 본문

개인 프로젝트

영화예매 시스템

주짓수하는 개발자 2024. 1. 15. 16:24

나의 대학생 시절 가장 기억에 남는 개발 프로젝트를 하나 얘기한다면

아마 2학년 때 진행했던 JAVA Swing 기반으로 개발한 

영화예매 시스템을 얘기할 거 같다. 

 

지금으로부터 6년이나 지난 일이지만

3개월 정도 진행한 프로젝트의 느낀 점, 경험을 정리하려 합니다. 

 

1. 프로젝트 초안 구성

 

프로젝트 기능

 

처음으로 개발 전 프로젝트를 설계하고, 기능을 직접 생각해 초안을 작성했습니다.

 

2. Mysql DB 사용

 

개발하면서 계속 의문이 들었었는데 예약된 좌석을 어떻게 기록할까? 회원을 관리할 방법이 뭐가 있을까? 이런 의문을 가졌는데 지금에서야 프로그램이 종료돼도 데이터가 남아 있을 DB가 필요하다고 느끼지만, 그 당시에 데이터 베이스 개념도 뭔지 모르고 단순히 Java만 알고 있던 상태라 프로젝트를 위해 DB를 인터넷이나 관련 책으로 스스로 정보를 찾아가며 테이블, 쿼리를 혼자 공부했고 최종적으로 무료로 제공하는 학습용 Mysql 디비를 JDBC 드라이버를 이용해 프로젝트까지 연동하는 것에 성공하고 데이터 조회, 수정, 삭제 생성에 대해 익히는 계기가 되었습니다.

 

3. Java String 변수 값 비교 

 

로그인에서 아이디 중복검사, 패스워드 DB일치 등등 String 변수의 값을 비교하는 경우가 많아 == 연산자를 사용해서 비교했었는데 String의 값 비교는 같은 객체인지 비교하는 == 연산자보다는 equals() 함수를 이용해서 비교해야 한다는 것을 그 당시에는 몰라 하루동안 나의 의도대로 코드가 돌아가지 않아 고민을 했었는데 결국에는 해결했지만, 머리를 쥐어짜 내던 기억이 아직까지도 생생하고 개발자로 나아가려면 기본적이 기초 지식도 중요하다고 생각되는 계기가 됐습니다.

 

4. 개발자의 입장보단 사용자 입장에서 생각하기 

 

로그인을 시도할 때 정보를 다 입력하고 엔터를 누르면 로그인 진행하기,  예약 버튼을 누르고 한번 더 사용자에게 확인시키기 등등 개발을 진행하면서 동시에 내가 쓰는 입장이 되어 프로그램을 사용하면서 불편한 사항, 사용자가 일으킬 수 있는 오류를 체크하고 개발하면서 사용자 입장에 대해 고민을 많이 했습니다. 

 

5. 프로젝트 완성

 

최종 메인 UI
로그인 회원가입

로그인 회원가입 진행하고 DB 조회, 저장하기 

개봉예정 영화, 영화 시간표 선택해서 예매하기

DB에 저장되어 있는 데이터를 가지고 개봉예정 영화 조회, 상영 중인 영화 시간대 확인하기

 

좌석 선택하기

좌석위치에 따라 요금 다르게 지정(RED, GREED)하고 선택한 좌석수에 따라

label을 동적으로 변경

 

예매 완료

최종 예매 완료

예약정보 검색, 매출액 확인

 

처음 초안에는 좌석 예매밖에 없었지만, 

개발을 진행하다 보니 예약정보 검색, 매출액 확인, 로그인, 회원가입 등등 

많은 기능이 필요하다는 것을 생각하고 구현에 진행했습니다. 

 

프로젝트를 진행하면서 내가 개발을 위한 설계, 프로젝트에 필요한 기능을 스스로 학습해 프로그램에 적용할 수 있다는 자신감과 그로 인한 성취감을 얻었고 사용자 입장에서 생각해 볼 수 있는 좋은 계기가 되었습니다.  

'개인 프로젝트' 카테고리의 다른 글

여행일정 공유 APP  (0) 2024.01.23
Comments