Java Ekpres Kawa

0

Witam, dostałem zadanie projektowe z informatyki z javy i nie mam żadnego pomysłu jak się do tego zabrać.

Ekspres do kawy. API sterujace
poszczególnymi podzespołami dostarczone bedzie przez zewnetrznych dostawców — nie nalezy uwzgledniac API
w rozwiazaniu. Ekspres do kawy składa sie z:
grzałki,
pojemnika na kubek,
zbiornika na wode i kawe,
pompy do wody
włacznika z dioda informujaca o stanie systemu.
Obecny model ekspresu obsługiwany jest przy pomocy interfejsu dotykowego. Uzytkownik wybiera rodzaj
kawy, jaki chce przygotowac, a nastepnie podaje ilosc cukru i mleka, jaka ma byc dodana. Po dokonaniu wyboru
ekspres

  1. mieli kawe
  2. przesypuje kawe do głowicy
  3. jednoczesnie włacza grzałke i uruchamia pompe wody, która przewodem tłoczy wode z pojemnika na wode
    do głowicy
  4. ekspres reguluje cisnienie wody przepływajacej przez głowice tak, aby zachowac optymalne cisnienie wody
    (zalezne od rodzaju kawy) i jej własciwa temperature (która takze jest inna dla kazdego gatunku kawy)
  5. (opcjonalnie) do głowicy doprowadzane jest mleko w odpowiedniej temperaturze
  6. do podstawionego na podstawce kubka nalewana jest gotowa kawa. Pod kubkiem znajduje sie ociekacz
    zapobiegajacy zaplamiwniu stołu, jesli kubek zostanie zabrany zbyt wczesnie.
    Po zakonczeniu procesu modelowania rezultatem powinno byc czytelne, łatwo rozszerzalne API dla całej
    rodziny ekspresów, od bardzo prostych modeli, az po złozone. Zaproponowane rozwiazanie musi:
    byc niezalezne od API producenta sprzetu (producentem sprzetu moga byc rózni dostawcy),
    umozliwic łatwe dodanie kolejnych modeli ekspresu, zarówno zawierajacych nowe funkcje, jak i pozbawionych
    niektórych funkcjonalnosci
    preferowac jakosc kodu nad jego szybkosc (obecne mikrokontrolery sa wystarczajaco szybkie do realizacji
    dowolnego rozsadnego API)
    Ktoś może miałby jakiś pomysł jak można to zadanie rozwiązać?
0

Poczytaj o SOLID, KISS, DRY ipt etc itd.... o tworzeniu i utrzymaniu czystego kodu o WZORCACH PROJEKTOWYCH. Wydziel sobie na początku klasy i interfejsy, może jakiś diagram UML?

0

Zainteresuj się książką:

Agile. Programowanie zwinne: zasady, wzorce i praktyki zwinnego wytwarzania oprogramowania w C# Autorzy: Robert C. Martin,Micah Martin

lub w oryginale

Agile Principles, Patterns, and Practices in C# by Robert C. Martin, Micah Martin

Cała książka to świetne kompendium wiedzy, ale w Twoim przypadku pomocny może okazać się rozdział 20.

1 użytkowników online, w tym zalogowanych: 0, gości: 1