reklama - zainteresowany?

Programowanie. Koncepcje, techniki i modele - Helion

Programowanie. Koncepcje, techniki i modele
Autor: Peter Van Roy, Seif Haridi
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: 83-7361-979-8
stron: 904, Format: B5, okładka: twarda
Data wydania: 2005-10-06
Księgarnia: Helion

Cena książki: 89,00 zł

Dodaj do koszyka Programowanie. Koncepcje, techniki i modele

Tagi: Techniki programowania

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.

Dodaj do koszyka Programowanie. Koncepcje, techniki i modele

 

Osoby które kupowały "Programowanie. Koncepcje, techniki i modele", wybierały także:

  • F# 4.0 dla zaawansowanych. Wydanie IV
  • Systemy reaktywne. Wzorce projektowe i ich stosowanie
  • Scratch. Komiksowa przygoda z programowaniem
  • GameMaker. Kurs video. Kompleksowy przewodnik tworzenia gier platformowych
  • Dost

Dodaj do koszyka Programowanie. Koncepcje, techniki i modele

Spis treści

Programowanie. Koncepcje, techniki i modele -- spis treści

Wstęp (7)

Uruchamianie przykładowych programów (21)

1.Wprowadzenie do problematyki programowania (23)

  • 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)

CZĘŚĆ I OGÓLNE MODELE OBLICZENIOWE (49)

2. Deklaratywny model obliczeniowy (51)

  • 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. Techniki programowania deklaratywnego (129)

  • 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. Współbieżność deklaratywna (249)

  • 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. Współbieżność z przesyłaniem komunikatów (359)

  • 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. Stan jawny (415)

  • 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. Programowanie obiektowe (493)

  • 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. Współbieżność ze stanem dzielonym (569)

  • 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. Programowanie relacyjne (617)

  • 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)

CZĘŚĆ II SPECJALISTYCZNE MODELE OBLICZENIOWE (673)

10. Projektowanie interfejsu GUI (675)

  • 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. Programowanie rozproszone (701)

  • 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. Programowanie z ograniczeniami (745)

  • 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)

CZĘŚĆ III SEMANTYKA (775)

13. Semantyka języka programowania (777)

  • 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)

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)

Dodaj do koszyka Programowanie. Koncepcje, techniki i modele

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2024 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.