Standardy
Dostęp do konsoli AWS dla zespołów DEV
Wprowadzenie
W obszarze Delivery istnieją projekty których działanie opiera się na wykorzystaniu usług AWS takich jak m.in Simple Storage Serevice, DynamoDb, Lambda. Do wydajnego rozwijania takich projektów konieczna jest możliwość wglądu przez developerów w stan wykorzystywanych w danym projekcie komponentów AWS oraz generowanych logów.
Ewolucja schematu bazy danych (Flyway)
Wraz z coraz szerszym zastosowaniem zwinnych metodyk oprogramowania, zapotrzebowanie na narzędzia automatyzujące zarządzanie zmianami w schemacie baz danych znacząco wzrosło. Technologie umożliwiające rozwój schematu bazy danych podczas pracy nad kodem aplikacji pozwoliły developerom znacząco zwiększyć efektywność pracy
W tym czasie narzędzia takie jak Flyway czy Liquidbase zyskiwały na popularności. Migracje schematu baz danych wprowadzają koncept wersjonowania. Migracja są zarządzane w sposób przyrostowy i odwracalny, znacząco ułatwiają pracę z bazami danych na kilku środowiskach na raz (local, tst, stg i prd). Pozwalają także developerom odtworzyć bazę danych od zera, co jest niesamowicie pomocne przy tworzeniu nowych środowisk. Dają nam także pewność, że schemat bazy danych i kod aplikacji są zsynchronizowane, więc błędy w stylu “relation xyz does not exist” są nam nie straszne.
[In progress] Akceptowane frameworki JVM
Wprowadzenie
1. Spring Boot
Domyślny framework dla standardowych aplikacji opartych o technologie JVM
[In progress] Checklista dla nowych projektów
Poniżej. przedstawiamy zwięzłą listę opisanych i wymaganych standardów dla nowo powstających projektów:
Serializacja daty i czasu w formacie JSON
Istnieje kilka sposobów na serializację dat i czasów w JSONach m. in:
- ISO-8601
- RFC-3339
- UNIX timestamp
- “Tablica” (np [2023,2,14,17,0,0,80000000] - domyślna strategia w niektórych frameworkach JVM)
Statyczna analiza kodu (SonarQube)
Statyczna analiza kodu to proces ułatwiający wykrywanie defektów kodu bez jego uruchamiania. Pozwala mierzyć poziom długu technologicznego oraz wpływa pozytywnie na powstawanie kodu:
zgodnego z dobrymi praktykami
wyższej jakości
z mniejszą ilością potencjalnych bugów
z mniejszą ilością potencjalnych luk bezpieczeństwa
z mniejszą ilością duplikatów
o większej wydajności
łatwiejszego w utrzymaniu
Jest także elementem wymaganym przez kontrahentów i weryfikowanym podczas audytów oraz umożliwia oszacowanie długu technologicznego.