Dieses Handbuch vermittelt alle Grundlagen der Informationstechnik, die angehende Fachinformatiker in ihrer Ausbildung benötigen: Computerhardware, Betriebssysteme, Netzwerktechnik, -protokolle und -anwendungen sowie Grundlagen der Programmierung, Datenbanken und Multimedia. Mit vielen Prüfungsfragen und Praxisübungen.
Aus dem Inhalt:
- Überblick IT-Ausbildung
- Mathematische und technische Grundlagen
- Hardware und Betriebssysteme
- Datenbanken
- Windows, Linux, macOS - Grundlagen und Praxis
- Netzwerktechnik und Netzwerkpraxis
- IT-Sicherheit
- Datenanalyse, Machine Learning, Künstliche Intelligenz (KI)
- Programmierung in Java, Python, JavaScript und PHP
- Software-Engineering
- Algorithmen und Datenstrukturen
- Prozessanalyse
- Internet- und Webtechnologien
Inhaltsverzeichnis
Materialien zum Buch . . . 17
Vorwort . . . 19
1. Einführung . . . 27
1. 1 . . . Informationstechnik, Informatik und EDV . . . 27
1. 2 . . . Die Geschichte der Rechenmaschinen und Computer . . . 37
1. 3 . . . Digitale Speicherung und Verarbeitung von Informationen . . . 57
1. 4 . . . Übungsaufgaben . . . 61
2. Mathematische Grundlagen . . . 65
2. 1 . . . Einführung in die Logik . . . 65
2. 2 . . . Mengenlehre und diskrete Mathematik . . . 78
2. 3 . . . Mathematische Verfahren im Alltag . . . 93
2. 4 . . . Grundlagen der Stochastik . . . 97
2. 5 . . . Grundlagen der linearen Algebra . . . 104
2. 6 . . . Grundlagen der Analysis . . . 118
2. 7 . . . Informationsspeicherung im Computer . . . 123
2. 8 . . . Übungsaufgaben . . . 134
3. Elektronische und technische Grundlagen . . . 141
3. 1 . . . Elektronische Grundlagen . . . 141
3. 2 . . . Automatentheorien und -simulationen . . . 149
3. 3 . . . Übungsaufgaben . . . 168
4. Hardware . . . 171
4. 1 . . . Grundlagen . . . 171
4. 2 . . . Die Zentraleinheit . . . 175
4. 3 . . . Die Peripherie . . . 203
4. 4 . . . Übungsaufgaben . . . 228
5. Netzwerkgrundlagen . . . 235
5. 1 . . . Einführung . . . 235
5. 2 . . . Funktionsebenen von Netzwerken . . . 243
5. 3 . . . Klassifizierung von Netzwerken . . . 252
5. 4 . . . Netzwerkkarten, Netzwerkkabel und Netzzugangsverfahren . . . 261
5. 5 . . . Datenfernübertragung . . . 271
5. 6 . . . Die TCP/IP-Protokollfamilie . . . 275
5. 7 . . . Übungsaufgaben . . . 327
6. Betriebssysteme . . . 341
6. 1 . . . Entwicklung der Betriebssysteme . . . 342
6. 2 . . . Aufgaben und Konzepte . . . 350
6. 3 . . . Windows . . . 371
6. 4 . . . Linux und Unix . . . 394
6. 5 . . . Übungsaufgaben . . . 424
7. Grundlagen der Programmierung . . . 433
7. 1 . . . Python . . . 435
7. 2 . . . Java . . . 524
7. 3 . . . Übungsaufgaben . . . 569
8. Algorithmen und Datenstrukturen . . . 573
8. 1 . . . Algorithmen erarbeiten und implementieren . . . 574
8. 2 . . . Datensammlungen sortieren . . . 581
8. 3 . . . Nach Daten suchen . . . 588
8. 4 . . . Bäume und Graphen . . . 610
8. 5 . . . Bedingungserfüllungsprobleme . . . 632
8. 6 . . . Übungsaufgaben . . . 643
9. Weitere Konzepte der Programmierung . . . 645
9. 1 . . . Reguläre Ausdrücke . . . 645
9. 2 . . . Systemnahe Programmierung . . . 663
9. 3 . . . Einführung in die Netzwerkprogrammierung . . . 671
9. 4 . . . Externe Module und Abhängigkeiten . . . 680
9. 5 . . . Übungsaufgaben . . . 690
10. Datenanalyse, Machine Learning, künstliche Intelligenz . . . 693
10. 1 . . . Einführung . . . 694
10. 2 . . . Daten auswählen und aufbereiten . . . 699
10. 3 . . . Konkrete Machine-Learning-Verfahren . . . 716
10. 4 . . . Übungsaufgaben . . . 730
11. Software-Engineering . . . 733
11. 1 . . . Überblick . . . 734
11. 2 . . . Werkzeuge . . . 750
11. 3 . . . Übungsaufgaben . . . 784
12. Geschäftsprozessanalyse . . . 787
12. 1 . . . Überblick . . . 787
12. 2 . . . Prozesse modellieren mit BPMN . . . 793
12. 3 . . . Übungsaufgaben . . . 803
13. Datenbanken . . . 805
13. 1 . . . Die verschiedenen Datenbanktypen . . . 806
13. 2 . . . MySQL - ein konkretes RDBMS . . . 820
13. 3 . . . SQL-Abfragen . . . 825
13. 4 . . . MySQL-Administration . . . 838
13. 5 . . . Grundlagen der Datenbankprogrammierung . . . 851
13. 6 . . . CouchDB im Überblick . . . 856
13. 7 . . . Übungsaufgaben . . . 860
14. Server für Webanwendungen . . . 865
14. 1 . . . HTTP im Überblick . . . 865
14. 2 . . . Der Webserver Apache . . . 879
14. 3 . . . PHP installieren und einrichten . . . 899
14. 4 . . . Virtualisierung und Container . . . 906
14. 5 . . . Übungsaufgaben . . . 917
15. Weitere Internet-Serverdienste . . . 921
15. 1 . . . Namens- und Verzeichnisdienste . . . 921
15. 2 . . . Die »Meta-Server« inetd und xinetd . . . 938
15. 3 . . . Übungsaufgaben . . . 941
16. XML . . . 945
16. 1 . . . Der Aufbau von XML-Dokumenten . . . 947
16. 2 . . . DTDs und XML Schema . . . 958
16. 3 . . . XSLT . . . 974
16. 4 . . . Grundlagen der XML-Programmierung . . . 981
16. 5 . . . Übungsaufgaben . . . 987
17. Weitere Datei- und Datenformate . . . 993
17. 1 . . . Textdateien und Zeichensätze . . . 993
17. 2 . . . Binäre Dateiformate . . . 1015
17. 3 . . . Übungsaufgaben . . . 1027
18. Webseitenerstellung mit HTML und CSS . . . 1031
18. 1 . . . HTML und XHTML . . . 1032
18. 2 . . . Cascading Style Sheets (CSS) . . . 1074
18. 3 . . . Übungsaufgaben . . . 1094
19. Webserveranwendungen . . . 1103
19. 1 . . . PHP . . . 1103
19. 2 . . . Eine REST-API implementieren . . . 1171
19. 3 . . . Übungsaufgaben . . . 1200
20. JavaScript und Ajax . . . 1203
20. 1 . . . Grundlagen . . . 1204
20. 2 . . . Das Document Object Model (DOM) . . . 1244
20. 3 . . . Ajax . . . 1257
20. 4 . . . Die JavaScript-Bibliothek React. js . . . 1265
20. 5 . . . Übungsaufgaben . . . 1290
21. Computer- und Netzwerksicherheit . . . 1293
21. 1 . . . PC-Gefahren . . . 1294
21. 2 . . . Netzwerk- und Serversicherheit . . . 1307
21. 3 . . . Übungsaufgaben . . . 1318
Anhang . . . 1321
A. Glossar . . . 1321
B. Zweisprachige Wortliste . . . 1333
B. 1 . . . Englisch - Deutsch . . . 1333
B. 2 . . . Deutsch - Englisch . . . 1338
C. Kommentiertes Literatur- und Linkverzeichnis . . . 1345
C. 1 . . . Allgemeine Einführungen und Überblicke . . . 1345
C. 2 . . . Mathematische Grundlagen . . . 1346
C. 3 . . . Elektronische und technische Grundlagen . . . 1347
C. 4 . . . Hardware . . . 1348
C. 5 . . . Netzwerkgrundlagen . . . 1348
C. 6 . . . Betriebssysteme . . . 1348
C. 7 . . . Grundlagen der Programmierung . . . 1350
C. 8 . . . Algorithmen und Datenstrukturen . . . 1350
C. 9 . . . Weitere Konzepte der Programmierung . . . 1351
C. 10 . . . Datenanalyse, Machine Learning, künstliche Intelligenz . . . 1351
C. 11 . . . Software-Engineering . . . 1353
C. 12 . . . Geschäftsprozessanalyse . . . 1354
C. 13 . . . Datenbanken . . . 1354
C. 14 . . . Server für Webanwendungen . . . 1355
C. 15 . . . XML . . . 1355
C. 16 . . . Webseitenerstellung mit HTML und CSS . . . 1355
C. 17 . . . Webserveranwendungen . . . 1356
C. 18 . . . JavaScript und Ajax . . . 1356
C. 19 . . . Computer- und Netzwerksicherheit . . . 1357
Index . . . 1359