Ontwikkel een geavanceerde Kotlin-functie voor Android-applicaties
description
Met deze prompt kan de gebruiker snel een op maat gemaakte Kotlin-functie krijgen die aansluit bij een specifieke taak in Android-apps. Het bespaart ontwikkeltijd, bevordert best practices en helpt bij het begrijpen van geavanceerde concepten, wat beter is dan algemene code snippets zonder context.
prompt
Ontwerp en implementeer een Kotlin-functie voor mijn Android-app die <beschrijf de functionaliteit of taak> uitvoert. Zorg ervoor dat de code ...
try_prompt
generate_helper
disclaimerOnPageApi
tags
ai_answers
provider: openai
model: gpt-4.1-nano
Hier is een voorbeeld van een Kotlin-functie die de prijs na korting berekent, geschikt voor gebruik in een Android-app. De code is eenvoudig, onderhoudsvriendelijk en volgt best practices:
```kotlin
/**
* Bereken de uiteindelijke prijs na het toepassen van een korting.
*
* @param originelePrijs De originele prijs van het product.
* @param kortingPercentage Het kortingspercentage (bijvoorbeeld 20 voor 20% korting).
* @return De prijs na korting, afgerond op twee decimalen.
*/
fun berekenPrijsNaKorting(originelePrijs: Double, kortingPercentage: Double): Double {
require(kortingPercentage in 0.0..100.0) { "Kortingpercentage moet tussen 0 en 100 liggen." }
val kortingFactor = 1 - (kortingPercentage / 100)
val prijsNaKorting = originelePrijs * kortingFactor
return String.format("%.2f", prijsNaKorting).toDouble()
}
```
**Toelichting:**
- **Validatie:** Gebruik van `require()` om te controleren dat het kortingspercentage logisch is.
- **Berekening:** De korting wordt als percentage omgezet naar een factor (bijvoorbeeld 20% wordt 0.8) en vervolgens toegepast op de originele prijs.
- **Precisie:** De prijs wordt afgerond op twee decimalen met `String.format()`, wat handig is voor valutaweergave.
**Gebruik in je app:**
```kotlin
val originelePrijs = 100.0
val korting = 15.0
val prijsNaKorting = berekenPrijsNaKorting(originelePrijs, korting)
println("De prijs na korting is: €$prijsNaKorting")
```
**Technieken en designpatterns:**
- **Functies:** Klein en herbruikbaar ontwerp, bevordert onderhoudbaarheid.
- **Inputvalidatie:** Zorgt voor robuuste code.
- **Compatibiliteit:** De code gebruikt enkel basis Kotlin-functies, compatibel met de nieuwste Android SDK.
Indien gewenst, kun je deze functie uitbreiden met meer functionaliteiten zoals valuta formatting of integratie met Android UI-elementen.
provider: deepseek
model: deepseek-chat
no_answer_for_language
error: Generation failed [deepseek] prompt_id=2027 locale=nl err=DeepSeek connection/timeout | Generation failed [deepseek] prompt_id=2027 locale=en err=DeepSeek connection/timeout | Generation failed [deepseek] prompt_id=2027 locale=de err=DeepSeek connection/timeout | Generation failed [deepseek] prompt_id=2027 locale=fr err=DeepSeek connection/timeout | Generation failed [deepseek] prompt_id=2027 locale=pt err=DeepSeek connection/timeout | Generation failed [deepseek] prompt_id=2027 locale=es err=DeepSeek connection/timeout | Generation failed [deepseek] prompt_id=2027 locale=zh err=DeepSeek connection/timeout