실제 작업을 수행하는 것 외에도 가려움증이 있습니다. 가려운 것은 다른 언어 (템플릿 툴킷/펄)에서 템플릿 시스템을 가깝게 모방 한 뷰 엔진을 작성하는 것입니다. 이것은 내가 시간이 있다면 그것 중 하나입니다/새로운 종류의 프로젝트를 배우기 위해 그것을하십시오.TemplateLanguage/VewEngine 작성
저는 CoCo/R과 ANTLR을 보면서 시간을 보냈습니다. 솔직히 내 머리가 아팠지만 CoCo/R의 일부가 침몰하고 있습니다. 불행히도 대부분의 예제는 소스를 읽는 컴파일러를 만드는 것에 관한 것입니다. 코드는 없지만 템플릿 용 프로세서를 만드는 방법은 다루지 않습니다.
그래, 그것들은 똑같지 만, 실제 코드가 파싱되어 실행되는 것이 아니라 소스의 대부분이 html 인 템플릿 용 언어를 정의하는 방법을 고집하지 않을 수 없습니다.
이런 종류의 좋은 초보자 리소스가 있습니까? 나는 스파크에 간수를 데려 갔는데, 레포에 문법이없는 것처럼 보였다.
어쩌면 그게 과도 함이며, 파일에서 템플릿 구문을 C#으로 테스트하고 바꿀 수 있습니다. http://msdn.microsoft.com/en-us/magazine/cc136756.aspx#S2
신발을 신고 언어 전문가가 아니 셨다면 어디에서 시작 하시겠습니까?
음, 처음 3 단계는 본질적으로 ANTLR/COCO/R입니다. 자신의 파서를 굴리거나 문법에 의존하는 문제입니다. 대안은 제가 머리를 감쌀 수있는 것입니다. (템플릿을 C# 출력으로 변환하십시오. 시작할 때 가장 쉬운 방법과 가장 좋은 방법은 무엇입니까? 결국 테스트는 이런 종류의 일에 왕이됩니다 – claco
단계 2는 ANTLR과 COCO/R과 비슷하다. 나에게 가장 좋은 방법은 가능한 한 간단하게 만드는 것이다. 예를 들어 if 조건이 산술 표현식을 지원할 필요가없는 경우 (예 : [if 3 * 4> 10]) ANTLR이나 COCO/R은 필요하지 않습니다. 템플릿을 왼쪽에서 오른쪽으로 스캔하고 보류중인 ifs를 스택에 넣을 수 있습니다. 따라서 [끝]이 표시되면 무엇을 닫아야 하는가? – pts