2018년 2학기 산업수학 1¶
평가¶
- 중간: 30
 - 기말: 60
 - 출석/참여/과제: 10
 
교재¶
- 명품 자바 프로그래밍 4판, 황기태, 생능출판사
 
자바 시작¶
- 컴퓨터와 프로그래밍
 - 자바의 출현과 WORA
 - 개발 도구와 자바 플랫폼
 - 자바 프로그램 개발
 - 이클립스를 이용한 자바 프로그램 개발
 - 자바 언어의 활용
 - 자바의 특징
 
자바 기본 프로그래밍¶
- 자바 프로그램의 구조
 - 식별자
 - 자바의 데이터 타입
 - 자바에서 키 입력
 - 연산
 - 조건문
 
반복문과 배열 그리고 예외 처리¶
- 반복문
 - continue 문과 break 문
 - 배열
 - 다차원 배열
 - 메소드에서 배열 리턴
 - main() 메소드
 - 자바의 예외 처리
 
클래스와 객체¶
- 객체 지향과 자바
 - 자바 클래스 만들기
 - 생성자
 - 객체 배열
 - 메소드 활용
 - 객체의 소멸과 가비지 컬렉션
 - 접근 지정자
 - static 멤버
 - final
 
상속¶
- 상속의 개념
 - 클래스 상속과 객체
 - 상속과 protected 접근 지정자
 - 상속과 생성자
 - 업캐스팅과 instanceof 연산자
 - 메소드 오버라이딩
 - 추상 클래스
 - 인터페이스
 
모듈과 패키지 개념, 자바 기본 패키지¶
- 패키지(Package)
 - import와 클래스 경로
 - 패키지 만들기
 - 모듈 개념
 - 자바 JDK에서 제공하는 패키지
 - Object 클래스
 - Wrapper 클래스
 - String 클래스
 - StringBuffer 클래스
 - StringTokenizer 클래스
 - Math 클래스
 - Calendar 클래스
 
제네릭과 컬렉션¶
- 컬렉션과 제네릭
 - 제네릭 컬렉션 활용
 - 제네릭 만들기
 
입출력 스트림과 파일 입출력¶
- 자바의 입출력 스트림
 - 문자 스트림과 파일 입출력
 - 바이트 스트림과 파일 입출력
 - 버퍼 입출력과 파일 입출력
 - File 클래스
 - 파일 입출력 응용: 파일 복사
 
자바 GUI 기초, AWT와 스윙(Swing)¶
- 자바의 GUI
 - 자바 GUI 패키지
 - 스윙 GUI 프로그램 만들기
 - 컨테이너(Container)와 배치(Layout)
 - FlowLayout 배치관리자
 - BorderLayout 배치관리자
 - GridLayout 배치관리자
 - 배치관리자 없는 컨테이너
 
자바의 이벤트 처리¶
- 이벤트 기반 프로그래밍(Event Driven Programming)
 - 이벤트 객체
 - 이벤트 리스너
 - 어댑터(Adapter) 클래스
 - KeyEvent와 KeyListener
 - MouseEvent와 MouseListener, MouseMotionListener, MouseWheelListener
 
기본적인 스윙 컴포넌트와 활용¶
- 스윙 컴포넌트 소개
 - JLabel, 레이블 컴포넌트
 - JButton, 버튼 컴포넌트
 - JCheckBox, 체크박스 컴포넌트
 - JRadioButton, 라디오버튼 컴포넌트
 - JTextField,텍스트필드 컴포넌트
 - JTextArea, 텍스트영역 컴포넌트
 - JList, 리스트 컴포넌트
 - JComboBox, 콤보박스 컴포넌트
 - JSlider, 슬라이더 컴포넌트
 
그래픽¶
- 스윙 컴포넌트 그리기
 - Graphics
 - 도형 그리기와 칠하기
 - 이미지 그리기
 - 클리핑(Clipping)
 - 스윙의 페인팅 메커니즘
 
스레드와 멀티태스킹¶
- 멀티태스킹
 - 자바의 멀티스레딩
 - 스레드 만들기
 - 스레드 생명 주기와 스케줄링
 - 스레드 종료
 - 스레드 동기화(Thread Synchronization)
 - wait(), notify(), notifyAll()을 이용한 스레드 동기화
 
고급 스윙 컴포넌트¶
- 메뉴 만들기
 - 툴바
 - 툴팁
 - 다이얼로그 만들기
 - 팝업 다이얼로그
 - 파일 다이얼로그
 - 컬러 다이얼로그
 - 탭팬
 - 자바 오디오 다루기
 
네트워크¶
- TCP/IP
 - 소켓 프로그래밍
 - 서버-클라이언트 채팅 프로그램 만들기
 - 수식 계산 서버-클라이언트 만들기 실습
 
JDBC 프로그래밍¶
- 데이터베이스
 - MySQL
 - MySQL Workbench를 이용한 데이터베이스 활용
 - 자바의 JDBC 프로그래밍
 
프로젝트¶
- 학교 시간표 파싱하여 데이터베이스에 저장하고 디비에 있는 내용을 불러오는 프로그램
 
- 배운 내용들을 이용
 - 이해
 - 응용
 
- 이메일 서버에 접속해서 이메일 목록을 가져와 출력하는 프로그래밍을 작성합니다.