Jeg tror jeg har haft et lignende spørgsmål før angående temperatur kontrol, men det her er langt mere overordnet.
En del af jer ved sikkert at jeg har noget hjemme automatisering kørende i et godt stykke tid. Det virker fint og er alt sammen guld og grønne skove.
Men nu har jeg for nyligt tilføjet en fingeraftrykscanner. Og som sædvanlig er det super let lige at flække en hurtig demo sammen. MEN som altid er det super svært at implementere ind i mit system. Det hele kører i en EXE og kræver lidt knofedt at få nye koncepter ind i.
Så jeg sørger efter lidt svar / sparing med nogle af jer udviklere herinde, som nok har gjort den slags her noget længere tid end jeg selv har gjort.
Hvordan styrer man sådanne større projekter?
Jeg kører 2 pc'er, en er en touch screen som har fingeraftrykscanner og magnetisk kortlæser sat til. Det er også der det meste daglige kontrol af værelset nok foregår.
Så har vi mediacentret / hjemmeautomatiseringserveren som har nogle USB/TTL porte (Dvs seralle porte i .NET) som kommunikerer med hardwaren. Jeg har også nogle virtuelle kontrollag som fx kan styre min mobil og min bærbare pc.
Systemet har også (og skal beholde funktionen) et vækkeur. Det vækkeur henter også information ind fra nettet om nuværende tilstand i verden (
)... Systemet skulle også gerne integreres med gymnasiets systemer på sigt. Og også gerne muligheder for at få facebook osv ind. Så generelt skal det være åbent for udvidelse uden at ændre alting igen.
Jeg ønsker helst at holde lagene ret separerede så jeg næsten bare kan slette en del eller lave en ny, og den skal være praktisk talt en del af systemet øjeblikkeligt, eller systemet skal bare selv hægte den fra.
Jeg ville også foretrække at holde logikken samlet et sted. Og helst undgå alle kald fra en klasse til en anden. Netop det der med at de ikke må være for afhængige af hinanden, men at jeg i stedet bare har en klump lim eller en "central" der router deres information rundt uden at gøre noget betydningsfuldt.
Jeg ved ikke helt hvor meget I forstod, og om jeg fik specificeret mine tanker klart nok. Men jeg håber at I kan følge mig langt hen af vejen. For jeg er lidt blank.
Jeg har overvejet noget hvor der er en master EXE som så kan loade DLL filer dynamisk ind i nye app domains og så kunne nogle "events" og kommandoer køre rundt mellem dem. Sådan lidt ligesom at de blev broadcastet ud til alle andre plugins. Generelt meget uoverskueligt -.-