ロゴタートルコードを解析するためのデザインパターン

ウィキペディアでは、ロゴプログラミングは教育で使用されるマルチパラダイムのコンピュータプログラミング言語です。私はC#を使ってTurtleGraphicEditor(ロゴプログラムを使用している)のようなアプリケーションを作りたいと思っています。私は、ロゴコードを解析するのに適したデザインパターンとは何ですか?

0

2 答え

これは非常に一般的な質問です。あなたが読んでおきたい話題は次のとおりです:

  • レクサー
  • パーサー(あなたが言及したように)
  • 抽象構文木
  • コンパイラ
  • ドメイン固有の言語
  • 通訳者

このようなアプリケーションの一般的な設計には、次の2つの主要コンポーネントがあります。

  1. テキスト、lex、構文解析を抽象構文ツリーに読み込む
  2. 構文木を評価したり、別の言語のソースコードに変換(コンパイル)する

しかし、警告する!これは自明ではありません!

2
追加された
あなたの助けをありがとう、それは非常に有用です。私はコマンドパターンを使用しますが、それぞれのメソッドがオブジェクトとして機能するため、非常に遅いです。抽象構文木のようですね:)
追加された 著者 brian,

Interpreter is ideal solution

0
追加された
ええ、それはアプリケーションをより複雑にするT.T、私は正常なパーサ関数と状態、複合、およびコマンドパターンを使用してそれをやった。
追加された 著者 brian,