Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung | |||
job:fiae [2015-11-08 08:43] stefan |
job:fiae [2015-11-21 12:05] (aktuell) stefan |
||
---|---|---|---|
Zeile 73: | Zeile 73: | ||
Die Liste ist umgezogen: [Themen der schriftlichen IHK-Prüfungen](http://fiae.link/Pruefungsthemen "Themen der schriftlichen IHK-Prüfungen") | Die Liste ist umgezogen: [Themen der schriftlichen IHK-Prüfungen](http://fiae.link/Pruefungsthemen "Themen der schriftlichen IHK-Prüfungen") | ||
- | === Aktuelles (2015) === | + | === Mögliche Themen der Abschlussprüfung === |
- | * Windows 8.1 | + | |
- | * Smart Watches | + | |
- | * Internet of Things (IoT) | + | |
- | * 3D-Drucker | + | |
- | * Responsive Webdesign (mit HTML5 + CSS3) | + | |
- | * MVC mit JavaScript | + | |
- | * Functional Reactive Programming | + | |
- | * Tablets und mobile Geräte | + | |
- | * LTE | + | |
- | * NoSQL | + | |
- | * Big Data | + | |
- | * UEFI | + | |
- | === Der Betrieb und sein Umfeld === | + | Die Liste ist umgezogen: [Mögliche Themen der Abschlussprüfung](http://fachinformatiker-anwendungsentwicklung.net/moegliche-themen-der-abschlusspruefung/ "Mögliche Themen der Abschlussprüfung") |
- | * Vorteile eines betrieblichen Vorschlagwesens | + | |
- | * Beispiele zur Optimierung der Arbeitsabläufe | + | |
- | * Methoden zur Mitarbeitermotivation | + | |
- | * Standortfaktoren bewerten | + | |
- | * Marktformen bestimmen | + | |
- | * Angebotskalkulation | + | |
- | * (Arbeits-)Verträge | + | |
- | * Stellenbeschreibung | + | |
- | * Lohnabrechnung | + | |
- | * Gesellschaftsformen | + | |
- | * Aufbau- und Ablauforganisation | + | |
- | * Linien-/Matrixorganisation kennen (Vor-/Nachteile)und Organigramm erstellen | + | |
- | * Umweltschutz | + | |
- | * Green IT | + | |
- | * Workflow | + | |
- | * Zentralisierung/Dezentralisierung | + | |
- | * Unfallverhütung | + | |
- | + | ||
- | == Ergonomie == | + | |
- | * Vorgaben bzgl. Arbeitsplatzergonomie kennen | + | |
- | * ergonomische Anforderungen an Bildschirme, Drucker, Stühle, Tische | + | |
- | * Warum reicht die Einhaltung der Ergonomie nicht aus, um körperliche Beschwerden auszuschließen? Was kann man zusätzlich tun? | + | |
- | * Nutzen ergonomischer Arbeitsplätze für das Unternehmen | + | |
- | * Ergonomierichtlinien beim Gestalten von Oberflächen für Software | + | |
- | + | ||
- | == Marketing == | + | |
- | * Vor-/Nachteile von Absatzwegen, Distributionspolitik | + | |
- | * Fachbegriffe kennen | + | |
- | * Marktvolumen, Absatz, Marktanalyse etc. | + | |
- | * B2B, B2C, B2G | + | |
- | * Umfrage, Beobachtung, Experiment, Testmarkt, Marktprognose, Panelerhebung | + | |
- | * Marktdurchdringung, Marktentwicklung, Markterschließung, Produktinnovation, Produktentwicklung, Diversifikation | + | |
- | * Optimierung des Kundenservice | + | |
- | * mögliche Quellen zur Marktforschung | + | |
- | * Ziele von Werbung | + | |
- | * Phasen des Produktlebenszyklus | + | |
- | * Beispiele für niedrigen/hohen Markteinstiegspreis nennen | + | |
- | * Outsourcing (organisatorisch) vs. Offshoring (geografisch) | + | |
- | + | ||
- | == Rechtliches == | + | |
- | * Datenschutz vs. Datensicherheit | + | |
- | * Urheberrecht | + | |
- | * von Patenten abgrenzen | + | |
- | * Open Source | + | |
- | * Unfreier Versand | + | |
- | * Fernabsatzverträge | + | |
- | * Nachbesserung und Nachlieferung | + | |
- | * Gewährleistung vs. Garantie | + | |
- | * Mutterschutz, JAschG | + | |
- | * Betriebsrat | + | |
- | * Rechte und Pflichten | + | |
- | * rechtliche Voraussetzungen | + | |
- | * Kündigung | + | |
- | * gesetzliche/vertragliche Fristen | + | |
- | * notwendige Unterlagen | + | |
- | * Werks- vs. Dienstvertrag | + | |
- | * Inhalte von SLAs | + | |
- | * Arbeitsschutz | + | |
- | * Pflichten des Arbeitgebers bei Arbeitsunfällen | + | |
- | * Arbeitsvertrag | + | |
- | * Inhalte, Rechte/Pflichten | + | |
- | * kollektives Arbeitsrecht | + | |
- | * Inhalte der Personalakte | + | |
- | * Rechtsformen von Unternehmen (AG, GmbH, KG usw.) | + | |
- | * Voraussetzungen, Haftung, Eigenkapital, Firma etc. | + | |
- | * verschiedene Versicherungen (z.B. Haftpflicht, Gebäudeversicherung usw.) | + | |
- | + | ||
- | == Soft-Skills == | + | |
- | * Präsentieren | + | |
- | * Vorteile des Medieneinsatzes bei Präsentationen | + | |
- | * Aufbau von Präsentationen | + | |
- | * Aufmerksamkeit der Zuhörer gewinnen | + | |
- | * Ideenfindung/Kreativitätstechniken | + | |
- | * Brainstorming, Mindmap | + | |
- | + | ||
- | === Betriebssysteme === | + | |
- | * verschiedene Betriebssysteme kennen (Linux, Windows, Android, iOS, Windows Phone) | + | |
- | * Unterschied Unix/Linux | + | |
- | * Vor-/Nachteile Linux/Windows | + | |
- | * Dateisysteme (FAT, NTFS, ext) | + | |
- | * Aufbau des Dateibaums | + | |
- | * Kommandozeile vs. GUI | + | |
- | * Linux | + | |
- | * wichtige Befehle kennen (ls, chmod, chown, ps, grep, mount) | + | |
- | * wichtige Verzeichnisse kennen (bin, boot, dev, etc, home, lib, root, sbin, var) | + | |
- | * Dateirechtesystem erklären (ugw + rwx) | + | |
- | * gängige Linux-Distributionen nennen (Debian, Suse, Red Hat, Ubuntu etc.) | + | |
- | * Wie wird die Hardware angesteuert? | + | |
- | * Mounten von Laufwerken | + | |
- | * Samba/SMB | + | |
- | * Typen von Multitasking erläutern (kooperativ vs. präemptiv) | + | |
- | * Prozess vs. Task vs. Thread | + | |
- | + | ||
- | === Datenbanken === | + | |
- | * unterschiedliche Architekturen (Client/Server, Dateibasiert) | + | |
- | * unterschiedliche Ansätze (relational, Netzwerk, hierarchisch, objektorientiert) | + | |
- | * Eigenschaften von relationalen Datenbanken | + | |
- | * ORM | + | |
- | * NoSQL (dokumentenorientiert, spaltenorientiert, Key/Value-Store, objektorientiert, Graphendatenbank) | + | |
- | * CAP-Theorem | + | |
- | * Map/Reduce | + | |
- | * Eventual Consistency | + | |
- | * Begriffe kennen und erläutern | + | |
- | * Redundanz, Primär-/Fremdschlüssel, Datensatz, INSERT | + | |
- | * referentielle Integrität | + | |
- | * Maßnahmen bei Löschoperationen (Constraints): CASCADE, DENY/RESTRICT, SET NULL | + | |
- | * Replikation erläutern | + | |
- | * Trigger erklären | + | |
- | * SQL-Abfragen | + | |
- | * DDL, DML, DQL, DCL, DTL | + | |
- | * CRUD (Create, Read, Update, Delete) | + | |
- | * verschiedene Joins (INNER, OUTER LEFT/RIGHT) | + | |
- | * Arbeitschritte beim DB-Design | + | |
- | * ER-Modelle erstellen | + | |
- | * Tabellenmodelle erstellen | + | |
- | * ACID-Prinzipien für Transaktionen kennen und erläutern (atomicity, consistency, isolation, durability) | + | |
- | * Normalformen erläutern ("the key, the whole key, and nothing but the key") | + | |
- | * Normalisierung von Datenbanken bis zur 3. Normalform durchführen | + | |
- | * Modellierung von Beziehungen (1:1, 1:n, m:n) | + | |
- | * mögliche Beispiele: Benutzer/Login (1:1), Benutzer/Bestellung (1:n), Benutzer/Benutzergruppe (m:n) | + | |
- | * Big Data | + | |
- | * mögliche Aufgaben | + | |
- | * vorhandenes Tabellenmodell normalisieren | + | |
- | * gültige Datensätze zu einem gegebenen Schema ermitteln können | + | |
- | + | ||
- | === Englisch === | + | |
- | * Texte verstehen, übersetzen und analysieren | + | |
- | + | ||
- | === Hardware === | + | |
- | * Prozessor/CPU, Kühlung | + | |
- | * von-Neumann-Architektur | + | |
- | * ALU | + | |
- | * RAM-Arten und Unterschiede | + | |
- | * Eigenschaften/Unterscheidung/Vor-/Nachteile DAS, SAN und NAS | + | |
- | * Unterschied Stack/Heap | + | |
- | * Abkürzungen und Bedeutung kennen: sATA, AGP, PCI, ISA, IDE, SCSI, SAS, USB, RAID, TFT, TCO, CRT, USV, SSD | + | |
- | * RAID 0, 1, 5, 10 usw., JBOD erklären | + | |
- | * Bluetooth, Firewire, USB | + | |
- | * WLAN | + | |
- | * Hotspot, Ad-Hoc, Repeater | + | |
- | * Sicherheit (WPA, WEP, MAC-Kontrolle) | + | |
- | * BIOS, CMOS, Ablauf eines Systemstarts, Sinn von BIOS-Updates | + | |
- | * UEFI | + | |
- | * IDE: Master/Slave, Jumper | + | |
- | * Firmware, Flash-Speicher | + | |
- | * Arten von Druckern und Scannern | + | |
- | * Thin Clients/Fat Clients | + | |
- | * Bezugsquellen für Hardwarelieferanten | + | |
- | * Server-/Desktop-/Anwendungsvirtualisierung | + | |
- | * mögliche Arten der Virtualisierung | + | |
- | * Hardwareunterstützung | + | |
- | * Vor-/Nachteile der einzelnen Verfahren | + | |
- | * mögliche Aufgaben | + | |
- | * passende Komponenten für einen (Datenbank-/File-)Server oder Workstation (z.B. CAD, Office) auswählen | + | |
- | * PCs für bestimmte Anforderungen aus Komponenten zusammenstellen | + | |
- | * Green IT | + | |
- | * Smartphones | + | |
- | * Cloud Computing (Auswirkungen auf Softwareentwicklung, Hardware, Geschäftsmodelle) | + | |
- | * Platform/Infrastructure/Software as a Service | + | |
- | * USB 3.0 | + | |
- | * USV | + | |
- | * Typen von USVen (z.B. VFI) | + | |
- | * benötigte Scheinleistung für vorgegebene Hardware ermitteln | + | |
- | * Netzstörungen, vor denen USVen schützen | + | |
- | * Hot Swapping, Hot Spare erläutern | + | |
- | * Arbeitsweise von RFID erläutern | + | |
- | * Vor-/Nachteile von SSDs | + | |
- | + | ||
- | === Internet === | + | |
- | * Aufbau von URLs/URIs | + | |
- | * Beispiele für Browser/Webserver/Web-Programmiersprachen/(serverseitige) Scriptsprachen | + | |
- | * wichtige Protokolle und Ports (HTTP, FTP, SMTP, POP3, IMAP, telnet, NNTP, SMB) | + | |
- | * Vor-/Nachteile wichtiger Dateiformate (PDF, Bildformate) | + | |
- | * Ablauf beim Aufruf einer Website (Kommunikation Client/Server) und Verarbeitung bei PHP | + | |
- | * Sicherheit | + | |
- | * Hacker, Cracker, Script-Kiddies | + | |
- | * Phishing, Sniffing, Spoofing, Man-in-the-Middle | + | |
- | * SQL-Injection, XSS, CSRF, Session Hijacking, DoS, DDoS | + | |
- | * Viren, Würmer, Trojaner, Hoax, Spyware, Dialer | + | |
- | * Verbreitung von Viren/Würmer/Trojaner erläutern | + | |
- | + | ||
- | == Websites == | + | |
- | * Vorteile von Internetseiten als Werbemittel | + | |
- | * grundlegende Kenntnisse von HTML, CSS, PHP | + | |
- | * ergonomische Gestaltung von Websites | + | |
- | * CMS | + | |
- | * Mindestinhalte des Impressums | + | |
- | * virtuelle Hosts erläutern | + | |
- | * Möglichkeiten zur Unterscheidung von Websites auf einem Host: IP, Hostname, Port | + | |
- | * Funktion von .htaccess erläutern | + | |
- | * dynamische Websites (CGI, ASP, JSP) | + | |
- | * Applet und Servlet unterscheiden | + | |
- | * Web 2.0 | + | |
- | * AJAX | + | |
- | * Vor-/Nachteile | + | |
- | * Funktionsweise | + | |
- | * Social Networks, Wikis, Blogs, Twitter | + | |
- | * REST | + | |
- | * RIA | + | |
- | * JavaScript | + | |
- | * jQuery und andere Frameworks | + | |
- | * HTML5, CSS3 | + | |
- | * Audio-/Videoeinbettung/-unterstützung | + | |
- | * Anforderungen durch Mobilgeräte | + | |
- | + | ||
- | === Mathematik und Rechnungswesen === | + | |
- | * Ermittlung von Umsatz/Provision/Deckungsbeitrag/Kosten/Gewinn | + | |
- | * Zahlungsverzug | + | |
- | * Definition, Gründe, Konsequenzen | + | |
- | * Rechtsgrundlage/Definition für Zahlungsverzug | + | |
- | * Möglichkeiten zum Umgang mit Liquiditätsengpässen | + | |
- | * Gemeinkosten auf Kostenstellen verteilen | + | |
- | * Kosten für eine Produkteinführung berechnen | + | |
- | * Break-Even-Point ermitteln | + | |
- | * Gewinn ermitteln | + | |
- | * Vor-/Nachteile Kauf/Leasing/Miete | + | |
- | * Umrechnungen in Zahlensystemen (Dual, Dezimal, Oktal, Hexadezimal) | + | |
- | * Profit-Center-Organisation | + | |
- | * Handelskalkulation | + | |
- | * Betriebsabrechnungsbogen | + | |
- | * Fehler in Lieferschein/Rechnung finden | + | |
- | * gesetzliche Gewährleistungsfrist ermitteln | + | |
- | * Umgang mit Mängeln | + | |
- | * TCO erläutern | + | |
- | + | ||
- | === Multimedia === | + | |
- | * Datenraten von verschiedenen Laufwerken (Festplatte, CD, DVD) | + | |
- | * Audiobearbeitung | + | |
- | * Sampling(-rate, -tiefe) | + | |
- | * Bildbearbeitung | + | |
- | * Auflösung | + | |
- | * JPEG, TIF, MPEG | + | |
- | * OCR | + | |
- | * Unterschied Raster-/Vektorgrafik | + | |
- | * Zeichensätze kennen und Unterschiede aufzeigen | + | |
- | * ASCII kennen und erklären | + | |
- | * Kryptographie | + | |
- | * symmetrisch/asymmetrisch | + | |
- | * PKI, BSI | + | |
- | * Was ist eine Prüfsumme/Hash? | + | |
- | * ausgewählte Verschlüsselungsverfahren kennen | + | |
- | * digitale Signatur | + | |
- | * Kompression | + | |
- | * verlustbehaftet vs. verlustfrei | + | |
- | * ZIP | + | |
- | * Huffman-Code | + | |
- | * Längs-/Querparität berechnen | + | |
- | * XML | + | |
- | * Wohlgeformtheit, Validität | + | |
- | * Parser, Serialisierer | + | |
- | * SAX, DOM | + | |
- | * vs. HTML, CSV etc. | + | |
- | * DTD, Schema, RelaxNG, Schematron | + | |
- | * XSLT, XSL-FO | + | |
- | * mögliche Aufgaben | + | |
- | * Dateigrößen von Bildern/Videos berechnen | + | |
- | * 3D-/HD-TV, HDMI, BlueRay | + | |
- | + | ||
- | === Netzwerk und Administration === | + | |
- | * Methoden zur Namensauflösung erklären (DNS, hosts) | + | |
- | * DNS-Konfiguration | + | |
- | * DNS, DHCP, WINS, ARP, Subnetting, Topologien | + | |
- | * Ablauf beim DHCP-Lease (Discover -> Offer -> Request -> Acknowledge) | + | |
- | * ping (ICMP) | + | |
- | * MAC vs. IP | + | |
- | * IPv4, IPv6, A/B/C-Klassennetze | + | |
- | * öffentliche/private IP-Adressen | + | |
- | * Protokolle mit Port-Nummern (HTTP, HTTPS, FTP, SMTP, POP3, IMAP, DNS, SMB, Telnet, SSH) | + | |
- | * Routing | + | |
- | * Firewall | + | |
- | * Packet Inspection, Port-Forwarding | + | |
- | * Proxy-Server (Squid) | + | |
- | * dedicated, circuit level | + | |
- | * Sicherheitsmaßnahmen | + | |
- | * Vorteile von SSH | + | |
- | * Unterschied HTTP/HTTPS | + | |
- | * Struktur eines Class-C-Netzes erläutern | + | |
- | * Funktionsweise und Vorteile von VPN beschreiben | + | |
- | * Protokolle/Ports, Verschlüsselungsverfahren | + | |
- | * ISDN, ADSL, SDSL, UMTS | + | |
- | * Datenraten, Technik | + | |
- | * FDDI (Lichtwelle)/Ethernet beschreiben | + | |
- | * Netzwerkhardware (Hub, Bridge, Switch, Router) mit Zuordnung zu ISO-Schichten | + | |
- | * Switches/Hubs unterscheiden | + | |
- | * Serverarten nennen (z.B. Print-/Fileserver) | + | |
- | * Aufbau, Vor-/Nachteile Terminalserver erläutern | + | |
- | * Clustering, Load Balancing | + | |
- | * Round Robin | + | |
- | * RDP/ICA unterscheiden | + | |
- | * ISO/OSI-Modell (7 Schichten) im Vergleich zum TCP/IP-Modell (4 Schichten) | + | |
- | * Backup | + | |
- | * Medien nennen und erläutern | + | |
- | * inkrementell/differentiell/voll | + | |
- | * Generationenprinzip, Großvater/Vater/Sohn | + | |
- | * hot/cold | + | |
- | * Wie erkennt die Software, welche Daten zu sichern sind? | + | |
- | * schützenswerte Daten | + | |
- | * mögliche Gründe für Datenverluste auf Servern erläutern und Gegenmaßnahmen vorschlagen | + | |
- | * Folgen von Datenverlust, Auswirkungen von Datenverlusten für das Unternehmen erläutern | + | |
- | * Maßnahmen der Mitarbeiter zur Vermeidung von Datenverlusten erläutern | + | |
- | * Client/Server vs. P2P | + | |
- | * File Sharing | + | |
- | * primäre/sekundäre/tertiäre Verkabelung | + | |
- | * Kabeltypen | + | |
- | * Simplex, Halb-/Vollduplex | + | |
- | * 10/100/1000Base-T | + | |
- | * CAT5e/6/7 etc. | + | |
- | * CSMA/CD, Token | + | |
- | * VLAN | + | |
- | * statisch/dynamisch, tagged/untagged | + | |
- | * VoIP, QoS, SIP | + | |
- | * Authentifizierung vs. Autorisierung | + | |
- | * Warum sollten sich Benutzer ggü. Systemen authentifizieren? | + | |
- | * mögliche Aufgaben | + | |
- | * Dauer einer Datensicherung berechnen | + | |
- | * Netzwerk konzipieren (Router, Firewall, Clients) | + | |
- | + | ||
- | === Projektmanagement === | + | |
- | * Definition Projekt | + | |
- | * übliche Projektphasen (Idee, Zieldefinition, Auftrag, Planung, Durchführung, Kontrolle etc.) | + | |
- | * Beispiele für Aufgaben in den jeweiligen Phasen | + | |
- | * Aufgaben/Inhalte/Verbindlichkeit von Lasten-/Pflichtenheften und Angeboten | + | |
- | * Lastenheft: was/wofür? | + | |
- | * Pflichtenheft: wie/womit? | + | |
- | * Aufgaben des Projektleiters | + | |
- | * Netzplan, Gantt-Diagramm, PSP (Projektstrukturplan) erstellen/vervollständigen | + | |
- | * kritischen Pfad ermitteln | + | |
- | * Formen der Projektorganisation mit Vor-/Nachteilen | + | |
- | + | ||
- | == Prozessanalyse == | + | |
- | * Prozessdiagramme/EPKs erstellen/korrigieren/optimieren | + | |
- | * Ablauf eines üblichen Geschäftsprozesses (von Kundenanfrage bis Zahlungseingang) kennen | + | |
- | * Symbole des Petri-Netzes erläutern | + | |
- | + | ||
- | === Softwareentwicklung === | + | |
- | * Arten von Software unterscheiden (Individual-/Branchensoftware) | + | |
- | * Unterschied prozedurale/objektorientierte Entwicklung/Modellierung | + | |
- | * Prinzipien der OOP | + | |
- | * Begriffe der OOP erläutern: Attribut, Nachricht/Methodenaufruf, Persistenz, Schnittstelle/API/Interface, Polymorphie, Vererbung | + | |
- | * Bestandteile von Klassen | + | |
- | * Unterschied Klasse/Objekt | + | |
- | * Unterschied Klasse/Interface | + | |
- | * Erklärung Klassenbibliothek | + | |
- | * Klassenbeziehungen: Assoziation, Aggregation, Komposition | + | |
- | * Software-Architektur | + | |
- | * Layers/Schichten/3-Tier, MVC, MVVM, SOA, Microservices, REST, Pipes and Filters, Monolith | + | |
- | * Zustandslosigkeit, lose Kopplung | + | |
- | * Bottom-Up- und Top-Down-Verfahren bei der Modellierung erläutern | + | |
- | * Funktion/Vorteile der Modularisierung von Programmen | + | |
- | * wichtige UML-Diagramme (UseCase-, Klassen-, Sequenz-, Aktivitätsdiagramm, Zustandsautomaten, Komponentendiagramm, Verteilungsdiagramm) kennen und Einsatzgebiete erläutern | + | |
- | * Design Patterns kennen/erklären | + | |
- | * Singleton, Observer, Factory, Adapter, Iterator, Strategy, Decorator, Template Method, Registry, MVC | + | |
- | * Methoden zur Dokumentation | + | |
- | * Eigenschaften eines Versionsverwaltungssystems beschreiben | + | |
- | * SVN, CVS, TFS mit Source Safe, Git | + | |
- | * VCS vs. DVCS | + | |
- | * Continuous Integration/Deployment | + | |
- | * Entwicklungsprozesse | + | |
- | * Wasserfall, V-Modell (XT), Spiralmodell, Scrum, Extreme Programming, Kanban | + | |
- | * mögliche Aufgaben | + | |
- | * gegebene Klassen in ein Klassendiagramm eintragen (inkl. Beziehungstypen und Kardinalitäten) | + | |
- | * Klassendiagramm vervollständigen | + | |
- | * Use-Case-Diagramm erstellen | + | |
- | * Anforderungen durch Mobilgeräte | + | |
- | * Offline-Fähigkeit, Deployment auf mehrere Plattformen, verschiedene Programmiersprachen, native Apps vs. HTML5/JavaScript, geringe Bandbreiten, kleine Auflösungen | + | |
- | * Richtlinien bei der Gestaltung von Programmoberflächen | + | |
- | * Aufgabenangemessenheit, Selbstbeschreibungsfähigkeit, Lernförderlichkeit, Steuerbarkeit, Erwartungskonformität, Individualisierbarkeit, Fehlertoleranz (siehe [[http://de.wikipedia.org/wiki/EN_ISO_9241#EN_ISO_9241-110_Grunds.C3.A4tze_der_Dialoggestaltung|EN ISO 9241-110 Grundsätze der Dialoggestaltung]]) | + | |
- | + | ||
- | == Programmierung == | + | |
- | * Programmierparadigmen (OO, strukturiert, prozedural, funktional) | + | |
- | * Eigenschaften funktionaler Programmierung: Higher Order Functions, Immutability, Tail Call Optimization, Pattern Matching, Fokus auf Rekursion | + | |
- | * Typisierung: stark vs. schwach, statisch vs. dynamisch | + | |
- | * Klassifizierung von Programmiersprachen anhand von Typisierung, Paradigma, Compiler/Interpreter, Abstraktionsniveau, C-ähnlich oder nicht | + | |
- | * deklarativ vs. imperativ | + | |
- | * Unterschied Interpreter/Compiler | + | |
- | * 3GL/4GL | + | |
- | * die gängigen Programmiersprachen kennen (PHP, Perl, Java, C, C++, C#, JavaScript, Delphi, Visual Basic, VBA, Ruby, Python, Cobol, F#, Lisp, Prolog, Assembler) | + | |
- | * Unterschiede bei der Programmierung/Ausführungsgeschwindigkeit in C, Java und JavaScript | + | |
- | * Rekursion | + | |
- | * Unterschied syntaktische/semantische Fehler | + | |
- | * Benutzereingaben sinnvoll validieren | + | |
- | * Generische Klassen | + | |
- | * Vorteile generischer Container (Templates in C++) gegenüber Arrays | + | |
- | * Unterschied statische/nicht-statische Methoden | + | |
- | * Kontrollstrukturen | + | |
- | * allgemeine Programmstrukturen identifizieren/erläutern (Schleifen etc.) | + | |
- | * grundlegende Kontrollstrukturen in allen Diagrammformen (PAP (Programmablaufplan), Nassi-Schneiderman/Struktogramm) darstellen können | + | |
- | * Merkmale/Unterschiede von Kontrollstrukturen (Schleifen, Fallunterscheidungen) | + | |
- | * Zustandsübergänge eines Zustandsautomaten abbilden | + | |
- | * Datenstrukturen | + | |
- | * Queue, Bäume, Stack, Heap | + | |
- | * Algorithmen als PAP/Struktogramm/Pseudocode darstellen | + | |
- | * Reguläre Ausdrücke zur Textanalyse erstellen | + | |
- | * mögliche Aufgaben | + | |
- | * Fehler in Programmcode finden (C) | + | |
- | * Algorithmen implementieren/durchspielen | + | |
- | * Mittelwert | + | |
- | * doppelte Einträge in einem Array finden/löschen | + | |
- | * Dateibäume rekursiv kopieren | + | |
- | * (Zinses-)Zinsberechnung | + | |
- | * Planen eines regelmäßigen Backups | + | |
- | * Ablauf einer Benutzerauthentifizierung an einer Website | + | |
- | * Abbuchen von einem Konto | + | |
- | + | ||
- | == Software-Qualität == | + | |
- | * Definition Software-Qualität? | + | |
- | * Software-Qualitätsmerkmale nach DIN/ISO nennen und erläutern | + | |
- | * Methoden für Software-Tests | + | |
- | * Bottom-Up und Top-Down | + | |
- | * statisches/dynamisches Testen | + | |
- | * Abnahme-, Last-, Funktions-, Regressionstest | + | |
- | * Black-/Whiteboxtest, Anweisungsüberdeckung/Zweigüberdeckung | + | |
- | * Komponenten-, Integrations-, Systemtest | + | |
- | * exploratives Testen, Smoketest | + | |
- | * Maßnahmen zur Qualitätssicherung (Audits, Reviews, Testmethoden) | + | |
===== Literatur ===== | ===== Literatur ===== |