Unité 11 / 11

Projet de bout en bout, utilisation responsable de l'intelligence artificielle et feuille de route dans la profession

Gains :

  • Capacité à développer une fonctionnalité mobile de bout en bout et vérifiable dans les étapes de conception, de code, d'intégration de l'IA, de confidentialité, de tests, de débogage, de performances et de publication.
  • Capacité à établir un cadre pour une utilisation responsable et éthique de l'intelligence artificielle avec les principes de transparence, de vérification-responsabilité et de justice-non-malfaisance.
  • Être capable de créer une pratique professionnelle durable en distinguant les domaines où l'intelligence artificielle est forte et faible et en laissant la décision finale entre les mains des humains.

Tout au long de ce module, nous avons utilisé l'IA à chaque étape du développement mobile : génération de code, interface, intégration de l'IA sur l'appareil et dans le cloud, tests, débogage, performances, confidentialité et livraison en magasin. Dans cette dernière unité, nous combinerons tous ces éléments en un seul flux de bout en bout, clarifierons le cadre d'une utilisation responsable et éthique de l'IA et discuterons de la manière de transformer ces compétences en une pratique professionnelle durable. Le message principal n'a pas changé, mais il est désormais fermement établi : l'IA est une force qui multiplie un développeur mobile compétent ; ce n'est pas un substitut. C'est la personne qui est responsable de la qualité, de la sécurité et des promesses du produit envers l'utilisateur.

Une fonctionnalité de bout en bout : combiner des pièces

Développer une fonctionnalité réelle du début à la fin avec le support de l'IA combine chaque unité que nous avons apprise dans une chaîne. Exemple : fonctionnalité « ajouter une dépense à partir du reçu ». Le flux fonctionne comme ceci :

  1. Conception (Unité 3). Rédigez l'écran et les quatre états (chargement/vide/erreur/plein) avec l'IA, demandez l'accessibilité dès le début.
  2. Coder (Unité 2). Générer une caméra, un modèle de données et un ViewModel couche par couche avec MVVM ; vérifier chaque couche.
  3. IA sur l'appareil (unité 4). Lire le montant/la date à partir du reçu avec la reconnaissance de texte ML Kit ; Envisagez le prétraitement et l'évaluation de la confiance.
  4. Confidentialité (Unité 9). Demandez l'autorisation de la caméra avec le moindre privilège, rédigez le scénario de rejet, conservez les données sur l'appareil.
  5. Tests (unité 6). Générer des tests unitaires de la logique d'extraction, des tests UI de l'affichage ; Incluez les États frontaliers.
  6. Débogage (Unité 7). Demandez à l'IA d'analyser les plantages avec le contexte et de résoudre la cause première.
  7. Performance (Unité 8). Mesurez le coût de la batterie pour le traitement de l'appareil photo et réglez-le en fonction de la batterie.
  8. Radiodiffusion (Unité 10). Signalez l’utilisation de l’IA de manière transparente, remplissez le formulaire de confidentialité de manière véridique et effectuez un auto-test.

A chaque étape, l’IA accélère, l’humain vérifie et décide. Cette boucle est le cœur du module.

Astuce : n'essayez pas de faire en sorte que l'IA réalise une fonctionnalité complexe avec une seule requête géante. Décomposez-le en étapes vérifiables comme ci-dessus. Tester le résultat de chaque étape et passer à la suivante est à la fois plus sûr et finalement plus rapide ; Parce que l’on commet une grosse erreur non pas à la fin, mais dès le premier pas.

Utilisation responsable et éthique de l’IA

La compétence technique seule ne suffit pas ; un encadrement responsable le complète. Trois principes :

Transparence. L'utilisateur doit savoir qu'il interagit avec l'IA. Une IA secrète est un abus de confiance. Le contenu généré par l'IA est étiqueté ; Les conseils de l’IA sont présentés comme des « conseils utiles » plutôt que comme une « dure vérité ».

Vérification et responsabilité. La production de l’IA est un point de départ et non un produit fini. Vous êtes responsable de chaque ligne de code publiée, de chaque réponse de l'IA, de chaque transaction de données. "L'IA l'a écrit de cette façon" n'est pas une défense.

Justice et non-malfaisance. Les modèles d’IA peuvent comporter des biais liés aux données sur lesquelles ils sont formés. Une reconnaissance faciale peut fonctionner moins bien sur certaines couleurs de peau, un moteur de recommandation peut exclure un groupe. Il est de votre responsabilité de vérifier que votre produit fonctionne équitablement entre différents groupes d'utilisateurs.

