𝗟𝗟𝗗 𝗗𝗲𝘀𝗶𝗴𝗻 𝗣𝗿𝗼𝗰𝗲𝘀𝘀 (𝗙𝗿𝗼𝗺 𝗥𝗲𝗾𝘂𝗶𝗿𝗲𝗺𝗲𝗻𝘁𝘀 𝘁𝗼 𝗖𝗼𝗱𝗲) -> Proces projektowania LLD (Od wymagań do kodu)

Low Level Design nie polega na natychmiastowym pisaniu kodu. Polega na przestrzeganiu ustrukturyzowanego procesu.

Postępuj zgodnie z poniższymi krokami, aby przejść od opisu problemu do działającego kodu.

  1. Zrozum wymagania Nie przechodź od razu do klas. Najpierw dowiedz się, co system musi robić.
  • Jakich funkcji potrzebuje?
  • Jakie akcje musi obsługiwać?
  • Jakie zmiany mogą nastąpić w przyszłości?
  1. Identyfikuj rzeczowniki, aby znaleźć klasy Szukaj rzeczowników w wymaganiach. Rzeczowniki staną się Twoimi klasami. Przykład: Edytor dokumentów
  • Rzeczowniki: Document, Text, Image, Storage, Editor.
  • Klasy: Document, TextElement, ImageElement, Storage, DocumentEditor.

Przykład: Parking

  • Rzeczowniki: ParkingLot, Floor, Slot, Vehicle, Ticket.
  • Klasy: ParkingLot, Floor, Slot, Vehicle, Ticket.
  1. Używaj relacji IS-A dla dziedziczenia Zadaj sobie pytanie: „Czy obiekt potomny jest rodzajem obiektu nadrzędnego?”
  • TextElement IS-A DocumentElement.
  • Car IS-A Vehicle.
  • Dog IS-A Animal. Jeśli odpowiedź brzmi „tak”, użyj dziedziczenia.
  1. Używaj relacji HAS-A dla kompozycji Zadaj sobie pytanie: „Czy jeden obiekt zawiera inny?”
  • Document HAS-A kolekcję elementów.
  • ParkingLot HAS-A zestaw pięter.
  • Car HAS-A silnik. Użyj kompozycji, aby połączyć te obiekty.
  1. Identyfikuj czasowniki, aby znaleźć metody Szukaj czynności w wymaganiach. Czasowniki staną się Twoimi metodami.
  • Add text staje się addText().
  • Save document staje się save().
  • Park vehicle staje się parkVehicle().
  1. Planuj zmiany za pomocą interfejsów Pomyśl o przyszłych aktualizacjach. Jeśli zapisujesz dokument, możesz użyć pliku, bazy danych lub chmury.
  • Utwórz interfejs o nazwie Persistence.
  • Utwórz implementacje, takie jak FileStorage lub DBStorage. Pozwala to na dodanie CloudStorage w przyszłości bez konieczności zmiany istniejącego kodu.
  1. Narysuj diagram UML i napisz kod Gdy masz już klasy, dziedziczenie, kompozycję i metody, narysuj diagram UML. Będzie on pełnił rolę Twojego projektu (blueprint). Na koniec przekształć ten projekt w czysty kod.

Podsumowanie procesu:

  • Wymagania
  • Rzeczowniki -> Klasy
  • IS-A -> Dziedziczenie
  • HAS-A -> Kompozycja
  • Czasowniki -> Metody
  • Warianty -> Interfejsy
  • Diagram UML
  • Finalny kod

Źródło: https://dev.to/roshan_singh_dd54d52bbaa7/lld-design-process-from-requirements-to-code-594m