IOS-Programmierer - Kurs 57.780 Rubel. von GeekBrains, Ausbildung 6 Monate, Datum: 10. Juni 2023.
Verschiedenes / / December 05, 2023
Grundlagen der Programmierung
Grundlagen der Programmierung
Der Kurs richtet sich an Personen ohne Programmiererfahrung. Um mit dem Lernen zu beginnen, reicht es aus, über Computerkenntnisse auf dem Niveau des durchschnittlichen Benutzers zu verfügen. Alle Schulungen finden im Browser statt und Sie müssen keine zusätzliche Software installieren. Sie erfahren, was ein Programm ist, wie es ausgeführt wird und machen sich mit den Grundoperationen der Programmierung vertraut. Wir werden über grundlegende Datentypen, Arrays, Verzweigungen, Schleifen und Funktionen in barrierefreier Sprache sprechen. Sie sammeln Erfahrung in der Lösung einfacher, aber interessanter Probleme, die Ihnen die Grundlage für das Erlernen der Lösung viel schwerwiegenderer Probleme bietet.
Lektion 1. Programm, Variablen und Datentypen
Nach der Lektion haben Sie eine Vorstellung davon, was ein Programm ist, dass es aus Anweisungen und Daten besteht, die Sie lernen werden Mit skalaren Datentypen in JS können Sie ein Programm schreiben, das zwei vom Benutzer eingegebene Zahlen multipliziert und ausgibt Ergebnis.
Lektion 2. Flussdiagramme und Zweige
Nach der Lektion haben Sie eine Vorstellung davon, wie Sie Algorithmen mithilfe von Flussdiagrammen visualisieren, die Arbeit von Vergleichsoperatoren verstehen, verstehen, wie Verzweigungen verwendet werden und welche Probleme sie lösen
Lektion 3. Fahrräder
Nach dieser Lektion wissen Sie, wie Sie zyklische Algorithmen mithilfe von Flussdiagrammen visualisieren, wie Sie Schleifen verwenden und welche Probleme sie lösen.
Lektion 4. Funktionen
Nach der Lektion haben Sie eine Vorstellung davon, welche Probleme durch das Einfügen von Code in Funktionen gelöst werden können, und können Funktionen erstellen, einschließlich solcher, die Argumente annehmen.
Lektion 5. Arrays
Nach der Lektion haben Sie eine Vorstellung davon, welches Problem Arrays lösen, können Arrays erstellen, Elemente hinzufügen und empfangen.
Grundlagen der Swift-Sprache. 1 Monat.
Moderne Programmiertechnologien für Apple auf Swift 5.2, Xcode 11
Swift ist eine neue Sprache von Apple, die Mitte 2014 erschien. Trotz seiner Neuheit entwickelt es sich schnell und enthält die besten Programmierkonstrukte, die aus vielen modernen Sprachen übernommen wurden. Derzeit gibt es nur wenige Spezialisten auf dem Markt, die Swift kennen. Dieser Kurs hilft Ihnen, die Syntaxgrundlagen von Swift zu erlernen und gute Programmiererfahrung in der Sprache zu sammeln.
Lektion 1. Einführung in die Programmierung
Einführungslektion. Die Sprache kennenlernen. Grundlegende Datentypen. Xcode, Spielplatz. Variablen, Konstanten und Datensammlungen. Debugger.
Lektion 2. Swift-Syntax und grundlegende Operatoren
Fortsetzung des Studiums der syntaktischen Strukturen und Grundoperatoren der Sprache
Lektion 3. Komplexe Datentypen
Einführung in komplexe Daten. Strukturen. Überweisungen. Eigenschaften und Methoden. Konstrukteur.
Lektion 4. Einführung in OOP – Objektorientierte Programmierung
Wie man Objekte der realen Welt beschreibt und sie entsprechend der Beschreibung erschafft. Klassen und Objekte. Nachlass. ARC und eine Einführung in die Speicherverwaltung.
Lektion 5. OOP: Klassenanforderungen, Protokolle, Erweiterungen, Polymorphismus, Zusammensetzung
Wir beschreiben die Anforderungen für den Unterricht. Protokolle. Erweiterungen. Polymorphismus. Komposition.
Lektion 6. Erweitertes OOP
Techniken von echten Gurus. Generika. Schließungen Abonnieren. Funktionen höherer Ordnung.
Lektion 7. Anwendungsfehlermanagement
Wir lernen, nach Fehlern zu suchen und deren Auftreten vorherzusagen. Ausnahmen versuchen/abfangen. Fehler.
Lektion 8. Rücksprache mit einem Lehrer
Git. Grundkurs
Git-Grundlagen
In 13 Videos erlernen Sie die Grundlagen der Arbeit mit dem Versionskontrollsystem Git. Sie erfahren, warum es in der modernen Entwicklung wichtig ist. Lernen Sie die Grundkonzepte kennen: Repository, Commits, Branches und Tags. Hauptschlüsseloperationen: Erstellen und Klonen eines Repositorys, Zusammenführen von Zweigen, Abfragen des Änderungsverlaufs und vieles mehr. Nach der Schulung sind Sie bereit, mit Git Hausaufgaben für Programmierkurse in einer beliebigen Sprache vorzubereiten. Außerdem kommen Sie näher an das Interview heran, bei dem sich mehrere Fragen normalerweise auf die Versionskontrolle konzentrieren.
Lektion 1. Einführung in Git
Lektion 2. Git installieren und konfigurieren
Lektion 3. Grundlegende Terminalbefehle
Lektion 4. Arbeiten mit Repositorys in Git
Lektion 5. Repository-Dateiverwaltung
Lektion 6. Geschichte der Veränderungen
Lektion 7. Arbeiten mit Repository-Zweigen
Lektion 8. Veröffentlichen eines Repositorys
Lektion 9. Zweig fusioniert
Lektion 10. Versionsverwaltung
Lektion 11. Erstellen einer Pull-Anfrage
Lektion 12. Komplexe Operationen
Lektion 13. Arbeiten mit Fork-Repositorys
Datenbankgrundlagen. 20 Lektionen.
Datenbankdesign und SQL-Abfragen
Datenbanken (DBs) sind Datenspeicher- und -verarbeitungssysteme, auf die über die Sprache SQL (Structured Query Language) zugegriffen wird. Jede moderne Website, jedes Spiel oder jede Desktop-Anwendung benötigt Datenspeicher. Derzeit gibt es viele verschiedene Datenbankverwaltungssysteme (DBMS), das beliebteste ist MySQL. „Datenbank-Grundlagen“ sind 20 intensive Videolektionen (je 10 Minuten), in denen wir alle Phasen des Datenbankdesigns am Beispiel eines Online-Shops mit der SQL-Abfragesprache durchgehen. Nach diesem Kurs sind Sie in der Lage, verschiedene Datenbanken wie MS SQL und Postgre Sql zu verwenden, da die SQL-Syntax praktisch identisch ist.
Lektion 1. Relationale Datenbanken
Was ist der Unterschied zwischen einer Datenbank und einem DBMS? welche Datenbanken werden als relational bezeichnet? Überblick über moderne DBMS.
Lektion 2. Installieren des DBMS
Installation des MySql DBMS und der grafischen Anwendung Mysql Workbench.
Lektion 3. Datenbankdesign, Normalformen
Datendesign in Excel; Normalformen; Primärschlüssel.
Lektion 4. SQL-Befehl CREATE
Erstellen von Tabellen in der MySql Workbench-GUI; CREATE-Befehl; Datentypen; Arbeit in der Konsole.
Lektion 5. SQL-INSERT-Befehl
Füllen von Tabellen mit Daten über eine grafische Oberfläche; INSERT-Befehl; AUTOMATISCHE ERHÖHUNG.
Lektion 6. SQL SELECT- und WHERE-Befehle
Empfangen und Filtern von Daten mithilfe der SQL-Befehle SELECT und WHERE; auf NULL prüfen; Filtern von Daten nach mehreren Bedingungen.
Lektion 7. SQL-Befehle DISTINCT, ORDER BY, LIMIT
Empfangen und Filtern von Daten mithilfe der SQL-Befehle DISTINCT und LIMIT; Sortieren mit dem Befehl ORDER BY.
Lektion 8. SQL-Befehle DELETE und UPDATE
Aktualisieren und Löschen von Daten mit den SQL-Befehlen DELETE und UPDATE; Filtern von Daten mit WHERE IN.
Lektion 9. Datenkonsistenz
Das Konzept der Konsistenz oder Konsistenz von Daten.
Lektion 10. Externer Schlüssel
Das Konzept eines Fremdschlüssels und Einschränkungen für Spaltenwerte; AUSLÄNDISCHE SCHLÜSSELBESCHRÄNKUNGEN.
Lektion 11. Erstellen von Tabellen mit einer Viele-zu-Viele-Beziehung
Hinzufügen eines Warenkorbs zur Online-Shop-Datenbank.
Lektion 12. Zusammengesetzter Primärschlüssel
Verwenden eines zusammengesetzten Primärschlüssels beim Entwerfen einer Tabelle mit einer Viele-zu-Viele-Beziehung.
Lektion 13. Daten aus mehreren Tabellen zusammenführen
Abrufen von Daten aus mehreren miteinander verbundenen Tabellen; Inkonsistenz des Ansatzes mit mehreren SELECTs.
Lektion 14. INNER JOIN-Operator
Verknüpfen von Daten aus mehreren Tabellen mithilfe des INNER JOIN-Operators.
Lektion 15. Operatoren LEFT JOIN, RIGHT JOIN
Verknüpfen von Daten aus mehreren Tabellen mit den Operatoren LEFT JOIN und RIGHT JOIN.
Lektion 16. UNION-Operator
Kombinieren der Ergebnisse mehrerer SQL-Abfragen mithilfe des UNION-Operators.
Lektion 17. Aggregationsfunktionen
Aggregationsfunktionen COUNT, SUM, MIN, MAX.
Lektion 18. GROUP BY-Operator
Gruppieren Sie einen ausgewählten Satz von Zeilen mithilfe der GROUP BY-Klausel.
Lektion 19. Indizes
Filtern in GROUP BY mit HAVING; Erhöhen der Geschwindigkeit der Abfrageausführung mithilfe von Indizes.
Lektion 20. Transaktionen
Transaktionskonzept; TRANSACTION-Anweisung; ACID-Anforderungen für das Transaktionssystem.
Benutzeroberfläche von iOS-Anwendungen. 1 Monat.
Swift 5.2 Xcode 12
Was sind die Hauptmerkmale der meisten modernen mobilen Anwendungen? Interaktion mit dem Dienst. Daten auf einem externen Server anzeigen und ändern! Es gibt keine Anwendungen ohne Benutzeroberfläche. Das ist das Gesicht Ihres Projekts. Es kann zur Gewinnung und Bindung von Nutzern genutzt werden. Durch die Implementierung einer Verbindung mit dem Dienst können Sie die Interaktion der Benutzer untereinander oder mit Ihrem Unternehmen organisieren.
Lektion 1. Interface-Design, Teil 1. Analyse grundlegender Netzwerkfähigkeiten und deren Anwendung in der Praxis
Analyse der wichtigsten Netzwerkfähigkeiten und ihrer Anwendung in der Praxis.
Lektion 2. Interface-Design, Teil 2. Bildschirme hinzufügen. Übergänge zwischen Bildschirmen. UINavigationController. Übergang
Bildschirme hinzufügen. Übergänge zwischen Bildschirmen. UInavigationController. Übergang.
Lektion 3. Interface-Design, Teil 3. Wir zeigen die Daten in Form einer Tabelle an. UITableViewController, UITableViewCell, UICollectionViewController, UICollectionViewCell
Wir zeigen die Daten in Form einer Tabelle an. UITableViewController, UITableViewCell, UICollectionViewController.
Lektion 4. Erstellen benutzerdefinierter UI-Komponenten
Zeichnen mit CoreGraphics. @IBDesignable und @IBInspectable. CALayer: Schatten, Ränder, Maske, Farbverlauf. Transformation. Verarbeitung von Benutzergesten. UIControl. UIAppearance.
Lektion 5. Rücksprache mit Lehrer 1
Lektion 6. Anpassung von Sammlungen
Erstellen benutzerdefinierter Tabellenzellen sowie Kopf- und Fußzeilenansichten. Erstellen benutzerdefinierter Sammlungszellen und zusätzlicher Ansichten. Arbeiten mit UICollectionViewFlowLayout. Erstellen eines benutzerdefinierten Sammlungsansichtslayouts.
Lektion 7. Animationen, Teil 1. Einfache UIView-Animationen. Animieren Sie Übergänge zwischen UIViews. Ebenenanimationen. Frühlingsanimationen
Einfache UIView-Animationen. Animieren Sie Übergänge zwischen UIViews. Ebenenanimationen. Frühlingsanimationen.
Lektion 8. Animationen, Teil 2. Animationsgruppen. Bezier-Kurven und ihre Animation. 3D-Animationen. UIViewPropertyAnimator
Keyframe-Animationen. Animationsgruppen. Bezier-Kurven und ihre Animation. 3D-Animationen. UIViewPropertyAnimator.
Lektion 9. Animation von Übergängen zwischen Bildschirmen
Animieren Sie Übergänge zwischen UIViewController. Interaktive Übergänge zwischen View-Controllern. Erstellen Sie Ihren eigenen Übergang.
Lektion 10. Rücksprache mit Lehrer 2
Client-Server-iOS-Anwendungen. 1 Monat.
Swift 5.2, Xcode 12
Sie beherrschen Techniken zur Entwicklung von Hochlastanwendungen. Sie arbeiten mit Dateien und Archiven. Lernen Sie, Prozesse im Hintergrund zu verwalten und die Anwendung für das Laden großer Datenmengen zu optimieren. Außerdem lernen Sie Methoden zur Entwicklung von Anwendungen mit einer universellen Schnittstelle kennen. Sammeln Sie Erfahrungen mit dem beliebten Firebase-Backend-Dienst von Google. Sie beteiligen sich auch am Prozess der Veröffentlichung der Anwendung im AppStore.
Lektion 1. Verwendung der Observer-, Singleton- und Delegate-Muster
Wir untersuchen die Implementierung der beliebtesten Muster in iOS. Machen wir uns mit NotificationCenter vertraut.
Lektion 2. Vernetzung
Lernen, mit Netzwerkanfragen zu arbeiten. Anatomie von HTTP-Anfragen. Übersicht über Tools und Bibliotheken für die Arbeit mit Netzwerkanfragen. Senden von Anfragen mit URLSession.
Lektion 3. JSON zuordnen
Lassen Sie uns die JSON-Antwort des Servers in Anwendungsobjekte konvertieren. Anatomie des JSON-Formats. JSONSerialisierung.
Lektion 4. Datenspeicher
Eine Übersicht über Tools und Bibliotheken zur dauerhaften Speicherung von Daten in einer Anwendung. Benutzervorgaben, Dateien. Kerndatei. SQLite, Realm, Schlüsselbund.
Lektion 5. Rücksprache mit Lehrer 1
Lektion 6. Realm – Objektdatenbank-Verwaltungssystem
Ausführliche Rezension von Realm. Daten speichern, abrufen, löschen, filtern
Lektion 7. Benachrichtigungen im Reich
Überwachen von Änderungen im Realm. Automatisches UI-Update.
Lektion 8. Firebase-Backend
Zur Speicherung der Bewerbungsdaten nutzen wir einen externen Server. Das Firebase Framework beherrschen. Wir verbinden die Mechanismen „Registrierung“ und „Benutzerautorisierung“.
Lektion 9. Mechanik des App Store
Wir veröffentlichen die Anwendung im App Store. Wir untersuchen die Möglichkeiten der Monetarisierung mobiler Anwendungen.
Lektion 10. Rücksprache mit Lehrer 2
Leistung von iOS-Anwendungen. 1 Monat.
Swift 5.2 Xcode 12
Der Kurs behandelt die Konzepte und Technologien von Multithreading, Caching und Fehlerbehebungsproblemen im Zusammenhang mit der Leistung der Benutzeroberfläche.
Lektion 1. Parallele Programmierung. Faden.
Einführung in die Konzepte von Multithread- und asynchronem Code. Flussmanagement. RunLoop. Faden.
Lektion 2. Parallele Programmierung. GCD
Wir studieren die Grand Central Dispatch-Bibliothek und vereinfachen das Flussmanagement.
Lektion 3. Parallele Programmierung. NSOperation
Einführung in die NSOperation-Bibliothek zum Organisieren von Multithread-Code und paralleler Ausführung von Aufgaben.
Lektion 4. Beratung
Lektion 5. Asynchroner Code. Zukunfts- und Versprechenskonzepte
Einleitung Versprechen/Zukunftskonzept Ein bisschen Theorie Praxis
Lektion 6. Übt die Arbeit mit UITableView und UICollectionView
Wir suchen nach Problemen beim Betrieb von Tabellen und Sammlungen. Wir geben AutoLayout zugunsten des Layouts auf Frames auf. Wir verarbeiten Daten in einem parallelen Thread und speichern Bilder zwischen.
Lektion 7. Newsfeed-Muster
Pull-to-Refresh-Muster. Unendliches Scrollmuster. Berechnen Sie die Zellengröße für künftig hochgeladene Bilder.
Lektion 8. Beratung
Algorithmen und Datenstrukturen. Grundkurs.. 1 Monat.
Effiziente Lösungen für Rechenprobleme
Der Grundkurs „pumpt“ die Grundkenntnisse der Informatik auf. Vermittelt ein Verständnis dafür, wie die Programmiersprache funktioniert und welche Befehle und Lösungen im Code verwendet werden. Am Beispiel der Sprache C werden Studierende in die Lage versetzt, die Mechanismen zu „erfühlen“, die modernen Frameworks zugrunde liegen. Der Kurs vermittelt Kenntnisse, die einen Programmierer von einem „Benutzer“ unterscheiden, der Code schreibt.
Lektion 1. Einfache Algorithmen
Einführung in C. Strukturen. Algorithmen.
Lektion 2. Asymptotische Komplexität des Algorithmus. Rekursion
Asymptotische Komplexität des Algorithmus. Rekursive Suche. Turm von Hanoi.
Lektion 3. Suche in einem Array. Einfache Sorten
Suche in einem eindimensionalen Array. Interpolationssuche. Sortieren eines Arrays.
Lektion 4. Dynamische Programmierung. Suche per Return
Größte gemeinsame Teilfolge. Dynamische Programmierung. Backtracking-Suche. Acht-Damen-Problem.
Lektion 5. Dynamische Datenstrukturen
Stapel, Warteschlange. Erstellen eines Stapels mithilfe eines Arrays. Dynamische Datenstrukturen.
Lektion 6. Bäume
Binäre Suchbäume. Hash-Funktion. MD5. Hash-Tabellen.
Lektion 7. Grafiken. Algorithmen auf Diagrammen.
Diagramme, Diagrammdurchquerung in Breite und Tiefe. Wellenalgorithmus. „Gierige Algorithmen“.
Lektion 8. Komplexe Sorten
Hoare-Sortierung (Schnellsortierung). Heap-Sortierung und Zusammenführungssortierung. CountingSort. Algorithmus mit einer Liste (Schubladensortierung). Blocksortierung.
Praktikum bei GeekBrains. 2 Monate.
Im Webinar-Format
Während des Praktikums müssen die Studierenden remote an einem Open-Source-Projekt oder Startup arbeiten. Die Studierenden werden gebeten, aus einer Reihe von Projekten auszuwählen, die für die Entwicklung verfügbar sind. Die Studierenden lernen, im Team zu arbeiten, mit anderen Entwicklern, Produkten und zu kommunizieren Projektmanager und Designer lernen flexible Methoden und das SCRUM-Framework kennen und beherrschen die Prinzipien Heimarbeit. Das Ergebnis des Praktikums ist die Fähigkeit zur Teamarbeit, die Ergänzung eines Portfolios und die Möglichkeit, die Arbeit an einem Projekt als Kernarbeitserfahrung im Lebenslauf anzugeben. Das Praktikum findet in Form von Teilzeit-Fernarbeit und wöchentlichen Statusbesprechungen mit der Lehrkraft im Webinar-Format statt.
Lektion 1. Kennenlernen, Projektauswahl
Welche Rollen gibt es in der Entwicklung? Produktmanager, Projektmanager, Entwickler, Designer. Was ist MVP? Architektur des modernen Dienstes. Wie Entwickler miteinander interagieren. REST-API, Web Socket. Backend, Frontend, mobile Anwendungen. Microservice-Architektur. Grundlagen der Fernarbeit. Melden Sie sich für Teams an.
Lektion 2. Entwicklungsmethoden
Überprüfung der Methoden. Kaskade (Wasserfall), Agile-Manifest, Kanban, Scrum. Wo und wofür sie verwendet werden. Gemischte Methoden.
Lektion 3. SCRUM-Methodik
Arbeiten Sie mit SCRUM. Sprintplanung. Rückstandspflege. Sprintziel. Zuwachs. Flexible Methodik bei Remote-Arbeitsbedingungen. Aufgaben-Tracker (Trello, Favro)/
Lektion 4. User Story Mapping
Arten von Aufgaben. Zerlegung von Aufgaben. User Stories abbilden. Arbeiten an User Stories. Arbeiten mit technischen Spezifikationen unter Verwendung von Wasserfall- und flexiblen Methoden.
Lektion 5. Verantwortung, Motivation, persönliches Wachstum
Was und wie Sie sich motivieren können. Welche Motivationsstufen gibt es? Wie man bei der Arbeit nicht ausbrennt. Und wie man die Arbeit nicht vergisst.
Lektion 6. Einen Lebenslauf schreiben
So schreiben Sie einen Lebenslauf, damit die Personalabteilung ihn nicht ablehnt. Wie man einen Arbeitgeber interessiert. Wie Sie Ihre im Studium erworbenen Kompetenzen nachweisen können, wenn Sie noch keine einschlägige Berufserfahrung haben.
Lektion 7. Vorläufige Zusammenfassung, Vorbereitung auf die Projektverteidigung
Analyse der Lebensläufe von Studierenden. Vorläufige Zusammenfassung. Ein wenig über Startups, Monetarisierung, Investoren.
Lektion 8. Zusammenfassend: Demonstration des endgültigen Projekts
Demonstration eines funktionierenden Prototyps durch Studenten. Diskussion der erzielten Ergebnisse. Feedback vom Lehrer. Trennwörter.