Attention : Toute technique que vous apprenez dans le domaine de l'informatique et de la sécurité n'est utilisée qu'à des fins autorisées et constructives. Utiliser l’IA pour créer des logiciels malveillants, pirater l’application de quelqu’un d’autre sans autorisation, collecter des données utilisateur sans consentement ou produire du contenu trompeur est illégal et contraire à l’éthique de la profession. La mesure du pouvoir se révèle là où vous ne l’utilisez pas.

Reconnaître les limites de l’IA

Un développeur mature sait où l’IA brille et où elle échoue.

L'IA est puissante

L'IA est faible

Code de moule, production passe-partout

Décisions produit et architecturales

Projet de tests et de documentation

Comprendre le contexte métier et l'utilisateur

Lecture du journal des incidents, analyse des erreurs

Diagnostic définitif de la cause profonde (vérification requise)

Apprentissage, explication du concept

Informations sur l'API actuelle/non fabriquée

Texte, description, traduction

Éthique, sécurité et décision juridique finale

L’intériorisation de cette distinction est essentielle pour utiliser efficacement l’IA et éviter ses pièges.

trois mini-cases

Cas 1 — Vitesse de bout en bout. Un développeur solo a terminé la fonctionnalité « débranché » en 4 jours avec le flux en 8 étapes ci-dessus ; Sans IA, l'estimation était de 12 jours. Mais parce qu’il a vérifié chaque étape, la publication a été approuvée du premier coup. La vitesse était réelle parce que la discipline était réelle. Leçon : AI + vérification est plus rapide que AI - vérification.

Cas 2 — Biais détecté. En testant une fonctionnalité de prédiction du genre des noms basée sur l'IA, une équipe a remarqué des erreurs systématiques dans certains noms turcs ; le modèle a été formé sur des données principalement anglaises. La fonctionnalité a été modifiée pour demander à l'utilisateur au lieu de faire de fausses hypothèses. Leçon : c'est le travail du développeur de tester le biais d'entraînement du modèle.

Cas 3 — La défense « l'IA l'a dit » s'est effondrée. Un développeur a publié un code de paiement généré par l'IA sans le vérifier ; Dans un cas extrême, le code effectuait des doubles collections. La responsabilité n'est pas supprimée en disant « AI l'a écrit » ; En tant que titulaire du compte, il était développeur. Leçon : la responsabilité ne peut pas être déléguée.

Invite faible/Invite forte

Invite faible : "Écrivez-moi une application complète de numérisation de reçus."

Invite puissante : "Aidez-moi à développer la fonctionnalité "Ajouter une dépense à partir du reçu" étape par étape. Procédons dans l'ordre, lorsque je vérifie et approuve chaque étape, passons à la suivante : 1) Écran + quatre états + accessibilité 2) Couches MVVM (caméra, modèle, ViewModel) 3) Lecture du montant/date à partir de la réception avec ML Kit + score de confiance 4) Autorisation de la caméra (moindre privilège) + flux de rejet 5) Tests unitaires et d'interface utilisateur Dites-moi les risques et les points que je dois vérifier à chaque étape.

Modèles copiables

Modèle de planification de bout en bout : "Je vais développer la fonctionnalité suivante : [fonctionnalité]. Décomposez-la en étapes vérifiables : conception, code, intégration de l'IA, confidentialité/autorisation, tests, performances, publication. Écrivez les critères de sortie, de risque et de vérification pour chaque étape. Ne faites pas une seule production géante. "

Modèle d'audit éthique/biaisé : « Auditez la fonctionnalité d'IA suivante pour en vérifier l'équité et les préjugés : [fonctionnalité]. Quels groupes d'utilisateurs pourraient-ils avoir de mauvaises performances ? Quel est l'impact des données de formation sur les biais ? Comment puis-je la tester, comment puis-je la rendre plus inclusive ? »

Modèle de contrôle de responsabilité : « Énumérez les questions de responsabilité que je devrais poser avant de publier ce code/fonctionnalité généré par l'IA : est-ce que je l'ai compris, l'ai-je testé, est-il sûr, est-il transparent pour l'utilisateur, est-ce légal/éthique ? »

Modèle de formation continue : "Proposer un plan pratique de 4 semaines pour améliorer mes compétences en IA en tant que développeur mobile : un sujet chaque semaine (code, intégration, test, release), dans le but d'un petit projet et d'une habitude de vérification."

