0 POZYCJI
KOSZYK PUSTY
Pobierz fragment
Wybierz format pliku:
Pobierz

Sztuka dobrego programowania

(eBook)
0.00  (0 ocen)
 Dodaj recenzję
Rozwiń szczegóły
  • Druk: Warszawa, 2016

  • Wydanie/Copyright: wyd. 1

  • Autor: Andrzej Ziemkiewicz, Krzysztof Jassem

  • Wydawca: Wydawnictwo Naukowe PWN

  • Formaty:
    ePub mobi (Watermark)
    Watermark
    Znak wodny czyli Watermark to zaszyfrowana informacja o użytkowniku, który zakupił produkt. Dzięki temu łatwo jest zidentyfikować użytkownika, który rozpowszechnił produkt w sposób niezgodny z prawem. Ten rodzaj zabezpieczenia jest zdecydowanie najbardziej przyjazny dla użytkownika, ponieważ aby otworzyć książkę zabezpieczoną Watermarkiem nie jest potrzebne konto Adobe ID oraz autoryzacja urządzenia.

Zwiń szczegóły
Cena katalogowa: 54,00 zł
Najniższa cena z 30 dni: 37,80 zł
Cena produktu

Cena katalogowa – rynkowa cena produktu, często jest drukowana przez wydawcę na książce.

Najniższa cena z 30 dni – najniższa cena sprzedaży produktu w księgarni z ostatnich 30 dni, obowiązująca przed zmianą ceny.

Wszystkie ceny, łącznie z ceną sprzedaży, zawierają podatek VAT.

40,50 zł
Dostępność:
online po opłaceniu
Dodaj do schowka

Sztuka dobrego programowania

Książka 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ą.

  • Kategorie:
    1. Ebooki i Audiobooki »
    2. Informatyka
  • Język wydania: polski
  • ISBN: 978-83-01-19047-7
  • ISBN druku: 978-83-01-19029-3
  • Liczba stron: 236
  • Sposób dostarczenia produktu elektronicznego
    Produkty elektroniczne takie jak Ebooki czy Audiobooki są udostępniane online po uprzednim opłaceniu (PayU, BLIK) na stronie Twoje konto > Biblioteka.
    Pliki można pobrać zazwyczaj w ciągu kilku-kilkunastu minut po uzyskaniu poprawnej autoryzacji płatności, choć w przypadku niektórych publikacji elektronicznych czas oczekiwania może być nieco dłuższy.
    Sprzedaż terytorialna towarów elektronicznych jest regulowana wyłącznie ograniczeniami terytorialnymi licencji konkretnych produktów.
  • Ważne informacje techniczne
  • Minimalne wymagania sprzętowe:
    • procesor: architektura x86 1GHz lub odpowiedniki w pozostałych architekturach
    • Pamięć operacyjna: 512MB
    • Monitor i karta graficzna: zgodny ze standardem XGA, minimalna rozdzielczość 1024x768 16bit
    • Dysk twardy: dowolny obsługujący system operacyjny z minimalnie 100MB wolnego miejsca
    • Mysz lub inny manipulator + klawiatura
    • Karta sieciowa/modem: umożliwiająca dostęp do sieci Internet z prędkością 512kb/s
  • Minimalne wymagania oprogramowania:
    • System Operacyjny: System MS Windows 95 i wyżej, Linux z X.ORG, MacOS 9 lub wyżej, najnowsze systemy mobilne: Android, iPhone, SymbianOS, Windows Mobile
    • Przeglądarka internetowa: Internet Explorer 7 lub wyżej, Opera 9 i wyżej, FireFox 2 i wyżej, Chrome 1.0 i wyżej, Safari 5
    • Przeglądarka z obsługą ciasteczek i włączoną obsługą JavaScript
    • Zalecany plugin Flash Player w wersji 10.0 lub wyżej.
  • Informacja o formatach plików:
    • PDF - format polecany do czytania na laptopach oraz komputerach stacjonarnych.
    • EPUB - format pliku, który umożliwia czytanie książek elektronicznych na urządzeniach z mniejszymi ekranami (np. e-czytnik lub smartfon), dając możliwość dopasowania tekstu do wielkości urządzenia i preferencji użytkownika.
    • MOBI - format zapisu firmy Mobipocket, który można pobrać na dowolne urządzenie elektroniczne (np.e-czytnik Kindle) z zainstalowanym programem (np. MobiPocket Reader) pozwalającym czytać pliki MOBI.
    • Audiobooki w formacie MP3 - format pliku, przeznaczony do odsłuchu nagrań audio.
  • Rodzaje zabezpieczeń plików:
    • Watermark - (znak wodny) to zaszyfrowana informacja o użytkowniku, który zakupił produkt. Dzięki temu łatwo jest zidentyfikować użytkownika, który rozpowszechnił produkt w sposób niezgodny z prawem.
    • Brak zabezpieczenia - część oferowanych w naszym sklepie plików nie posiada zabezpieczeń. Zazwyczaj tego typu pliki można pobierać ograniczoną ilość razy, określaną przez dostawcę publikacji elektronicznych. W przypadku zbyt dużej ilości pobrań plików na stronie WWW pojawia się stosowny komunikat.
    Więcej informacji o publikacjach elektronicznych
