Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Перевести проект на Kotlin #81

Open
dmitry-weirdo opened this issue Nov 5, 2024 · 1 comment
Open

Перевести проект на Kotlin #81

dmitry-weirdo opened this issue Nov 5, 2024 · 1 comment

Comments

@dmitry-weirdo
Copy link
Collaborator

dmitry-weirdo commented Nov 5, 2024

  • В целом Kotlin и Java могут сосуществовать в одном проекте/модуле, но дьявол, как всегда, в деталях.
  • Lombok будет не нужен, есть data class. При совсем плохом кейсе можно вроде бы юзать record классы из новых версий Джавы.
  • MapStruct теоретически должен работать с Котлиновскими классами, но тут возможны проблемы.
  • Генерация из OpenApi вряд ли будет работать на Kotlin.
  • Пример перехода можно посмотреть в моём другом проекте — https://github.com/dmitry-weirdo/wiki-telegram-bot.
  • Начинаем пока с модуля kgstatsSrv. Модуль kgparserSrv является более древним, его можно перевести во вторую очередь.
dmitry-weirdo added a commit that referenced this issue Nov 21, 2024
…lass. Statistics generation is working locally.
dmitry-weirdo added a commit that referenced this issue Nov 21, 2024
…f maven-javadoc-plugin to support Kotlin classes and not fail.
dmitry-weirdo added a commit that referenced this issue Nov 21, 2024
… ARE working in Kotlin classes (even in IntelliJ IDEA).
dmitry-weirdo added a commit that referenced this issue Nov 22, 2024
dmitry-weirdo added a commit that referenced this issue Nov 22, 2024
…ugly static methods (same as it was done for the Rank enum).
dmitry-weirdo added a commit that referenced this issue Nov 25, 2024
dmitry-weirdo added a commit that referenced this issue Nov 25, 2024
…d convert them to Kotlin.
dmitry-weirdo added a commit that referenced this issue Nov 25, 2024
…layNamePrepositional` field names, same as in `StandardDictionary`.
dmitry-weirdo added a commit that referenced this issue Nov 25, 2024
…in. Extract static methods from Dictionary to a common Kotlin clas `DictionaryUtils`.
dmitry-weirdo added a commit that referenced this issue Nov 25, 2024
…on` and convert them to Kotlin. Make fields of `Car` visible to Java.
dmitry-weirdo added a commit that referenced this issue Nov 25, 2024
dmitry-weirdo added a commit that referenced this issue Nov 25, 2024
dmitry-weirdo added a commit that referenced this issue Nov 25, 2024
…o more dependencies from `kgstats-srv` to `kgparser-srv`!!!
dmitry-weirdo added a commit that referenced this issue Nov 26, 2024
feat: #81 Migrate project to Kotlin (started the migration)
feat: #102 Extract `kgCommon` module, turn off the legacy modules by default (you can enable them via a special maven profile).
feat: #101 Kefir usage reduced, only left in the legacy modules.
@dmitry-weirdo dmitry-weirdo reopened this Nov 26, 2024
@dmitry-weirdo
Copy link
Collaborator Author

Переведен не весь проект, а только часть.

@dmitry-weirdo dmitry-weirdo reopened this Nov 26, 2024
dmitry-weirdo added a commit that referenced this issue Nov 26, 2024
… (copy-pasted from "CSV files" branch and moved into Kotlin).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant