środa, lutego 25, 2026

Przebrzydłe lambdy ;-)

Mój nowy pracowy projekt to dużo Lambd... nie lubię Lambd ;-)

Tzn. co do samej idei lambd mam jeszcze nie ukształtowane podejście, widzę zalety, ale i wady też.

Problemem jest jednak coś innego. Gdy buduję coś to mam tego obraz w głowie, gdy wchodzę w coś co zbudowano to próbuje sobie zbudować tą mapę i cholerne lambdy są tu problemem ;-)

Tzn. mogę wszystkie lambdy potraktować jako 1 kwadracik, ale ja nie tyle chcę architekturę poglądową, a mapę by szybko się po tym poruszać. Chcę wiedzieć które kawałki kodu z jakich zasobów korzystają i tak dalej.

Rysuje to sobie w Obsidianie, na razie jest bałagan, ale idea jest taka, że jak już wszystkie zależności narysuję to będę mógł poprzesuwać je tak by sobie wyodrębnić pewne obszary. Coś na tej zasadzie, że taką bardzo zgrubną analizę grafu użyję do zobaczenia struktury ;-)

Spróbowałem nawet dziś trochę oszukać i zagadałem do Copilota w trybie Agent, by przejrzał kod i zbudował w mermaid diagram pokazujący która lambda używa którego zasobu. Wyszło mu to zgrabnie, ale np. DynamoDB jest jednym prostokącikiem, a ja wiem, że table jest więcej, to samo z S3... 
Ale jest nadzieja ;-)

Nadal te lambdy mi trochę spędzają "sen z powiek" bo dobrze by było popatrzyć na step functions, na autentykatory i jakoś to w mojej mapie narysować... 

Poprzedni projekt był dużo prostszy, ale to była tak naprawdę banda batch processów, a to łatwo rozrysować ;-)

A czemu mam wątpliwości do lambd? 
Rozumiem ich urok, ale wydaje mi się, że ta abstrakcja jest trochę za wysoko. Do tego widzę, że wpływa na architekturę w tym, że robi się z tego trochę spaggethi, do tego step functions przejmują część funkcjonalności. Sam sobie je wyobrażałem bardziej jako kod, a to jest diagram.
Jakaś część mnie ma takie coś "a ja to się będzie mergować"? W sensie, że mergowanie tekstu jakoś mamy opanowane, do tego narzędzia mogą rozumieć kod i jego AST, to pomaga w mergowaniu, do tego mamy wiele lat praktyki w dzieleniu kodu tak by mergowanie było proste, a jak mergować diagramy?
Ale widzę też plusy, mam coś co może zająć dużo czasu? To nie muszę tego sam ogarniać, zrobi to za mnie step function.



Podobne postybeta
Java 8 + lambdy = wolno ;-)
ChatGPT - do czego i do czego nie ;-)
Promptem w ToDo ;-)
Gdzie popełniliśmy błąd?
"os.arch", "os.name", "sun.arch.data.model" co to jest i co pokazuje na jakiej maszynie i OSie? ;-)

Brak komentarzy:

Prześlij komentarz