Einführung in Perl-Objekte, Referenzen & Module:
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Buch |
Sprache: | German English |
Veröffentlicht: |
Beijing [u.a.]
O'Reilly
2004
|
Ausgabe: | Dt. Ausg., 1. Aufl. |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XVII, 229 S. Ill., graph. Darst. |
ISBN: | 3897211491 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV017640451 | ||
003 | DE-604 | ||
005 | 20121115 | ||
007 | t | ||
008 | 031104s2004 gw ad|| |||| 00||| ger d | ||
016 | 7 | |a 969180454 |2 DE-101 | |
020 | |a 3897211491 |9 3-89721-149-1 | ||
035 | |a (OCoLC)76543120 | ||
035 | |a (DE-599)BVBBV017640451 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 1 | |a ger |h eng | |
044 | |a gw |c DE | ||
049 | |a DE-29T |a DE-573 |a DE-19 |a DE-523 |a DE-11 | ||
084 | |a ST 250 |0 (DE-625)143626: |2 rvk | ||
084 | |a 004 |2 sdnb | ||
100 | 1 | |a Schwartz, Randal L. |d 1961- |e Verfasser |0 (DE-588)120327996 |4 aut | |
240 | 1 | 0 | |a Learning Perl objects, references & modules |
245 | 1 | 0 | |a Einführung in Perl-Objekte, Referenzen & Module |c Randal L. Schwartz mit Tom Phoenix |
246 | 1 | 3 | |a Einführung in Perl Objekte, Referenzen und Module |
250 | |a Dt. Ausg., 1. Aufl. | ||
264 | 1 | |a Beijing [u.a.] |b O'Reilly |c 2004 | |
300 | |a XVII, 229 S. |b Ill., graph. Darst. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 0 | 7 | |a Perl |g Programmiersprache |0 (DE-588)4307836-9 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Objektorientierte Programmierung |0 (DE-588)4233947-9 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Modulare Programmierung |0 (DE-588)4120756-7 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Perl |g Programmiersprache |0 (DE-588)4307836-9 |D s |
689 | 0 | |5 DE-604 | |
689 | 1 | 0 | |a Perl |g Programmiersprache |0 (DE-588)4307836-9 |D s |
689 | 1 | 1 | |a Objektorientierte Programmierung |0 (DE-588)4233947-9 |D s |
689 | 1 | |5 DE-604 | |
689 | 2 | 0 | |a Perl |g Programmiersprache |0 (DE-588)4307836-9 |D s |
689 | 2 | 1 | |a Objektorientierte Programmierung |0 (DE-588)4233947-9 |D s |
689 | 2 | 2 | |a Modulare Programmierung |0 (DE-588)4120756-7 |D s |
689 | 2 | |5 DE-604 | |
700 | 1 | |a Phoenix, Tom |e Verfasser |0 (DE-588)123176123 |4 aut | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=010609699&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-010609699 |
Datensatz im Suchindex
_version_ | 1804130387888177152 |
---|---|
adam_text | Titel: Einführung in Perl-Objekte, Referenzen Module
Autor: Schwartz, Randal L.
Jahr: 2004
Inhalt
Vorwort von Damian Conway........................................... XI
Vorwort ......................................................... XIII
Einleitung..........................................................1
Was sollten Sie bereits wissen?......................................... 2
Warum so viele Fußnoten?............................................ 2
Wozu die Übungen?................................................. 3
Was ist zu beachten, wenn Sie einen Perl-Kurs leiten?....................... 3
Größere Programme schreiben ..........................................5
Die Lösung für häufig benutzten Code...................................5
Code einbinden mit eval..............................................6
Die Benutzung von do ...............................................7
Die Benutzung von require............................................9
require und @INC .................................................11
Probleme mit der Kollision von Namensräumen..........................13
Packages zum Trennen von Namensräumen .............................15
Der Geltungsbereich einer Package-Direktive ............................16
Packages und lexikalische Variablen ...................................17
Übungen.........................................................18
Einführung in Referenzen .............................................19
Dieselbe Aufgabe für mehrere Arrays ausführen ..........................19
Eine Referenz auf ein Array anlegen....................................21
Eine Arrayreferenz dereferenzieren.....................................22
Die geschweiften Klammern weglassen .................................24
Das Array modifizieren..............................................24
Verschachtelte Datenstrukturen.......................................25
V
Verschachtelte Referenzen auf Elemente mit der Pfeilnotation vereinfachen.....27
Referenzen auf Hashes ..............................................29
Übungen.........................................................31
Referenzen und Geltungsbereiche.......................................33
Mehr als eine Referenz auf Daten......................................33
Wie war doch gleich der Name?.......................................34
Referenzzähler und verschachtelte Datenstrukturen .......................35
Wenn der Referenzzähler nicht funktioniert .............................37
Anonyme Arrays direkt anlegen.......................................39
Anonyme Hashes anlegen............................................42
Automatisches Erzeugen von Variablen (Autovivification) ..................44
Selbsterzeugung und Hashes .........................................46
Übungen.........................................................48
Komplexe Datenstrukturen manipulieren..................................51
Die Benutzung des Debuggers zum Betrachten komplexer Daten.............51
Komplexe Datenstrukturen mit Data:. Dumper betrachten ..................56
Komplexe Datenstrukturen mit Storable dauerhaft speichern................58
Die Operatoren map und grep ........................................60
Die Verwendung von map ...........................................62
Absichtliche Umwege...............................................63
Komplexe Daten auswählen und verändern..............................65
Übungen.........................................................66
Referenzen auf Subroutinen ...........................................69
Eine Referenz auf eine benannte Subroutine anlegen.......................69
Anonyme Subroutinen ..............................................74
Callbacks.........................................................76
Closures .........................................................77
Zurückgeben einer Subroutine aus einer Subroutine.......................78
Closure-Variablen als Eingaben .......................................82
Closure-Variablen als statische lokale Variablen ..........................82
Übung...........................................................84
Praktische Tricks mit Referenzen ........................................87
Rückblick auf das Sortieren ..........................................87
Sortierung mit Indizes...............................................88
Effizientes Sortieren ................................................90
Die Schwartzsche Transformation .....................................91
Rekursiv definierte Daten............................................92
Inhalt
Rekursiv definierte Daten anlegen .....................................93
Rekursiv definierte Daten darstellen....................................96
Übungen.........................................................97
8 Objekte - eine Einführung.............................................99
Wenn wir mit den Tieren sprechen könnten..............................100
Die Pfeilnotation für Methodenaufrufe ................................101
Zusätzliche Parameter für Methodenaufrufe ............................102
Eine zweite Methode aufrufen, um die Dinge zu vereinfachen ..............103
Anmerkungen zu @1SA ............................................104
Methoden überschreiben ...........................................105
Die Suche von einem anderen Ort aus beginnen .........................108
Eine SUPER Möglichkeit, die Dinge zu erledigen.........................108
Die Verwendung von @_...........................................109
Der Stand der Dinge...............................................109
Übungen........................................................110
9 Objekte mit Daten..................................................111
Ein Pferd ist immer ein Pferd - oder etwa nicht?.........................111
Eine Instanzmethode aufrufen.......................................112
Auf Instanzdaten zugreifen..........................................113
Wie man ein Pferd erschafft.........................................114
Den Konstruktor vererben ..........................................11.5
Methoden anlegen, die für Klassen und Instanzen
gleichermaßen funktionieren ........................................115
Parameter an eine Methode übergeben ................................116
Mehr interessante Instanzen.........................................117
Ein andersfarbiges Pferd............................................118
Den Einsatz wieder herausbekommen.................................119
Lassen Sie den Deckel zu ...........................................120
Schnellere Getter und Setter.........................................121
Getter, die gleichzeitig Setter sind ....................................122
Eine Methode auf Klassen oder Instanzen beschränken....................122
Übung..........................................................123
10 Destruktoren für Objekte.............................................125
Ein totes Pferd schlagen ............................................ 130
Indirekte Objektsyntax............................................. 131
Unterklassen mit zusätzlichen Instanzvariablen.......................... 133
Klassenvariablen benutzen.......................................... 135
Das Argument »abschwächen«....................................... 136
Übung.......................................................... 138
Inhalt I VII
11 Fortgeschrittene Objekttechniken ......................................141
UNIVERSAL-Methoden............................................141
Ihre Objekte auf gutes Benehmen überprüfen ...........................142
AUTOLOAD als letztes Mittel.......................................143
Die Verwendung von AUTOLOAD für Zugriffsmethoden .................145
Getter und Setter leichter anlegen.....................................146
Mehrfache Vererbung..............................................148
Referenzen auf Dateihandies.........................................148
Übung..........................................................151
12 Module..........................................................153
Beispiel für funktionsorientierte Schnittstellen: File::Basename..............153
Auswählen, was importiert werden soll ................................154
Beispiel für objektorientierte Schnittstellen: File::Spec.....................155
Ein etwas typischeres objektorientiertes Modul: Math::BigInt ..............156
Der Unterschied zwischen OO- und Nicht-OO-Modulen..................156
Die Arbeitsweise von use ...........................................156
Den Pfad zur richtigen Zeit setzen ....................................158
Importieren mit Exporter...........................................160
©EXPORT und @EXPORT_OK.....................................160
Exporte bei einem primär objektorientierten Modul ......................162
Eigene Importroutinen .............................................164
Übung..........................................................165
13 Das Erstellen einer Distribution ........................................167
Einführung in h2xs................................................168
Die Schablonendateien unter der Lupe.................................168
Der Modul-Prototyp...............................................171
Eingebettete Dokumentation ........................................173
Kontrolle der Distribution mit Makefile.PL .............................177
Alternative Installationsorte (PREFIX=...) ..............................178
Einfaches make test................................................179
Einfaches make install..............................................181
Einfaches make dist ...............................................181
Einen anderen Speicherort für die Bibliothek verwenden...................182
Übung..........................................................183
14 Wichtige Tests.....................................................185
Die Arbeitsweise der Testumgebung ..................................187
Tests mit Test::Simple schreiben .....................................188
Tests schreiben mit Test::More ......................................190
VIII Inhalt
Konditionale Tests ................................................194
Komplexere Tests (mehrere Test-Skripten) .............................195
Dinge testen, die nach STDOUT oder nach STDERR schreiben.............195
Übung..........................................................196
15 Ihr Beitrag zum CPAN ...............................................197
Das Comprehensive Perl Archive Network .............................197
Die nötigen Vorbereitungen.........................................198
Ihre Distribution vorbereiten ........................................199
Ihre Distribution hochladen.........................................200
Das Modul ankündigen ............................................200
Das Testen auf verschiedenen Plattformen..............................201
Schreiben Sie einen Artikel oder halten Sie einen Vortrag..................201
Übung..........................................................201
Anhang: Antworten zu den Übungen....................................203
Index ...........................................................221
Inhalt
|
any_adam_object | 1 |
author | Schwartz, Randal L. 1961- Phoenix, Tom |
author_GND | (DE-588)120327996 (DE-588)123176123 |
author_facet | Schwartz, Randal L. 1961- Phoenix, Tom |
author_role | aut aut |
author_sort | Schwartz, Randal L. 1961- |
author_variant | r l s rl rls t p tp |
building | Verbundindex |
bvnumber | BV017640451 |
classification_rvk | ST 250 |
ctrlnum | (OCoLC)76543120 (DE-599)BVBBV017640451 |
discipline | Informatik |
edition | Dt. Ausg., 1. Aufl. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>02106nam a2200505 c 4500</leader><controlfield tag="001">BV017640451</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20121115 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">031104s2004 gw ad|| |||| 00||| ger d</controlfield><datafield tag="016" ind1="7" ind2=" "><subfield code="a">969180454</subfield><subfield code="2">DE-101</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">3897211491</subfield><subfield code="9">3-89721-149-1</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)76543120</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV017640451</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakddb</subfield></datafield><datafield tag="041" ind1="1" ind2=" "><subfield code="a">ger</subfield><subfield code="h">eng</subfield></datafield><datafield tag="044" ind1=" " ind2=" "><subfield code="a">gw</subfield><subfield code="c">DE</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-29T</subfield><subfield code="a">DE-573</subfield><subfield code="a">DE-19</subfield><subfield code="a">DE-523</subfield><subfield code="a">DE-11</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 250</subfield><subfield code="0">(DE-625)143626:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">004</subfield><subfield code="2">sdnb</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Schwartz, Randal L.</subfield><subfield code="d">1961-</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)120327996</subfield><subfield code="4">aut</subfield></datafield><datafield tag="240" ind1="1" ind2="0"><subfield code="a">Learning Perl objects, references & modules</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Einführung in Perl-Objekte, Referenzen & Module</subfield><subfield code="c">Randal L. Schwartz mit Tom Phoenix</subfield></datafield><datafield tag="246" ind1="1" ind2="3"><subfield code="a">Einführung in Perl Objekte, Referenzen und Module</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">Dt. Ausg., 1. Aufl.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Beijing [u.a.]</subfield><subfield code="b">O'Reilly</subfield><subfield code="c">2004</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XVII, 229 S.</subfield><subfield code="b">Ill., graph. Darst.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Perl</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4307836-9</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Objektorientierte Programmierung</subfield><subfield code="0">(DE-588)4233947-9</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Modulare Programmierung</subfield><subfield code="0">(DE-588)4120756-7</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Perl</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4307836-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="1" ind2="0"><subfield code="a">Perl</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4307836-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="1"><subfield code="a">Objektorientierte Programmierung</subfield><subfield code="0">(DE-588)4233947-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="2" ind2="0"><subfield code="a">Perl</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4307836-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="2" ind2="1"><subfield code="a">Objektorientierte Programmierung</subfield><subfield code="0">(DE-588)4233947-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="2" ind2="2"><subfield code="a">Modulare Programmierung</subfield><subfield code="0">(DE-588)4120756-7</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="2" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Phoenix, Tom</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)123176123</subfield><subfield code="4">aut</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=010609699&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-010609699</subfield></datafield></record></collection> |
id | DE-604.BV017640451 |
illustrated | Illustrated |
indexdate | 2024-07-09T19:20:14Z |
institution | BVB |
isbn | 3897211491 |
language | German English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-010609699 |
oclc_num | 76543120 |
open_access_boolean | |
owner | DE-29T DE-573 DE-19 DE-BY-UBM DE-523 DE-11 |
owner_facet | DE-29T DE-573 DE-19 DE-BY-UBM DE-523 DE-11 |
physical | XVII, 229 S. Ill., graph. Darst. |
publishDate | 2004 |
publishDateSearch | 2004 |
publishDateSort | 2004 |
publisher | O'Reilly |
record_format | marc |
spelling | Schwartz, Randal L. 1961- Verfasser (DE-588)120327996 aut Learning Perl objects, references & modules Einführung in Perl-Objekte, Referenzen & Module Randal L. Schwartz mit Tom Phoenix Einführung in Perl Objekte, Referenzen und Module Dt. Ausg., 1. Aufl. Beijing [u.a.] O'Reilly 2004 XVII, 229 S. Ill., graph. Darst. txt rdacontent n rdamedia nc rdacarrier Perl Programmiersprache (DE-588)4307836-9 gnd rswk-swf Objektorientierte Programmierung (DE-588)4233947-9 gnd rswk-swf Modulare Programmierung (DE-588)4120756-7 gnd rswk-swf Perl Programmiersprache (DE-588)4307836-9 s DE-604 Objektorientierte Programmierung (DE-588)4233947-9 s Modulare Programmierung (DE-588)4120756-7 s Phoenix, Tom Verfasser (DE-588)123176123 aut HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=010609699&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Schwartz, Randal L. 1961- Phoenix, Tom Einführung in Perl-Objekte, Referenzen & Module Perl Programmiersprache (DE-588)4307836-9 gnd Objektorientierte Programmierung (DE-588)4233947-9 gnd Modulare Programmierung (DE-588)4120756-7 gnd |
subject_GND | (DE-588)4307836-9 (DE-588)4233947-9 (DE-588)4120756-7 |
title | Einführung in Perl-Objekte, Referenzen & Module |
title_alt | Learning Perl objects, references & modules Einführung in Perl Objekte, Referenzen und Module |
title_auth | Einführung in Perl-Objekte, Referenzen & Module |
title_exact_search | Einführung in Perl-Objekte, Referenzen & Module |
title_full | Einführung in Perl-Objekte, Referenzen & Module Randal L. Schwartz mit Tom Phoenix |
title_fullStr | Einführung in Perl-Objekte, Referenzen & Module Randal L. Schwartz mit Tom Phoenix |
title_full_unstemmed | Einführung in Perl-Objekte, Referenzen & Module Randal L. Schwartz mit Tom Phoenix |
title_short | Einführung in Perl-Objekte, Referenzen & Module |
title_sort | einfuhrung in perl objekte referenzen module |
topic | Perl Programmiersprache (DE-588)4307836-9 gnd Objektorientierte Programmierung (DE-588)4233947-9 gnd Modulare Programmierung (DE-588)4120756-7 gnd |
topic_facet | Perl Programmiersprache Objektorientierte Programmierung Modulare Programmierung |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=010609699&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT schwartzrandall learningperlobjectsreferencesmodules AT phoenixtom learningperlobjectsreferencesmodules AT schwartzrandall einfuhrunginperlobjektereferenzenmodule AT phoenixtom einfuhrunginperlobjektereferenzenmodule AT schwartzrandall einfuhrunginperlobjektereferenzenundmodule AT phoenixtom einfuhrunginperlobjektereferenzenundmodule |