본문 바로가기

프로젝트

(7)
[개인 프로젝트] 화면디자인 구성 실제 존재하는 관리시스템과 최대한 유사하게 프로그램을 구현하는 것이 목표였습니다. 그래서 구현한 프로그램의 구조적 특징은 1. 로그인 시스템 2. 작업화면의 탭전환 입니다. JFrame의 GUI 구현방식은 JFrame에 직접 컴퍼넌트를 넣는 것이 아니라 핸드폰의 보호필름처럼 JFrame에 있는 Layer위*에 컴퍼넌트를 담은 컨테이너를(e.g. JPanel) 씌우는 개념이기 때문에 조건(로그인 유무)에 따라 화면을 볼 수 있게 하였습니다. > JPanel과 같은 Container에 원하는 컴퍼넌트를 배치한 뒤 JFrame의 ContentPane위에 씌우면 원하는 디자인으로 GUI프로그램이 구현됩니다. e.g. 로그인을 통한 JPanel 화면전환 public class LoginPanel extends J..
[개인 프로젝트] 재고관리 시스템 - 마무리 3주간 진행한 개인 프로젝트 서머리 입니다. 앞으로 프로젝트를 진행하며 공부했던 클래스 및 기능에 대하여 포스팅이 진행될 예정입니다. 1. 재고관리 프로그램 2. 사용기술 : Java, Oracle DB 3. 개발기간 : 3 weeks 4. 개발사유 : 자바언어와 오라클 DB 학습 후 이를 활용한 프로젝트 진행 - CRUD 기능을 구현 목표 5. 미구현 사항 - 기획단계의 구상과 달리 제품의 납품일자는 프로그램에서 미반영 - 사용자 정보 테이블 : 로그인 기능만 구현된 상태 - DB에 저장된 정보를 변경할 때 사용자로부터 입력받는 값에 대한 유효성 검사 미구현 ( 서버 저장 시 입력되는 값에 대한 유효성검사는 구현) - UI : 프로그램 내 대부분의 컴퍼넌트의 색상, 글꼴 등 디자인 설정은 기본형 적용 ..
[미니 프로젝트] 재고관리시스템 - 기획 Java의 swing 패키지를 통해 GUI를 구현하고 Oracle DB와 JDBC를 공부하고 이용하여 간단한 데이터의 CRUD(입력 및 저장, 검색, 수정, 삭제) 기능을 구현하고자 합니다. 이와 관련하여 구상한 프로젝트의 기획안은 아래와 같습니다. 1. 재고 관리 프로그램 2. 데이터베이스 - Oracle DB, JDBC 활용 > 제품정보* : 제품명, 제품코드, Lot No*, 수량, 생산일자, 만료일자, (스펙정보 - 생략가능) * 참고1: 프로그램의 사용자는 다른 기업에 제품을 납품하는 업체로 가정합니다. 해당 프로그램에서 사용할 제품은 아래처럼 5개로 정의했습니다. -> Camera-R30, Board-D40, Bettery-R21, Sponge-G80, Fabric-C18 * Lot No : ..
[Do it 최종프로젝트] 마무리 ('방송댄스'과목 추가) 지난 오답노트를 통해 부족했던 부분을 고려하여 다시 코드를 작성한 뒤 결과를 확인하고 교재에 적혀있는 마지막 조건을 추가하였습니다. 'Do it 자바 프로그래밍 입문' 교재에서 해당 프로젝트의 코드는 4번 작성하였습니다. 1. 교재 조건만 보고 소스 없이 코드작성 2. 교재 설명 확인 및 코드 타이핑 > 보완이 필요한 부분 확인 3. 위에서 확인한 부분을 반영하여 전체적인 코드 수정 4. 마지막 조건인 '방송댄스'과목 추가 세번째 작성 때 생각보다 많은 시행착오를 겪었습니다. 구성이 조악하지만 책없이 도전해봤고 직접 책의 코드들도 따라쳐봤기 때문에 매우 손쉽게 할 수 있을 것으로 판단했습니다. 하지만 클래스들의 관계를 책과 비슷하게 가져가려고 했을 때 값의 계산과 인스턴스의 저장이 매우 복잡해짐을 확인할..
['Do it' 프로젝트] 1st 에디션 오답노트 [주요 체크사항] 1. 식별자의 단순화 - 간결하게 표기하지만 명확한 의미 전달이 가능한 식별자 필요 2. 낮은 개념 및 문법활용 능력 - 클래스와 객체지향프로그래밍의 이해 (예: 'has a' 관계 활용) - 객체 모델링 [추상화 방향] (super)학생 > (sub)전공 |구분자| (super) 성적 및 등급 > (sub) 과목별 등급 |구분자| mainApp 코드작성을 준비할 때 위처럼 단순화 하여 생각하고 코드를 작성하였지만 교재의 클래스들은 실재 학교시스템처럼 추상화되어 구성되었다. 프로그램을 기획할 때 각각의 요소들이 짜임새있게 구성되어 기능할 수 있도록 생각하는 연습이 필요하다. - 쌍방향 포함관계 교재의 소스코드를 보면 클래스 Subject와 Student가 서로 포함관계인데, 읽으면서도 ..
[Do it 최종프로젝트] 설계 구현 및 클래스 다이어그램 [Do it 최종프로젝트] 객체 및 프로그램 설계 (tistory.com) [Do it 최종프로젝트] 객체 및 프로그램 설계 'Do it 자바 프로그래밍 입문' 의 최종프로젝트인 '학점 산출 프로그램'을 스스로 만드는 것이 목표입니다. 이때, 문제에 대한 정의방법이나, 객체간 관계는 참고할 수 있지만 교재의 소스는 배제 margin1103.tistory.com 지난번에 업로드한 내용에 따라 소스코드를 작성하고 수강생학점을 출력하는 프로그램을 만들어보았습니다. 교재에서 요청된 출력모습은 갖추었으나 완성도는 아직 많이 떨어집니다. 특히, 완성 후 교재의 소스코드를 따라치며 비교해보았을 때 슬픔을 느꼈습니다... [주요 체크사항] 1. 식별자의 단순화 - 간결하게 표기하지만 명확한 의미전달이 가능한 식별자 필..
[Do it 최종프로젝트] 객체 및 프로그램 설계 'Do it 자바 프로그래밍 입문' 의 최종프로젝트인 '학점 산출 프로그램'을 스스로 만드는 것이 목표입니다. 이때, 문제에 대한 정의방법이나, 객체간 관계는 참고할 수 있지만 교재의 소스는 배제합니다. 프로그램을 구현한 뒤 교재의 코드와 비교하여 어떤 부분에서 차이가 있는지 확인합니다. 1. 5명의 학생들이 수업을 듣는 Good School 학교가 존재 2. 총 과목은 2과목(수학, 국어)이며 각 학생들은 모두 수강함. 3. 컴퓨터 공학과와 국어국문학과가 있으며 과별로 각각 수학과 국어가 필수과목이다. 4. 학점을 부여하는 정책은 필수과목(S~F)과 일반과목(A~F)이 서로 다르다. * 향후 과목이 추가되거나 평가정책이 바뀌어도 손쉽게 유지보수할 수 있는 프로그램 제작이 목표. [요구되는 출력형태] [..