프로그램 슬라이싱이란 무엇입니까?
소프트웨어 응용 프로그램에서 프로그램 슬라이싱은 소프트웨어 프로그램의 핵심 요소를 식별하고 프로그램이 작동 할 수 있도록보다 복잡한 코드에서 부드럽게 추출하는 방법입니다. 프로그램 슬라이싱 프로세스는 소프트웨어 엔지니어링 노력에 특히 중요합니다. 소프트웨어 엔지니어는 애플리케이션을 실제로 구동하는 소스 코드에 액세스하기 위해 복잡한 코드 문자열을 통해 길을 찾을 수 있기 때문입니다. 이러한 서브 프로그램을 추출하고 소스 코드를 볼 수 있으면 광범위한 잠재적 버그를 식별하여 소프트웨어를보다 효율적으로 실행할 수 있습니다.
코드가 의도적으로 복잡 해지는 것은 드문 일이 아닙니다. 이 작업의 주된 이유 중 하나는 코드의 복잡한 부분이 바이러스 및 해킹 시도로 인한 소스 코드 손상을 방지하는 데 도움이되기 때문입니다. 일반적으로 프로그래머는 몇 가지 단계만으로 소스 코드로 관리 할 수있는 작업을 수행하기 위해 여러 가지 추가 단계를 거쳐야하는 많은 추가 코드를 추가합니다. 이것은 가능한 손상으로부터 소프트웨어를 보호한다는 관점에서 바람직한 상태이지만, 소스 코드를 가져와야하는 상황이 있습니다. 바로 프로그램 슬라이싱이 시작됩니다.
슬라이싱을 프로그래밍하는 데는 두 가지 기본 접근 방식 또는 차원이 있습니다. 시맨틱 차원은 필요하고 유지 될 코드 문자열의 요소에 중점을 둡니다. 정적 및 동적 함수는 필수 요소 뒤에 있지만 마스킹 프로세스의 일부로 삽입 된 많은 코드를 제거하는 특정 슬라이싱 방법을 사용하여 식별 및 보존됩니다. 시맨틱 프로그램 슬라이싱을 통해 엔지니어는 추가 코드 중 실제로 남아있는 것이 무엇인지 결정하는 데 상당한 재량을가집니다.
구문 프로그램 슬라이싱은 엔지니어에게 동일한 양의 옵션을 제공하지 않습니다. 이 방법을 사용하면 코드의 핵심 기능에 필수적이지 않은 것은 제거됩니다. 문자열이 실제 목적을 제공하지 않고 코드에서 발견 된 관심 의미에 영향을 미치지 않으면 문자열로 이동합니다. 이 접근 방식은 추가 프릴없이 프로그램의 원래 구문을 유지하는 데 도움이됩니다.
구문 프로그램 슬라이싱의 두 번째로 점점 더 많이 사용되는 것은 비정질 프로그램 슬라이싱으로 알려져 있습니다. 이 접근 방식의 목표는 슬라이스가 엔지니어가 코드에서 보존하고자하는 의미 적 제약을 유지하는 데 도움이되는 구문 기능을 계속 사용할 수 있도록하는 것입니다.