Wstęp 13
	Przygotowanie środowiska pracy 14
		Instalacja systemu Linux 15
			Pobranie OpenSUSE 15
			Przygotowanie instalacji 15
			Instalacja 15
		Uruchamianie programów 16
			Edycja kodu źródłowego 16
			Przejście do trybu tekstowego 16
			Skompilowanie programu 17
			Uruchomienie programu 17
	Polecane źródła w Internecie 17

Część I  19

Lekcja 1. Optymalizowanie funkcji 21
	Elementy matematyki 21
	Podstawy języka C 22
		Program, instrukcja 22
		Komentarze 23
		Identyfikatory 23
		Słowa kluczowe 23
		Białe znaki 23
		Podstawowe typy numeryczne 24
		Zmienne i operator przypisania 25
		Operatory 26
		Instrukcja warunkowa 27
		Instrukcje pętli 28
			Pętla while 28
			Pętla do while 29
			Pętla for 29
		Funkcje 30
			Funkcje rekurencyjne 31
	Rozwiązanie zadania 32
		Krok 1. Pierwsze zadanie pomocnicze 32
		Krok 2. Rachunki matematyczne 32
		Krok 3. Drugie zadanie pomocnicze 33
		Krok 4. Uogólnienie rachunków 34
		Krok 5. Pierwsza wersja kodu funkcji rozwiązującej zadanie 34
		Krok 6. Dodanie warunku zakończenia rekurencji 35
		Krok 7. Optymalizacja liczby operacji 35
		Krok 8. Optymalizacja liczby zmiennych 36
		Krok 9. Usunięcie rekurencji 36
		Krok 10. Sprawdzenie poprawności argumentów 38
	Wnioski 39
	Polecane źródła w Internecie 39

Lekcja 2. Działania na bitach 41
	Sito Eratostenesa 41
	Podstawy Języka C 41
		Operacje na bitach 41
			Operacja and 42
			Operacja or 42
			Operacja xor 42
			Operacja not 42
			Przesunięcie bitowe w lewo 42
			Przesunięcie bitowe w prawo 43
		Rzutowanie 43
		Dyrektywy preprocesora 44
		Tablice 45
		Adresy zmiennych 46
		Wskaźniki 47
		Wskaźniki a tablice 48
		Alokowanie pamięci dla tablicy 49
	Rozwiązanie zadania 50
		Krok 1. Podejście standardowe 50
		Krok 2. Zmniejszenie liczby operacji 51
		Krok 3. Oszczędność pamięci 52
		Krok 4. Poprawa efektywności algorytmu 57
	Wnioski 58
	Polecane źródła w Internecie 59
	Podstawy informatyki 61

Lekcja 3. Alokowanie pamięci 61
	Podstawy języka C 62
		Funkcja malloc() 62
		Funkcja calloc() 63
		Funkcja realloc() 64
		Funkcja free() 64
		Przykład zarządzania pamięcią 65
		Zmienne automatyczne i statyczne 66
	Rozwiązanie zadania 67
	Wnioski 72
	Polecane źródła w Internecie 72

Część II 73

Lekcja 4. Program główny 75
	Podstawy języka C 75
		Funkcja main() 75
		Funkcja exit () 75
		Standardowe strumienie wejścia i wyjścia 76
		Napisy 76
		Konwersja napisu do liczby 77
	Rozwiązanie zadania 78
		Krok 1. Zadanie pomocnicze 78
		Krok 2. Unikanie prostych błędów 80
		Krok 3. Zastosowanie nazwy programu 81
		Krok 4. Obsługa opcji 83
		Krok 5. Wyświetlenie komunikatu o błędzie 85
		Krok 6. Zastosowanie zmiennych środowiskowych 85
	Wnioski 86
	Polecane źródła w Internecie 86