Erreurs courantes

  • Produire des fonctionnalités complexes avec une seule demande géante. Ne peut être vérifié ; décomposez-le en étapes.
  • Éviter toute responsabilité en disant "AI l'a écrit". Vous êtes responsable du code publié.
  • Ne pas tester les biais de l'IA. Le modèle peut mal fonctionner dans certains groupes ; Testez la justice.
  • Masquer l’interaction de l’IA à l’utilisateur. La transparence est le fondement de la confiance.
  • Oublier les limites de l'IA. Les gens ont le dernier mot sur l’architecture, l’éthique et l’API actuelle.
  • Pour arrêter d'apprendre. Les outils et les règles de l'atelier changent rapidement ; Restez constamment à jour.

En résumé

Une fonctionnalité de bout en bout combine toutes les parties du module dans une chaîne : conception, code, intégration de l'IA, confidentialité, tests, débogage, performances et version. À chaque étape, l’IA accélère, l’humain vérifie et décide ; Un travail complexe est décomposé en petites étapes vérifiables. L'utilisation responsable repose sur trois principes : la transparence, la vérification-responsabilité et l'équité-ne pas nuire. L’IA est un puissant multiplicateur, mais les humains ont le dernier mot en matière d’architecture, d’éthique, de sécurité et de connaissances actuelles. « L’IA l’a fait de cette façon » n’est pas une défense ; Vous êtes responsable de votre produit et de la promesse que vous faites à votre utilisateur. Avec cette discipline, l’IA vous rend plus rapide, plus complet et plus fort tout au long de votre carrière.

Tâche de candidature

Décomposez une fonctionnalité mobile de votre choix (par exemple « résumer en prenant des notes vocales » ou « reconnaissance de produit à partir d'une photo ») en étapes vérifiables avec un « Modèle de planification de bout en bout ». Développer et valider réellement au moins une étape avec l'IA. Ensuite, analysez les groupes d'utilisateurs pour lesquels la fonctionnalité peut poser des problèmes avec le « Modèle de contrôle d'éthique/préjugés » et répondez aux questions que vous devez poser avant la publication avec le « Modèle de contrôle de responsabilité ».

liste de contrôle

  • [ ] J'ai divisé la fonctionnalité en petites étapes vérifiables, pas une seule production géante
  • [ ] J'ai vérifié le résultat de l'IA à chaque étape et j'ai pris la décision
  • [ ] J'ai présenté l'interaction de l'IA de manière transparente à l'utilisateur
  • [ ] J'ai évalué si la fonctionnalité fonctionne de manière équitable/biaisée entre différents groupes
  • [ ] J'ai répondu aux questions préalables à la libération sur la responsabilité (comprise/test/sûr/éthique)
  • [ ] J'ai utilisé l'IA uniquement à des fins compétentes et constructives et je prévois de continuer à apprendre

Examen de module

1. Lequel des énoncés suivants est le positionnement le plus précis pour l’intelligence artificielle dans le développement mobile ?

  • A) L'IA remplace le développeur ; peut être publié directement sans lire le code qu'il génère
  • B) L'intelligence artificielle ne fonctionne que dans l'écriture de texte, elle n'a rien à voir avec la génération de code
  • C) L'intelligence artificielle est un assistant et un accélérateur ; La responsabilité des décisions en matière d'architecture, de sécurité et de diffusion incombe aux humains ✔
  • D) Étant donné que l'intelligence artificielle produit toujours un code correct, des tests et des vérifications supplémentaires sont inutiles.

Description : L'intelligence artificielle est un assistant et un accélérateur qui génère du code, des plans et des solutions. La responsabilité et l'approbation finale des décisions telles que l'architecture, les autorisations, la sécurité et la publication incombent au développeur compétent ; Les humains sont responsables de chaque ligne publiée.

2. Lorsqu’on demande du code mobile à l’intelligence artificielle, qu’est-ce qui augmente le plus la qualité architecturale du code produit ?

  • A) Gardez l'invite aussi courte que possible et dites « écrivez-moi une application »
  • B) Tout d'abord, imposez une architecture comme MVVM et demandez le code par petits morceaux, couche par couche ✔
  • C) Produire l'intégralité de la fonctionnalité sous la forme d'un seul fichier géant en une seule invite
  • D) Ne spécifiez pas du tout l'architecture et laissez la meilleure décision à l'intelligence artificielle

Explication : Imposer une architecture comme MVVM et exiger couche par couche avant d'écrire du code directement dans l'IA produit une structure testable et maintenable qui sépare la logique de l'écran. La requête sans architecture renvoie du code qui entasse tout sur l'écran.

3. Qu’est-ce qui est le plus souvent négligé lors de la création d’une interface avec l’intelligence artificielle et qu’est-ce qui est le plus critique dans une utilisation réelle ?

  • A) Concevoir les états de chargement, vide et d'erreur, pas seulement le plein écran ✔
  • B) Produire uniquement le meilleur plein écran, en ignorant les autres cas
  • C) Ajouter autant de couleurs et d'animations que possible à chaque écran
  • D) Laisser les balises d'accessibilité en dernier et ne traiter que l'apparence

