Friday 20 January 2012

Ogólna architektura aplikacji


Wstęp

Witam.
Tym artykułem rozpoczynam serię postów na temat architektury, wzorców projektowych i dobrych praktyk stosowanych przy tworzeniu aplikacji w .Net Framework.
Oczywiście, zawarte tu informacje są bardzo subiektywne, a "dobre praktyki" podlegają konfrontacji.
Jednakże, gdzieś chciałbym zawrzeć swoje spostrzeżenia i przemyślenia oraz znalezione informacje o pisaniu aplikacji w .Net Framework.

Wszystkie rozwiązania będą zawarte w przykładowym projekcie http://sampledotnetapp.codeplex.com.

Aplikacja

Elementy funkcjonalne aplikacji

Z czego składa się standardowa aplikacja:
  • Zbieranie logów
  • Komunikacja z serwerem
  • Komunikacja z bazą danych
  • Komunikacja z webservicami
  • Graficzny interfejs użytkownika
  • Moduły - pluginy
  • Interakcja pomiędzy modułem a interfejsem
Wydaje mi się, że są to wszystkie elementy, które wykorzystują aplikacje, jeżeli brakuje tu czegoś bardzo proszę o komentarz.

Elementy niefunkcjonalne aplikacji
Oprócz tych funkcjonalnych cech aplikacji, są także niefunkcjonalne, lecz równie istotne.
Aplikacja powinna także:
  • Zawierać jak najmniej zbędnej dokumentacji
    Duże koszty utrzymania zgodnych z prawdą komentarzy i rozbudowanych dokumentacji
  • Być na tyle elastyczna na ile się da
    Użycie interfejsów i ogólnych mechanizmów z możliwością napisania dedykowanych elementów
  • Prosta w konstrukcji
    Niestety elastyczność i prostota trochę się wykluczają
  • Wysoka testowalność poszczególnych elementów aplikacji
    Stworzenie aplikacji, która w łatwy sposób można pokryć testami to grunt do napisania niezawodnej aplikacji
 Narzędzia do projektowania aplikacji
 Z darmowych narzędzi dostępnych na rynku można wyszczególnić:
  • Visual Paradigm Community Edition
  • Pencil Evolus
 

No comments:

Post a Comment