Aktywne Wpisy
![stormi](https://wykop.pl/cdn/c0834752/568720e45767590d30436e0f9542a108ef1b8c1764ade0722e67fa2d10e8fef4,q60.jpg)
stormi +37
ocencie moja dupe, kazda ocena ponizej 10 dostaje bana
![stormi - ocencie moja dupe, kazda ocena ponizej 10 dostaje bana](https://wykop.pl/cdn/c3201142/966377f514c1f5d5c0596f540bd6666d2d0af64449634c24cd97ad5d061f52f7,w150.jpg)
źródło: Zdjęcie z biblioteki
Pobierz
dzikiwonsz21 +2
Szukam samochodu tak do 10tys zł (to tylko na samochód, na pierwsze naprawy jakieś 2-3tys), moje wymagania to:
- tempomat
- podgrzewane siedzenia
- skórzana jasna tapicerka
- trwały mało awaryjny silnik, ale też żeby miał trochę mocy, a nie 15sekund do setki
- automatyczna klimatyzacja
Słucham państwa, co polecacie?
Z tego co zdążyłem przejrzeć rynek, to w oko wpadło mi kilka modeli:
- skoda superb 1
- rover 75
- jaguar
- tempomat
- podgrzewane siedzenia
- skórzana jasna tapicerka
- trwały mało awaryjny silnik, ale też żeby miał trochę mocy, a nie 15sekund do setki
- automatyczna klimatyzacja
Słucham państwa, co polecacie?
Z tego co zdążyłem przejrzeć rynek, to w oko wpadło mi kilka modeli:
- skoda superb 1
- rover 75
- jaguar
Programuję już jakiś czas i tafiałem do projektów z różnymi frameworkami do mapowania i zaczynam się zastanawiać po co? Mapowanie klas wydaje się być czymś super prostym: zbiór getterów i setterów. Naprawdę potrzebujemy do tego frameworka? Ktoś potrafi mi dać jakiś sensowny argument za frameworkiem?
1. Nie musmy definiować wszystkich pół gdy nazwa jest taka sama - OK, ale jak zrobimy refactoring i zmieni nam się nazwa pola/gettera to mapper przestanie działać. Chyba lepiej mieć nad tym kontrolę?
2. Definiujemy tylko pole jakie mają się mapować i reszte zrobi framework - To co wyżej. Zmienimy nazwę pola (Stringa) to IDE nam nie podmnieni tych Stringów "name" -> "firstName"
Po prostu trzeba myśleć co się robi i mieć testy
¯\_(ツ)_/¯
Czym się różni sytuacja gdzie zapomnisz zmienić mapping, od zapomnienia wywołania settera?
Jeśli nie wyj***e ci się żaden unit kiedy pole w modelu przestało być ustawiane, to gratuluję wiary w swój codebase.
Mapper, który jest napisany ręcznie tego nie zrobi.
Kiedyś były frameworki mapujące czasu wykonania, typu Orika. To generalnie było słabe. Obecne wynalazki działają w czasie kompilacji i wydajnościowo niczym się to nie różni od ręcznie pisanej litanii setterów.
Mapstruct ma plugin do intellij, podpowiada dość dobrze. Jedyne wywałki, to jak stosujesz zapis target = "entityA.entityB.fieldC", bo wtedy nie będzie