Explication : les développeurs ne considèrent souvent que l'état « complet » ; alors qu'en réalité, l'utilisateur rencontre principalement des états de chargement, vide et d'erreur. Générer les quatre états (chargement/vide/erreur/plein) est le secret d'une interface robuste.

4. Pourquoi l'IA intégrée aux appareils est-elle souvent le choix par défaut pour une fonctionnalité qui traite des données personnelles sensibles (par exemple, la mesure de la santé) ?

  • A) Les modèles sur appareil sont toujours plus précis que le cloud
  • B) Le traitement sur l'appareil n'entraîne jamais de coûts de batterie ou de processeur
  • C) Le traitement sur l'appareil est illimité en termes de taille de modèle
  • D) Étant donné que les données ne quittent pas le téléphone, cela offre un avantage considérable en termes de confidentialité et de confiance des utilisateurs ✔

Explication : Le traitement sur l'appareil ne supprime pas les données du téléphone ; Il s’agit d’un avantage considérable en termes de respect de la vie privée et de confiance des utilisateurs, et cela fonctionne hors ligne et instantanément. Sa limite réside dans la puissance de l'appareil et la taille du modèle.

5. Quelle est l'erreur « silencieuse » la plus courante qui entraîne des résultats dénués de sens et ne produit pas de message d'erreur dans une intégration de modèle sur l'appareil ?

  • A) Mauvaise orthographe du nom de fichier du modèle
  • B) Faible résolution de l'icône de l'application
  • C) Prétraitement d'entrée incorrect (taille/normalisation) ✔
  • D) Thème d'écran sombre

Explication : un prétraitement d'entrée incorrect produira des résultats complètement erronés sans générer d'erreurs. Les valeurs de prétraitement doivent être vérifiées à partir de la documentation du modèle.

6. Quelle est la règle la plus critique en matière de sécurité lors de l'intégration du cloud LLM dans une application mobile ?

  • A) La clé API ne doit être conservée que dans le backend, pas sur le client ; les demandes doivent passer par proxy ✔
  • B) La clé API doit être intégrée directement dans le code de l'application pour plus de commodité
  • C) La clé API doit être partagée dans la description de l'application
  • D) La clé API doit être conservée dans le client et masquée uniquement en changeant le nom.

Divulgation : la clé API n'est jamais intégrée dans le code de l'application mobile ; car l'application peut faire l'objet d'une ingénierie inverse et la clé extraite. L'architecture correcte consiste à conserver la clé uniquement dans le backend et à transmettre les requêtes via votre propre serveur proxy.

7. Qu'est-ce qui augmente le plus la vitesse perçue par l'utilisateur et le taux d'achèvement des fonctionnalités dans les réponses LLM longues ?

  • A) Attendre que la réponse complète soit produite et la montrer immédiatement
  • B) Afficher la réponse mot à mot, telle qu'elle est produite, en streaming ✔
  • C) Envoi de l'intégralité de l'historique des discussions au modèle à chaque demande
  • D) Agrandir l'instruction du modèle pour étendre la réponse autant que possible

La description : Le streaming augmente considérablement la vitesse et la fluidité perçues en affichant la réponse telle qu'elle est produite mot par mot. Au lieu d'attendre sur un écran vide, l'utilisateur regarde le formulaire texte ; Cela réduit considérablement le taux d’abandon.

8. Quel est le problème le plus courant dans les tests produits par l’intelligence artificielle et qui rend le test inutile ?

  • A) Les tests couvrent trop d'états limites
  • B) Les tests utilisent des objets fictifs, pas de vrais services
  • C) Les tests s'exécutent très rapidement
  • D) Étendez le gonflement par des tests vides/inutiles qui ne valident pas réellement un comportement ✔

Explication : L'intelligence artificielle produit parfois des tests qui ne vérifient réellement aucun résultat (par exemple, il suffit d'appeler la fonction et d'écrire une assertion vide). Ceux-ci gonflent le numéro de couverture mais n’offrent pas de réelle protection ; Chaque test doit être vérifié pour vérifier un comportement significatif.

9. Pourquoi n'est-il pas une solution suffisante pour faire taire un crash en le plaçant dans un try-catch avec une suggestion d'intelligence artificielle ?

  • A) try-catch ne peut pas du tout être utilisé dans les applications mobiles
  • B) Le crash s'arrête, mais comme la cause première n'est pas résolue, le problème réapparaît sous une forme différente ✔
  • C) Utiliser try-catch ralentit l'application, c'est donc interdit
  • D) L'erreur silencieuse est automatiquement rejetée par le magasin

