Czy istnieje wzorzec projektowy, który pozwala budować fundamenty komponentów pomagających rozwiązać problemy związane z projektem Eulera? Rozwiązałem ~ 30 problemów - i stwierdziłem, że będę musiał ponownie użyć funkcji, która została wcześniej napisana (np. Sprawdzanie pierwotności). Zamiast pisać statyczne metody w klasie narzędziowej, myślałem o interfejsie kalkulatora - implementowanym przez różne konkretne klasy, które rozwiążą różne problemy podrzędne. Mógłbym wtedy na tym oprzeć, ponieważ rozwiązuję coraz bardziej złożone problemy - może? Czy ktoś ma jakieś dobre sugestie? Rozwiązuję problemy w Javie.Projekt Euler Wzorzec projektowy
5
A
Odpowiedz
9
Przydaje się kilka przydatnych funkcji, takich jak generowanie liczb pierwszych. Możesz przechowywać w nich plik z przydatnymi funkcjami. Poza tym nie sądzę, że jest jakaś korzyść. Problemy z projektem Eulera dotyczą raczej matematyki, niż programowania złożonego. Oczekuję, że jeśli napiszesz dużo kodu, robisz to źle.
1
Klasycznym wzorem dla tego rodzaju rzeczy jest wzór szablonu, ale można go zbudować myśląc w innych wzorach projektowych, takich jak na przykład Visitor, to zależy od Twoich potrzeb i gustu. Może ci się przydać ten link: Template method pattern
Powiązane problemy
- 1. Wiązanie danych jako wzorzec projektowy
- 2. Jaki jest wzorzec projektowy Hexagon
- 3. Wzorzec projektowy Alternatywa dla Coroutines
- 4. Wzorzec projektowy dla czasu aplikacji?
- 5. Projekt Euler numer 37
- 6. Projekt Euler # 2 Infinity?
- 7. Jaki wzorzec projektowy najlepiej sprawdza się przy sterowaniu sekwencją kroków?
- 8. Wzorzec projektowy OO do inicjowania obiektu w API
- 9. Nazwa wzorzec projektowy: uzyskać klasę od poziomu klasy
- 10. wzorzec projektowy do połowu nieobsłużonych wyjątków w AsyncTask
- 11. Projekt Euler 14: wydajność w porównaniu do C i zapamiętywanie
- 12. Projekt Euler nr 23, nie może znaleźć problem w programie
- 13. kompilatory dają różne odpowiedzi na Projekt Euler # 22
- 14. Różne wyniki między interaktywnym i skompilowanym Haskellem (Projekt Euler 20)
- 15. Znajdź sumę liczb pierwszych poniżej dwóch milionów. Projekt euler, C
- 16. Wzorzec stanu i projekt oparty na domenie
- 17. Wyjątek projektowy C++
- 18. Wywiad projektowy - System rezerwacji samochodu
- 19. Wzorzec obiektu kwerendy (wzorzec projektu)
- 20. Euler 160: Znajdź nietrywialne 5 cyfr silniaka
- 21. Scala Shapeless Code for Project Euler # 2
- 22. Scala bezkształtny kod dla projektu Euler # 1
- 23. Jaki byłby odpowiedni wzorzec projektowy do zastosowania w tej strukturze klasy PHP, z uwagi na brak dziedziczenia wielokrotnego?
- 24. Wzorzec obserwatora dla stopera
- 25. Wzorzec lokalizatora usług w Swift
- 26. Jak zsynchronizować wzorzec i pochodzenie/wzorzec używając egit w eclipse?
- 27. async TryParse (...) wzorzec
- 28. Implementator obiecuje wzorzec
- 29. Haskell rekord wzorzec dopasowania
- 30. Niepoprawny wzorzec regex
Do jakiego końca? Tylko po to, aby uzyskać ciepłe i rozmyte uczucie, robiąc to w sposób zorientowany na obiekt (tm)? Co jest nie tak z metodami statycznymi? – delnan
Przypuszczam, że masz rację. Po prostu czujesz, że może być napisana bardziej elegancko? Wydaje się nieporęczne mieć mnóstwo statycznych metod. –
Nie sądzę, że mamy wystarczająco dużo informacji, aby odpowiedzieć na twoje pytanie. – toto2