Programowanie. Koncepcje, techniki i modele
- Autorzy:
- Peter Van Roy, Seif Haridi
- Ocena:
- 6.0/6 Opinie: 1
- Stron:
- 904
- Druk:
- oprawa twarda
Opis książki: Programowanie. Koncepcje, techniki i modele
Poznanie istoty programowania komputerów można zacząć od analizy języków programowania, ich struktur, typów danych i instrukcji. Jednak mnogość języków, różnice pomiędzy nimi i możliwość wykorzystania ich do różnych zadań sprawiają, że przeprowadzenie takiej analizy będzie niezwykle czasochłonne, a jednocześnie nie będzie gwarantowało poznania wszystkich koncepcji i paradygmatów programowania. Naukę koncepcji programowania najlepiej rozpocząć od poznania modelowych struktur realizowanych za pomocą modeli obliczeniowych -- konstrukcji definiujących sposób realizacji obliczeń, nie powołujących się na konkretny język.
Książka "Programowanie. Koncepcje, techniki i modele" prezentuje programowanie jako zbiór takich właśnie modeli. Opisuje je w postaci kodów stworzonych w prostym języku podstawowym przeznaczonym dla abstrakcyjnego komputera. W książce przedstawiono zarówno modele ogólne -- programowanie deklaratywne, współbieżność deklaratywną, współbieżność przesyłania komunikatów, stan jawny, programowanie zorientowane obiektowo, współbieżność stanu dzielonego oraz programowanie relacyjne -- jak i modele specjalizowane, takie jak programowanie graficznych interfejsów użytkownika, programowanie rozproszone oraz programowanie z ograniczeniami. Publikacja zawiera wiele fragmentów programów i ćwiczeń. Można je uruchomić w ramach systemu Mozart Programming System -- pakietu programistycznego rozprowadzanego na licencji open source.
- Podstawowe założenia problematyki programowania
- Notacja Backusa-Naura
- Gramatyki kontekstowe i bezkontekstowe
- Zasada działania maszyny abstrakcyjnej
- Typy danych, instrukcje i funkcje
- Drzewa i analiza składniowa
- Metodologie projektowania programów
- Programowanie współbieżne
- Zasady projektowanie i programowanie obiektowego
- Projektowanie interfejsów użytkownika
- Obliczenia rozproszone
Pisanie niezawodnych programów wymaga opanowania koncepcji leżących u ich podstaw. Dzięki tej książce poznasz je wszystkie.
Wybrane bestsellery
-
O tym, ile problemów sprawia niedbale napisany kod, wie każdy programista. Nie wszyscy jednak wiedzą, jak napisać ten świetny, „czysty” kod i czym właściwie powinien się on charakteryzować. Co więcej – jak odróżnić dobry kod od złego? Odpowiedź na te pytania oraz sposoby tworzen...(0,00 zł najniższa cena z 30 dni)
47.40 zł
79.00 zł(-40%) -
Branża IT kusi licznymi ofertami pracy, atrakcyjnymi zarobkami i ciekawymi ścieżkami rozwoju nie tylko zawodowych programistów, lecz również osoby bez wykształcenia informatycznego czy doświadczenia w tej dziedzinie. Te ostatnie zwykle zaczynają karierę od roli testera aplikacji. Jednym z podstaw...(0,00 zł najniższa cena z 30 dni)
53.40 zł
89.00 zł(-40%) -
Dave Thomas i Andy Hunt napisali pierwsze wydanie tej wpływowej książki w 1999 roku, aby pomóc swoim klientom tworzyć lepsze oprogramowanie i na nowo odnaleźć radość z kodowania. Nauki płynące z tamtego wydania pomogły wielu pokoleniom programistów zbadać istotę rozwoju oprogramowania, niezależni...
Pragmatyczny programista. Od czeladnika do mistrza. Wydanie II Pragmatyczny programista. Od czeladnika do mistrza. Wydanie II
(0,00 zł najniższa cena z 30 dni)46.20 zł
77.00 zł(-40%) -
W tej książce w sposób jasny i bardzo interesujący przedstawiono uniwersalne zasady architektury oprogramowania wraz z szeregiem wskazówek dotyczących stosowania tych reguł w praktyce. Wyczerpująco zaprezentowano tu dostępne rozwiązania i wyjaśniono, dlaczego są one tak istotne dla sukcesu przeds...
Czysta architektura. Struktura i design oprogramowania. Przewodnik dla profesjonalistów Czysta architektura. Struktura i design oprogramowania. Przewodnik dla profesjonalistów
(0,00 zł najniższa cena z 30 dni)53.40 zł
89.00 zł(-40%) -
Mikrousługi są relatywnie świeżą koncepcją w świecie systemów IT, mimo to coraz więcej organizacji decyduje się na wdrażanie opartej na nich architektury. Uznaje się, że zapewnia ona wówczas lepszą skalowalność, łatwość łączenia poszczególnych niezależnych elementów, a przede wszystkim możliwość ...
Od monolitu do mikrousług. Ewolucyjne wzorce przekształcania systemów monolitycznych Od monolitu do mikrousług. Ewolucyjne wzorce przekształcania systemów monolitycznych
(0,00 zł najniższa cena z 30 dni)32.94 zł
54.90 zł(-40%) -
Mistrz czystego kodu. Kodeks postępowania profesjonalnych programistów Podręcznik profesjonalnego programisty! Robert C. Martin, znany jako Uncle Bob, to jeden z prawdziwych gwiazdorów branży IT, człowiek o niezwykłej charyzmie, rewelacyjnym podejściu do słuchaczy i poczuciu h...
Mistrz czystego kodu. Kodeks postępowania profesjonalnych programistów Mistrz czystego kodu. Kodeks postępowania profesjonalnych programistów
(0,00 zł najniższa cena z 30 dni)29.40 zł
49.00 zł(-40%) -
To drugie wydanie bestsellerowego przewodnika po technikach uczenia maszynowego. Wystarczą minimalne umiejętności programistyczne, aby dzięki tej książce nauczyć się budowania i trenowania głębokiej sieci neuronowej. Zawarto tu minimum teorii, a proces nauki jest ułatwiony przez liczne przykłady ...
Uczenie maszynowe z użyciem Scikit-Learn i TensorFlow. Wydanie II Uczenie maszynowe z użyciem Scikit-Learn i TensorFlow. Wydanie II
(0,00 zł najniższa cena z 30 dni)77.40 zł
129.00 zł(-40%) -
Ta książka zawiera opis podstawowych wzorców, zasad i praktyk przydatnych podczas analizy dziedzin biznesowych, ułatwiających zrozumienie ich strategii i dostosowanie architektury do potrzeb biznesu, aby umożliwić zbudowanie solidnej implementacji logiki biznesowej. Omówiono tu narzędzia i techni...
Koncepcja Domain-Driven Design. Dostosowywanie architektury aplikacji do strategii biznesowej Koncepcja Domain-Driven Design. Dostosowywanie architektury aplikacji do strategii biznesowej
(0,00 zł najniższa cena z 30 dni)47.40 zł
79.00 zł(-40%) -
To drugie wydanie praktycznego przewodnika po projektowaniu, tworzeniu, wdrażaniu, skalowaniu i utrzymaniu systemów opartych na drobnoziarnistych mikrousługach. Publikacja została uzupełniona o informacje dotyczące najnowszych trendów i technologii związanych z mikrousługami. Sporo miejsca poświę...
Budowanie mikrousług. Projektowanie drobnoziarnistych systemów. Wydanie II Budowanie mikrousług. Projektowanie drobnoziarnistych systemów. Wydanie II
(0,00 zł najniższa cena z 30 dni)65.40 zł
109.00 zł(-40%) -
Lektura tej książki ułatwi Ci pozbycie się obaw przed biblioteką asyncio. Zrozumiesz jej podstawowe elementy, co pozwoli Ci na rozpoczęcie programowania sterowanego zdarzeniami i prostą obsługę tysięcy jednoczesnych połączeń sieciowych. Dowiesz się, dlaczego Asyncio stanowi bezpieczniejszą altern...(0,00 zł najniższa cena z 30 dni)
23.94 zł
39.90 zł(-40%)
Ebooka przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video zobaczysz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP4 (pliki spakowane w ZIP)
Szczegóły książki
- Tytuł oryginału:
- Concepts, Techniques, and Models of Computer Programming
- Tłumaczenie:
- Bartłomiej Garbacz (wstęp, rozdz. 1-4, 9), Andrzej Grażyński (rozdz. 10-13, dod. A-D), Paweł Koronkiewicz (rozdz. 5-8)
- ISBN Książki drukowanej:
- 83-736-1979-8, 8373619798
- Data wydania książki drukowanej:
- 2005-10-06
- Format:
- B5
- Numer z katalogu:
- 2840
- Zgłoś erratę
- Kategorie:
Programowanie » Techniki programowania
- Serie wydawnicze: Kanon informatyki
Spis treści książki
- 1.1. Kalkulator (23)
- 1.2. Zmienne (24)
- 1.3. Funkcje (24)
- 1.4. Listy (26)
- 1.5. Funkcje operujące na listach (28)
- 1.6. Poprawność (31)
- 1.7. Złożoność (32)
- 1.8. Ewaluacja leniwa (33)
- 1.9. Programowanie wyższego rzędu (35)
- 1.10. Współbieżność (36)
- 1.11. Przepływ danych (37)
- 1.12. Stan jawny (38)
- 1.13. Obiekty (39)
- 1.14. Klasy (40)
- 1.15. Niedeterminizm i czas (41)
- 1.16. Niepodzielność (43)
- 1.17. Dalsza lektura (44)
- 1.18. Ćwiczenia (45)
- 2.1. Definiowanie praktycznych języków programowania (52)
- 2.2. Obszar jednokrotnego przypisania (63)
- 2.3. Język modelowy (69)
- 2.4. Semantyka języka modelowego (75)
- 2.5. Zarządzanie pamięcią (91)
- 2.6. Od języka modelowego do języka praktycznego (98)
- 2.7. Wyjątki (108)
- 2.8. Zagadnienia zaawansowane (115)
- 2.9. Ćwiczenia (125)
- 3.1. Definicja deklaratywności (132)
- 3.2. Obliczenia iteracyjne (135)
- 3.3. Obliczenia rekurencyjne (141)
- 3.4. Programowanie rekurencyjne (145)
- 3.5. Złożoność czasowa i pamięciowa (183)
- 3.6. Programowanie wyższego rzędu (194)
- 3.7. Abstrakcyjne typy danych (210)
- 3.8. Wymagania niedeklaratywne (225)
- 3.9. Projektowanie programu w skali mikro (233)
- 3.10. Ćwiczenia (245)
- 4.1. Model współbieżny sterowany danymi (251)
- 4.2. Podstawowe techniki programowania z użyciem wątków (262)
- 4.3. Strumienie (271)
- 4.4. Bezpośrednie używanie deklaratywnego modelu współbieżnego (287)
- 4.5. Wykonywanie leniwe (293)
- 4.6. Programowanie nieścisłego czasu rzeczywistego (319)
- 4.7. Język Haskell (323)
- 4.8. Ograniczenia i rozszerzenia programowania deklaratywnego (328)
- 4.9. Zagadnienia zaawansowane (340)
- 4.10. Rys historyczny (351)
- 4.11. Ćwiczenia (352)
- 5.1. Model współbieżny oparty na przesyłaniu komunikatów (361)
- 5.2. Obiekty portów (363)
- 5.3. Proste protokoły komunikatów (367)
- 5.4. Projektowanie programów pod kątem pracy współbieżnej (375)
- 5.5. System sterowania windami (379)
- 5.6. Bezpośrednie wykorzystanie modelu przesyłania komunikatów (390)
- 5.7. Język Erlang (398)
- 5.8. Dodatkowe informacje (407)
- 5.9. Ćwiczenia (411)
- 6.1. Pojęcie stanu (418)
- 6.2. Stan i budowa systemów (420)
- 6.3. Model deklaratywny ze stanem jawnym (423)
- 6.4. Abstrakcja danych (428)
- 6.5. Stanowe kolekcje (443)
- 6.6. Wnioskowanie o programach stanowych (448)
- 6.7. Projektowanie programów w dużej skali (458)
- 6.8. Studia przypadków (469)
- 6.9. Zagadnienia zaawansowane (485)
- 6.10. Ćwiczenia (488)
- 7.1. Dziedziczenie (495)
- 7.2. Klasy jako pełne abstrakcje danych (496)
- 7.3. Klasy jako przyrostowe abstrakcje danych (505)
- 7.4. Programowanie z użyciem dziedziczenia (521)
- 7.5. Model obiektowy a inne modele obliczeniowe (539)
- 7.6. Implementowanie systemu obiektowego (546)
- 7.7. Język Java (część sekwencyjna) (551)
- 7.8. Obiekty aktywne (557)
- 7.9. Ćwiczenia (567)
- 8.1. Model współbieżny ze stanem dzielonym (571)
- 8.2. Programowanie z użyciem współbieżności (572)
- 8.3. Blokady (581)
- 8.4. Monitory (590)
- 8.5. Transakcje (597)
- 8.6. Język Java (część współbieżna) (612)
- 8.7. Ćwiczenia (614)
- 9.1. Relacyjny model obliczeniowy (619)
- 9.2. Kolejne przykłady (623)
- 9.3. Związki z programowaniem logicznym (628)
- 9.4. Analiza składniowa języka naturalnego (637)
- 9.5. Interpreter gramatyki (646)
- 9.6. Bazy danych (651)
- 9.7. Język Prolog (657)
- 9.8. Ćwiczenia (667)
- 10.1. Koncepcja podejścia deklaratywno-proceduralnego (677)
- 10.2. Zastosowanie podejścia deklaratywno-proceduralnego (678)
- 10.3. Prototyper - interaktywne narzędzie treningowe (685)
- 10.4. Analizy przypadków (686)
- 10.5. Implementacja narzędzia GUI (698)
- 10.6. Ćwiczenia (699)
- 11.1. Taksonomia systemów rozproszonych (705)
- 11.2. Model dystrybucji (706)
- 11.3. Dystrybucja danych deklaratywnych (708)
- 11.4. Dystrybucja stanu (715)
- 11.5. Rozpoznanie sieci (718)
- 11.6. Powszechne wzorce programowania rozproszonego (720)
- 11.7. Protokoły dystrybucyjne (728)
- 11.8. Częściowe awarie (735)
- 11.9. Bezpieczeństwo (739)
- 11.10. Tworzenie aplikacji (741)
- 11.11. Ćwiczenia (742)
- 12.1. Przeszukiwanie z propagacją informacji (746)
- 12.2. Techniki programowania (751)
- 12.3. Model obliczeniowy bazujący na ograniczeniach (755)
- 12.4. Definiowanie i wykorzystywanie przestrzeni obliczeniowych (758)
- 12.5. Implementacja modelu obliczeń relacyjnych (769)
- 12.6. Ćwiczenia (771)
- 13.1. Generalny model obliczeniowy (778)
- 13.2. Współbieżność deklaratywna (803)
- 13.3. Osiem modeli obliczeń (805)
- 13.4. Semantyka popularnych abstrakcji programistycznych (807)
- 13.5. Uwagi historyczne (807)
- 13.6. Ćwiczenia (808)
Wstęp (7)
Uruchamianie przykładowych programów (21)
1.Wprowadzenie do problematyki programowania (23)
CZĘŚĆ I OGÓLNE MODELE OBLICZENIOWE (49)
2. Deklaratywny model obliczeniowy (51)
3. Techniki programowania deklaratywnego (129)
4. Współbieżność deklaratywna (249)
5. Współbieżność z przesyłaniem komunikatów (359)
6. Stan jawny (415)
7. Programowanie obiektowe (493)
8. Współbieżność ze stanem dzielonym (569)
9. Programowanie relacyjne (617)
CZĘŚĆ II SPECJALISTYCZNE MODELE OBLICZENIOWE (673)
10. Projektowanie interfejsu GUI (675)
11. Programowanie rozproszone (701)
12. Programowanie z ograniczeniami (745)
CZĘŚĆ III SEMANTYKA (775)
13. Semantyka języka programowania (777)
DODATKI (811)
A Zintegrowane środowisko systemu Mozart (813)
B Podstawowe typy danych (817)
C Składnia języka (833)
D Generalny model obliczeniowy (843)
Bibliografia (853)
Skorowidz (865)
Oceny i opinie klientów: Programowanie. Koncepcje, techniki i modele Peter Van Roy, Seif Haridi (1)
Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.
(1)
(0)
(0)
(0)
(0)
(0)
Data dodania: 2013-10-05 Ocena: 6 Opinia niepotwierdzona zakupem