IT-Handbuch für Fachinformatiker - Für Fachinformatiker der Bereiche Anwendungsentwicklung und Systemintegration
von: Sascha Kersken
Galileo Press, 2013
ISBN: 9783836222341
Sprache: Deutsch
1217 Seiten, Download: 19101 KB
Format: PDF, auch als Online-Lesen
Mehr zum Inhalt
IT-Handbuch für Fachinformatiker - Für Fachinformatiker der Bereiche Anwendungsentwicklung und Systemintegration
Inhalt | 6 | ||
Vorwort | 18 | ||
1 Einführung | 26 | ||
1.1 Informationstechnik, Informatik und EDV | 26 | ||
1.1.1 Fachrichtungen der Informatik | 27 | ||
1.1.2 Überblick über die IT-Ausbildung | 28 | ||
1.2 Die Geschichte der Rechenmaschinen und Computer | 35 | ||
1.2.1 Die Vorgeschichte | 36 | ||
1.2.2 Die Entwicklung der elektronischen Rechner | 38 | ||
1.2.3 Entwicklung der Programmiersprachen | 47 | ||
1.3 Digitale Speicherung und Verarbeitung von Informationen | 54 | ||
1.3.1 Digitale Bilddaten | 56 | ||
1.3.2 Digitale Audiodaten | 57 | ||
1.3.3 Digitale Speicherung von Text | 58 | ||
1.4 Zusammenfassung | 58 | ||
2 Mathematische und technische Grundlagen | 60 | ||
2.1 Einführung in die Logik | 60 | ||
2.1.1 Aussagen | 61 | ||
2.1.2 Aussageformen | 62 | ||
2.1.3 Logische Verknüpfungen | 62 | ||
2.1.4 Mengenoperationen | 70 | ||
2.1.5 Weitere wichtige Berechnungsverfahren | 74 | ||
2.2 Informationsspeicherung im Computer | 76 | ||
2.2.1 Zahlensysteme | 76 | ||
2.2.2 Bits und Bytes | 82 | ||
2.3 Elektronische Grundlagen | 86 | ||
2.3.1 Einfache Schaltungen | 87 | ||
2.3.2 Zusammengesetzte Schaltungen | 90 | ||
2.4 Automatentheorien und -simulationen | 95 | ||
2.4.1 Algorithmen | 95 | ||
2.4.2 Die Turing-Maschine | 100 | ||
2.4.3 Der virtuelle Prozessor | 104 | ||
2.5 Zusammenfassung | 111 | ||
3 Hardware | 112 | ||
3.1 Grundlagen | 113 | ||
3.2 Die Zentraleinheit | 117 | ||
3.2.1 Aufbau und Aufgaben des Prozessors | 118 | ||
3.2.2 Der Arbeitsspeicher | 128 | ||
3.2.3 Das BIOS | 130 | ||
3.2.4 Bus- und Anschlusssysteme | 136 | ||
3.3 Die Peripherie | 146 | ||
3.3.1 Massenspeicher | 147 | ||
3.3.2 Eingabegeräte | 161 | ||
3.3.3 Ausgabegeräte | 164 | ||
3.3.4 Soundhardware | 170 | ||
3.4 Zusammenfassung | 171 | ||
4 Netzwerkgrundlagen | 174 | ||
4.1 Einführung | 174 | ||
4.1.1 Was ist ein Netzwerk? | 174 | ||
4.1.2 Entstehung der Netzwerke | 176 | ||
4.2 Funktionsebenen von Netzwerken | 182 | ||
4.2.1 Das OSI-Referenzmodell | 182 | ||
4.2.2 Das Schichtenmodell der Internetprotokolle | 185 | ||
4.2.3 Netzwerkkommunikation über die Schichten eines Schichtenmodells | 188 | ||
4.3 Klassifizierung von Netzwerken | 192 | ||
4.3.1 Die Reichweite des Netzwerks | 192 | ||
4.3.2 Die Netzwerktopologie | 194 | ||
4.3.3 Der Zentralisierungsgrad des Netzwerks | 195 | ||
4.4 Netzwerkkarten, Netzwerkkabel und Netzzugangsverfahren | 202 | ||
4.4.1 Die verschiedenen Ethernet-Standards | 203 | ||
4.4.2 Token Ring | 209 | ||
4.4.3 Drahtlose Netze | 210 | ||
4.4.4 Sonstige Zugangsarten | 215 | ||
4.5 Datenfernübertragung | 216 | ||
4.5.1 Netzwerkzugang per Modem (analoge Telefonleitung) | 218 | ||
4.5.2 ISDN | 219 | ||
4.5.3 DSL-Dienste | 221 | ||
4.5.4 Internetzugänge über Mobilfunk | 223 | ||
4.6 Die TCP/IP-Protokollfamilie | 225 | ||
4.6.1 Netzzugang in TCP/IP-Netzwerken | 226 | ||
4.6.2 IP-Adressen, Datagramme und Routing | 227 | ||
4.6.3 Transportprotokolle | 255 | ||
4.6.4 Das Domain Name System (DNS) | 261 | ||
4.6.5 Verschiedene Internet-Anwendungsprotokolle | 266 | ||
4.7 Andere Protokollstapel | 283 | ||
4.7.1 Die AppleTalk-Protokollfamilie | 283 | ||
4.7.2 Novell IPX/SPX | 286 | ||
4.7.3 NetBEUI/SMB | 287 | ||
4.8 Zusammenfassung | 288 | ||
5 Betriebssystemgrundlagen | 290 | ||
5.1 Entwicklung der Betriebssysteme | 291 | ||
5.1.1 Die Geschichte von Unix | 293 | ||
5.1.2 PC-Betriebssysteme | 295 | ||
5.2 Aufgaben und Konzepte | 299 | ||
5.2.1 Allgemeiner Aufbau von Betriebssystemen | 300 | ||
5.2.2 Prozessverwaltung | 307 | ||
5.2.3 Speicherverwaltung | 312 | ||
5.2.4 Dateisysteme | 314 | ||
5.3 Die allgegenwärtige Virtualisierung | 321 | ||
5.3.1 Virtualisierungslösungen im Überblick | 322 | ||
5.3.2 VMware Workstation als konkretes Beispiel | 323 | ||
5.4 Zusammenfassung | 327 | ||
6 Windows | 328 | ||
6.1 Allgemeine Informationen | 328 | ||
6.1.1 Die verschiedenen Windows-Versionen | 328 | ||
6.1.2 Windows-Dateisysteme | 334 | ||
6.2 Windows im Einsatz | 335 | ||
6.2.1 Die Windows-Benutzeroberfläche | 336 | ||
6.2.2 Die Windows-Konsole | 345 | ||
6.2.3 Die Windows PowerShell | 348 | ||
6.2.4 Windows-Konfiguration | 361 | ||
6.3 Windows-Netzwerkkonfiguration | 368 | ||
6.3.1 Allgemeine Einstellungen | 368 | ||
6.3.2 TCP/IP-Dienstprogramme | 370 | ||
6.3.3 Datei- und Druckserver unter Windows | 373 | ||
6.3.4 Windows-Server | 374 | ||
6.4 Zusammenfassung | 376 | ||
7 Linux | 378 | ||
7.1 Arbeiten mit der Shell | 380 | ||
7.1.1 Booten und Login | 380 | ||
7.1.2 Virtuelle Terminals | 384 | ||
7.1.3 Grundfunktionen der Shell | 385 | ||
7.1.4 Hilfefunktionen | 391 | ||
7.1.5 Pipes und Ein-/Ausgabeumleitung | 395 | ||
7.1.6 Die wichtigsten Systembefehle | 398 | ||
7.2 Konfigurations- und Administrationsaufgaben | 412 | ||
7.2.1 Syslog und Log-Dateien | 412 | ||
7.2.2 Programme automatisch starten | 414 | ||
7.2.3 Software installieren | 416 | ||
7.3 Automatisierung | 418 | ||
7.3.1 Shell-Skripte | 418 | ||
7.3.2 Weitere Hilfsmittel | 422 | ||
7.4 Editoren | 424 | ||
7.4.1 vi | 425 | ||
7.4.2 Emacs | 434 | ||
7.5 Grafische Benutzeroberflächen | 440 | ||
7.5.1 Der X-Server | 440 | ||
7.5.2 Desktops | 441 | ||
7.6 Netzwerkkonfiguration unter Linux | 446 | ||
7.6.1 Grundeinstellungen | 446 | ||
7.6.2 TCP/IP-Dienstprogramme | 448 | ||
7.6.3 Datei- und Druckserver unter Linux | 448 | ||
7.7 Zusammenfassung | 453 | ||
8 Mac OS X | 454 | ||
8.1 Mit Aqua arbeiten | 458 | ||
8.1.1 Die Menüleiste | 459 | ||
8.1.2 Das Dock | 460 | ||
8.1.3 Der Finder | 461 | ||
8.1.4 Exposé und Dashboard | 463 | ||
8.2 Systemkonfiguration | 465 | ||
8.2.1 Besonderheiten der Mac-Dateisysteme | 466 | ||
8.3 Mac OS X-Netzwerkkonfiguration | 467 | ||
8.3.1 Serverdienste unter Mac OS X | 469 | ||
8.4 Zusammenfassung | 470 | ||
9 Grundlagen der Programmierung | 472 | ||
9.1 Die Programmiersprache C | 473 | ||
9.1.1 Das erste Beispiel | 474 | ||
9.1.2 Elemente der Sprache C | 477 | ||
9.1.3 Die C-Standardbibliothek | 496 | ||
9.2 Java | 500 | ||
9.2.1 Grundlegende Elemente der Sprache Java | 502 | ||
9.2.2 Objektorientierte Programmierung mit Java | 507 | ||
9.2.3 Dateizugriffe in Java | 513 | ||
9.3 Perl | 515 | ||
9.3.1 Das erste Beispiel | 517 | ||
9.3.2 Elemente der Sprache Perl | 518 | ||
9.4 Ruby | 529 | ||
9.4.1 Das erste Beispiel | 530 | ||
9.4.2 Ruby-Grundelemente | 532 | ||
9.4.3 Objektorientierung in Ruby | 547 | ||
9.5 Zusammenfassung | 560 | ||
10 Konzepte der Programmierung | 562 | ||
10.1 Algorithmen und Datenstrukturen | 562 | ||
10.1.1 Ein einfaches Praxisbeispiel | 562 | ||
10.1.2 Sortier-Algorithmen | 565 | ||
10.1.3 Such-Algorithmen | 570 | ||
10.1.4 Ausgewählte Datenstrukturen | 572 | ||
10.2 Reguläre Ausdrücke | 577 | ||
10.2.1 Muster für reguläre Ausdrücke | 578 | ||
10.2.2 Programmierung mit regulären Ausdrücken | 582 | ||
10.3 Systemnahe Programmierung | 585 | ||
10.3.1 Prozesse und Pipes | 585 | ||
10.3.2 Threads | 590 | ||
10.4 Einführung in die Netzwerkprogrammierung | 594 | ||
10.4.1 Die Berkeley Socket API | 594 | ||
10.4.2 Ein praktisches Beispiel | 601 | ||
10.4.3 Ein Ruby-Webserver | 605 | ||
10.5 Verteilte Anwendungen mit Java Enterprise Edition | 621 | ||
10.5.1 Enterprise Java Beans (EJB) | 622 | ||
10.5.2 Java Servlets | 628 | ||
10.5.3 Webservices | 629 | ||
10.6 GUI- und Grafikprogrammierung | 631 | ||
10.6.1 Zeichnungen und Grafiken erstellen | 633 | ||
10.6.2 Animation | 639 | ||
10.6.3 Programmierung fensterbasierter Anwendungen | 643 | ||
10.6.4 Java-Applets | 656 | ||
10.7 Zusammenfassung | 658 | ||
11 Software-Engineering | 660 | ||
11.1 Überblick | 661 | ||
11.1.1 Der Entwicklungszyklus | 662 | ||
11.1.2 Planung und Analyse | 663 | ||
11.1.3 Entwurf | 670 | ||
11.1.4 Implementierung und Test | 671 | ||
11.1.5 Dokumentation | 673 | ||
11.1.6 Konkrete Entwicklungsverfahren | 674 | ||
11.2 Werkzeuge | 678 | ||
11.2.1 UML | 678 | ||
11.2.2 Entwurfsmuster | 685 | ||
11.2.3 Unit-Tests | 694 | ||
11.3 Zusammenfassung | 699 | ||
12 Datenbanken | 700 | ||
12.1 Die verschiedenen Datenbanktypen | 701 | ||
12.1.1 Einzeltabellendatenbanken | 703 | ||
12.1.2 Relationale Datenbanken | 704 | ||
12.1.3 Objektorientierte Datenbanken | 712 | ||
12.2 MySQL - ein konkretes RDBMS | 715 | ||
12.2.1 MySQL installieren und konfigurieren | 715 | ||
12.2.2 Erste Schritte mit dem mysql-Client | 719 | ||
12.3 SQL-Abfragen | 720 | ||
12.3.1 Datenbanken und Tabellen erzeugen | 721 | ||
12.3.2 Auswahlabfragen | 725 | ||
12.3.3 Einfüge-, Lösch- und Änderungsabfragen | 729 | ||
12.3.4 Transaktionen | 731 | ||
12.4 MySQL-Administration | 732 | ||
12.4.1 mysqladmin | 733 | ||
12.4.2 Benutzerverwaltung | 733 | ||
12.4.3 Import und Export von Daten, Backups | 739 | ||
12.4.4 Konfigurationsdateien | 742 | ||
12.4.5 Log-Dateien | 743 | ||
12.4.6 Replikation | 745 | ||
12.5 Grundlagen der Datenbankprogrammierung | 747 | ||
12.6 Zusammenfassung | 752 | ||
13 Server für Webanwendungen | 754 | ||
13.1 HTTP im Überblick | 754 | ||
13.1.1 Ablauf der HTTP-Kommunikation | 755 | ||
13.1.2 HTTP-Statuscodes | 759 | ||
13.1.3 HTTP-Header | 762 | ||
13.2 Der Webserver Apache | 766 | ||
13.2.1 Apache im Überblick | 767 | ||
13.2.2 Apache-Module | 769 | ||
13.2.3 Apache installieren | 771 | ||
13.2.4 Apache-Konfiguration | 775 | ||
13.3 PHP installieren und einrichten | 789 | ||
13.3.1 Installation | 790 | ||
13.3.2 Die PHP-Konfigurationsdatei »php.ini« | 794 | ||
13.4 Zusammenfassung | 797 | ||
14 Weitere Internet-Serverdienste | 798 | ||
14.1 Namens- und Verzeichnisdienste | 798 | ||
14.1.1 Der DNS-Server BIND | 798 | ||
14.1.2 Der Verzeichnisdienst OpenLDAP | 805 | ||
14.2 Sonstige Server | 815 | ||
14.2.1 vsftpd, ein FTP-Server | 815 | ||
14.2.2 inetd und xinetd | 817 | ||
14.3 Zusammenfassung | 820 | ||
15 XML | 822 | ||
15.1 Der Aufbau von XML-Dokumenten | 824 | ||
15.1.1 Die grundlegenden Bestandteile von XML-Dokumenten | 824 | ||
15.1.2 Wohlgeformtheit | 833 | ||
15.2 DTDs und XML Schema | 835 | ||
15.2.1 Document Type Definitions (DTDs) | 835 | ||
15.2.2 Namensräume | 847 | ||
15.2.3 XML Schema | 848 | ||
15.3 XSLT | 851 | ||
15.4 Grundlagen der XML-Programmierung | 857 | ||
15.4.1 SAX | 859 | ||
15.4.2 DOM | 867 | ||
15.5 Zusammenfassung | 869 | ||
16 Weitere Datei- und Datenformate | 870 | ||
16.1 Textdateien und Zeichensätze | 870 | ||
16.1.1 Das Problem des Zeilenumbruchs | 871 | ||
16.1.2 Zeichensätze | 874 | ||
16.1.3 Textbasierte Dateiformate | 881 | ||
16.2 Binäre Dateiformate | 884 | ||
16.2.1 Bilddateiformate | 887 | ||
16.2.2 Multimedia-Dateiformate | 892 | ||
16.2.3 Archivdateien verwenden | 894 | ||
16.3 Zusammenfassung | 897 | ||
17 Webseitenerstellung mit (X)HTML und CSS | 900 | ||
17.1 HTML und XHTML | 901 | ||
17.1.1 Die Grundstruktur von HTML-Dokumenten | 902 | ||
17.1.2 Textstrukturierung und Textformatierung | 905 | ||
17.1.3 Listen und Aufzählungen | 912 | ||
17.1.4 Hyperlinks | 915 | ||
17.1.5 Bilder in Webseiten einbetten | 920 | ||
17.1.6 Tabellen | 924 | ||
17.1.7 Formulare | 931 | ||
17.1.8 Einbetten von Multimedia-Dateien | 939 | ||
17.1.9 Meta-Tags und Suchmaschinen | 942 | ||
17.2 Cascading Style Sheets (CSS) | 945 | ||
17.2.1 Platzieren von Stylesheets | 946 | ||
17.2.2 Stylesheet-Wertangaben | 948 | ||
17.2.3 Stylesheet-Eigenschaften | 950 | ||
17.2.4 Layer erzeugen und positionieren | 953 | ||
17.3 Zusammenfassung | 963 | ||
18 Webserveranwendungen | 964 | ||
18.1 PHP | 964 | ||
18.1.1 Sprachgrundlagen | 965 | ||
18.1.2 Klassen und Objekte | 978 | ||
18.1.3 Include-Dateien, Autoloader und Namespaces | 989 | ||
18.1.4 Webspezifische Funktionen | 991 | ||
18.1.5 Zugriff auf MySQL-Datenbanken | 996 | ||
18.1.6 Unit-Tests mit PHPUnit | 1010 | ||
18.2 Ruby on Rails | 1016 | ||
18.2.1 Grundlagen | 1017 | ||
18.2.2 Ein Praxisbeispiel | 1018 | ||
18.3 Weitere Technologien im Überblick | 1030 | ||
18.3.1 Content Management, Weblogs & Co. | 1031 | ||
18.3.2 Blogs und Wikis | 1032 | ||
18.4 Zusammenfassung | 1035 | ||
19 JavaScript und Ajax | 1038 | ||
19.1 JavaScript | 1038 | ||
19.2 JavaScript im HTML-Dokument | 1039 | ||
19.2.1 Erstes Beispiel: Ausgabe ins Dokument | 1040 | ||
19.3 Formulare und Event Handler | 1044 | ||
19.3.1 Erstes Beispiel | 1045 | ||
19.3.2 Zugriff auf Formulare und ihre Elemente | 1046 | ||
19.4 Datums- und Uhrzeit-Funktionen | 1054 | ||
19.4.1 Datums- und Uhrzeit-Methoden | 1055 | ||
19.4.2 Timeout - die JavaScript-»Stoppuhr« | 1056 | ||
19.5 Manipulation von Bildern | 1057 | ||
19.5.1 Erstes Beispiel: Austauschen eines Bildes auf Knopfdruck | 1057 | ||
19.5.2 Vorausladen von Bildern | 1059 | ||
19.5.3 Eine gut funktionierende Rollover-Lösung | 1060 | ||
19.6 Browser- und Fensteroptionen | 1064 | ||
19.6.1 Browser-Eigenschaften | 1064 | ||
19.6.2 Automatische Hyperlinks - History und Location | 1066 | ||
19.6.3 Neue Browserfenster öffnen | 1067 | ||
19.7 DHTML und DOM | 1070 | ||
19.7.1 W3C-DOM im Überblick | 1071 | ||
19.7.2 Eine DOM-Baum-Anzeige | 1074 | ||
19.7.3 DOM-Anwendung in der Praxis | 1077 | ||
19.7.4 Dokumentinhalte verändern und austauschen | 1080 | ||
19.8 Ajax | 1082 | ||
19.8.1 Die erste Ajax-Anwendung | 1082 | ||
19.8.2 Datenaustauschformate: XML und JSON | 1089 | ||
19.8.3 Größeres Beispiel: eine interaktive Länderliste | 1090 | ||
19.9 Zusammenfassung | 1103 | ||
20 Computer- und Netzwerksicherheit | 1106 | ||
20.1 PC-Gefahren | 1107 | ||
20.1.1 Viren und Würmer | 1107 | ||
20.1.2 Trojaner und Backdoors | 1113 | ||
20.1.3 Weitere Schädlinge | 1114 | ||
20.2 Netzwerk- und Serversicherheit | 1120 | ||
20.2.1 Servergefahren | 1120 | ||
20.2.2 Wichtige Gegenmaßnahmen | 1123 | ||
20.2.3 Kryptografie | 1129 | ||
20.3 Zusammenfassung | 1132 |