5월 12일 수요일 (3일차) - 자바개요,설치,실행ㅇ

@_@·2021년 5월 15일

Java 1부

목록 보기
1/27

<목차>
ㅇ 자바 개요
ㅇ 자바 설치
ㅇ 자바 실행




ㅇ 자바 수업 진행 방향

  • 자바 등산 힘든 지점 ... 3군데 ㅠㅠ
    • 반복문 / 배열
    • 메소드 / 객체지향 프로그래밍
    • 추상클래스 / 인터페이스

=> 전공자들도 이 부분에서 어려워하니까 포기 하지마. 꾸준히 하다 보면 언젠가는 이해가 돼




ㅇ 프로그래밍을 배우는 이유

  • 사고하는 법을 가르쳐준다.
    사고하는 법을 가르쳐준다.
  • 논리적 사고가 가능 -> 컴퓨팅 사고 Computational Thinking

ㅇ 컴퓨팅 사고

: 문제 분해, 추상화, 알고리즘, 자동화

예)

  • 자주 쓰이는 건 냉장고에 넣어둬 (cf. 캐시 메모리)
  • 우선순위를 정할 때도 컴퓨팅 사고가 필요해 (물론 정답은 없어)
  • 배낭여행 방문 국가를 어디 먼저 다니면 좋을지 정하고 싶을 때 -> 최단거리 알고리즘
  • 경로 계산, 효율적 방법

ㅇ <게임> 최단시간 다리 건너기
최단 시간 다리 건너기 게임

  • 이동시간 : 나1 조교2 관리인5 교수10
  • 조건 : 동시에 2명이 건널 수 있어. 늦는 사람의 시간으로. 무조건 손전등 때문에 돌아와야 해. 최소시간
  • 내답) 10 1 5 1 2 =19
    정답) 2(1) / 1 / 10(5) / 오! 거기 있는 2분이 손전등 받아서 돌아오고 2  / 남은 1,2분 같이 가면 2 = 17
  • 해결의 열쇠1 : 가장 느린 두 사람을 함께 건너게 함으로써 그들이 낭비하는 시간을 최소화했으면 해
  • 해결의 열쇠2  : 몇 번은 손전등을 들고 다시 돌아와야 하므로 가장 빠른 사람이 그 일을 했으면 해



ㅇ프로그래밍 언어의 종류가 엄청 많은데 자바를 배우는 이유

  • 가장 많이 써서
    (웹) 전자정부프레임워크의 기반 언어가 자바 - 즉, 공공기관
    (모바일) 안드로이드 점유율이 86%. 즉, 기본 언어가 자바
  • 하나의 언어를 제대로 마스터하면 다른 언어 손쉽게 넘어가
  • 자바는 절차지향과 객체지향 모두 이해할 수 있어
  • 단점) 고전언어이다 보니 난이도 있어

ㅇ 자바의 역사

  • 자바의 아버지 제임스 아서 고슬링
  • 첨에는 오크라고 하려고 했는데 이미 상표등록 되어 있어서 / 자바 만든 팀이 커피, 특히 자바커피를 좋아해서 이름이 자바
  • 처음에는 가전제품에 들어가는 (세탁 버튼 누르면 세탁기가 돌아가는 = 임베디드 언어)
    가전제품 업데이트 할 때 as센터에 매번 방문 너무 불편 -> 모든 가전제품에 인터넷을 연결해서 저절로 업데이트 시키면 어떨까 = IoT

ㅇ 자바 잡썰

  • 지금 오라클(자바)이랑 안드로이드(구글) 싸우는 중ㅋㅋ 그러다가 코틀린이라는 언어 구글이 만듦
  • 제임스 아서 고슬링 오늘 아침에 기조연설 기사링크
    : 아마존웹서비스(AWS)는 오는 5월 11~12일 ‘AWS 서밋 온라인 코리아 2021’을 개최한다고 6일 밝혔다. 올해 7회째를 맞는 AWS 서밋은 다양한 업계 참가자들에게 온라인 및 대면 세션을 제공한다.
  • 회사 썬에서 만들어서 오라클이 인수 - 지금은 오라클선이라는 회사에서 개인에게는 무료로 제공, 회사는 라이센스 비용 내긴 해 디즈니야ㅋㅋㅋ



ㅇ 자바 설치

ㅇ 자바 특징 : WORA(워라) Write Once, Run Anywhere 한 번만 작성하면 어디서든 실행된다.

  • 자바는 플랫폼 독립적 : 어느 운영체제에서든 실행할 수 있게 해주는 JVM(자바 가상 머신)이라는 중간 매체 있음
  • 자바의 특징
    • 멀티스레드 : 한 번에 동시에 여러 가지 처리 가능

ㅇ 작업공간

  • 의자를 만들려면 뭐가 필요할까? 목수 나무 못 망치 설계도 톱 & '작업공간'

ㅇ 자바도 작업공간을 먼저 확보하자!

  • JDK 자바 개발 도구 - 설치 (오라클계정)
  • JRE 자바 실행 환경 : 자바 언어를 통해 만들어진 프로그램을 실행시킬 수 있음.
    • 자바 개발할 때 도움을 주는 라이브러리들 존재 (★라이브러리는 JRE에 있어★)
  • JVM 자바 가상 머신 : 어느 운영체제에서든 실행할 수 있게 해줌.
  • IDE 통합 개발 환경 : 이클립스 설치