Lekcja 5. Przetwarzanie opcji 87
	Podstawy języka C 87
		Przekazywanie argumentów funkcji 87
		Instrukcja wielokrotnego wyboru: switch 89
	Standardowe opcje programu 90
	Rozwiązanie zadania 90
	Wnioski 94
	Polecane źródła w Internecie 94

Lekcja 6. Przetwarzanie parametrów wejściowych – plików 95
	Podstawy języka C 95
		Odczyt i zapis do pliku 95
		Trójargumentowy operator warunkowy 98
		Sterowanie preprocesorem 98
		Prototyp funkcji 98
		Atrybut extern 100
		Kompilacja programu 102
	Rozwiązanie zadania 103
		Krok 1. Rozdzielenie kompetencji między funkcje 103
		Krok 2. Rozdzielenie kompetencji między pliki 106
		Krok 3. Utworzenie plików nagłówkowych 108
		Krok 4. Przetwarzanie danych wejściowych 109
		Krok 5. Kompilacja 110
	Aneks 111
	Polecane źródła w Internecie 116

Część III  117

Lekcja 7. Debugowanie programu 119
	Na czym polega debugowanie 119
	Podstawy języka C 120
		Buforowanie 120
		Wyrażenie przecinkowe 121
		Funkcja char() 121
	Rozwiązanie zadania 122
		Krok 1. Wydruki kontrolne w kodzie programu 122
		Krok 2. Zastosowanie makra 124
		Krok 3. Makro ze zmienną liczbą parametrów 126
		Krok 4. Debugowanie wybierane dynamicznie 128
		Krok 5. Obsługa parametru wywołania +d 130
	Wnioski 131
	Aneks 132
		Modyfikacje w funkcji set_opt() 132
		Modyfikacje w funkcji main() 132
		Modyfikacja wypisywania pomocy rozszerzonej 133
	Polecane źródła w Internecie 133

Lekcja 8. Budowanie złożonych programów 135
	Podstawy teoretyczne 135
		Struktura pliku Makefile 135
	Rozwiązanie zadania 136
		Krok 1. Tworzenie pliku Makefile 136
			Deklaracje zmiennych 136
			Reguły kompilacji 137
		Krok 2. Optymalizacja pliku Makefile 138
		Krok 3. Realizowanie celów specjalnych 139
			make clean 139
			make distclean 140
			make dist 140
			make install 142
		Krok 4. Sprawdzenie poprawności listy zależności 142
	Wnioski 143
	Polecane źródła w Internecie 143

Lekcja 9. Udostępnianie programu 145
	Narzędzia do udostępniania programów 145
		Krok 1. Skanowanie katalogu 145
		Krok 2. Edytowanie pliku configure.ac 146
		Krok 3. Edytowanie pliku config.h.in 149
		Krok 4. Edytowanie pliku makefile.in 149
		Krok 5. Wywołanie programu autoconf 149
		Krok 6. Uruchomienie programu configure 150
		Krok 7. Korzystanie z pliku config.h 152
		Krok 8 Budowanie programu 152
		Krok 9. Dystrybucja 153
	Wnioski 153
	Polecane źródła w Internecie 153

Część IV  156

Lekcja 10. Dynamiczne struktury danych 157
	Funkcje rekurencyjne 157
	Rekurencyjne struktury danych 159
	Dynamiczne struktury danych 160
		Listy 160
		Drzewa binarne 162
		Porównanie przetwarzania list i drzew 163
	Realizacja dynamicznych struktur danych w języku C 164
		Struktury 164
	Rozwiązanie zadania 165
		Reprezentacja węzła drzewa 165
		Krok 1 Tworzenie drzewa 166
		Krok 2. Wstawianie elementu na początek i na koniec listy 168
		Krok 3. Zamiana drzewa na listę 170
		Krok 4. Zamiana listy na drzewo 175
		Krok 5. Wypisywanie zawartości drzewa 180
		Krok 6. Wyszukiwanie informacji w drzewie 181
		Krok 7. Optymalizacja wyszukiwania 181
		Krok 8. Baza z wieloma kluczami 182
	Wnioski 183
	Polecane źródła w Internecie 183

