Eenheid 11 / 11

End-to-End Project, Verantwoord Gebruik van Kunstmatige Intelligentie en Roadmap in het Beroep

Winst:

  • Mogelijkheid om end-to-end een mobiele functie te ontwikkelen die verifieerbaar is in ontwerp, code, AI-integratie, privacy, testen, debuggen, prestaties en releasestappen
  • Vermogen om een raamwerk op te zetten voor een verantwoord en ethisch gebruik van kunstmatige intelligentie met de principes van transparantie, verificatie-verantwoording en rechtvaardigheid-niet-schade.
  • Het kunnen creëren van een duurzame beroepspraktijk door onderscheid te maken tussen de gebieden waar kunstmatige intelligentie sterk en zwak is en de uiteindelijke beslissing in handen van de mens te houden.

Gedurende deze module hebben we AI gebruikt in elke fase van de mobiele ontwikkeling: codegeneratie, interface, AI-integratie op het apparaat en in de cloud, testen, debuggen, prestaties, privacy en winkellevering. In deze laatste unit zullen we al deze onderdelen combineren tot één end-to-end stroom, het raamwerk voor verantwoord en ethisch gebruik van AI verduidelijken en bespreken hoe we deze vaardigheden kunnen omzetten in een duurzame professionele praktijk. De kernboodschap is niet veranderd, maar is nu stevig verankerd: AI is een kracht die een competente mobiele ontwikkelaar vermenigvuldigt; het is geen vervanging. Het is de persoon die verantwoordelijk is voor de kwaliteit, veiligheid en belofte van het product aan de gebruiker.

Een end-to-end feature: het combineren van onderdelen

Het ontwikkelen van een echte functie van begin tot eind met AI-ondersteuning combineert elke eenheid die we in een keten hebben geleerd. Voorbeeld: functie "kosten toevoegen vanaf ontvangstbewijs". De stroom werkt als volgt:

  1. Ontwerp (eenheid 3). Ontwerp het scherm en de vier statussen (laden/leeg/fout/vol) met AI, vraag vanaf het begin toegankelijkheid aan.
  2. Code (eenheid 2). Genereer camera, datamodel en ViewModel laag voor laag met MVVM; verifieer elke laag.
  3. AI op het apparaat (eenheid 4). Bedrag/datum vanaf kassabon aflezen met ML Kit-tekstherkenning; Denk aan voorverwerking en betrouwbaarheidsscores.
  4. Vertrouwelijkheid (eenheid 9). Vraag cameratoestemming aan met de minste rechten, schrijf het afwijzingsscenario en bewaar de gegevens op het apparaat.
  5. Testen (eenheid 6). Genereer unit-tests van de extractielogica, UI-testen van het display; Inclusief grensstaten.
  6. Foutopsporing (eenheid 7). Laat AI de crashes analyseren met context en de hoofdoorzaak oplossen.
  7. Prestaties (eenheid 8). Meet de batterijkosten van cameraverwerking en stel deze batterijvriendelijk in.
  8. Uitzending (eenheid 10). Meld het gebruik van AI transparant, vul het privacyformulier naar waarheid in en voer een zelftest uit.

Bij elke stap versnelt de AI, verifieert en beslist de mens. Deze lus is de kern van de module.

Tip: Probeer de AI niet met één gigantisch verzoek een complexe functie te laten uitvoeren. Verdeel het in verifieerbare stappen, zoals hierboven. Het testen van de resultaten van elke stap en doorgaan naar de volgende is zowel veiliger als uiteindelijk sneller; Omdat je een grote fout niet op het einde tegenkomt, maar bij de eerste stap.

Verantwoord en ethisch gebruik van AI

Technische competentie alleen is niet voldoende; een verantwoord raamwerk maakt het compleet. Drie principes:

Transparantie. De gebruiker moet weten dat hij of zij interactie heeft met de AI. Een geheime AI is een vertrouwensbreuk. Door AI gegenereerde inhoud wordt getagd; AI-advies wordt gepresenteerd als ‘nuttig advies’ in plaats van als ‘harde waarheid’.