Explication : Faire taire le symptôme ne résout pas la cause profonde ; Le crash s'arrête, mais le problème d'origine (par exemple, connexion de données interrompue) réapparaît sous une autre forme (par exemple, perte de données). L’objectif du débogage professionnel est de résoudre la cause première, et non le symptôme.

10. Quelle est la règle d’or de base à suivre en matière d’optimisation des performances ?

  • A) Prenez d'abord un profil et mesurez le véritable goulot d'étranglement, puis optimisez ✔
  • B) Deviner où est lent et se concentrer là-bas
  • C) Rechercher de petits gains dans chaque fonction
  • D) Mesurer les performances sur l'émulateur et ne jamais essayer le véritable appareil

Description : Mesurez d’abord, optimisez ensuite. Le véritable goulot d’étranglement se situe presque toujours à un endroit différent de celui prévu ; L'optimisation sans profilage est une supposition aveugle et constitue souvent une perte d'efforts.

11. Quelle est la préoccupation technique la plus importante pour une fonctionnalité d'IA fonctionnant en permanence (par exemple, traduction de caméra en direct) ?

  • A) La fonctionnalité demande autant d'autorisations que possible
  • B) Gestion du coût de la batterie et du processeur du traitement continu avec fréquence d'échantillonnage et traitement par lots ✔
  • C) N'exécutez la fonctionnalité que sur les téléphones les plus chers
  • D) Rendu continu de la caméra à la fréquence d'images la plus élevée possible

Description : Modèle, caméra et réseau fonctionnant en permanence ; Il peut rapidement consommer la batterie, chauffer l'appareil et être limité par le système. Réduire la fréquence d'échantillonnage, le traitement par lots et l'exécution uniquement lorsque cela est nécessaire sont des moyens de gérer le coût de la batterie.

12. Que signifie le principe du « moindre privilège » dans la gestion des autorisations dans le développement mobile ?

  • A) Demander toutes les autorisations possibles au démarrage, juste au cas où.
  • B) Rendre l'application inutilisable si l'autorisation est refusée
  • C) Demander la permission la plus large et prévoir de la préciser plus tard.
  • D) Demander uniquement l'autorisation réellement requise, lorsque cela est nécessaire et dans le cadre le plus restreint, avec un scénario de refus ✔

Explication : Le moindre privilège consiste à demander uniquement l'autorisation réellement nécessaire, au moment où elle est nécessaire et dans la mesure la plus étroite possible. Un trop grand nombre d'autorisations mine la confiance des utilisateurs, entraîne le rejet du magasin et augmente le risque de fuite de données.

13. Quelles exigences spécifiques doivent être remplies lors de la présentation d'une application dotée d'intelligence artificielle en magasin ?

  • A) Transparence du contenu, contrôle du contenu et divulgation des données transmises à l'intelligence artificielle sous forme de confidentialité ✔
  • B) Cacher l’utilisation de l’intelligence artificielle à l’utilisateur
  • C) Marquage des données qui ne sont pas réellement collectées dans le formulaire de confidentialité
  • D) Des fonctionnalités prometteuses qui n'existent pas dans la description

Divulgation : les magasins attendent de la transparence du contenu (déclaration selon laquelle ils produisent de l'IA), de la modération du contenu (filtrage des résultats nuisibles et notification des utilisateurs) et de la divulgation de l'utilisation des données des applications contenant de l'intelligence artificielle ; Avertissement de précision requis dans la zone sensible. Les candidatures qui omettent ces éléments seront rejetées.

14. Pourquoi la défense « L'IA l'a écrit de cette façon » est-elle invalide lorsqu'une erreur de cas limite se produit dans le code généré par l'IA ?

  • A) Parce que l'intelligence artificielle produit toujours du code sans erreur, l'erreur vient de l'utilisateur
  • B) Parce que les magasins corrigent automatiquement le code généré par l'IA
  • C) Parce que la responsabilité ne peut être transférée à l’intelligence artificielle ; Le développeur est responsable du code et des données publiés ✔
  • D) Parce que le code généré par l'intelligence artificielle n'est jamais mis en ligne

Description : La sortie de l’IA est un point de départ et non un produit fini. C'est le développeur qui est responsable de chaque ligne publiée, de chaque donnée traitée et de chaque promesse faite ; la responsabilité ne peut pas être déléguée à AI, le résultat doit donc être compris et testé avant la publication.