← Tous les articles

Dicter du code dans Xcode : Un flux de travail vocal pour les développeurs iOS et macOS

Vous ne pouvez pas dicter du Swift. Mais vous pouvez dicter tout ce qui entoure Swift — et il s'avère que c'est une fraction étonnamment grande des mots qu'un développeur écrit dans une journée. Commentaires de code, messages de commit, descriptions de PR, chaînes de documentation, fils Slack avec les coéquipiers, tickets Linear, fichiers README : rien de tout cela n'est du code, tout cela est de la prose, et tout cela peut être dicté plus vite que tapé.

Ceci est un guide de flux de travail pour les développeurs iOS et macOS utilisant Xcode qui souhaitent utiliser la dictée vocale sans perturber leur environnement de développement. Il couvre ce qu'il faut dicter, ce qu'il ne faut pas dicter, comment configurer l'expérience pour le vocabulaire technique, et comment l'intégrer dans le flux standard Xcode + Git + GitHub.


Ce que les développeurs dictent vraiment (et ce qu'ils ne dictent pas)

Le modèle mental qui empêche la plupart des développeurs d'essayer la dictée vocale est : « Je devrais dicter des noms de variables et des accolades. » Non. L'approche la plus productive est de dicter la prose et de taper le code — et d'utiliser chacun pour ce à quoi il excelle.

Dictez ces éléments :

  • Commentaires de code (// Cela gère le cas limite où...)
  • Chaînes de documentation (/// Récupère le profil utilisateur du cache si disponible, sinon...)
  • Messages de commit (git commit -m "..." — le message, pas la commande)
  • Titres et descriptions de PR
  • Notes inline TODO / FIXME / MARK:
  • Sections README et pages de documentation
  • Messages d'erreur et chaînes destinées aux utilisateurs dans LocalizedStringKey
  • Messages Slack, tickets Linear, descriptions d'issues GitHub
  • Commandes Terminal que vous connaissez par cœur mais que vous tapez lentement

Ne dictez pas ces éléments :

  • La syntaxe Swift (guard let, @Observable, les génériques)
  • Les noms de symboles que vous n'avez pas intégrés dans votre dictionnaire personnalisé
  • Les blocs de code multi-lignes
  • Tout ce où l'orthographe exacte compte et où le coût d'une correction dépasse les économies

Une fois cette frontière intégrée, la charge mentale disparaît. Curseur dans le commentaire ? Dictez. Curseur dans le corps de la fonction ? Tapez.


Configurer votre dictionnaire personnalisé

L'étape de configuration la plus rentable pour la dictée de développeur est la création d'un dictionnaire personnalisé. Sans lui, Whisper devinera les termes techniques et se trompera — UIKit devient « you I kit », SwiftUI devient « swift you I », et vos noms de frameworks sont déformés dans les chaînes de documentation.

La fonctionnalité de dictionnaire personnalisé de ParlaParla vous permet de définir des corrections : « quand je dis X, insérez Y. » Pour le développement iOS et macOS, commencez par ces catégories :

Noms des frameworks Apple :

  • « swift UI » → SwiftUI
  • « UI kit » → UIKit
  • « app kit » → AppKit
  • « core data » → Core Data
  • « core ML » → Core ML
  • « vision framework » → Vision
  • « combine framework » → Combine
  • « swift data » → SwiftData

Termes Xcode courants :

  • « xctest » → XCTest
  • « xcode cloud » → Xcode Cloud
  • « test flight » → TestFlight
  • « app store connect » → App Store Connect

Le vocabulaire du domaine de votre projet : Noms de produits, noms de services internes, préfixes de classes utilisés par votre équipe. Ce sont ceux qui comptent le plus pour la précision de la documentation et qu'aucun modèle générique ne peut obtenir correctement sans entraînement.

Construisez cette liste de façon incrémentale — passez cinq minutes après chaque session à ajouter les termes qui ont été mal transcrits. En une semaine, la précision sur le contenu technique sera nettement meilleure.


Le flux de travail des messages de commit

Les messages de commit sont là où la plupart des développeurs remarquent les plus grandes économies de temps grâce à la dictée. Le message de commit moyen fait 8 à 15 mots — assez court pour que la frappe semble négligeable, mais assez long pour que la voix soit systématiquement plus rapide, et la qualité de votre historique de commits s'améliore parce que la friction d'écriture d'un bon message diminue.

Le flux de travail :

  1. Indexer vos modifications dans le navigateur Source Control de Xcode (ou le terminal)
  2. Ouvrir la boîte de dialogue de commit ou votre ligne de commit terminal
  3. Maintenir Fn enfoncé, dicter le message de commit, relâcher
  4. Le texte s'insère au curseur — relire, ajuster si nécessaire, commiter

Si vous suivez les Conventional Commits, la dictée fonctionne naturellement : « feat deux-points ajouter cache hors ligne pour profil utilisateur » → feat: add offline cache for user profile. Les deux-points peuvent nécessiter une frappe manuelle selon vos paramètres d'amélioration IA, mais le corps du message se dicte proprement.

Pour les descriptions de commit plus longues avec des listes à puces, utilisez le mode Full Polish ou un Custom prompt. Un Custom prompt comme « Formater comme un message de commit git avec une ligne d'objet concise suivie d'une liste à puces des modifications » structurera votre description verbale décousue en un commit propre et conventionnel.


Chaînes de documentation DocC dans Xcode

Les chaînes de documentation DocC sont l'une des cibles de dictée les plus rentables dans Xcode. Elles sont entièrement de la prose, bénéficient de phrases complètes, et sont faciles à ignorer quand on est dans le flux — ce qui signifie que la plupart des développeurs les écrivent en lot à la fin, ou pas du tout.

Le flux de travail vocal change cela. Positionner le curseur juste au-dessus de la signature de fonction, dicter la chaîne de documentation en phrases complètes, et laisser le mode de nettoyage IA gérer la ponctuation. Pour une fonction comme :

/// Fetches the cached user profile for the given identifier.
/// Returns nil if the identifier is not found or if the cache has expired.
/// - Parameter identifier: The unique user ID to look up.
/// - Returns: The cached UserProfile, or nil if unavailable.
func cachedProfile(for identifier: String) -> UserProfile?

Vous dictez quelque chose comme : « récupère le profil utilisateur mis en cache pour l'identifiant donné renvoie nil si l'identifiant n'est pas trouvé ou si le cache a expiré paramètre identifiant l'identifiant utilisateur unique à rechercher renvoie le profil utilisateur mis en cache ou nil si non disponible. »

La syntaxe DocC (///, - Parameter:, - Returns:) vous la tapez manuellement ou via un snippet — deux touches. Le contenu en prose se dicte proprement.


Descriptions de Pull Request

Les descriptions de PR sont là où la dictée de développeur offre le meilleur retour. Une description de PR bien rédigée — contexte, ce qui a changé, pourquoi, approche de test — prend généralement 5 à 10 minutes à taper et est abrégée à cause de ce coût. La voix réduit cela à 60 à 90 secondes.

Le flux naturel : après avoir poussé votre branche, ouvrir la page de création de PR GitHub (ou le champ PR de Linear), maintenir Fn enfoncé, et parcourir vos modifications verbalement :

« Ajout de la mise en cache hors ligne pour les profils utilisateurs. La modification principale est dans ProfileRepository où nous vérifions maintenant le cache avant de faire une requête réseau. La TTL du cache est de 24 heures, configurable via FeatureFlags. Le cache est indexé par identifiant utilisateur et stocké dans Core Data. Tests : écriture de tests unitaires pour les cas de succès et d'échec du cache, testé manuellement en mode avion. »

Avec le mode Full Polish actif, cela arrive sous forme de prose formatée avec une ponctuation correcte. Avec un Custom prompt défini sur « Formater comme une description de PR GitHub avec une section Résumé et une section Tests », cela arrive sous forme de document markdown structuré.

La qualité de vos descriptions de PR s'améliorera notablement — non pas parce que votre voix génère un meilleur texte, mais parce que parler est moins contraignant que taper, donc vous incluez plus de contexte.


Linear, Jira et GitHub Issues

La même logique s'applique aux descriptions d'issues. Un bon rapport de bug comporte : les étapes de reproduction, le comportement attendu vs. réel, les détails de l'environnement, et tout contexte pertinent. La plupart des rapports de bugs sont abrégés parce que tout écrire prend du temps. Avec la dictée vocale, un rapport de bug complet prend à peu près le même temps qu'un abrégé.

La dictée facilite également la création d'issues sur le moment — quand vous remarquez quelque chose de bugué en pleine session, maintenir Fn enfoncé, décrire ce que vous avez observé, et avoir une issue créée en 30 secondes sans briser votre flux. L'alternative (changer de contexte pour écrire un ticket plus tard) signifie que beaucoup de bugs ne sont jamais signalés.


Intégration Terminal

ParlaParla fonctionne dans Terminal.app et iTerm2 — il insère du texte au curseur de la même façon que dans toute autre application. Cela signifie que vous pouvez dicter des commandes directement dans l'invite du terminal.

Mises en garde :

  • Les longues commandes avec des flags sont sujettes aux erreurs — --force-with-lease est difficile à prononcer et Whisper peut mal le transcrire
  • Les commandes que vous tapez par réflexe musculaire sont probablement plus rapides à taper qu'à dicter
  • Les commandes sur lesquelles vous devez réfléchir — filtres git log complexes, pipes jq, patterns awk — peuvent être dictées et corrigées plus vite que composées de zéro

Le cas d'usage terminal le plus fiable est de dicter des arguments pour des commandes que vous connaissez : git commit -m "", puis dicter le message. Ou git checkout -b "", puis dicter le nom de branche selon la convention de nommage de votre équipe.


Utiliser la fonctionnalité de traduction pour les équipes multilingues

Si vous travaillez avec une équipe distribuée où les commentaires de code ou la documentation doivent être dans une deuxième langue — allemand, espagnol, français — le mode traduction de ParlaParla vous permet de dicter dans votre langue maternelle et de recevoir du texte dans la langue cible.

Parlez en anglais, rédigez la documentation en allemand. Parlez en danois, rédigez les messages de commit en anglais. C'est la fonctionnalité de traduction de Whisper : le même modèle qui transcrit 57 langues peut traduire pendant la transcription, insérant du texte dans une langue différente de celle parlée.

Configuration : sélectionner Traduction dans le menu déroulant d'amélioration IA, puis choisir la langue de sortie. Tout le reste fonctionne de façon identique.


Modes d'amélioration IA pour les contextes de code

ParlaParla propose cinq niveaux d'amélioration IA, et le bon dépend du contexte :

  • Raw — transcription mot pour mot sans corrections. Bon pour dicter des chaînes exactes, des messages d'erreur ou du texte localisé où vous voulez un contrôle précis.
  • Light cleanup — corrige les mots de remplissage et les erreurs évidentes. Bon pour les messages de commit et les commentaires TODO où vous voulez un texte naturel mais pas de transformation lourde.
  • Full polish — produit des phrases propres et complètes. Bon pour les descriptions de PR, les chaînes de documentation, le contenu README.
  • Custom prompt — vous définissez la transformation. Bon pour les sorties spécifiques à un format : « Formater comme un message de commit conventionnel », « Écrire ceci en markdown DocC avec des sections Parameter et Returns », « Formater comme une description de ticket Linear ».
  • Translation — transcrit dans une langue, insère dans une autre.

Pour la plupart des contextes de développeur, Light cleanup gère bien les messages de commit, et Full polish gère la documentation et les descriptions de PR. Custom prompt vaut la peine d'être configuré une fois pour vos formats structurés les plus courants.


Une session de développement typique avec la dictée

Voici à quoi ressemble une session de développement réaliste de 2 heures avec la dictée vocale intégrée :

  1. Début de session : dicter le plan de la journée dans un fichier de notes ou un commentaire Linear — 30 secondes au lieu de 2 minutes
  2. Pendant le codage : quand vous ajoutez un commentaire de code, maintenir Fn enfoncé, dicter le commentaire, relâcher — reste dans le flux, pas de changement de mode
  3. Après une unité logique de travail : indexer les modifications, dicter le message de commit — 15 secondes
  4. Remarquer un bug en pleine session : maintenir Fn enfoncé, dicter la description de l'issue dans GitHub — 30 secondes, créée, retour au travail
  5. Fin de session : rédiger la description de PR verbalement — 90 secondes pour une description complète et bien structurée
  6. Mise à jour standup Slack : maintenir Fn enfoncé, résumer ce qui a été fait et ce qui vient ensuite — 20 secondes

Le temps total passé à dicter dans une session de 2 heures est peut-être de 5 minutes. Les mots produits en ces 5 minutes auraient pris 15 à 20 minutes à taper — et la qualité est souvent meilleure parce que parler réduit la friction d'écriture de pensées complètes.


Liste de contrôle de configuration pour les développeurs Xcode

  1. Installer ParlaParla depuis le Mac App Store et ajouter votre clé API OpenAI
  2. Configurer le raccourci Fn global — maintenir pour enregistrer, relâcher pour insérer
  3. Ajouter les noms de frameworks de votre projet au dictionnaire personnalisé (SwiftUI, UIKit, le nom de votre app, les noms de classes clés)
  4. Configurer deux modes d'amélioration : Light cleanup par défaut, un Custom prompt pour les descriptions de PR
  5. Essayer d'abord sur les messages de commit — risque le plus faible, retour immédiat sur la précision
  6. Étendre aux chaînes DocC et aux descriptions de PR une fois à l'aise avec le flux

Toute la configuration prend environ 10 minutes. Le bénéfice en réduction de friction de frappe apparaît dès la première session.


ParlaParla est l'application de dictée Mac qui fonctionne partout — y compris Xcode, Terminal et GitHub. Achat unique, apportez votre propre clé OpenAI, ~2 $/mois en coûts de transcription.

Obtenir ParlaParla →