fs / android-base

kick-start your next Android app
http://www.flatstack.com/open-source/
MIT License
75 stars 17 forks source link

Switch from Lombok to AutoValue + Extensions? #20

Closed meoyawn closed 8 years ago

meoyawn commented 8 years ago

Lombok is too much magic and requires and IDE plugin AutoValue is JSR 269 and has a number of extensions including Gson/Moshi support and automatic parcelable generation

https://github.com/google/auto/tree/master/value https://github.com/rharter/auto-value-parcel https://github.com/rharter/auto-value-moshi

IlyaEremin commented 8 years ago

Я не оч в теме, можешь объяснить в двух словах что надо делать чтобы юзать эту штуку и что получится на выходе? Если я правильно понимаю, это из той же серии что и https://immutables.github.io/typeadapters.html . И она умеет генерить адаптеры для gson -> позволяет избавиться от рефлекшена при де\сериализации и вытекающих из неё проблем.

meoyawn commented 8 years ago

да, из той же серии

AutoValue начинается c генерации equals/hashcode/tostring, для этого я и хотел заменить Lombok на него

но сейчас читаю Immutables и вижу что они умеют все то же, что и AutoValue

кроме Parcelable https://github.com/immutables/immutables/issues/95

вот тут кратко об AutoValue https://speakerdeck.com/jakewharton/autovalue-extensions-square-nyc-march-2016

IlyaEremin commented 8 years ago

@adelnizamutdinov а через плагин нагенерить parcelable можно в эти классы?

meoyawn commented 8 years ago

@IlyaEremin я ни разу не пользовался Immutables

meoyawn commented 8 years ago

сейчас вставил autovalue 1.2 в один проект - имею сгенеренные equals/hashcode/tostring

подключил moshi генератор - получил fromJson/toJson без рефлекшена как понадобится, подключу parcelable генератор

IlyaEremin commented 8 years ago

autovalue специфичная вещь, не везде нужна. Пусть base проект будет без какой-либо магии будь то lombok или autovalue.