Verificatie en verantwoording. AI-output is een startpunt, geen eindproduct. Jij bent verantwoordelijk voor elke gepubliceerde coderegel, elke AI-reactie, elke datatransactie. ‘De AI heeft het zo geschreven’ is geen verdediging.

Gerechtigheid en niet-schadelijkheid. AI-modellen kunnen vooroordelen overbrengen op basis van de gegevens waarop ze zijn getraind. Bij sommige huidskleuren kan een gezichtsherkenning slechter werken, een aanbevelingsmotor kan een groep uitsluiten. Het is uw verantwoordelijkheid om te testen of uw product eerlijk werkt onder verschillende gebruikersgroepen.

Let op: Elke techniek die je leert op het gebied van IT en beveiliging wordt alleen gebruikt voor geautoriseerde en constructieve doeleinden. Het gebruik van AI om malware te maken, de applicatie van iemand anders zonder toestemming te kraken, gebruikersgegevens zonder toestemming te verzamelen of misleidende inhoud te produceren is illegaal en in strijd met de ethiek van het beroep. De mate van kracht wordt onthuld waar u deze niet gebruikt.

De grenzen van AI herkennen

Een volwassen ontwikkelaar weet waar AI uitblinkt en waar het tekortschiet.

AI is krachtig

AI is zwak

Matrijscode, boilerplate-productie

Product- en architectonische beslissingen

Testen en documentatie opstellen

Inzicht in de zakelijke context en gebruiker

Crash log lezen, fouten scannen

Definitieve oorzaakdiagnose (verificatie vereist)

Leren, conceptuitleg

Huidige/ongefabriceerde API-informatie

Tekst, beschrijving, vertaling

Ethiek, veiligheid en juridische eindbeslissing

Het internaliseren van dit onderscheid is de sleutel tot een effectief gebruik van AI en het vermijden van de valkuilen ervan.

drie minikoffers

Geval 1 — Eind-tot-eindsnelheid. Eén solo-ontwikkelaar voltooide de "unplugged"-functie in vier dagen met de hierboven beschreven 8-stappenstroom; Zonder AI was de schatting 12 dagen. Maar omdat hij elke stap verifieerde, werd de publicatie de eerste keer goedgekeurd. Snelheid was echt omdat discipline echt was. Les: AI + verificatie is sneller dan AI - verificatie.

Geval 2 — Vooroordeel gevangen. Tijdens het testen van een op AI gebaseerde functie voor het voorspellen van het geslacht van zelfstandige naamwoorden, ontdekte een team systematische fouten in sommige Turkse zelfstandige naamwoorden; het model werd getraind op voornamelijk Engelse gegevens. De functie is gewijzigd om de gebruiker te vragen in plaats van de verkeerde veronderstelling te maken. Les: het is de taak van de ontwikkelaar om de trainingsbias van het model te testen.

Geval 3 – Het ‘AI zei het’-verdediging stortte in. Een ontwikkelaar publiceerde een door AI gegenereerde betalingscode zonder deze te verifiëren; In één extreem geval deed de code dubbele verzamelingen. De verantwoordelijkheid wordt niet weggenomen door te zeggen: “AI heeft het geschreven”; Als rekeninghouder was hij ontwikkelaar. Les: verantwoordelijkheid kan niet worden gedelegeerd.

Zwakke prompt/sterke prompt

Zwakke prompt: "Schrijf mij een volledige toepassing voor het scannen van bonnen."

Krachtige prompt: "Help me stap voor stap de functie 'kosten toevoegen vanaf ontvangstbewijs' te ontwikkelen. Laten we doorgaan, wanneer ik elke stap verifieer en goedkeur, ga dan naar de volgende: 1) Scherm + vier statussen + toegankelijkheid2) MVVM-lagen (camera, model, ViewModel)3) Leesbedrag/datum vanaf ontvangstbewijs met ML Kit + vertrouwensscore4) Cameratoestemming (minste privileges) + afwijzingsstroom5) Eenheids- en UI-tests Vertel me de risico's en punten die ik bij elke stap moet verifiëren."

Kopieerbare sjablonen