ㅇ 2가지 설치해야 해

  1. JDK
  • 프로그램을 만들려면 JDK를 설치해야 해
  • 자바로 만들어진 프로그램을 실행하려면 JRE만 설치해도 돼
    • 마인크래프트는 자바로 만들었어. 이 게임 하려면 JRE 깔아야 해
  • 19버전까지 나왔지만 우리는 공부를 위해 8버전 깔기 (구글에 jdk download 1.8 검색)
    • developement만 적힌 버전 다운로드 해야 해. demo버전 깔면 안 돼!
  • (22년 8월 23일 추가) 버전 업데이트가 많이 돼서 겨우 찾음 ㅋㅋ
    https://www.oracle.com/java/technologies/javase/javase8u211-later-archive-downloads.html
  • 수업 진행한 버전은 Java SE Development Kit 8u291

  1. IDE : 그 중 이클립스 설치
  • JDK로 만들 수도 있지만 메모장에 써서 컴파일시켜서 실행시키려면 너무 불편해
    • 포크레인과 같은 거야. 손으로 파는 것 보다 편해. 대신 포크레인 쓰는 방법 알아야지
  • 실행시켜서 2번째(톱니바퀴모양)를 눌러야 웹개발 가능. web developer
  • 수업 진행한 버전은 2021-03 https://www.eclipse.org/downloads/packages/release/2021-03/r
  • 꼭 2번째로 설치해야 웹개발까지 가능해

(6월 2일 추가 개념)
ㅇ 라이브러리를 따로 두는 이유

  • JVM은 사용할 수 있는 가용메모리가 있어
  • JDK 안에는 수많은 사용자정의 데이터타입 탑재되어 있는데
    간단한 프로그램 짤 건데 이 전체 파일들을 JVM에 탑재시키는 건 비효율적이야
  • 그래서 라이브러리를 따로 두고 코드를 짤 때 필요한 것 하나만 쓰겠다 명시 하는거야
    예) 스캐너를 사용하기 위해 맨~ 위에 임포트 스캐너 문장 적는 것
  • 내가 만든 코드(프로그램이)가 구동될 때 이것만 쏙 뽑아서 JVM에 올려서 실행시키는 거야


ㅇ 자바 실행

ㅇ 워크 스페이스 잡아주기

  • 하나의 프로그램을 만들 때마다 이걸 '프로젝트' 라고 해
  • 워크 스페이스 : 작업하는 공간 : 프로그램 만든 것들을 여기저기 저장하는 게 아니라 한 폴더에 저장
  • 바탕화면 - 새폴더 - JavaStudy 폴더 만들기
  • Browse : 워크스페이스 경로 어디로 할 거야? 물어보는 것
  • 우리가 방금 만든 JavaStudy로 잡아줘


ㅇ Perspectives (퍼스펙티브)
: 개발 환경에 최적화되어 있는 상태

  • java ee(커피콩)는 웹 개발에 최적화되어 있는 상태라는 뜻
  • 우리는 웹 개발 할 것 아니기 때문에 '+모양'을 클릭해서 java를 오픈


ㅇ 자바 프로젝트 Create

  • 그냥 프로젝트 말고 자바프로젝트 만들어야 해
  • 이름은 그날 날짜
  • 모듈 뜨는 사람들은 돈 크리에이트 눌러야 해 ★★
  • 자바 코드를 작성할 수 있는 파일은 Class 파일
  • src 마우스 우클릭 - 뉴 - 클래스

CF) 프로그래머들끼리 한 약속 (꼭 지켜야 하는 건 아니지만, 잘 지키면 신뢰도가 높아져) : 클래스 이름에 첫 글자는 대문자로 시작한다.

  • main 어쩌고~~ 클릭 필수 ★
    프로그램을 실행시켜주는 녀석이야
    • 클릭 까먹었을 시 : 'main + 컨트롤 + 시프트 + 엔터'로 문장 자동완성 넣어주기

ㅇ 실행 창 이해 (삼분할)

1. 패키지 익스플로러 : 프로젝트 파일 목록들을 볼 수 있는 창
2. 메인 부분 : 클래스를 보거나 코드를 작성할 수 있는 창
3. 프로그램 실행했을 때 출력을 보여주는

ㅇ 헬로 월드 출력하기

  • 코드를 쓸 때는 public static void main(String[] args(아규스라고 읽음)){ ~이 중괄호 안에 작성해야 해~}

  • 프린트 : System.out.println( );

    • 프린트 할 때 시스템 첫글자는 대문자
    • ln은 라인의 약자
    • 자바는 마지막에 ; 세미콜론 필요해 ★★
    • 문자열 출력은 " " 쌍따옴표만
  • 상단 재생 화살표 클릭하면 돼. 단축키는 컨트롤 f11

  • 주석 달기 : 컴퓨터는 실행하지 않고 그냥 넘어가

    • 나중에 까먹을 수도 있으니, 문서를 다시 열었을 때 이해할 수 있도록 설명을 달아놓는 것
    • 자바는 // 한 줄 (파이썬은 #)
    • /* 여러 줄 */
    • 코드 사이에 넣는 주석은 /** 이렇게 **/ (이건 거의 사장된 방식)


ㅇ 새로운 클래스 만들기

  • src 혹은 default package 우클릭 - new - class - 클래스이름 넣고 - main체크★


profile
STEP BY STEP

0개의 댓글