WeSay Architecture
[edit]
Architecture Emphasis
- Low resource use (OLPC)
- Developer Productivity
- Shallow learning curve for new developers
- Extensibility
- Scalability
- Cross-platform
- Risk management
- Early Release
[edit]
Current architecture (updated Nov 2006)
- Language: C# 2.0, with .Net 2.0 on Windows and mono on Linux.
- GUI: Windows Forms (we found GTK# to be tough going), using only classes currently available in mono.
- Rendering: Pango on Linux, MultiScribe (Graphite) on Windows
- Backend: db4o, with on-the-fly LIFT xml backup
- Data kept in POCOs (Plain Old CLR Objects) (CLR==.Net)
- Dependency injection
- Currently using PicoContainer. The more full-featured framework, Spring.Net Framework, was slow on the OLPC emulator.
