Anwendungsarchitektur: Schreiben Sie wie ein Entwickler, denken Sie wie ein Architekt – Kurs 80.000 Rubel. von Slurm, Ausbildung 3 Monate, Datum 22. Januar 2024.
Verschiedenes / / November 29, 2023
Lernen Sie, saubere und überschaubare Projekte zu schreiben, wartbare Systeme zu erstellen und Code zu organisieren.
Wir machen alle möglichen Fehler bei praktischen Aufgaben kostenlos, damit Sie sie später bei Ihrer Arbeit vermeiden und Millionen sparen können.
In der Vergangenheit wurden viele Anwendungen ohne Design erstellt. Es schien praktisch: keine Planungskosten, schnelles Prototyping.
Doch mit der Zeit verwandelten sich komplexe Anwendungen in einen unkontrollierbaren Kreuzer, der mit voller Geschwindigkeit auf den Eisberg zuraste.
Damals wurde Architektur zu einer echten Rettungsweste. Eine Anwendung mit einer gut gestalteten Architektur lässt sich leichter erweitern, ändern, testen, debuggen und verstehen.
Anwendungsarchitektur ist eine Kunst. Die Kunst, große Systeme zu entwerfen und zu erstellen.
Sie lernen, UML-Diagramme zu erstellen, Code umzugestalten, architektonische Grenzen zu ziehen und Systeme zu analysieren. Jeder Teilnehmer wird ein Kursprojekt abschließen: ein Informationssystem entwerfen und vollständig beschreiben, wie es in realen Produktionsaktivitäten geschieht.
Einführungsveranstaltung mit Referenten
22. Januar um 19:00 Uhr
Modul Eins: Einführung in die Anwendungsarchitektur
22. Januar
Machen wir uns mit den Ansätzen und Paradigmen der Anwendungsarchitektur vertraut
- Thema I. Das Problem besteht darin, warum es wichtig ist, Software richtig zu entwerfen. Warum braucht es Architektur, was passiert, wenn man nicht darüber nachdenkt.
- Thema II. Isolation als Mittel zur Beherrschung der Komplexität. Spaghetti-Code. Modularität. Kupplung. Statische Bindung, dynamische Bindung. Komponenten und ihre Wechselwirkungen. Eine Komponente als unabhängige Einheit. Auslegung lose gekoppelter Komponenten. Komponententests. MVC als Beispiel für ein modulares Muster. Gründe für Änderungen, Isolierung anhand der Änderungsgründe.
Zweites Modul: Unified Modeling Language
29. Januar
Lassen Sie uns die grafische Anzeigesprache beherrschen: Sie werden in der Lage sein, mit dieser Sprache zu lesen und zu entwerfen. Lernen wir, Diagramme zur Visualisierung von Architektur und Verbindungen zu verwenden.
- Thema I. Die Hauptbestandteile, was man mit ihnen ausdrücken kann, wofür sie benötigt werden.
- Thema II. Klassen-, Aktivitäts-, Sequenz- und Anwendungsfalldiagramme.
- Thema III. Nachteile von UML. Modell C4. Werkzeuge
Drittes Modul: OOP-Prinzipien
12. Februar
Wir lernen, auf hohem Niveau zu analysieren: Sie wissen, wie und mit welchem Paradigma ein Problem gelöst werden kann.
- Thema I. Überprüfung der Programmierparadigmen.
- Thema II. OOP-Prinzipien. OOP als Mittel der Architektur. Klassen und Methoden. Objektansatz als Isolationsmethode. Schnittstellen und abstrakte Klassen. Vererbungsprobleme.
- Thema III. OOP-Prinzipien: (SOLID, DRY).
AMA-Sitzung mit Referenten
Modul 4: Designmuster
26. Februar
Wir lernen, Systeme mithilfe von Mustern zu entwerfen: Sie verstehen die Vorteile und Grenzen von Mustern und können die angewendeten Muster in Systemen erkennen
- Thema I. Was sind Muster und warum werden sie benötigt? Ihre Typen.
- Thema II. Generative und strukturelle Muster.
- Thema III. Verhaltensmuster.
- Thema IV. Antimuster.
Modul Fünf: Saubere Architektur
11. März
Wir lernen, nach den Kriterien der reinen Architektur zu entwerfen, Abweichungen von der reinen Architektur zu finden und Optionen für eine Systemlösung vorzuschlagen. Wir lernen, wie man Code-Layout anwendet, architektonische Grenzen entwirft und zieht, um weitere Änderungen und die Wartung des Codes zu vereinfachen.
- Thema I. Kopplung und Kohäsion.
- Thema II. Architektonische Grenzen.
- Thema III. Saubere Architektur.
Modul Sechs: Verschiedene architektonische Ansätze
25.März
Wir lernen, einen Ansatz zur Lösung der gestellten Produktionsprobleme zu wählen, die Vorteile oder die Lösungen anderer/unserer eigenen zu erläutern. Unter Berücksichtigung der aktuellen Situation werden wir in der Lage sein, passende Lösungen für die gestellten Aufgaben zu finden
- Thema I. Anforderungen, Fachgebiet. Analyse. Funktionale/nichtfunktionale Anforderungen.
- Thema II. Architekturstile. Onion, mehrstufig, serviceorientiert, Microservice, ereignisgesteuert.
- Thema III. Anwendungsarchitektur. MVC, MVP, MVVM, MV*.
AMA-Sitzung mit Referenten
Siebtes Modul: Architektur überall
Der 1. April
Wir lernen, Wissen über Architektur auf verschiedenen Skalenebenen anzuwenden (nicht nur auf das Layout von Klassen und Modulen, sondern auch auf ganze Systeme).
- Thema I. Arten von Architekten und ihre Aufgaben.
- Thema II. Architekturen auf verschiedenen Ebenen (eingebettet, Anwendung, verteiltes System, Cloud-nativer Dienst).
Achtes Modul: Zusammenfassung
8. April
Erfahren Sie, wie Sie ganz einfach ein Werkzeug für eine bestimmte Aufgabe auswählen
- Thema I. Überblick über die wichtigsten Tools und Technologien, ihren Platz in der Architektur und Auswahlprinzipien.
- Datenspeicher: S3, Ceph, Posgres, MongoDB, Clickhouse, Neo4J, Cassandra, KeyValue.
- Warteschlangen: AMQP, Rabbit, Kafka, MQTT.
- Sprachen: Python, Java, GO, C++, Javascript/Typescript.
- Schnittstelle: Konsole, native Anwendungen, WEB: React, Vue, Angular, Jquery, Hybrid, Chatbots.
- Infrastruktur-Tools: Docker, K8s, Terraform, Ansible.