TDD/DDD - jak to jest naprawdę w polskim biznesie IT?

0

Właśnie, tak się zastanawiam; często pojawiają się wątki od osób, które uczą się TDD/DDD, a jak to jest naprawdę? Są w ogóle w Polsce firmy programistyczne, które piszą software trzymając się tych metodologii? Czy np. są przedsiębiorstwa w Polsce gdzie naprawdę pisze się testy zanim w ogóle zacznie się tworzyć konkretne klasy? ...albo gdzie wszystko trzymane jest restrykcyjnie wg. DDD?

Jestem ciekaw, bo głośno się o tym robi, a jak to jest naprawdę?

0

A czemu by miało nie być? Sam teraz pracuję w DDD, a w poprzedniej firmie także było. Fakt, że sugerowałem się głównie zarobkami, no ale wiadomo, że takie rzeczy tylko w lepszych firmach, choć nawet w tych słabych akurat TDD jest chyba wymagane. Poza tym DDD nawet jak się nie stosuje i tak warto umieć, bo nie dość że pomaga w pracy to zwykle są pytania z niego na rozmowach rekrutacyjnych. Mówię z perspektywy PHP, więc w poważniejszych językach powinno być jeszcze lepiej z tym.

1

Gdzieś pewnie są, ale najczęściej to po prostu ludziom wydaje się, że działają zgodnie z tymi podejściami.
A TDD, to w ogóle trudno wymusić na poziomie organizacji, to od każdego programisty zależy, czy tego używa, czy nie.

1

Testy nawet wymuszone i sprawdzane tak. W dużych firmach norma nawet (albo ja miałem takie przypadki).
TDD nie jest wymuszane. Mocno wkurzam się jak słyszę :już wszystko zrobiłem przez tydzień, działa, teraz dopisze testy..., bo to średnio wychodzi, ale z drugiej strony nie jestem za sztucznym wymuszaniem TDD. Raczej każdy powinien umieć, nie zawsze musi stosować.

DDD większy problem. Nie ogarniam DDD. Miałem do czynienia z ludźmi, którzy próbowali zDeDeDować swoje projekty (w jakimś tam stopniu) ,w ramach projektów firmowych.

0

Gdzieś pewnie są, ale najczęściej to po prostu ludziom wydaje się, że działają zgodnie z tymi podejściami.

Racja, na tym forum również, programiści jak widzą w tytule ddd, to chyba im fajka opada, bo nie potrafią nic powiedzieć mądrego :D

0

Na ostaniej Confiturze mocno promowano DDD, albo tylko takie odniosłem wrażenie.

0

TDD Jest po to, żeby zmniejszać stress podczas pisania kodu. Nie po to, żeby kierować się jakimiś bzdurnymi regułkami, "Zawsze Test przed kodem", "Kod musi być pokryty Unit Testami w 98%", "Zawsze używaj frameworka do Mocków". Z tego, co wyczytałem w książkach to bardzo mi się podoba zaczynanie pisania testu od asercji pisanie w ten sposób jest bardziej intuicyjne.

Umiejętność pisania testów, które są odporne na zmiany w kodzie to już inna bajka. Zwykle kod jest zamurowywany testami.

A z DDD to, jaki konkretnie problem macie ?

0

Jeśli nie piszesz testów przed kodem, to z definicji nie masz TDD.

0

Ja odbieram TDD jako zestaw wzorców, które pomagają tworzyć testowany kod małymi krokami zmniejszając przy tym stres związany z pisaniem kodu. W żadnej książce nie znalazłem, żadnego nakazu pisania testu przed kodem a jedynie zachętę do tego jako dobrą praktykę. A czytałem Kent Beck'a i Roy Osherove. Roy pisał z tego, co pamiętam, że nie ma oficjalnej definicji TDD. No i trochę Wujka Boba ale to już tragedia.

2

Ja piszę w TDD z jednej prostej przyczyny. Jak już napiszę kod, to mi się testów nie chce pisać :D :P

3
._. napisał(a):

No i trochę Wujka Boba ale to już tragedia.

No właśnie on postuluje, aby pisać testy zanim jeszcze cokolwiek zostanie zaimplementowane. Kod testów ma się na początku nawet nie kompilować.
Dla mnie to głupota, więc tego nie stosuję i też nikomu nie polecam. Ale co kto lubi.

0

TDD w postaci najpierw test potem kod to właśnie postulował Kent Beck, potem to przyjął Uncle Bob.
(Kent Beck pisze, że inspirował się dokumentami i technikami z lat 50tych i tylko przypomniał TDD)

0

A to jak byś nazwał? :|

1

W firmach, w których do tej pory pracowałem w większości nikt do TDD nie zachęcał. Był nawet przykład torpedowania, bo to jest "wolniej".
Jeżeli pisałem/pisaliśmy w TDD to zawsze to była inicjatywa oddolna.
Ja osobiście już nie potrafię / boję się pisać bez TDD.
Jestem zarażony TDD.
Uwaga, nie próbujcie TDD w domu, bo jak już się zacznie, to bardzo ciężko przestać ;)

0
jarekr000000 napisał(a):

TDD w postaci najpierw test potem kod to właśnie postulował Kent Beck, potem to przyjął Uncle Bob.
(Kent Beck pisze, że inspirował się dokumentami i technikami z lat 50tych i tylko przypomniał TDD)

Tak, ale on odnosi się do modelu, a nie ilości klas czy linijek kodu. Pisze też, że praktyka ta ma zmniejszyć poziom stresu, podczas pisania kodu. Czyli po prostu pisząc kod modelu na bieżąco testujemy jego komponenty utilsy i tp (Szlifujemy ten model testami.). Kod modelu jest tam wymieniony w sensie "Nie tworzymy od razu diagramu modelu i go implementujemy, a potem testujemy". :| Bynajmniej ja to tak odbieram.

No chyba, że chcesz tak jak Wujek testować to czy kolekcja w Javie zachowuje się jak kolekcja. Mówiąc przy tym, że najpierw trzeba napisać test.

Opinie Wujka Boba na temat testowania, znam i jej nie pochwalam... :|

0

U nas w organizacji jest szeroko stosowane DDD, u nas w projekcie nie jest to podejście purystyczne, więc brakuje do ideału, ale jak miałem okazje widzieć inne projekty to jest jeszcze gorzej, często SOLID jest łamane, chociaż autorzy, że twierdzą, ze to też DDD :) ale nie ma co biadolić, pewnie są zespoły, które to robią lepiej, nie widziałem całego code basu, a jest spory
a jeżeli chodzi o TDD to zależy od programisty. sam czasem tak piszę, ale w określonych przypadkach, bo tak jest po prostu wygodniej

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