Pracując nad kodem, mam do czynienia z wieloma takimi samymi wyzwaniami, jakie stawiają moi koledzy z zespołu, i napisałem kilka pomocnych funkcji i klas, a także one. Jeśli jest dobra komunikacja, usłyszę o czymś wspaniałym, co ktoś złożył, a sześć miesięcy później, gdy będę jej potrzebować, mogę ją zapamiętać i wywołać tę funkcję, oszczędzając sobie czas. Jeśli tego nie pamiętam lub nigdy o tym nie wiedziałem, prawdopodobnie ponownie wymyślę koło.
Czy istnieje jakaś szczególna praktyka dokumentowania tego rodzaju rzeczy? Jak możesz je łatwo znaleźć?
Jeśli twój zespół nie ma takiej dokumentacji, jak dowiesz się, czy twoje koło już istnieje?
EDYTOWAĆ:
Wszystkie dotychczasowe odpowiedzi oprócz jednej dotyczą idealnej sytuacji, więc podsumuję te rozwiązania: dokumentacja i komunikacja; Wiki, spotkania stand-up itp. To są wspaniałe rzeczy, ale polegają na tym, że programiści mają czas (i umiejętności), aby napisać dokumentację i uczestniczyć w spotkaniach oraz robić notatki i wszystko pamiętać.
Najpopularniejsza jak dotąd odpowiedź (Caleba) jest jedyną, z której może skorzystać programista, który nie jest w stanie dokumentować i spotykać się i robi tylko jedno: programowanie. Programowanie jest tym, co robi programista, i tak, świetny programista może pisać dokumentację, testy jednostkowe itp., Ale spójrzmy prawdzie w oczy - większość z nas woli programowanie od dokumentacji. Jego rozwiązanie polega na tym, że programista rozpoznaje kod wielokrotnego użytku i wyciąga go do swojej własnej klasy lub repozytorium lub cokolwiek innego, a dzięki temu, że jest izolowany, staje się możliwy do znalezienia i ułatwia krzywą uczenia się do jego używania ... i zostało to osiągnięte poprzez programowanie.
W pewien sposób widzę to tak: właśnie napisałem trzy funkcje i przyszło mi do głowy, że ktoś inny powinien o nich wiedzieć. Mógłbym je udokumentować, napisać, ogłosić na spotkaniu itp. - co mogę zrobić, ale to nie jest moja siła - lub .... Mogę wyodrębnić je na zajęcia, nazwać to dobrze, sprawić, by działały jak czarną skrzynkę i przyklej ją tam, gdzie idą inne pliki klas. Następnie krótki e-mail z informacją, że jest łatwy. Inni programiści mogą zeskanować kod i zrozumieć go lepiej, niż mogliby izolować funkcję używaną w kodzie, którego nie do końca rozumieją - kontekst ten został usunięty.
Lubię to, ponieważ oznacza to, że posiadanie zestawu dobrze nazwanych plików klas z dobrze nazwanymi metodami jest dobrym rozwiązaniem, które można osiągnąć poprzez dobre programowanie. Nie wymaga spotkań i łagodzi potrzebę szczegółowej dokumentacji.
Czy są jeszcze jakieś pomysły w tym stylu ... dla izolowanych i obciążonych czasem programistów?