End-to-end planningssjabloon: "Ik ga de volgende feature ontwikkelen: [feature]. Deel deze op in verifieerbare stappen: ontwerp, code, AI-integratie, privacy/toestemming, testen, prestatie, release. Schrijf de output-, risico- en verificatiecriteria voor elke stap. Maak geen enkele gigantische productie."

Ethiek/vooroordelen-auditsjabloon: "Controleer de volgende AI-functie op eerlijkheid en vooringenomenheid: [functie]. Bij welke gebruikersgroepen kan deze slecht presteren? Hoe beïnvloeden trainingsgegevens de vooringenomenheid? Hoe test ik deze, hoe maak ik deze inclusiever?"

Sjabloon voor verantwoordingscontrole: "Maak een lijst van de verantwoordingsvragen die ik moet stellen voordat ik deze door AI gegenereerde code/functie vrijgeef: heb ik het begrepen, heb ik het getest, is het veilig, is het transparant voor de gebruiker, is het legaal/ethisch?"

Sjabloon voor continu leren: "Stel een praktisch plan van vier weken voor om mijn AI-vaardigheden in mobiele ontwikkelaars te verbeteren: één onderwerp per week (code, integratie, testen, release), met als doel een klein project en een verificatiegewoonte."

Veel voorkomende fouten

  • Complexe feature produceren met één gigantisch verzoek. Kan niet worden geverifieerd; verdeel het in stappen.
  • Verantwoordelijkheid vermijden door te zeggen: "AI heeft het geschreven". U bent verantwoordelijk voor de gepubliceerde code.
  • Niet testen op AI-bias. Het model werkt mogelijk slecht in sommige groepen; Gerechtigheid testen.
  • AI-interactie voor de gebruiker verbergen. Transparantie is de basis van vertrouwen.
  • De beperkingen van AI vergeten. Mensen hebben het laatste woord over architectuur, ethiek en de huidige API.
  • Om te stoppen met leren. Tools en winkelregels veranderen snel; Blijf voortdurend op de hoogte.

Samengevat

Een end-to-end-functie combineert alle onderdelen van de module in een keten: ontwerp, code, AI-integratie, privacy, testen, debuggen, prestaties en release. Bij elke stap versnelt AI, verifieert en beslist de mens; Complex werk wordt opgedeeld in kleine, controleerbare stappen. Verantwoord gebruik is gebaseerd op drie principes: transparantie, verificatie, verantwoording afleggen en eerlijkheid, geen schade berokkenen. AI is een krachtige vermenigvuldiger, maar mensen hebben het laatste woord over architectuur, ethiek, veiligheid en huidige kennis. “De AI deed het zo” is geen verdediging; U bent verantwoordelijk voor uw product en de belofte die u aan uw gebruiker doet. Met deze discipline maakt AI je sneller, completer en sterker gedurende je hele carrière.

Applicatie taak

Verdeel een mobiele functie naar keuze (bijvoorbeeld ‘samenvatten door gesproken notities te maken’ of ‘productherkenning vanaf foto’) in verifieerbare stappen met een ‘End-to-end planningsjabloon’. Ontwikkel en valideer daadwerkelijk minimaal één stap met AI. Analyseer vervolgens bij welke gebruikersgroepen de functie problemen kan veroorzaken met de 'Ethiek/bias-controlesjabloon' en beantwoord de vragen die u moet stellen voordat u deze vrijgeeft met de 'Aansprakelijkheidscontrolesjabloon'.

controlelijst

  • [ ] Ik heb de functie opgedeeld in verifieerbare kleine stappen, niet in één enkele gigantische productie
  • [ ] Ik heb bij elke stap de AI-output geverifieerd en de beslissing genomen
  • [ ] Ik presenteerde de AI-interactie transparant aan de gebruiker
  • [ ] Ik heb geëvalueerd of de functie redelijk/bevooroordeeld werkt in verschillende groepen
  • [ ] Ik heb vragen over de pre-release-verantwoordelijkheid beantwoord (begrepen/testen/veilig/ethisch)
  • [ ] Ik heb AI alleen voor competente en constructieve doeleinden gebruikt en ben van plan verder te leren

