-
(개발지식) 6 - Java / jsp / JavaScript / JQuery 개념 및 구동순서 + 언어발전 순서개발/개발지식 2023. 8. 29. 21:01
spring 을 통해 jsp 를 사용하면서 구동되는 순서가 헷갈렸다.
Java / jsp / JavaScript / JQuery 에 대한 개념이 명확하지 않다는 결론과 동시에 정리해보고자 한다.
■ Java / jsp / JavaScript / JQuery 개념
- JAVA (자바_서버)
: 여러 소프트웨어를 생성하는 객체지향 프로그래밍 언어이다. 보안성이 뛰어나고,
javascript와 다르게 서버에서 실행되는 언어이다.
- JSP (JAVA Server Pages_서버)
: HTML내에 직접 자바코드를 삽입하여 웹 서버에서 동적으로 웹 페이지를 생성하여
웹 브라우저에게 돌려주는 서버 측 웹 프로그래밍 중 하나이다.
- JavaScript (자바스크립트_클라이언트)
: 정적인 웹 문서에 동작을 부여하는 스크립트 언어이다.
javaScript도 웹 브라우저에서 바로 실행되며, jsp와 다르게 클라이언트 측 스크립트 언어이다.
즉 자바와 JavaScript 는 완전히 다르다.
그렇다면 왜 JavaScript 라고 불리게 되었을까?
JavaScript 는 ECMA 를 준수하는 것이다.
그러나 JAVA를 보고 만든 스크립트여서 JavaScript 라고 불리게 된 것이다.
※ 스크립트 언어란?
: 소스 코드를 컴파일 하지 않고도 실행할 수 있는 프로그래밍 언어를 의미한다.
저장하고 바로 열면 그 텍스트 그대로를 볼 수 있다.
대표적인 언어로는 파이썬, JavaScript, JQuery 가 있다.
HTML과 CSS 도 스크립트라고 할 수 있지만 언어는 아니다.
언어인지 아닌지의 여부는 if 와 for 을 사용할 수 있는지 아닌지 여부이다.
HTML은 뼈대이고 CSS 는 살을 붙이는 것이라 생각하면 쉽다.
※ 컴파일 언어란?
: 스크립트 언어와 반대되는 말이 컴파일 언어이다.
java -> class 파일로 컴파일 하는 것처럼 컴파일이 필요한 것을 의미한다.
대표적으로 JAVA와 C언어가 있다.
- JQuery
: Java Script의 라이브러리들 중 하나다.
브라우저 호환성이 있는 html 속 자바 스크립트 라이브러리(Library)이다.
클라이언트 사이드 스크립트 언어를 단순화 할 수 있도록 설계되어 있다.
■ JSP 구동순서
1. 1순위 (서버단)
JSP, JSTL(c태그,fn태그), EL태그(${}), JAVA
1-1) JSP(=JAVA) 및 JSTL(C태그) 예시
1-2) EL태그
※ JSP 유래
원래 servlet을 먼저 사용하여 자바를 실행했지만
HTML 속에서 자바를 사용하자 해서 나온것이 바로 JSP 이다.
따라서 JSP 안에서 JSP는 <% %> 로 보면 쉽다. (=JAVA와 동일)
2. 2순위 (클라이언트단)
HTML, CSS, JS, JQuery
2-1) JavaScript 예시
2-2) 제이쿼리 예시
즉, JSP 에는 HTML, CSS 가 기본적으로 있고, 그 안에서 JAVA를 사용할 수 있게 만든 것이다.
따라서 서버단에 해당하는 JAVA 계열이 먼저 구동되고 이후에 클라언트 단이 구동되는 것이다.
■ 언어 발전 순서
C ----> Object C ----> JAVA ----> C#
↓ ----> Cotelin
C++
C와 ObjectC 사이에 C++ 있고, JAVA는 C#과 Cotelin 두개로 나뉘어서 발전된다.
jsp / javaScript / j Query / java 각 의미와 차이점 (tistory.com)
'개발 > 개발지식' 카테고리의 다른 글
(개발지식) 8 - 포트 끊기 ( Web server failed to start. Port 80 was already in use.) (0) 2023.09.14 (개발지식) 7 - 모달 만들기 (닫히지 않는 모달) (0) 2023.09.08 (개발지식) 4 - DTO 와 VO 의 차이에 대한 논문 (0) 2023.07.16 (개발지식) 3 - github 이클립스 연결하고 업로드하기 (0) 2023.07.06 (개발지식) 2 - 이클립스 파일 옮기기 (0) 2023.07.04