일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 게임개발
- unity
- OWASP
- frequency-domain spectrum analysis
- information hiding
- MLFQ
- protection
- SJF
- Unity #Indie Game
- MAC
- 운영체제
- Security
- SDLC
- 유니티
- 유스케이스
- link layer
- 컴퓨터 네트워크
- polymorphism
- stride
- Waterfall
- FIFO
- Trap
- DSP
- AINCAA
- 게임 개발
- DP
- 메카님
- 배경 그림
- OSI 7계층
- STCF
- Today
- Total
다양한 기록
웹 애플리케이션 언어 본문
웹 어플리케이션 언어
기본적으로는 HTML과 CSS에 대해 이야기할 수 있을 것입니다. 정확히 프로그래밍 언어라고 칭하지는 않지만, 어쨌든 웹 애플리케이션을 개발할 때 많이 사용됩니다. HTML 태그를 통해 웹의 구조를 만들고 CSS를 통해 디자인을 할 수 있습니다.
HTML은 다음과 같이 태그로 이루어집니다.
HTML5은 HTML의 최신 버전으로 2014년 표준화되었습니다. 문법 면에서 상당히 간결하고 쓰기 편해졌습니다. 과거에 사용하던 외부 플러그인들을 사용하는 대신 자바 스크립트와 연동하여 다양한 기능을 사용할 수 있습니다.
위 이미지처럼 자바스크립트는 다양한 라이브러리를 활용 가능한 프로그래밍 언어로 웹 페이지에서 다양한 기능을 제공할 수 있게 만들어서 웹 애플리케이션으로 작동할 수 있게 만들어줍니다.
WebGL 같은 경우 HTML 파일 내에서 쉐이더를 설정해줘야 해서 단순히 구조만 잡아주는 기능만 있는 것은 아니라고 할 수 있습니다.
위 이미지의 경우 HTML과 자바스크립트를 사용한 웹 애플리케이션의 예시입니다. 최근, node.js 등 자바 스크립트를 이용한 웹 애플리케이션 개발이 상당히 인기가 있습니다.
자바 스크립트에 대해 더 자세히 이야기하자면 PHP 같은 언어와 다르게 클라이언트 측 웹 애플리케이션 언어입니다. 객체 지향 언어이긴 하지만 클래스는 나중에 추가되는 등, 특징에 독특한 차이들이 있습니다. 과거엔 프론트엔드 개발 정도에만 쓰였으나 최근에는 백엔드 개발에도 많이 쓰입니다. 리액트, 뷰, 노드.js 등 다양한 프레임워크가 있고, 이에 따라 다양한 작업이 가능한 언어이기에 최근 웹 애플리케이션 언어 중 크게 인기가 있습니다.
JSP는 웹 애플리이션 개발 기술 중 하나로 서버 측에서 동적 웹 페이지를 생성하기 위해 사용합니다. HTML에 자바 코드를 넣어서 만들 수 있습니다. 클라이언트가 서버로 요청 시 웹 애플리케이션 서버에서 jsp 파일이 읽어지고, 서블릿으로 변환되고 필요한 기능을 수행하고 생성 데이터를 응답합니다.
자바 서블릿과의 차이점은 서블릿은 자바 안에 HTML 코드가 들어간다는 점입니다. 어떤 작업을 중심으로 할 것인지에 따라 사용할 때가 다릅니다.
PHP는 서버에서 실행되는 스크립트 언어입니다. 상태를 유지하지 않아 요청 시마다 새로 시작해서 메모리 누수같은 문제에 강하지만, 매번 로딩해서 성능 영향이 있다는 점도 있습니다. 2024 1월 TIOBE Index에서 발표한 프로그래밍 언어 순위에서 6위인 자바 스크립트 바로 밑 7위를 차지했습니다.
Ruby는 2018년에 깃허브에서 인기있는 언어 5위를 차지한 적이 있는 순수 객체지향적 언어이며, 오픈 소스입니다. 모든 걸 객체로 다룬다는 의미인데, 이런 점에서 파이썬과 비슷합니다. 인터프리터를 이용하는데 파이썬도 그렇듯, 이 언어도 느리다는 단점이 있습니다. Rubys on Rails라는 웹 프레임워크를 사용합니다. 개인적으로 가장 흥미로웠던 점은 깃허브가 루비로 만들어졌다는 것입니다.
이 외에도 파이썬, C#, Go와 같은 언어들로도 웹 개발이 가능합니다.