Module-examen

1. Welke van de volgende is de meest nauwkeurige positionering voor kunstmatige intelligentie in mobiele ontwikkeling?

  • A) AI vervangt de ontwikkelaar; kan direct worden gepubliceerd zonder de gegenereerde code te lezen
  • B) Kunstmatige intelligentie werkt alleen bij het schrijven van tekst, het heeft niets te maken met het genereren van code
  • C) Kunstmatige intelligentie is een assistent en versneller; De verantwoordelijkheid voor beslissingen op het gebied van architectuur, beveiliging en uitzendingen ligt bij mensen ✔
  • D) Omdat kunstmatige intelligentie altijd de juiste code oplevert, zijn aanvullende tests en verificaties niet nodig

Beschrijving: Kunstmatige intelligentie is een assistent en accelerator die code, blauwdrukken en oplossingen genereert. De verantwoordelijkheid en uiteindelijke goedkeuring van beslissingen zoals architectuur, vergunningen, beveiliging en publicatie liggen bij de bevoegde ontwikkelaar; Mensen zijn verantwoordelijk voor elke gepubliceerde regel.

2. Wat verhoogt de architectonische kwaliteit van de geproduceerde code het meest als er mobiele code wordt opgevraagd bij kunstmatige intelligentie?

  • A) Houd de prompt zo kort mogelijk en zeg 'schrijf me een appje'
  • B) Leg eerst een architectuur zoals MVVM op en vraag de code in kleine stukjes op, laag voor laag ✔
  • C) Het produceren van de hele functie als één gigantisch bestand in één enkele prompt
  • D) Specificeer de architectuur helemaal niet en laat de beste beslissing over aan kunstmatige intelligentie

Uitleg: Het opleggen van een architectuur zoals MVVM en het vereisen van laag voor laag voordat code rechtstreeks naar de AI wordt geschreven, levert een testbare en onderhoudbare structuur op die de logica van het scherm scheidt. Het verzoek zonder architectuur retourneert code die alles op het scherm propt.

3. Wat wordt het vaakst over het hoofd gezien bij het creëren van een interface met kunstmatige intelligentie en wat is het meest cruciaal bij daadwerkelijk gebruik?

  • A) Ontwerpen van laad-, leeg- en foutstatussen, niet alleen het volledige scherm ✔
  • B) Alleen het best uitziende volledige scherm produceren en andere gevallen overslaan
  • C) Zoveel mogelijk kleuren en animaties aan elk scherm toevoegen
  • D) Toegankelijkheidstags als laatste laten staan en alleen het uiterlijk behandelen

Uitleg: Ontwikkelaars houden vaak alleen rekening met de 'volledige' staat; terwijl de gebruiker in werkelijkheid vooral laad-, leeg- en foutstatussen tegenkomt. Het genereren van alle vier de statussen (laden/leeg/fout/vol) is het geheim van een robuuste interface.

4. Waarom is AI op apparaten vaak de standaardkeuze voor een functie die gevoelige persoonlijke gegevens verwerkt (bijvoorbeeld gezondheidsmetingen)?

  • A) Modellen op het apparaat zijn altijd nauwkeuriger dan cloudmodellen
  • B) Bij verwerking op het apparaat zijn er nooit batterij- of processorkosten
  • C) Verwerking op het apparaat is onbeperkt wat betreft modelgrootte
  • D) Omdat de gegevens de telefoon niet verlaten, biedt dit een groot voordeel op het gebied van privacy en gebruikersvertrouwen ✔

Uitleg: Bij verwerking op het apparaat worden geen gegevens van de telefoon verwijderd; Dit is een groot voordeel in termen van privacy-compliance en gebruikersvertrouwen, en het werkt offline en onmiddellijk. De limiet is het apparaatvermogen en de modelgrootte.

5. Wat is de meest voorkomende 'stille' fout die betekenisloze resultaten veroorzaakt en geen foutmelding oplevert bij een modelintegratie op het apparaat?

  • A) Verkeerde spelling van de bestandsnaam van het model
  • B) Lage resolutie van het applicatiepictogram
  • C) Onjuiste invoervoorverwerking (grootte/normalisatie) ✔
  • D) Donker schermthema

