이론적 컴퓨터 과학 주제에는 "실제"개발 응용 프로그램이 있습니까?

StackOverflow https://stackoverflow.com/questions/461539

  •  19-08-2019
  •  | 
  •  

문제

"이론적 컴퓨터 과학 주제"에 의해, 나는 규칙적인 언어, 펌핑 레마 및 문법과 같은 것들을 언급하고 있습니다.

나는 유한 오토마타의 실제 응용 프로그램과 정규 표현식에 익숙하지만, 다른 것들과 같은 주제는 실제 응용 프로그램을 볼 수 없으므로 더 많은 문제를주고 있습니다.

도움이 되었습니까?

해결책

이러한 것들이 무언가를 시도하는 것이 정기적 인 표현으로 무의미한 지 알고 싶다면 유용합니다. 예를 들어, XML이 비 규제라는 것을 아는 것은 XML을 Regex와 구문 분석하는 아이디어가 당신의 마음에 들어가는 경우 유용합니다. 그리고 당신이 XML이 규제되지 않는다는 것을 머리 꼭대기에서 알지 못하면 펌핑 레마는 그것을 사소하게 증명할 수있게 해줄 것입니다.

그리고 컴파일러가 있습니다.이 물건을 모르면 파멸됩니다. 그것은 단지 응용 프로그램에 따라 다릅니다.

다른 팁

여기에 있습니다 Steve Yegge의 테이크 컴파일러의 유용성에 대해 다음과 같이 요약합니다.

사실, 컴파일러 구조는 저의 겸손하고 당황스럽게 잘못된 의견으로, 학부 컴퓨터 과학 프로그램에서 얻을 수있는 두 번째로 중요한 CS 클래스입니다.

문법은 프로그래밍 언어, 자연 언어 및 복잡한 데이터 구조로 나타나는 재귀 구조를 구문 분석하는 데 필수적입니다. 나는 일부 프로그래머가 전혀 만나지 않는다고 생각하지만 컴파일러, IDE, 직렬화 등을 쓰는 사람은 많이 만난다.

Yuval F가 지적했듯이 문법은 언어 구문 분석에 매우 중요합니다. ANTLR과 같은 파서 생성기를 살펴보면 문법의 구조가 놀랍게도 학교에서 배운 것과 비슷하다는 것을 알 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top