JAVA 프로그래밍
정의
- 프로그램
컴퓨터에게 특정 문제를 해결하기 위해 처리방법과 순서를 기술하여 컴퓨터에 입력되는 일련의 명령문 집합체
-> 프로그래밍된 결과물
- 프로그래밍
하나이상의 관련된 추상 알고리즘을 특정한 프로그래밍언어를 이용해 구체적인 프로그램으로 구현하는 기술
-> 코딩(Coding)
프로그래밍 언어가 필요한 이유
- 컴퓨터가 사용하는 언어: 0 / 1
- 사람이 사용하는 언어: 자연어 / 문자
-> 서로 사용하는 언어가 다르다.
1. 서로 의사소통이 힘들다.
2. 중개자가 필요하다.
다양한 프로그래밍 언어
- 저급언어(Low-Level Language)
: 컴퓨터가 직접 이해할 수 있는 언어(0/1에 가까운 언어)
ex) 기계어, 어셈블리어
1. 실행속도가 빠르다.
2. 기계마다 기계어가 상이하다.
3. 호환성이 없다.
4. 유지관리가 어렵다.
- 고급언어(High-Level Language)
: 개발자가 이해할 수 있도록 소스코드를 작성할 수 있는 언어(중개자 역할을 필요)
ex) JAVA, Python, C++
1. 실행을 위해서는 번역과정이 필요하다.
컴파일러(Compiler) / 인터프리터(Interpreter)
-> 고급언어로 작성된 소스코드의 경우 컴퓨터가 이해할 수 없으므로 컴파일러나 인터프리터를 이용하여 컴퓨터가 이해하고 실행할 수 있는 기계어로 번역(Compile)을 수행한다.
- 컴파일러(Compiler)
: 소스코드를 목적코드로 변환하여 실행한다.
ex) JAVA, C, C++
1. 한꺼번에 읽고 한꺼번에 번역
- 인터프리터(Interpreter)
: 문장단위로 읽어들여 해석을 하여 실행한다.
ex) Python, JavaScript, Ruby
1. 문장단위로 읽어들여 해석을 하여 실행한다.
자바 프로그래밍 언어의 응용분야
JAVA
1. 웹 애플리케이션(Front-end)
- HTML
- CSS
- JavaScript
2. 웹 애플리케이션(Back-end)
- JSP
- Spring Framework
(+ php / asp / py)
3. 안드로이드 애플리케이션
- 모바일 응용APP
- 게임
4. 빅데이터
- 웹크롤링
- 텍스트마이닝
- 시각화
웹 애플리케이션 3요소
1. 웹 표준(Web Standards)
웹에서 사용되는 기술이나 규칙을 의미하여 웹사이트를 작성할 때 이용하는 HTML, CSS, JavaScript 등에 규정과 다른 기종이나 다른 플랫폼에서도 웹페이지가 구현되도록 제작하는 기법 등을 포함한다.
2. 웹 접근성(Web Accessibility)
어떠한 사용자(장애인, 노인 등), 어떠한 기술 환경에서도 사용자가 전문적인 능력없이 웹사이트에서 제공하는 모든 정보에 접근할 수 있도록 보장하는 것을 뜻한다. 또한 모든 사용자가 웹 콘텐츠를 보다 손쉽게 접근할 수 있도록 웹 접근성 지침을 준수하고 설계하고, 실사용성을 고려하여 웹사이트를 구현하였는지 여부의 수준을 의미한다.
3. 웹 호환성(Cross Browsing)
서비스 이용자 단말기의 하드웨어 및 소프트웨어 환경이 다른 경우에도 동등한 서비스를 제공하는 것을 의미한다.
웹 서버는 웹브라우저로부터 HTTP요청을 받아들이고, HTML문서(웹페이지)를 반환한다.
-> HTML문서(웹페이지)에는 그림, CSS, 자바스크립트를 포함한다.
Front-end
-> 사용자에게 시각적으로 보여지는 부분을 의미한다.
- UI(User Interface: 사용자와 컴퓨터 상호간의 소통을 원활하게 도와주는 연계작업
- HTML, CSS, 자바스크립트
- SPA(Single Page Application)
- 앵귤러, 리액트, Vue
Back-end
-> 사용자에게 드러나지 않는 DB공간을 의미한다.
ex) 회원가입, 로그인, 장바구니 등)
- JSP, ASP, PHP, 파이썬
UI(User Interface)
1. HTML (구조/뼈대역할)
-> Hyper Text Markup Language
- 웹페이지 표시를 위해 개발된 지배적인 마크업 언어
2. CSS (외형담당)
-> Cascading Style Sheets
- 꾸미는 역할 담당
3. JavaScript (동작담당)
- 객체 기반의 스크립트 프로그래밍 언어로 웹브라우저 내에서 주료 사용
- 다른 언어를 사용하는데 유용