컴퓨터 프로그래밍에서 마샬링이란 무엇입니까?
컴퓨터 프로그래밍의 맥락에서 마샬링은 장치의 메모리에 저장된 구성 요소를 사용 가능한 데이터로 변환하여 하드 드라이브에 상주하는 하나 이상의 프로그램에 의해 사용될 수있다. 쉽게 검색 할 수 있도록 데이터를 저장 영역으로 수집하는 작업은 마샬링 프로세스에 의해 크게 향상됩니다. 프로그램은 작업을 요청할 때마다 구성 요소를 변환 할 필요없이 데이터를 복구 할 수 있습니다. 이러한 관점에서 마샬링은 가정과 기업에서 매일 사용되는 많은 소프트웨어 프로그램의 빠른 기능을 지원합니다.
마샬링은 객체를 데이터로 변환하고 필요할 때 저장 또는 전송을 위해 데이터를 준비하는 것과 함께 저장된 데이터와 데이터를 사용하는 다양한 파일 또는 프로그램 사이의 버퍼 역할을합니다. 이 버퍼는 저장된 데이터의 무결성을 유지하고 하나 이상의 파일 또는 하나의 프로그램과 관련된 동시 작업에 사용될 수 있도록합니다. 전반적인 효과는 시스템 기능을 지연없이 최적의 수준으로 유지하는 것입니다. 예를 들어 마샬링을 사용하면 스프레드 시트, 워드 프로세싱 문서 및 열린 인터넷 연결을 지체없이 동시에 작업 할 수 있습니다. 마샬링 된 데이터는 하드 드라이브의 리소스를 낭비하지 않고 이러한 모든 응용 프로그램에서 동시에 사용 중일 수 있습니다.
일반적으로 컴퓨터 과학에 대해 잘 알고있는 많은 사람들은 마샬링이 직렬화라고 알려진 프로세스와 다소 유사하다고 생각합니다. 객체를 직렬화하려면 객체를 원래 상태에서 바이트 스트림으로 변환해야하지만 필요한 경우 바이트 스트림을 원래 상태로 다시 변환 할 수 있습니다. 마샬링은 직렬화가 코드베이스를 기록하지 않는다는 점에서 직렬화와 다릅니다. Marshalling은 변환 기능과 코드베이스 기록 기능을 모두 처리합니다. 또한 마샬링은 원격 객체와 함께 사용할 수 있지만 직렬화는 할 수 없습니다. 이는 일부 구성의 경우 객체 변환, 저장 및 전송에 대한 마샬 접근 방식이 바람직 할 수 있음을 의미합니다.