2012-06-05 12 views
8

Musi istnieć nazwa, gdy ludzie próbują nadużywać wzorców projektowych. Wiem o warunkach anti-patterns i code-smell (między innymi), ale po prostu nie wydają się stosować do tej sytuacji.Jak się nazywa, gdy ludzie próbują nadużywać wzorców projektowych?

Nie zrozumcie mnie źle, wydaje mi się, że wzorce są bardzo użyteczne i potężne, ale zbyt wiele razy widzę pytania i kod, w których ludzie wydają się próbować wymuszać użycie wzoru, aby powiedzieć, że używali wzoru. Częściej niż prostota jest absolutnie najlepszym sposobem, aby przejść.

Zrobiłem wyszukiwanie i tylko wymyśliłem: When are design patterns the problem instead of the solution?, które uważam za interesujące, ale nie zgadzam się z tym całkowicie.

Jeśli tag nie istnieje w przepełnieniu stosu, to chciałbym przynajmniej go zarezerwować. Nie jest to często, że masz, aby utworzyć nowy tag :)

jakieś pomysły co może być nazywany obserwacji:

  • nad patternizing
  • nad patternized
  • wzorzec projektowy przedawkowania
+2

Należy do [Programmer.SE]. –

+0

@ PéterTörök, może masz rację, ale pytanie wydaje się zgodne z tym, do którego się odwołałem, co nie zostało oznaczone. Nie jestem do końca jasna na temat różnicy. – Brady

+0

Nie chciał krytykować, tylko wskazać obecną praktykę na StackExchange. Pytanie, na które się powołujesz, jest stare, na długo przed powstaniem Programmers.SE. –

Odpowiedz

4

Nazwałbym to nadmiernym ujędrnieniem - nie musi to być po prostu wzorce.

Skorzystaj z zasady KISS (jak zauważyłeś).

+1

Jaka jest zasada KISS? Obawiam się, że zwrócę wiele trafień na google – Brady

+3

Keep It Simple Stupid :) - http://pl.wikipedia.org/wiki/KISS_principle – jglouie

+0

Ahh, dzięki. – Brady

8

Wierzę, że odnosimy się do Cargo cult programming:

[...] to styl programowania komputerowego, który charakteryzuje się rytualnego włączenia kodu programu lub struktur, które służą nie prawdziwy cel. Programowanie kultu kultowego jest zazwyczaj symptomatyczne dla programisty, który nie zrozumiał ani błędu, który próbował rozwiązać, ani pozornego rozwiązania (porównaj shotgun debugging, voodoo programming). Termin programista kultu ładunku może również mieć zastosowanie, gdy niewykwalifikowany lub początkujący programista komputerowy (lub który nie ma doświadczenia z danym problemem) kopiuje kod programu z jednego miejsca i wkleja go w inne miejsce, z niewielkim lub żadnym zrozumieniem tego, jak działa kod lub czy jest to wymagane na nowym stanowisku.

Albo możesz po prostu powiedzieć: overeinineering.

+4

Programowanie ładunków masowych IMHO jest zjawiskiem o wiele niższym poziomie, zwykle powiązanym z ślepym kopiowaniem kodu z różnych źródeł, bez zrozumienia, jak to działa. Podczas gdy nadużywanie wzorców projektowych jest działaniem wyższego rzędu, często bez kopiowania i wklejania w ogóle, po prostu tworzenia rzeczy, a jego autor może szczegółowo wyjaśnić, w jaki sposób ma być użyteczny (zwykle w jakiejś wyobrażonej przyszłości, która nigdy nie nastąpi) . –

+1

@ PéterTörök: Zgadzam się, myślę, że "* interfejsy wszędzie *" i "* dokument/komentarz każda linia kodu *" są typowymi wcieleniami programowania kultowego ładunków. Jednak popychanie * Strategii * tylko dlatego, że masz jedno "jeśli" lub używasz fabryki do wszystkiego, jest również przykładem kultowego ładunku, IMHO. –

2

Istnieje wielka blogu o kilku etapach z użyciem wzorców projektowych. Chciałbym opisać to, czego doświadczasz, jest wynikiem nadgorliwego używania wzorca. Deweloperzy prawdopodobnie nauczyli się nowego wzoru i nigdy nie wykorzystali mistrzowskiego zastosowania tego wzorca. Często zdarza się, że ludzie próbują wymuszać wzorce, których tak naprawdę nie rozumieją.

Zapoznaj się z artykułem this article, aby uzyskać dobre wyjaśnienie tego, co ten gość nazywa 4 etapami uczenia się wzorców projektowych.

Powiązane problemy