Uitleg: Het verkeerd uitvoeren van de invoervoorbewerking zal volledig verkeerde resultaten opleveren zonder dat er fouten optreden. Voorverwerkingswaarden moeten worden geverifieerd aan de hand van de documentatie van het model.

6. Wat is de meest veiligheidskritische regel bij het integreren van cloud LLM in een mobiele applicatie?

  • A) De API-sleutel mag alleen in de backend worden bewaard, niet op de client; verzoeken moeten via proxy ✔ gaan
  • B) De API-sleutel moet voor het gemak rechtstreeks in de applicatiecode worden ingebed
  • C) API-sleutel moet worden gedeeld in de applicatiebeschrijving
  • D) De API-sleutel moet in de client worden bewaard en alleen verborgen worden door de naam te wijzigen.

Openbaarmaking: de API-sleutel is nooit ingebed in de mobiele applicatiecode; omdat de applicatie kan worden reverse-engineered en de sleutel kan worden geëxtraheerd. De juiste architectuur is om de sleutel alleen in de backend te bewaren en verzoeken door te geven via uw eigen proxyserver.

7. Wat verhoogt de door de gebruiker waargenomen snelheid en het voltooiingspercentage van functies het meest in lange LLM-antwoorden?

  • A) Wachten tot het volledige antwoord is geproduceerd en dit in één keer tonen
  • B) Het antwoord woord voor woord weergeven, zoals het is geproduceerd, met streaming ✔
  • C) Bij elk verzoek de volledige chatgeschiedenis naar het model sturen
  • D) Vergroot de modelinstructie om de respons zoveel mogelijk uit te breiden

Beschrijving: Streaming verhoogt de waargenomen snelheid en vloeiendheid aanzienlijk door het antwoord weer te geven zoals het woord voor woord wordt geproduceerd. In plaats van op een leeg scherm te wachten, kijkt de gebruiker naar het tekstformulier; Hierdoor wordt het verzuimpercentage aanzienlijk verlaagd.

8. Wat is het meest voorkomende probleem bij tests die door kunstmatige intelligentie worden geproduceerd, waardoor de test waardeloos wordt?

  • A) Tests bestrijken te veel grenstoestanden
  • B) Bij tests worden nepobjecten gebruikt, geen echte services
  • C) Tests verlopen erg snel
  • D) Opgeblazenheid door lege/nutteloze tests die bepaald gedrag niet daadwerkelijk valideren ✔

Uitleg: Kunstmatige intelligentie produceert soms tests die feitelijk geen enkele output verifiëren (roep bijvoorbeeld gewoon de functie aan en schrijf een lege bewering). Deze verhogen het dekkingsnummer, maar bieden geen echte bescherming; Elke test moet worden gecontroleerd om betekenisvol gedrag te verifiëren.

9. Waarom is het geen afdoende oplossing om een ​​crash tot zwijgen te brengen door deze in een try-catch te plaatsen met een suggestie van kunstmatige intelligentie?

  • A) try-catch kan helemaal niet worden gebruikt in mobiele toepassingen
  • B) De crash stopt, maar omdat de hoofdoorzaak niet is opgelost, keert het probleem in een andere vorm terug ✔
  • C) Het gebruik van try-catch vertraagt de applicatie en is daarom verboden
  • D) Stilgelegde fout wordt automatisch afgewezen door de winkel

Uitleg: Het onderdrukken van het symptoom lost de oorzaak niet op; De crash stopt, maar het oorspronkelijke probleem (bijvoorbeeld een verbroken dataverbinding) keert terug in een andere vorm (bijvoorbeeld gegevensverlies). Het doel van professioneel debuggen is om de oorzaak op te lossen, niet het symptoom.

10. Wat is de gouden basisregel die moet worden gevolgd bij prestatie-optimalisatie?

  • A) Maak eerst een profiel en meet het echte knelpunt, en optimaliseer vervolgens ✔
  • B) Raden waar langzaam is en daar concentreren
  • C) Het najagen van kleine winsten in elke functie
  • D) Het meten van de prestaties op de emulator en nooit het echte apparaat uitproberen