Lekcja 11. Wyrażenia regularne 185
	Automaty skończone 185
	Wyrażenia regularne 187
		Metaznaki 188
		Rozpoznawanie wyrażeń regularnych 189
	Rozwiązanie zadania 189
		Krok 1. Sformułowanie zadania dla konkretnego zastosowania 189
		Krok 2. Budowanie tablicy sterującej 190
	Wnioski 197
	Polecane źródła w Internecie 198

Lekcja 12. Interpreter poleceń 199
	Gramatyki formalne 200
	Narzędzia informatyczne 201
		Generator parsera yacc 202
			Deklaracje języka C 203
			Deklaracje parsera 203
			Reguły gramatyki 203
			Kod dodatkowy 204
		Generator leksera lex 204
			Reguły leksykalne 205
	Rozwiązanie zadania 205
		Krok 1. Tworzenie pliku mag.y  205
		Krok 2. Generowanie parsera 207
		Krok 3. Tworzenie pliku mag.l 208
		Krok 4. Generowanie analizatora leksykalnego 209
		Krok 5. Tworzenie prostego programu głównego 210
		Krok 6. Modyfikacja pliku Makefile 212
		Krok 7. Wywołanie funkcji yyparse() w pętli 213
		Krok 8. Sterowanie reakcjami systemu 215
			Modyfikacja leksera 217
			Modyfikacja funkcji main() 217
			Modyfikacja parsera 218
		Krok 9. Rozwijanie interpretera 222
		Krok 10. Rozwiązywanie konfliktów 225
	Wnioski 226
	Polecane źródła w Internecie 227

Pliki towarzyszące książce 229

Skorowidz 233

Inni Klienci oglądali również

70,50 zł 94,00 zł
Do koszyka

Programowanie gier

Największym wyzwaniem dla wielu programistów jest ukończenie pracy nad grą. Większość projektów nie dobiega końca, gdyż ich autorzy są przytłoczeni złożonością i poziomem skomplikowania kodu. Książka Programowanie gier. Wzorce rozwi...
31,50 zł 35,00 zł
Do koszyka

Holendersko-japońskie związki kulturowe i inspiracje Japonią w sztuce holenderskiej XVII stulecia

Celem publikacji jest prześledzenie wielopoziomowego wpływu, jaki kontakt z cywilizacją japońską wywarł na sztukę holenderską w okresie największego rozwoju Republiki Zjednoczonych Prowincji. Dodatkowym celem jest ukazanie historyczno-ekonomicznych uwa...
51,75 zł 69,00 zł
Do koszyka

O fenomenie sztuk wizualnych i meandrach ich ochrony

Autorka w sposób barwny i sugestywny opowiada o sztuce wizualnej utrzymując jednocześnie rygory opracowania naukowego. Przedstawia ponadczasowość sztuki identyfikując ją według najnowszych metod analityki instrumentalnej, badań historycznych, pr...
27,00 zł 30,00 zł
Do koszyka

Studia z historii sztuki i kultury wileńskiej lat 1900–1945. Wybór tekstów

Książka Józefa Poklewskiego bez wątpienia spełnia wszelkie kryteria pracy naukowej. Jej wysokie walory merytoryczne wynikają z dogłębnej znajomości omawianych zagadnień, bogatego naukowego doświadczenia Autora – profesora historii sztuki. ...
62,99 zł 69,99 zł
Do koszyka

Antyczna sztuka wojenna Tom 2

Hans Delbrück, urodzony 11 listopada 1848 w Bergen na wyspie Rugia, polityk, na forum międzynarodowym uznawany za pierwszego prawdziwie współczesnego historyka wojskowości. Studiował począwszy od 1868 na uniwersytetach w Heidelbergu i Bonn....
24,30 zł 27,00 zł
Do koszyka

Najlepszy czeski stand-up

Nie straszne Ci żarty o polityce, wierze, seksie, uchodźcach i hipsterach? Lubisz mocny humor w stylu stand-up? Przed Tobą stoi dwóch najpopularniejszych czeskich komików! Bez tematów tabu i z dużą dawką inteligentnego humoru oprow...

Recenzje

Dodaj recenzję
Nikt nie dodał jeszcze recenzji. Bądź pierwszy!