Глава 1 Как да научим език дълбоко и ефективно 1 1.1 Учене в сравнение 2 Различни езици, различни правила 2 Верни и фалшиви стойности в езиците C и Ruby 3 Верни и фалшиви стойности в Java 3 1.2 Учене от историята 4 Разберете намерението на дизайнера на езика 4 Не знаем кой език да учим 4 Научете какво работи на различни езици 5 1.3 Резюме 6 Глава 2 Историята на раждането на програмните езици 7 2.1 История на раждането на програмните езици 8 Свързващ кабел 8 Вградена програма 9 Фортранският език излезе 10 2.2 Причини за появата на програмните езици 11 Мързел: Една от трите добродетели на един програмист 11 Езиците имат своите удобства 12 2.3 Резюме 13 Глава 3 Раждането на граматиката 15 3.1 Какво е синтаксис 16 Приоритет на оператора 16 Синтаксисът е набор от правила, създадени от дизайнерите на езици.17 3.2 Stack Machine и Fourth Language 17 Процес на изчисляване 18 Как да изразим изчислителния ред 18 Stack Machine 19 все още се използва и до момента 3.3 Синтактично дърво и Lisp език 20 Изчисляване на потока 20 Как да изразим реда на изчисленията 20 Синтактично дърво 21 все още се използва Колона За да потвърдите дали разбирането е правилно, първо трябва да го изразите 23 3.4 Нотация на суфикси 24 Граматичен анализатор 24 Състезание по правила 25 Колона Когато не знаеш какво да учиш 25 3.5 Резюме 26 Глава 4 Контрол на процесите на програмата 27 4.1 Раждането на структурираното програмиране 28 4.2 Преди раждането на изявлението if 28 Защо има ако формулировка 28? Защо има, ако... ELSE изказване 30 4.3 Изявление While - направете многократно изпълняваните if изявления по-кратки 33 Изрази, използващи while твърдения 33 Изрази без използване на while твърдения 34 4.4 За изявление - направете while-то твърдение с нарастваща стойност по-кратко 35 Изрази, използващи за твърдения 35 Изрази, които не се използват за твърдения 35 foreach - контролира операции с цикъл въз основа на обекта, който се обработва 36 4.5 Резюме 37 Глава 5 Функция 39 5.1 Ролята на функциите 40 Лесно за разбиране — като организация 40 Лесен за многократна употреба – точно като части 41 Характеристики на повторната употреба в програмата 41 5.2 Командване за връщане 42 Раждането на функциите 43 Специализирана памет 44 за записване на дестинации за скок Наименование на функции на колони 45 Стек 45 5.3 Рекурсивни повиквания 47 Ефективно боравене с вложени структури 48 Обработка на вложени структури 48 5.4 Резюме 52 Глава 6 Обработка на грешки 53 6.1 Програмите също имат грешки 54 6.2 Как да комуникираме грешка 55 Комуникиране на информация за грешки чрез стойност на връщане 55 Скочи на 58, ако направиш грешка 6.3 Структура на оператора 61 обгръщащ код, който може да е грешен Мнение на Джон Гудинаф 61 Въведен CLU език 62 Въвеждане на езика C++ 62 Представяне на Windows NT 3.1 63 6.4 Изходът изисква само един 64 Защо най-накрая беше въведен 64 Двойна работа без пропуски 64 6.5 Кога да се хвърля изключение 68 Недостатъчни параметри, когато функция се нарича 68 Изход на масива 69 Хвърли изключение 70 веднага след грешка 6.6 Изключение, преминаване 71 Проблем 71 с доставка на изключения Изключения за инспекция за Java език 71 Причини, поради които аномалиите при изследване не се използват широко 73 Колонно конкретно знание и абстрактно знание 73 Обучението на колоните набляга на бавното дъвчене и преглъщане 74 6.7 Резюме 74 Колона Започнете там, където трябва да прочетете 75 Глава 7 Име и обхват 77 7.1 Защо името 78 Как да изберете име 79 Конфликт на имената 80 Как да избегнем конфликт 80 7.2 Еволюция на телескопи 81 Динамичен обхват 82 Статичен обхват 84 7.3 Static Scope Perfect 88 ли е? Обхват на други езици 88 Проблем 89 с вложени функции Повторно свързване на външни телескопи 91 7.4 Резюме 93 Глава 8 Тип 95 8.1 Какво е Тип 96? 8.2 Изрази на стойности включено и изключено 97 Изобретяването на цифровите цифри 97 Седемсегментен цифров лампов дисплей 98 Абакус 99 8.3 Колко крушки са нужни на цифрова цифра 100 От десетична към двоична 100 Октален срещу Hex 102 8.4 Как да изразим реални числа 103 Брой фиксирани точки – позицията на десетичната точка се определя от 103 Число с плаваща запетая – Самата стойност съдържа информация къде започва десетичната част 104 8.5 Защо се среща тип 107 No Жанрови проблеми 107 Тип 108 в ранния език Фортран Кажи на процесорната променлива тип 108 Имплицитно преобразуване на типове 109 8.6 Различно разгръщане на типове 111 Потребителски дефиниран и обектно-ориентиран 112 Тип 112 като характеристика Общи типове, генерични и шаблони 113 Динамичен тип 116 Тип Инференция 118 8.7 Резюме 122 Колона: Овладяйте плана преди да прочетете подробностите 122 Глава 9 Контейнери и струни 125 9.1 Разнообразие от съдове 126 9.2 Защо съществуват различни видове контейнери 127 Масив срещу Свързан списък 127 Силни и слаби страни на свързаните списъци 130 Колона Big O Нотация – Кратко изразяване на връзката между изчислителното време и данни Том 131 Разлики в езика 132 9.3 Речници, хешове и асоциативни масиви 132 Хеш лист 133 Дърво 134 Време за четене на елемента 136 Няма универсален контейнер 138 9.4 Какво е Герой 139? Набори от знаци и как се кодират символите 139 Кодиране 140 преди появата на компютрите Кодирането на символи на EDSAC е 142 Епоха ASCII и EBCDIC ера 142 Японски код 144 shift_jis кодиране нарушава програмата 145 Магически анотатор 147 Unicode въвежда унифициран 148 9.5 Какво е String 150? Паскални низове с информация за дължината и C низове без тази информация 150 1 символ е 16 бита от Java езиков низ 153 Промяна в дизайна, въведена в python 3 153 Предизвикателство 154 за Ruby 1.9 9.6 Резюме 155 Глава 10 Паралелна обработка 157 10.1 Какво е паралелна обработка 158 10.2 Подразделение преди 158 10.3 Редуване на два метода 159 Режим на съвместна многозадачност – редувайте 159 на съответния възел Режим на преемптивна мултитаскинг - алтернатива на 160 след определено време 10.4 Как да избегнете състезателно състояние 160 Три условия за установяване на състезателни условия 161 Без споделяне - процес и актьорен модел 162 Без модификации - const, val, immutable 164 Няма намеса 164 10.5 Проблеми и контрамерки на шлюзове 166 Проблем с ключалки 166 Разреши 167 с помощта на транзакционна памет История на транзакционната памет 168 Транзакционната памет успява 169 10.6 Резюме 170 Глава 11 Обекти срещу класове 171 11.1 Какво е обектно-ориентирано 172 Обектно-ориентираните конотации варират според езика 172 Обектът е реален модел 174 Какво е клас 175? 11.2 Методи за моделиране на агрегационни променливи и функции 175 11.3 Метод 1: Модул, Пакет 176 Какво е модул, пакет 176 Обект за проектиране на пакети 177 в Perl Само модулите не са достатъчни, 178 Запази данните отделно 179 Подайте различен хеш 179 към параметъра Поставете процеса на инициализация също в пакет 180 Свързване на хешове и пакети заедно 181 11.4 Метод 2: Въведете функцията също в хеша 183 Първи клас 183 Поставете функцията в хеш 184 Създай няколко брояча 185 Поставих споделени атрибути в прототипа 186 Това обектно-ориентиран 189 ли е? 11.5 Метод 3: Затваряне 190 Какво е затваряне 190? Защо се нарича затваряне 191? 11.6 Метод 4: Клас 191 Клас 192, замислен от Хол Клас 192 на езика C++ Ролята на описанията на функциите 193 Трите основни функции на клас 193 11.7 Резюме 194 Глава 12 Наследяване и повторна употреба на кода 195 12.1 Какво е наследство 196? Наследяване на различни стратегии за прилагане 197 Наследството е двуостър меч 199 Принцип на препитание на Рихтер 199 12.2 Множествена наследственост 201 Нещо е в множество класификации 201 Множественото наследяване е много удобно за реализиране на повторно използване на режим 202 12.3 Проблемът с множественото наследяване – все още има конфликт 203 Заобиколно решение 1: Деактивирайте множествено наследяване 205 Заобиколно решение 2: Търсене на 207 последователно Решение 3: Смесена обработка 211 Заобиколно решение 4: черта 213 12.4 Резюме 216 Колона глава по глава от нулата 217
Връзки:https://pan.baidu.com/s/1PN5Kicx4DdUgFOYQfr1yzQ&shfl=sharesetКод за извличане:Туристи, ако искате да видите скритото съдържание на този пост, моля Отговор
|