programing tip

스크립트와 프로그램의 차이점은 무엇입니까?

itbloger 2020. 11. 5. 07:47
반응형

스크립트와 프로그램의 차이점은 무엇입니까?


스크립트와 프로그램의 차이점은 무엇입니까? 대부분의 경우 스크립트가 실행되고 있다고 들었는데, 프로그램이 아닙니까? 나는 조금 의아해합니다.


나는 다른 견해를 가지고 있습니다.

"스크립트"는 외부 또는 독립적 인 방식으로 일부 시스템에서 작동하는 코드이며 시스템 자체를 비활성화하지 않고 제거하거나 비활성화 할 수 있습니다.

"프로그램"은 시스템을 구성하는 코드입니다. 프로그램의 코드는 모듈 방식으로 작성 될 수 있으며 우려 사항을 잘 분리하여 작성할 수 있지만 코드는 기본적으로 시스템 자체의 내부 및 종속성입니다.

스크립트는 종종 해석되지만 항상 그런 것은 아닙니다. 프로그램은 종종 컴파일되지만 항상 그런 것은 아닙니다.


저에게 가장 큰 차이점은 프로그램이 실행되는 동안 스크립트가 해석 된다는 것입니다 (즉, 소스가 먼저 컴파일되고 해당 컴파일의 결과가 예상 됨) .


Wikipedia는 이것에 대해 나와 동의하는 것 같습니다.

스크립트 :

"스크립트"는 일반적으로 다른 언어로 작성되며 최종 사용자가 작성하거나 최소한 수정하는 애플리케이션의 핵심 코드와 다릅니다.
스크립트는 종종 소스 코드 또는 바이트 코드에서 해석되는 반면 스크립트가 제어하는 ​​응용 프로그램은 전통적으로 원시 기계 코드로 컴파일됩니다.

프로그램 :

이 프로그램에는 컴퓨터가 명령을 실행하는 데 직접 사용할 수있는 실행 가능한 형식이 있습니다.
사람이 읽을 수있는 소스 코드 형식으로 실행 가능한 프로그램이 파생 된 (예 : 컴파일 된) 동일한 프로그램


일반적으로 스크립트는 가볍고 빠르게 구성된 일회용 도구입니다. 일반적으로 컴파일되지 않고 해석됩니다. Pythonbash 는 스크립트를 빌드하는 데 사용되는 언어의 예입니다.

프로그램은 C 또는 C ++와 같은 컴파일 된 언어로 구성되며 일반적으로 이러한 이유로 스크립트보다 더 빠르게 실행됩니다. 큰 도구는 종종 스크립트가 아닌 "프로그램"으로 작성됩니다. 작은 도구는 스크립트로 더 쉽게 개발되지만 스크립트가 커질수록 다루기 어려워 질 수 있습니다. 응용 프로그램 및 시스템 언어 (프로그램 / 응용 프로그램을 빌드하는 데 사용되는 언어)에는 이러한 성장을보다 쉽게 ​​관리 할 수있는 도구가 있습니다.

일반적으로 텍스트 편집기에서 스크립트를보고 어떤 역할을하는지 볼 수 있습니다. 실행 가능한 프로그램으로는 그렇게 할 수 없습니다. 후자의 명령은 특수 도구 없이는 인간이 이해하기 매우 어렵게 만드는 바이트 코드 또는 기계 언어로 컴파일되었습니다.

위의 "자주"와 "보통"의 수에 유의하십시오. 용어는 모호하며 때때로 교차합니다.


보다:

프로그램과 스크립트의 차이점

스크립트도 프로그램이지만 (소스 코드)를 숨기는 불투명 한 레이어가없는 반면 프로그램은 옷이있는 반면, 디 컴파일 할 수없는 경우 소스 코드를 볼 수 없습니다.

스크립트 를 실행 하려면 다른 프로그램필요 하지만 프로그램에는 필요하지 않습니다.


일반적으로 "프로그램"은 컴퓨터가 특정 작업을 수행 할 수 있도록 작성된 일련의 명령입니다 .

"스크립트"는 스크립팅 언어로 작성된 코드입니다. 스크립팅 언어는 다른 소프트웨어 응용 프로그램을 제어하기 위해 코드를 작성할 수있는 일종의 프로그래밍 언어에 불과 합니다 .

실제로 프로그래밍 언어에는 두 가지 유형이 있습니다.

ㅏ. 스크립팅 언어

비. 컴파일 된 언어

이것을 읽으십시오 : 스크립팅 및 컴파일 된 언어


스크립트는 일반적으로 해석됩니다 (다른 실행 파일에 의해).

프로그램은 일반적으로 기계 코드 또는 바이트 코드 (Just-in-time 컴파일 프로그램의 경우)로 구성된 자체 권한 (라이브러리 종속성이있을 수 있음)에있는 독립 실행 형 컴파일 된 실행 파일입니다.


내 관점에 따르면 스크립트와 프로그램의 주요 차이점은 다음과 같습니다.

스크립트는 다른 기술과 함께 사용할 수 있습니다. 예 : HTML 내에서 PHP 스크립트, 자바 스크립트 등을 사용할 수 있습니다.

프로그램은 다른 기술에 절대 포함될 수없는 독립 실행 형 코드 덩어리입니다.

내가 어떤 곳에서든 틀렸다면 나를 바로 잡으십시오.


스크립팅 대 프로그램 현실에는 실제로 두 가지 차원이 있습니다.

  1. 언어가 특히 문자열 연산에서 posix 쉘 및 특히 bash와 같은 매크로 프로세서와 경쟁 할만큼 충분히 강력합니까? 일부 기능을 실행하는 데 bash보다 낫지 않다면 그것을 사용하는 데 별 의미가 없습니다.

  2. 언어가 편리하고 빠르게 시작됩니까? Java, Scala, JRuby, Closure 및 Groovy는 모두 강력한 언어이지만 Java에는 많은 상용구가 필요하고 모두 필요한 JVM은 시작하는 데 너무 오래 걸립니다.

OTOH, Perl, PythonRuby는 모두 빠르게 시작되고 강력한 문자열 처리 (및 거의 모든 기타 처리) 작업을 수행하므로 때때로 비판적이지만 쉽게 잠식되지 않는 "스크립팅"을 차지하는 경향이 있습니다. "세계. 그들은 또한 전체 전통적인 프로그램을 잘 실행하는 것으로 나타났습니다.

림보에 남겨진 것은 스크립팅에 사용되지 않지만 잠재적으로 그럴 수있는 자바 스크립트와 같은 언어입니다. 업데이트 : 이것은 작성된 이후 node.js 가 여러 플랫폼에서 릴리스되었습니다. 다른 소식에서는 질문이 종결되었습니다. "좋아."


프레임 워크 또는 기타 유사한 스키마는 작업을 수행하기 위해 스크립트를 실행 / 해석합니다. 프로그램은 작업을 수행하기 위해 기계에 의해 컴파일되고 실행됩니다.


IMO Script-프로그램이 실행해야하는 명령의 종류-하드웨어가 실행해야하는 명령의 종류

.NET / JAVA 바이트 코드가이 정의에 의해 스크립트라고 생각하지만


스크립트 : 다른 시스템 프로그램을 제어하고 실행하며 응용 프로그램도 예약 할 수있는 "스크립팅 언어"명령어 세트가 포함되어 있습니다.

프로그램 : 컴파일러로 프로그램을 컴파일 할 때 특정 작업을 수행하는 명령어 세트가 포함되어 있습니다.

참고 URL : https://stackoverflow.com/questions/2286552/difference-between-a-script-and-a-program

반응형