복습방법
1. 개인공간에 기록하기
2. 한줄 한줄마다 주석을 달아서 무슨 코드인지 설명 적어보기 (ex. //클래스를 생성한다 등)
수업내용
자바 응용 프로그램
java- 기본문법, 객체지향(클래스, 객체, 상속, 추상화, 인터페이스, 다형성),
java의 API, 콜렉션(자료구조), I/O, network
database- 오라클, SQL
java와 database연동
자바 웹 프로그램
웹 기본- HTML, CSS, javascript
자바 웹- Servlet, JSP, Model1/Mode2방식의 웹 어플리케이션 개발
스프링
스프링 프레임워크, 스프링MVC, 스프링부트
마이크로서비스
스프링 부트와 스프링 클라우드를 이용한 마이크로 서비스 개발
데브옵스
도커, 쿠버네티스, AWS 마이크로 서비스 배포
linux- 기본 명령어
프로그래밍 언어
java - 업무용 프로그램, 웹 애플리케이션의 제작
c, c++ - 기계, 장치의 제어 및 인터페이스
python - 데이터분석, 머신러닝
javascript - 사용자와 상호작용 (웹 브라우저 내)
sql - 데이터베이스 액세스
프로그램
작업지시서 - 구체적, 작업순서에 맞게 기술
* 해당 업무에 대한 정확한 분석이 선행되어야 한다. -> 은행이면 은행, 공공기관이면 공공기관 등 일관성 있는 프로젝트를 해야 좋음.
프레임워크와 라이브러리
프레임워크 - 비계, 뼈대, 틀, 개발 플랫폼
라이브러리 - 툴박스(도구모음)
자바 개발환경 구축
자바개발도구 - JDK: 자바개발도구, JRE: 자바실행환경
통합개발툴 - Eclipse, intelliJ, visual studio code
Java
oak프로그래밍 언어가 자바의 기원이다. (전자기기에서 실행되는 프로그램을 개발할 때 사용되는 프로그래밍 언어)
썬 마이크로시스템에서 1995년에 발표한 프로그래밍 언어 (제임스 고슬링)
현재는 Oracle의 소유
특징
* 크로스 플랫폼을 지원한다.
- 자바가상머신이 설치되어 있기만 하면 운영체제나 하드웨어 플랫폼에 상관없이 자바 응용프로그램을 실행할 수 있다.
* 객체지향 프로그래밍 언어이다.
- 레고블록처럼 각각의 블록에 고유한 기능을 구현하고, 그 블록들을 조립해서 완성된 프로그램을 개발하는 방식
- 블록 하나하나가 객체에 해당하며, 그 블록은 설계도를 이용해서 만들어진다.
- 하나의 설계도로 같은 블록을 여러 개 만들어낼 수 있다.
- 기존 블록보다 더 좋은 블록이 개발되면 언제든지 새로운 블록으로 교체가 가능하다.
- 재사용성, 확장성이 매우 뛰어나다.
( 각 객체 = 블록, 클래스= 설계도 )
* 플랫폼 독립적인 언어이다.
- 시스템의 소프트웨어, 하드웨어 사양에 상관없이 자료형의 크기가 고정적 ( c언어는 크기가 막 변함 )
* 자바가상머신이 메모리관리작업을 자동으로 수행한다.
- 개발자가 메모리 관리 기능을 신경쓸 필요없이 업무로직의 구현에만 집중할 수 있다.
* 멀티 스레드를 지원한다. (동시작업)
* 함수형 프로그래밍을 지원한다.
자바
소스코드 작성 (.java = 확장자, 이때는 확장자가 여러 가지 가능)
App.java
Sample.java
소스파일을 실행파일로 변환 - 자바개발도구에서 제공 (C:\Program Files\Java\jdk-18.0\bin)에서 제공
(확장자는 무조건 class)
App.class
Sample.class
App.java 소스파일로 App.class 실행파일 생성하기
javac.exe App.java -----> App.class
javac.exe 소스파일명 ---> 실행파일 생성
javac.exe : 컴파일러 프로그램
*컴파일: 소스파일을 실행파일로 변환하는 작업
실행파일을 실행
java.exe 실행파일명
*.class 확장자는 생략 (실행파일은 무조건 .calss니까)
App.class 실행파일 실행하기
java.exe App
*자바 가상머신이 실행되고, 자바 가상머신은 App.class 파일을 읽어서 실행한다.
프로그램이 실행됨
소스파일: 개발자용(사람) 작업지시서 , 텍스트파일
실행파일: 자바가상머신용 작업지시서, 바이트코드파일
*바이트코드: 자바가상머신이 이해할 수 있는 코드
*컴파일러: 소스코드를 바이트코드로 변환
소스파일 컴파일 실행파일 실행
Sample.java ------> javac Sample.java -------> Sample.class -------> java Sample
1. 자바가상머신이 실행된다.
2. 자바가상머신이 Sample.class파일을 메모리로 로딩한다.
3. Sample.class의 메인메소드 내의 수행문을 실행시킨다.
*자바, 이클립스 설치 후이클립스 encoding (UTF-8로 설정)
*src -소스파일 저장 , bin -실행파일 저장
* 자바의 예약어 (보라색 글씨)-자바에서 특별한 목적으로 사용되도록 이미 예약된 단어-예약어는 정해진 위치에 정해진 목적으로만 사용한다.
*대표적인 예약어: public, class, package, void, if, while, int, long, double, char, for, break, continue, throws 등등
*이클립스에서 만든 자바 소스파일을 저장하면 -> 컴파일 -> 클래스파일로 바뀜
* 단축키
main + ctrl+space = public static void main(String[] args) { }
*리터럴(Literal) : 소스코드에 고정된 값
정수 10 10_000_000
실수 3.14 0.13 .13
문자 'A' '가'
문자열 "안녕하세요" "서울특별시 종로구 봉익동"
package day1;
// 클래스명이 Hello인 설계도를 정의
// public : 공개된 설계도임을 나타냄 (예약어)
// class : 설계도를 정의할 때 사용됨 (예약어)
// Hello : 설계도의 이름을 나타냄 (식별자)
public class Hello {
// 메소드명이 main인 메소드를 정의
// public : 공개된 메소드임을 나타냄 (예약어)
// static : 정적 메소드임을 나타냄 (예약어)
// void : 반환값이 없는 메소드임을 나타냄 (예약어)
// main : 메소드의 이름을 나타냄 (식별자)
// String agrs[] : 매개타입과 매개변수명
public static void main(String[] args) {
// 수행문
// System.out : 시스템의 표준출력장치 - 모니터(혹은 콘솔화면)
// System.in : 시스템의 표준입력장치 - 키보드
// println() : 내용을 출력한다.
// "Hello, java!" 문자열을 시스템의 표준 출력장치에 출력해라.
System.out.println("Hello, java!");
}
}
// 예약어 : 사용위치와 사용목적이 이미 결정된 키워드, 식별자로 사용할 수 없다.
// public class static {} // 오류
// 식별자 : 다른 것(클래스, 메소드)과 구분되는 이름
// 개발자가 임의로 정하는 것
이응수
eungsulee@hanmail.net
'수업내용 > Java' 카테고리의 다른 글
[2022.09.08.목] 배열 (0) | 2022.09.08 |
---|---|
[2022.09.07.수] switch문, 반복문 (0) | 2022.09.07 |
[2022.09.06.화] 제어문과 반복문 (if문, for문) (0) | 2022.09.06 |
[2022.09.05.월] 연산자 (0) | 2022.09.05 |
[2022.09.02. 금] 변수 (0) | 2022.09.02 |