Biblioteka Publiczna

w Dzielnicy BIAŁOŁĘKA m.st. Warszawy

book
book

Sztuka dobrego programowania

Autor: Jassem, Krzysztof




Książka jest przeznaczona jest dla programistów, którzy chcą, aby ich programy działały dobrze, czyli szybko zwracały wyniki, zużywały mało pamięci i obejmowały szeroki zakres danych wejściowych. Programista początkujący znajdzie tutaj wyjaśnienia podstawowych elementów języka C, a czytelnik zaawansowany dowie się, jak może udoskonalić swój warsztat.

Czytelnik tej książki

nauczy się pisać funkcje działające oszczędnie i wydajnie, np. funkcję, która znajduje liczby pierwsze 56 razy większe niż przykłady podawane w standardowych kursach programowania, a przy tym czyni to 7 razy szybciej.Dowie się, jak poprawnie tworzyć programy sterowane argumentami wywołania. Nauczy się, jak zautomatyzować proces budowania programów złożonych. Będzie potrafił przetwarzać wyrażenia regularne, czy też stworzyć interpreter poleceń podanych w języku naturalnym.
Stanie się dobrym programistą.

Zobacz pełny opis
Odpowiedzialność:Krzysztof Jassem, Andrzej Ziemkiewicz.
Hasła:C (język programowania)
Programowanie (informat.)
Podręczniki
Adres wydawniczy:Warszawa : Wydawnictwo Naukowe PWN, 2016.
Opis fizyczny:235 s. : il. ; 24 cm.
Uwagi:Bibliogr. przy rozdz. Indeks.
Powiązane zestawienia:Informatyka (programowanie)
Skocz do:Inne pozycje tego autora w zbiorach biblioteki
Dodaj recenzje, komentarz
Spis treści:

  1. Przygotowanie środowiska pracy
  2. Instalacja systemu Linux
  3. Pobranie OpenSUSE
  4. Przygotowanie instalacji
  5. Instalacja
  6. Uruchamianie programów
  7. Edycja kodu źródłowego
  8. Przejście do trybu tekstowego
  9. Skompilowanie programu
  10. Uruchomienie programu
  11. Polecane źródła w Internecie
  12. Część I
  13. Lekcja 1. Optymalizowanie funkcji
  14. Elementy matematyki
  15. Podstawy języka C
  16. Program, instrukcja
  17. Komentarze
  18. Identyfikatory
  19. Słowa kluczowe
  20. Białe znaki
  21. Podstawowe typy numeryczne
  22. Zmienne i operator przypisania
  23. Operatory
  24. Instrukcja warunkowa
  25. Instrukcje pętli
  26. Pętla while
  27. Pętla do while
  28. Pętla for
  29. Funkcje
  30. Funkcje rekurencyjne
  31. Rozwiązanie zadania
  32. Krok 1. Pierwsze zadanie pomocnicze
  33. Krok 2. Rachunki matematyczne
  34. Krok 3. Drugie zadanie pomocnicze
  35. Krok 4. Uogólnienie rachunków
  36. Krok 5. Pierwsza wersja kodu funkcji rozwiązującej zadanie
  37. Krok 6. Dodanie warunku zakończenia rekurencji
  38. Krok 7. Optymalizacja liczby operacji
  39. Krok 8. Optymalizacja liczby zmiennych
  40. Krok 9. Usunięcie rekurencji
  41. Krok 10. Sprawdzenie poprawności argumentów
  42. Wnioski
  43. Polecane źródła w Internecie
  44. Lekcja 2. Działania na bitach
  45. Sito Eratostenesa
  46. Podstawy Języka C
  47. Operacje na bitach
  48. Operacja and
  49. Operacja or
  50. Operacja xor
  51. Operacja not
  52. Przesunięcie bitowe w lewo
  53. Przesunięcie bitowe w prawo
  54. Rzutowanie
  55. Dyrektywy preprocesora
  56. Tablice
  57. Adresy zmiennych
  58. Wskaźniki
  59. Wskaźniki a tablice
  60. Alokowanie pamięci dla tablicy
  61. Rozwiązanie zadania
  62. Krok 1. Podejście standardowe
  63. Krok 2. Zmniejszenie liczby operacji
  64. Krok 3. Oszczędność pamięci
  65. Krok 4. Poprawa efektywności algorytmu
  66. Wnioski
  67. Polecane źródła w Internecie
  68. Podstawy informatyki
  69. Lekcja 3. Alokowanie pamięci
  70. Podstawy języka C
  71. Funkcja malloc()
  72. Funkcja calloc()
  73. Funkcja realloc()
  74. Funkcja free()
  75. Przykład zarządzania pamięcią
  76. Zmienne automatyczne i statyczne
  77. Rozwiązanie zadania
  78. Wnioski
  79. Polecane źródła w Internecie
  80. Część II
  81. Lekcja 4. Program główny
  82. Podstawy języka C
  83. Funkcja main()
  84. Funkcja exit ()
  85. Standardowe strumienie wejścia i wyjścia
  86. Napisy
  87. Konwersja napisu do liczby
  88. Rozwiązanie zadania
  89. Krok 1. Zadanie pomocnicze
  90. Krok 2. Unikanie prostych błędów
  91. Krok 3. Zastosowanie nazwy programu
  92. Krok 4. Obsługa opcji
  93. Krok 5. Wyświetlenie komunikatu o błędzie
  94. Krok 6. Zastosowanie zmiennych środowiskowych
  95. Wnioski
  96. Polecane źródła w Internecie
  97. Lekcja 5. Przetwarzanie opcji
  98. Podstawy języka C
  99. Przekazywanie argumentów funkcji
  100. Instrukcja wielokrotnego wyboru: switch
  101. Standardowe opcje programu
  102. Rozwiązanie zadania
  103. Wnioski
  104. Polecane źródła w Internecie
  105. Lekcja 6. Przetwarzanie parametrów wejściowych - plików
  106. Podstawy języka C
  107. Odczyt i zapis do pliku
  108. Trój argumentowy operator warunkowy
  109. Sterowanie preprocesorem
  110. Prototyp funkcji
  111. Atrybut extern
  112. Kompilacja programu
  113. Rozwiązanie zadania
  114. Krok 1. Rozdzielenie kompetencji mięcLzy funkcje
  115. Krok 2. Rozdzielenie kompetencji między pliki
  116. Krok 3. Utworzenie plików nagłówkowych
  117. Krok 4. Przetwarzanie danych wejściowych
  118. Krok 5. Kompilacja
  119. Aneks
  120. Polecane źródła w Internecie
  121. Część III
  122. Lekcja 7. Debugowanie programu
  123. Na czym polega debugowanie
  124. Podstawy języka C
  125. Buforowanie
  126. Wyrażenie przecinkowe
  127. Funkcja char()
  128. Rozwiązanie zadania
  129. Krok 1. Wydruki kontrolne w kodzie programu
  130. Krok 2. Zastosowanie makra
  131. Krok 3. Makro ze zmienną liczbą parametrów
  132. Krok 4. Debugowanie wybierane dynamicznie
  133. Krok 5. Obsługa parametru wywołania +d
  134. Wnioski
  135. Aneks
  136. Modyfikacje w funkcji set_opt()
  137. Modyfikacje w funkcji main()
  138. Modyfikacja wypisywania pomocy rozszerzonej
  139. Polecane źródła w Internecie
  140. Lekcja 8. Budowanie złożonych programów
  141. Podstawy teoretyczne
  142. Struktura pliku Makefile
  143. Rozwiązanie zadania
  144. Krok 1. Tworzenie pliku Makefile
  145. Deklaracje zmiennych
  146. Reguły kompilacji
  147. Krok 2. Optymalizacja pliku Makefile
  148. Krok 3. Realizowanie celów specjalnych
  149. make clean
  150. make distclean
  151. make dist
  152. make install
  153. Krok 4. Sprawdzenie poprawności listy zależności
  154. Wnioski
  155. Polecane źródła w Internecie
  156. Lekcja 9. Udostępnianie programu
  157. Narzędzia do udostępniania programów
  158. Krok 1. Skanowanie katalogu
  159. Krok 2. Edytowanie pliku configure.ac
  160. Krok 3. Edytowanie pliku config.h.in
  161. Krok 4. Edytowanie pliku makefile.in
  162. Krok 5. Wywołanie programu autoconf
  163. Krok 6. Uruchomienie programu configure
  164. Krok 7. Korzystanie z pliku config.h
  165. Krok 8. Budowanie programu
  166. Krok 9. Dystrybucja
  167. Wnioski
  168. Polecane źródła w Internecie
  169. Część IV
  170. Lekcja 10. Dynamiczne struktury danych
  171. Funkcje rekurencyjne
  172. Rekurencyjne struktury danych
  173. Dynamiczne struktury danych
  174. Listy
  175. Drzewa binarne
  176. Porównanie przetwarzania list i drzew
  177. Realizacja dynamicznych struktur danych w języku C
  178. Struktury
  179. Rozwiązanie zadania
  180. Reprezentacja węzła drzewa
  181. Krok 1. Tworzenie drzewa
  182. Krok 2. Wstawianie elementu na początek i na koniec listy
  183. Krok 3. Zamiana drzewa na listę
  184. Krok 4. Zamiana listy na drzewo
  185. Krok 5. Wypisywanie zawartości drzewa
  186. Krok 6. Wyszukiwanie informacji w drzewie
  187. Krok 7. Optymalizacja wyszukiwania
  188. Krok 8. Baza z wieloma kluczami
  189. Wnioski
  190. Polecane źródła w Internecie
  191. Lekcja 11. Wyrażenia regularne
  192. Automaty skończone
  193. Wyrażenia regularne
  194. Metaznaki
  195. Rozpoznawanie wyrażeń regularnych
  196. Rozwiązanie zadania
  197. Krok 1. Sformułowanie zadania dla konkretnego zastosowania
  198. Krok 2. Budowanie tablicy sterującej
  199. Wnioski
  200. Polecane źródła w Internecie
  201. Lekcja 12. Interpreter poleceń
  202. Gramatyki formalne
  203. Narzędzia informatyczne
  204. Generator parsera yacc
  205. Deklaracje języka C
  206. Deklaracje parsera
  207. Reguły gramatyki
  208. Kod dodatkowy
  209. Generator leksera lex
  210. Reguły leksykalne
  211. Rozwiązanie zadania
  212. Krok 1. Tworzenie pliku mag.y
  213. Krok 2. Generowanie parsera
  214. Krok 3. Tworzenie pliku mag.l
  215. Krok 4. Generowanie analizatora leksykalnego
  216. Krok 5. Tworzenie prostego programu głównego
  217. Krok 6. Modyfikacja pliku Makefile
  218. Krok 7. Wywołanie funkcji yyparse() w pętli
  219. Krok 8. Sterowanie reakcjami systemu
  220. Modyfikacja leksera
  221. Modyfikacja funkcji main()
  222. Modyfikacja parsera
  223. Krok 9. Rozwijanie interpretera
  224. Krok 10. Rozwiązywanie konfliktów

Zobacz spis treści



Sprawdź dostępność, zarezerwuj (zamów):

(kliknij w nazwę placówki - więcej informacji)

Czyt. Nr XX
ul. Van Gogha 1

Sygnatura: 004
Numer inw.: 18264
Dostępność: wypożyczana na 30 dni

schowekzamów


Inne pozycje tego autora w zbiorach biblioteki:

bookbook


Dodaj komentarz do pozycji:

Swoją opinię można wyrazić po uprzednim zalogowaniu.