Développeur iOS. Professionnel - cours 70 000 roubles. d'Otus, formation 5 mois, date 27 novembre 2023.
Miscellanea / / November 27, 2023
Le programme a été créé spécifiquement pour les développeurs iOS ayant 1 an ou plus d'expérience dans le développement d'applications mobiles iOS.
Caractéristiques du programme La formation s'appuie exclusivement sur des cas issus de la pratique du développement d'applications en production. Nous résoudrons des problèmes complexes et épineux avec le niveau de qualité des meilleures applications :
✔ nous développerons une UI complexe et animée en utilisant SwiftUI et des connaissances introuvables dans les articles sur Internet ;
✔ nous apprendrons comment adapter le code de l'interface utilisateur pour iPadOS et le transférer vers les plateformes watchOS, tvOS, macOS ;
✔ nous étudierons la problématique du mélange des paradigmes déclaratifs et impératifs, des modèles Rx et du développement sur Combine ;
✔ nous construirons une architecture pour une application spécifique: MVVM+S, Clean Swift (VIP) ou SOA ;
✔ nous apprendrons la compétence rare de porter une application sur Android confortablement pour les développeurs iOS tout en préservant 80 à 90 % de la logique. Utiliser la génération de code, un moyen de vous développer en tant qu'ingénieur mobile en forme de T.
Tu vas apprendre:
✔ appliquez GCD et résolvez des problèmes multitâches,
✔ travailler avec les protocoles Séquence et Collection,
✔ utiliser les structures de données, les types génériques, les types associés et l'effacement de type, les techniques PAT (Protocol with Associated Types) dans les projets
✔ travailler avec compétence avec diverses méthodes de stockage de données (Core Data, Realm, Trousseau, Cache),
✔ utiliser l'injection de dépendances (DI) et la modularisation des applications pour un développement d'équipe et une couverture de test plus confortables ;
✔ apprendre en pratique tous les avantages et inconvénients des méthodologies, approches et paradigmes connus (Programmation Orientée Protocole, POO, Programmation Réactive).
Apprenez à écrire du code expressif qui, en quelques lignes, fait ce qui prenait auparavant un écran entier.
Maîtrisez les fonctionnalités clés de Swift 5
Vous pourrez déterminer la faisabilité d’utiliser certains modèles architecturaux
Plongez dans les nuances de l'utilisation de Rx: quand c'est nécessaire et quand cela s'avère payant
Après la formation, les diplômés seront capables de concevoir des composants d'interface utilisateur complexes à un niveau professionnel et d'optimiser leurs performances, développer des applications client-serveur et un mode de fonctionnement hors ligne, écrire du code testé par des tests unitaires et, bien sûr, gérer l'écriture de tests.
Nos partenaires Certiport offrent une réduction de 10 % sur l'examen de certification Développement d'applications avec Swift (niveau 1) à tous les diplômés du cours !
Il développe actuellement une application iOS pour une grande entreprise de transport en Russie. Le parcours professionnel a été sinueux: j'ai programmé pour l'électronique, j'ai été développeur PHP pendant environ 10 ans et je me suis récemment consacré entièrement au développement iOS. En tant que développeur iOS...
Il travaille comme programmeur depuis 2002, avec une expérience totale en programmation de 17 ans. Possède une vaste expérience en développement en C/C++, C#, Java, JS, Swift. Participation à plus d'une dizaine de projets d'envergure et complexes...
Il travaille comme programmeur depuis 2002, avec une expérience totale en programmation de 17 ans. Possède une vaste expérience en développement en C/C++, C#, Java, JS, Swift. Participation à plus d'une dizaine de projets d'envergure et complexes dans les plus grandes sociétés informatiques du pays (jeux, messageries instantanées, applications fintech et bureautiques), telles que Tinkoff Bank, Mail.ru, New Cloud Technologies. Enseigne iOS/Swift 4 de l'année. Conférencier lors des rencontres iOS. Il sait que la programmation développe le cerveau, c'est pourquoi il envisage de le développer pour le reste de sa vie. Il consacre son temps libre à la photographie d’art geek et au minage de cryptomonnaies. Gestionnaire de programme
Je travaille en tant que développeur iOS dans une entreprise de vente au détail. Avant de rejoindre iOS, il a travaillé dans le développement de logiciels. Actuellement je développe et traduis l'application vers SwiftUI. J'ai participé à la mise en œuvre de grandes applications commerciales et de petites applications non commerciales...
SwiftUI et Combiner les bases
-Sujet 1. Concevoir une interface utilisateur de manière déclarative avec SwiftUI. Quelles sont les différences entre UIKit et SwiftUI
-Thème 2.Liste SwiftUI, Liste avec mise en page personnalisée, Hébergement de ViewControllers
-Sujet 3.Utilisation de NavigationView, TabView. Créer votre propre pile de navigation
-Sujet 4.Création de formes personnalisées, API de dessin et d'animation SwiftUI
-Sujet 5. Affichage de données structurées, liste, pagination, composants personnalisés sur UIViewRepresentable
Architecture d'applications mobiles moderne
-Sujet 6. Système de type Swift inhabituel, structures de données, génériques
-Thème 7. Lier les différentes parties de l'application Observation, Signaux, Rappels. PAT (protocole avec types associés)
-Sujet 8.Programmation orientée protocole (POP), SOA, modularisation, modèles architecturaux Rx: Flux/Redux
-Thème 9.MVx, VIP, analyse des modèles architecturaux. SOLIDE, GRASP, principes de Couplage/Cohésion.
Fondation sans frameworks tiers et bibliothèque standard Swift 5
-Thème 10.Séquences et collections, analyse asymptotique: O(1), O(N), O(N*log (N)), O(n^2)
-Sujet 11.Utiliser toute la puissance de String: StringInterpolation, Expressible. Formats régionaux.
-Sujet 12.Types associatifs, effacement de type, types de données « sucre », répartition des appels dans Swift 5
-Sujet 13. Compilateur LLVM, AST, création de vos propres opérateurs
Multitâche
-Thème 14. Problèmes de multitâche et moyens de les résoudre, GCD
-Sujet 15. Éléments internes de GCD (libdispatch), OperationQueue
-Sujet 16. RunLoop & POSIX Threads, outils de synchronisation, verrouillage, Mutex
Mise en réseau et stockage de données
-Sujet 17.Nouveau framework réseau, URLSession, Codable
-Thème 18.Socket.io, WebSocket et autres sockets pour les discussions et mises à jour instantanées
-Sujet 19.SQLite, méthodes de mise en cache, fichiers, comparaison de CoreData et Realm
-Sujet 20. Sécurité: OAuth 2.0, obfuscation du trousseau et des clés API, épinglage SSL
Création d'applications pour Apple Watch, TV, Mac
-Thème 21.watchOS
-Thème 22.tvOS
-Sujet 23.Code multiplateforme pour iOS/iPadOS, watchOS, macOS, tvOS
CoreML et Vision, réseaux de neurones et apprentissage automatique
-Sujet 24.CoreML, CreateML, TensorFlow utilisant des modèles de réseaux neuronaux entraînés
-Sujet 25.CoreML: obtenir des modèles à l'aide d'AutoML Vision et les utiliser sur l'appareil
Développement multiplateforme: portage sur Android, Vulkan/Metal
-Thème 26. Multiplateforme pour Rich Media: Metal et Vulkan, développement de jeux, traitement vidéo/image
-Thème 27.Jetpack Compose
-Thème 28. Implémentation simultanée de fonctionnalités sur iOS + Android. Ensemble d'outils requis
Organisation de développement
-Sujet 29. Test de code XCTest, UITest, fastlane et CI
-Sujet 30.Git-flow, à déterminer, automatisation du workflow
-Thème 31. Comment rédiger correctement un CV et développer des compétences techniques
Travail de projet
-Sujet 32.Rédiger une application à partir de zéro
-Thème 33. Consultation sur les projets et les devoirs
-Thème 34.Protection des travaux de conception