Interpreter 언어

- Interpreter 언어는 Compiler 언어와 대비되는 용어이며, 런타임 단계에서 한 줄씩 해석하는 방식을 띈다.

 

  둘의 차이와 개념에 대해서는 오른쪽 링크 참조 >> Compiler 언어와 Interpreter 언어

  

 

 

 

Script 언어

- 이미 존재하는 소프트웨어(애플리케이션)를 제어하기 위한 용도로 쓰이는 언어이다.

 

정리

- Interpreter 언어는 Interpreter 방식을 사용하는 언어를 뜻하고 스크립트 언어는 이미 존재하는 소프트웨어를 제어하기 위한 용도로 쓰이는 언어이다. 단지 스크립트 언어 용도상 인터프리터 방식이 유용하기 때문에 스크립트 언어 대부분이 인터프리터 방식을 쓰는 인터프리터 언어일 뿐인 것.

'Programming, IT 관련 > IT 용어, 상식' 카테고리의 다른 글

안티 패턴(anti-pattern)  (0) 2021.05.21
변수, 메소드명 표기법  (0) 2021.05.08
Compiler 언어와 Interpreter 언어  (0) 2021.05.08
도메인  (0) 2021.04.26
URI, URL, URN  (0) 2021.04.26

안티패턴 : 소프트웨어 공학 분야에서 실제로 많이 사용되는 패턴이지만, 비효율적이거나 비생산적인 패턴

'Programming, IT 관련 > IT 용어, 상식' 카테고리의 다른 글

Interpreter 언어와 Script 언어는 다른 말.  (0) 2021.05.22
변수, 메소드명 표기법  (0) 2021.05.08
Compiler 언어와 Interpreter 언어  (0) 2021.05.08
도메인  (0) 2021.04.26
URI, URL, URN  (0) 2021.04.26

- 링킹(linking) 작업
  - A 클래스에 존재하는 함수를 B 클래스에서 호출한 경우, 클래스 파일 각각을 컴파일하면 B가 호출한 A의 함수를 찾을 수 없다. 따라서 A와 B를 연결해주는 작업이 필요한데 이 작업을 링킹이라고 한다.

- 정적 링크
  - 컴파일된 소스파일을 연결해서 실행가능한 파일을 만드는 것

- 동적 링크
  - (컴파일 후) 프로그램 실행 도중 프로그램 외부에 존재하는 코드를 찾아서 연결하는 작업


- 빌드(build)란?
  - 소스코드 파일을 실행가능한 소프트웨어 산출물로 만드는 일련의 과정 컴파일은 빌드에 속하는 한 단계.

- .dll (Dnymic Link Library) : 동적 라이브러리
  - 여러 프로그램이 공통으로 필요로 하는 기능을 프로그램과 분리하여 Runtime 중에 필요할 때만 불러쓸 수 있는 라이브러리.

'Programming, IT 관련 > 개발 플랫폼' 카테고리의 다른 글

빌드 관리 도구(Build tool)  (0) 2021.05.08
IDE ( IntelliJ vs Eclipse )  (0) 2021.05.08

- 네트워크 소켓

: 컴퓨터 네트워크를 경유하는 프로세스 간 통신의 종착점이다. 오늘날 컴퓨터 간 통신의 대부분은 인터넷 프로토콜을 기반으로 하고 있으므로, 대부분의 네트워크 소켓은 인터넷 소켓이다.

 

- 이더넷 ( Ethernet )

: 컴퓨터 네트워크 기술의 하나로, 전세계의 사무실이나 가정에서 일반적으로 사용되는 LAN에서 가장 많이 활용되는 기술 규격

 이더넷은 OSI 모델의 물리 계층에서 신호와 배선, 데이터 링크 계층에서 MAC(media access control) 패킷과 프로토콜의 형식을 정의한다.
- MAC(Media Access Control)

:  자료 전송 프로토콜의 하부 계층이며 일곱 계층의 OSI 모델에 규정된 데이터 링크 계층의 일부이다.

 

- MIME( Multipurpose Internet Mail Extensions )

: 파일 변환을 뜻하고, 이메일과 함께 동봉할 파일을 텍스트 문자로 전환해서 이메일 시스템을 통해 전달하기 위해 개발되었기 때문에 이름이 Internet Mail Extension 이다. 그렇지만 현재는 웹을 통해서 여러 형태의 파일 전달하는데 쓰이고 있다.

 

- 페이로드 ( Payload )

: 서 전송되는 데이터를 뜻한다. 페이로드는 전송의 근본적인 목적이 되는 데이터의 일부분으로 그 데이터와 함께 전송되는 헤더와 메타데이터와 같은 데이터는 제외한다.

 

- 멀웨어 ( Malware )

: 사용자의 이익을 침해하는 악성 소프트웨어

 

- 데이터 그램 ( Datagram )

: 패킷교환에서 각각 독립적으로 취급되는 각각의 패킷을 뜻한다.

 

- 패킷( Packet )

: 네트워크 전송의 용량 단위.

