Kapitel 1 Hur man lär sig ett språk djupt och effektivt 1 1.1 Lärande i jämförelse 2 Olika språk, olika regler 2 Sanna och falska värden i C- och Ruby-språken 3 Sanna och falska värden i Java 3 1.2 Att lära sig av historien 4 Förstå syftet med språkdesignern 4 Vi vet inte vilket språk vi ska lära oss 4 Lär dig vad som fungerar i flera olika språk 5 1.3 Sammanfattning 6 Kapitel 2 Historien om programmeringsspråkens födelse 7 2.1 Historien om programmeringsspråkens födelse 8 Anslutningskabel 8 Inbyggt program 9 Fortran-språket kom ut som nummer 10 2.2 Orsaker till framväxten av programmeringsspråk 11 Lathet: En av de tre dygderna hos en programmerare 11 Språk har sina egna bekvämligheter 12 2.3 Sammanfattning 13 Kapitel 3 Grammatikens födelse 15 3.1 Vad är syntax 16 Operatörsprioritet 16 Syntax är en regeluppsättning av språkdesigners 17 3.2 Stackmaskin och fjärde språk 17 Beräkningsprocess 18 Hur man uttrycker beräkningsordning 18 Stack Machine 19 används fortfarande nu 3.3 Syntaxträd och Lispspråk 20 Beräkna flöde 20 Hur man uttrycker ordningen på beräkningar 20 Syntaxträd 21 används fortfarande Kolumn För att bekräfta om förståelsen är korrekt måste du först uttrycka den 23 3.4 Suffixnotation 24 Grammatikanalysator 24 Tävling enligt regler 25 Kolumn när du inte vet vad du ska studera 25 3.5 Sammanfattning 26 Kapitel 4 Processkontroll av programmet 27 4.1 Födelsen av strukturerad programmering 28 4.2 Före if-påståendets födelse 28 Varför finns det ett if-uttalande 28? Varför finns det om... else-uttalande 30 4.3 Medan påstående - gör upprepade gånger utförda om påståenden mer koncisa 33 Uttryck som använder while-satser 33 Uttryck utan att använda while-satser 34 4.4 För påstående – gör while-uttalandet med ökande värde mer koncist 35 Uttryck som används för satser 35 Uttryck som inte används för satser 35 Foreach - styr loopoperationer baserade på objektet som bearbetas 36 4.5 Sammanfattning 37 Kapitel 5 Funktion 39 5.1 Funktionen 40 Lätt att förstå – som en organisation 40 Lätt att återanvända – precis som delar 41 Egenskaper för återanvändning i program 41 5.2 Återvändande kommando 42 Funktionernas födelse 43 Dedikerat minne 44 för inspelning av hoppdestinationer Kolumnfunktion namngivning 45 Stack 45 5.3 Rekursiva läten 47 Effektiv hantering av nästlade strukturer 48 Hantering av nästlade strukturer 48 5.4 Sammanfattning 52 Kapitel 6 Felhantering 53 6.1 Program har också fel 54 6.2 Hur man kommunicerar fel 55 Kommunicera felinformation via returvärde 55 Hoppa till 58 om du gör ett misstag 6.3 Satsstruktur 61 som omsluter kod som kan vara fel John Goodenoughs yttrande 61 CLU-språket 62 introducerades Introduktion av C++-språket 62 Introduktion av Windows NT 3.1 63 6.4 Utgång kräver bara en 64 Varför 64 slutligen introducerades Parvis operation utan utelämnanden 64 6.5 När man ska kasta ett undantag 68 Otillräckliga parametrar när en funktion kallas 68 Array outbounds 69 Kasta ett undantag 70 direkt efter ett fel 6.6 Undantag passerar 71 Problem 71 med undantagsleverans Inspektionsundantag för Java Language 71 Anledningar till att undersökningsavvikelser inte är allmänt använda 73 Kolumnkonkret kunskap och abstrakt kunskap 73 Kolumninlärning betonar långsamt tuggande och sväljning 74 6.7 Sammanfattning 74 Kolumnstart där du behöver läsa 75 Kapitel 7 Namn och omfattning 77 7.1 Varför namnet 78 Hur man väljer ett namn 79 Namnkonflikt 80 Hur man undviker konflikt 80 7.2 Utvecklingen av Scopes 81 Dynamisk Scope 82 Statisk Scope 84 7.3 Är statiskt teleskop perfekt 88? Omfattning i andra språk 88 Problem 89 med nästlade funktioner Ombindning av externa scopes 91 7.4 Sammanfattning 93 Kapitel 8 Typ 95 8.1 Vad är Typ 96? 8.2 Uttryck för på- och av-värden 97 Uppfinningen av digitala siffror 97 Sju-segments digital rörsdisplay 98 Abakus 99 8.3 Hur många glödlampor behövs på en digital siffra 100 Från decimal till binär 100 Oktal vs. Hex 102 8.4 Hur man uttrycker reella tal 103 Antal fixpunkter – decimalpunktens position bestäms av 103 Flyttal – Själva värdet innehåller information om var decimaldelen börjar 104 8.5 Varför Typ 107 förekommer Inga genreproblem 107 Typ 108 i det tidiga fortranspråket Säg till processorvariabeln typ 108 Implicit typkonvertering 109 8.6 Olika utvecklingar av typ 111 Användardefinierad och objektorienterad 112 Typ 112 som funktion Generiska typer, generika och mallar 113 Dynamisk Typ 116 Typinferens 118 8.7 Sammanfattning 122 Kolumn Mastera dispositionen innan du läser detaljerna 122 Kapitel 9 Behållare och strängar 125 9.1 Variation av behållare 126 9.2 Varför olika typer av behållare finns 127 Array vs. Linked List 127 Styrkor och svagheter för länkade listor 130 Kolumn Big O-notation – kortfattad beskrivning av sambandet mellan beräkningstid och datavolym 131 Skillnader i språk 132 9.3 Ordböcker, hashar och associativa matriser 132 Hashlista 133 Träd 134 Elementets lästid 136 Det finns ingen universallåda 138 9.4 Vad är Karaktär 139? Teckenuppsättningar och hur tecken kodas 139 Kodning 140 före datorernas födelse EDSAC:s teckenkodning är 142 ASCII-eran och EBCDIC-eran 142 Japansk kod 144 shift_jis kodning bryter programmet 145 Magisk Annotatör 147 Unicode ger enhetlig 148 9.5 Vad är String 150? Pascalsträngar med längdinformation och C-strängar utan denna information 150 1 tecken är 16 bitar av Java-språksträngen 153 Designförändring introducerad i Python 3 153 Utmaning 154 för Ruby 1.9 9.6 Sammanfattning 155 Kapitel 10 Parallell bearbetning 157 10.1 Vad är parallell bearbetning 158 10.2 Underavdelning före 158 10.3 Att växla mellan två metoder 159 Samarbetsinriktat multitaskingläge – alternativ 159 vid rätt nod Preemptivt multitasking-läge – växla 160 grader efter en viss tid 10.4 Hur man undviker tävlingsvillkor 160 Tre villkor för att fastställa tävlingsvillkor 161 Ingen delning – process och aktörmodell 162 Inga modifieringar – const, val, immutable 164 Ingen intervention 164 10.5 Problem och motåtgärder för slussar 166 Problem med lås 166 Resolve 167 med hjälp av transaktionsminne Historien om transaktionsminne 168 Transaktionsminne ersätter 169 10.6 Sammanfattning 170 Kapitel 11 Objekt vs. Klasser 171 11.1 Vad är objektorienterat 172 Objektorienterade konnotationer varierar mellan språk 172 Objektet är en verklig modell 174 Vad är klass 175? 11.2 Metoder för modellering av aggregeringsvariabler och funktioner 175 11.3 Metod 1: Modul, Paket 176 Vad är en modul, paket 176 Paketdesignobjekt 177 i Perl Moduler räcker inte 178 Spara data separat 179 Skicka en annan hash 179 till parametern Lägg även initialiseringsprocessen i paket 180 Binda ihop hashar och paket 181 11.4 Metod 2: Lägg funktionen i hashen också 183 Första klass 183 Lägg funktionen i hashen 184 Skapa flera räknare 185 Lade in delade attribut i prototyp 186 Är detta objektorienterat 189? 11.5 Metod 3: Stängning 190 Vad är avstängning 190? Varför kallas det avslutning 191? 11.6 Metod 4: Klass 191 Klass 192 som Hall hade tänkt sig Klass 192 i C++-språket Funktionen Beskrivningars roll 193 De tre huvudsakliga funktionerna för klass 193 11.7 Sammanfattning 194 Kapitel 12 Arv och återanvändning av kod 195 12.1 Vad är arv 196? Att ärva olika implementeringsstrategier 197 Arv är ett tveeggat svärd 199 Richters försörjningsprincip 199 12.2 Flerföldare successioner 201 En sak finns i flera klassificeringar 201 Flerföld arv är mycket bekvämt för att implementera mode reuse 202 12.3 Problemet med flerföldig arv – det finns fortfarande konflikt 203 Arbetslösning 1: Inaktivera multipel arv 205 Arbetslösning 2: Sök i 207 sekventiellt Arbetslösning 3: Blandad bearbetning 211 Arbetslösning 4: egenskap 213 12.4 Sammanfattning 216 Kolumn kapitel för kapitel från grunden 217
Länkar:https://pan.baidu.com/s/1PN5Kicx4DdUgFOYQfr1yzQ&shfl=sharesetExtraktionskod:Turister, om ni vill se det dolda innehållet i detta inlägg, snälla Svar
|