FLUTTER ECOSYSTEM

euler2dot7/interpreter

Arquitetura de software do interpretador em Dart (Flutter)

Capa do projeto Arquitetura de software do interpretador em Dart
Stars
2
Forks
2
Último push (UTC)
18 de dez. de 2020
Status do projeto
Ativo
euler2dot7 GitHub avatar
GITHUB User

euler2dot7 ↗

LinguagensDartCMakeC++HTMLCSwiftKotlinObjective-C

Pacotes e exemplos relacionados

Dependências usadas

Lista de dependências 7 itens
  • flutter{"sdk":"flutter"}
  • cupertino_icons^1.0.0
  • provider^4.3.2+2
  • graphview^0.6.1
  • flutter_testDesenvolvimento{"sdk":"flutter"}
  • flutter_driverDesenvolvimento{"sdk":"flutter"}
  • testDesenvolvimento^1.15.4

Categorias de apps

README original

Texto original em inglês. Visite o GitHub para a versão atual.

Expandir / recolher README

Software architecture of interpreter in Dart (Flutter)

This project is a part of my tech talk about OOP design of interpreters.

Arithmetic expressions interpreter.

The software accept arithmetic expression in input and provide 3 interpretation:

  • Result of evaluation
  • Abstract Syntax Tree structure
  • Stack machine assembler representation
Demo Application
  • The web app is available here -> demo
Example:

Example

Software Architecture in UML

Domain model

Domain model of expression evaluator

Structure

Package diagram

Interaction

Interaction diagram

AST evaluator (Visitor Pattern)

Visitor Pattern

Build

I used Android Studio in order to build:

  • Web App
  • Mobile App
  • Desktop App

Presentation