'Programming, IT 관련 > OSI 7 Layer' 카테고리의 다른 글

OSI 7 Layer란?  (0) 2021.04.24

1) 빌드 관리 도구(build tool)이란?

- 작성한 소스코드가 실행 가능한 어플리케이션으로 만드는 일련의 동작(building)들을 자동화한 프로그램.

 

 

 

2) Gradle과 Maven

- Maven은 pom.xml 파일에 사용하는 라이브러리의 종류, 버전 그리고 종속성(=의존성(dependency) 정보 등을 명시하고

Gradle은 build.gradle 파일에 위 정보들을 넣는다.

'Programming, IT 관련 > 개발 플랫폼' 카테고리의 다른 글

2021-05-09 ( IDE 기본 개념 )  (0) 2021.05.10
IDE ( IntelliJ vs Eclipse )  (0) 2021.05.08

 

1) 파스칼 표기법: 한 단어나 여러 단어로 언더바('_'), 공백없이 조합하되, 각 단어의 첫 문자만 대문자로 표기.

ex) AddAriticle  / AddArticle()

 

2) 카멜 표기법: 한 단어나 여러 단어로 언더바('_'), 공백없이 조합하되, 첫 문자를 제외한 각 단어의 첫 문자만 대문자로 표기.

ex) addArticle / addArticle()

 

3) 스네이크 표기법:  한 단어나 여러 단어를 언더바('_')를 통해 구분하고, 소문자만으로 표기.

ex) add_article / add_article()

 

4) 헝가리안 표기법: 자료형을 변수, 메소드명에 포함시킨다.

ex) inum / iNum / int_num

 

 

 

내가 사용하고 있는 표기법은 카멜 표기법이다.

 

'Programming, IT 관련 > IT 용어, 상식' 카테고리의 다른 글

Interpreter 언어와 Script 언어는 다른 말.  (0) 2021.05.22
안티 패턴(anti-pattern)  (0) 2021.05.21
Compiler 언어와 Interpreter 언어  (0) 2021.05.08
도메인  (0) 2021.04.26
URI, URL, URN  (0) 2021.04.26

complier 언어와 interpreter언어의 가장 큰 차이점은 컴파일을 수행하는 시점이다.

런타임 전에 컴파일을 수행하면 complier 언어이고, 런타임에 interpreter을 수행하면 인터프리터 언어이다.

 

 

complier 언어는 런타임 전에 컴파일해서 메모리에 올리기 때문에 메모리를 많이 차지하지만 빠르다.

C,C++, C# 등이 compiler 언어에 속하고, interpreter언어는 런타임 중에 한줄한줄 해석하며 실행하기 때문에 상대적으로 complier 언어보다 느리지만 코드 변경 시 즉시 실행이 가능하다는 장점이 있다. 대표적으로  자바스크립트, HTML, 파이썬, SQL, 루비 등이 interpreter언어에 속한다.

 

 

자바의 경우 javac 명령어를 통해 컴파일을 하게 되고, 그 결과로 바이트코드를 얻기 때문에 complier 언어이지만, VM(가상 머신)에서 바이트 코드를 다시 기계어로 변환한다는 점에서 interpreter언어의 특징도 가지고 있다.

'Programming, IT 관련 > IT 용어, 상식' 카테고리의 다른 글

안티 패턴(anti-pattern)  (0) 2021.05.21
변수, 메소드명 표기법  (0) 2021.05.08
도메인  (0) 2021.04.26
URI, URL, URN  (0) 2021.04.26
폭포수 모델( Waterfall Model )  (0) 2021.04.26

- 차이점

 

1) 플러그인

 - IntelliJ 는 설치 시, 많은 플러그인이 같이 설치 돼서 무거운 반면, Eclipse는 대부분 일일이 설치해야 하므로 가볍다.

   (IntelliJ 플러그인들은 JetBrains이 검증한 신뢰성있는 플러그인)

 

2) 툴팁 ( 에러 해결 방법 제시 / Eclipse = Ctrl + 1 / IntelliJ = Alt + Enter )

 - IntelliJ 에서는 에러 해결 방법을 사람들이 선호하는 기능을 위주로 제공하고,

   Eclipse는 선호에 관계없이 전반적인 해결 방법을 제시한다.

   

3) 프로젝트

 - IntelliJ는 한 화면에서 하나의 프로젝트만 볼 수 있고, 다른 프로젝트를 열려면 프로그램을 따로 실행시켜야한다.

   Eclipse는 여러 개의 프로젝트를 한 화면에서 볼 수 있다.

 

 

- Eclipse에는 없는 IntelliJ의 부가적 기능들

 

1) IntelliJ는 5분마다 자동저장을 지원. 

2) 작성한 코드보다 클린한 코드(람다 등) 등을 추천해준다.

 

 

 

'Programming, IT 관련 > 개발 플랫폼' 카테고리의 다른 글

2021-05-09 ( IDE 기본 개념 )  (0) 2021.05.10
빌드 관리 도구(Build tool)  (0) 2021.05.08

+ Recent posts