Omschrijving: Eerst meten, later optimaliseren. Het echte knelpunt bevindt zich vrijwel altijd op een andere locatie dan voorspeld; Optimalisatie zonder profilering is een blinde gok en vaak verspilde moeite.

11. Wat is het belangrijkste technische probleem voor een constant actieve AI-functie (bijvoorbeeld live cameravertaling)?

  • A) De functie vraagt om zoveel mogelijk rechten
  • B) Beheer van de batterij- en processorkosten van continue verwerking met bemonsteringsfrequentie en batchverwerking ✔
  • C) Voer de functie alleen uit op de duurste telefoons
  • D) De camera continu weergeven met de hoogst mogelijke framesnelheid

Beschrijving: Constant werkend model, camera en netwerk; Het kan de batterij snel verbruiken, het apparaat opwarmen en door het systeem worden beperkt. Het verminderen van de bemonsteringsfrequentie, batching en alleen uitvoeren wanneer dat nodig is, zijn manieren om de batterijkosten te beheersen.

12. Wat betekent het principe van 'least privilege' bij toestemmingsbeheer bij mobiele ontwikkeling?

  • A) Bij het opstarten alle mogelijke toestemmingen vragen, voor het geval dat.
  • B) Het onbruikbaar maken van de app als toestemming wordt geweigerd
  • C) Vragen om de breedste toestemming en zijn van plan deze later te beperken.
  • D) Alleen de toestemming vragen die daadwerkelijk nodig is, wanneer dat nodig is en binnen de nauwste reikwijdte, met een afwijzingsscenario ✔

Uitleg: Least privilege houdt in dat alleen om de toestemming wordt gevraagd die daadwerkelijk nodig is, wanneer deze nodig is, en in de engst mogelijke mate. Te veel machtigingen ondermijnen het vertrouwen van gebruikers, leiden tot winkelafwijzing en vergroten het risico op gegevenslekken.

13. Aan welke specifieke eisen moet worden voldaan als een applicatie met kunstmatige intelligentie in de winkel wordt gepresenteerd?

  • A) Transparantie van de inhoud, inhoudscontrole en openbaarmaking van de gegevens die naar kunstmatige intelligentie gaan in de vorm van vertrouwelijkheid ✔
  • B) Het verbergen van het gebruik van kunstmatige intelligentie voor de gebruiker
  • C) Het markeren van gegevens die niet daadwerkelijk worden verzameld in het privacyformulier
  • D) Veelbelovende functies die niet in de beschrijving voorkomen

Openbaarmaking: Winkels verwachten transparantie van de inhoud (verklaring dat het AI produceert), inhoudsmoderatie (filteren van schadelijke output en gebruikersmeldingen) en openbaarmaking van gegevensgebruik van applicaties die kunstmatige intelligentie bevatten; Nauwkeurigheidswaarschuwing vereist in gevoelig gebied. Aanvragen waarbij deze ontbreken worden afgewezen.

14. Waarom is de verdediging 'AI heeft het zo geschreven' ongeldig als er een edge case-fout optreedt in gepubliceerde, door AI gegenereerde code?

  • A) Omdat kunstmatige intelligentie altijd foutloze code produceert, komt de fout van de gebruiker
  • B) Omdat winkels automatisch door AI gegenereerde code corrigeren
  • C) Omdat verantwoordelijkheid niet kan worden overgedragen op kunstmatige intelligentie; Ontwikkelaar is verantwoordelijk voor gepubliceerde code en gegevens ✔
  • D) Omdat door kunstmatige intelligentie gegenereerde code nooit live wordt gezet

Beschrijving: De AI-output is een startpunt, geen eindproduct. Het is de ontwikkelaar die verantwoordelijk is voor elke gepubliceerde regel, elke verwerkte gegevens en elke gemaakte belofte; verantwoordelijkheid kan niet worden gedelegeerd aan AI, dus de output moet vóór publicatie worden begrepen en getest.