Sobes.tech
Junior

Kokias kūrimo aplinkas ir įrankius naudojate dirbdami Kotlin?

sobes.tech AI

Atsakymas iš AI

  • Kūrimo aplinkos (IDE):

    • IntelliJ IDEA (Community ir Ultimate leidimai) kaip pagrindinė kūrimo aplinka Android ir serverinėms programoms. Parama Kotlin yra išsami.
    • Android Studio Android kūrimui. Ji pagrįsta IntelliJ IDEA ir apima specifinius Android įrankius.
  • Konstravimo sistemos:

    • Gradle Android programų ir daugelio serverinių projektų kūrimui. Naudoja Kotlin DSL scenarijus.
    • Maven kartais naudojamas serveriniams projektams, tačiau Gradle yra pranašesnis dėl lankstumo ir Kotlin palaikymo.
  • Versijų kontrolės sistemos:

    • Git su platformomis kaip GitHub, GitLab ar Bitbucket, kodo valdymui ir bendradarbiavimui.
  • Bibliotekos ir karkasai:

    • Kotlin Standartinė biblioteka (kotlin-stdlib)
    • Kotlinx Coroutines asinchroniniam programavimui.
    • Ktor arba Spring Boot (su Kotlin) serverio kūrimui.
    • Android Jetpack (Architecture Components, UI, Behavior) Android kūrimui.
    • JUnit 5, Mockk, AssertJ vienetiniam ir integraciniam testavimui.
  • Testavimo įrankiai:

    • JUnit 5 vienetiniams testams.
    • Instrumented tests (Android) su Espresso ar UI Automator.
    • Mockk mok-objektų kūrimui.
    • AssertJ ar Hamcrest patvirtinimams.
  • Kodo statinės analizės ir formatavimo įrankiai:

    • Ktlint Kotlin standartams pagal kodavimo standartus.
    • Detekt kodo statinei analizei ir galimų problemų paieškai.
  • Profilavimo ir derinimo įrankiai:

    • IntelliJ IDEA/Android Studio įmontuotas derintuvas.
    • Android Profiler Android programų našumo analizei.
  • Priklausomybių valdymo įrankiai:

    • Maven Central, JCenter (pasenęs), Google Maven Repository, JFrog Artifactory, Nexus Repository Manager.
  • Plugin'ai IntelliJ IDEA/Android Studio:

    • Kotlin plugin (įmontuotas)
    • Ktlint plugin
    • Git integracija (įmontuota)
    • Database Navigator
    • JSON Parser
  • CI/CD įrankiai:

    • Jenkins, GitLab CI/CD, GitHub Actions, CircleCI, Travis CI automatizacijai.

Bendrai, įrankių rinkinys priklauso nuo konkrečios užduoties (Android, serverio kūrimas, kryžminė platforma).