Zaawansowane wyszukiwanie
  Strona Główna » Sklep » Języki programowania » Python Django » Moje Konto  |  Zawartość Koszyka  |  Do Kasy   
 Wybierz kategorię
Algorytmy Wzorce UML
Bazy danych
Bezpieczeństwo
Bioinformatyka
Biznes Ekonomia Firma
Chemia
DTP Design
E-biznes
Ekonometria
Elektronika Elektrotechnika
Energetyka
Fizyka
GIS
Grafika użytkowa
Hardware
Informatyczne systemy zarządzania
Informatyka w szkole
Języki programowania
  Ajax
  Asembler
  ASP ASP.NET
  C
  C#
  C++
  C++ Builder
  CGI Perl
  Chmura obliczeniowa
  CVS
  Delphi
  Eclipse
  Fortran
  Inne
  Java Hibernate GWT
  JavaScript
  JBuilder
  JSP JavaServlet
  PHP
  Programowanie mobilne
  Programowanie w Windows
  Prolog
  Python Django
  React
  Ruby Rails
  TypeScript
  Visual Studio
Matematyka
Multimedia
Obsługa komputera
Office
Poradniki
Programowanie gier
Programy inżynierskie
Programy matematyczne
Słowniki
Serwery
Sieci komputerowe
Systemy operacyjne
Technika
Telekomunikacja
Tworzenie stron WWW

Zobacz pełny katalog »
 Wydawnictwo:
 PWN
Wstęp do algebry Część 1 Podstawy algebry

Wstęp do algebry Część 1 Podstawy algebry

59.00zł
Python Programuj szybko i wydajnie Wydajne aplikacje w języku Python 59.00zł 44.25zł
Python Programuj szybko i wydajnie Wydajne aplikacje w języku Python

Tytuł: Python Programuj szybko i wydajnie Wydajne aplikacje w języku Python
Autor: Micha Gorelick, Ian Ozsvald
ISBN: 978-83-283-0466-6
Ilość stron: 344
Data wydania: 05/2015
Oprawa: Miękka
Format: 168x237
Wydawnictwo: Helion
Cena: 59.00zł 44.25zł


Wydajne aplikacje w języku Python!

Python to skryptowy język programowania istniejący na rynku od wielu lat — jego pierwsza wersja pojawiła się w 1991 roku. Przejrzystość kodu źródłowego była jednym z głównych celów Guida van Rossuma, twórcy tego języka. Dziś Python cieszy się dużą popularnością, co z jednej strony świadczy o jego przydatności, a z drugiej gwarantuje użytkownikom szerokie wsparcie społeczności programistów języka. Python jest elastyczny, dopuszcza różne style programowania, a dzięki temu znajduje zastosowanie w wielu miejscach świata IT.

Jeżeli chcesz w pełni wykorzystać możliwości Pythona i tworzyć wydajne rozwiązania, to koniecznie zaopatrz się w tę książkę! Dzięki niej dowiesz się, jak wykorzystać profilowanie do lokalizowania „wąskich gardeł”, oraz poznasz efektywne techniki wyszukiwania danych na listach, w słownikach i zbiorach. Ponadto zdobędziesz wiedzę na temat obliczeń macierzowych i wektorowych oraz zobaczysz, jak kompilacja do postaci kodu C wpływa na wydajność Twojego rozwiązania.

Osobne rozdziały zostały poświęcone współbieżności oraz modułowi multiprocessing. Opanowanie tych zagadnień pozwoli Ci ogromnie przyspieszyć działanie Twojej aplikacji. Na sam koniec nauczysz się tworzyć klastry i kolejki zadań oraz optymalizować zużycie pamięci RAM. Rozdział dwunasty to gratka dla wszystkich — zawiera najlepsze porady specjalistów z branży! Książka ta jest obowiązkową lekturą dla wszystkich programistów chcących tworzyć wydajne rozwiązania w języku Python.
 
• Poznaj lepiej narzędzia numpy i Cython, a także narzędzia profilujące
• Dowiedz się, jak w języku Python dokonywana jest abstrakcja bazowej architektury komputera.
• Użyj profilowania do znajdowania „wąskich gardeł” związanych z wykorzystaniem czasu procesora i pamięci.
• Utwórz wydajne programy, wybierając odpowiednie struktury danych.
• Przyspiesz obliczenia oparte na macierzach i wektorach.
• Zastosuj narzędzia do kompilacji kodu Python do postaci kodu maszynowego.
• Zarządzaj jednocześnie wieloma operacjami obliczeniowymi i operacjami wejścia-wyjścia.
• Przekształć kod przetwarzania współbieżnego w celu uruchomienia go w klastrze lokalnym lub zdalnym.
• Rozwiąż duże problemy, używając mniej pamięci RAM.

Wyciśnij z Pythona siódme poty!

Sois treści:

1. Wydajny kod Python (15)

  • Podstawowy system komputerowy (15)
    • Jednostki obliczeniowe (16)
    • Jednostki pamięci (19)
    • Warstwy komunikacji (21)
  • Łączenie ze sobą podstawowych elementów (22)
    • Porównanie wyidealizowanego przetwarzania z maszyną wirtualną języka Python (23)
  • Dlaczego warto używać języka Python? (26)

2. Użycie profilowania do znajdowania wąskich gardeł (29)

  • Efektywne profilowanie (30)
  • Wprowadzenie do zbioru Julii (31)
  • Obliczanie pełnego zbioru Julii (34)
  • Proste metody pomiaru czasu - instrukcja print i dekorator (37)
  • Prosty pomiar czasu za pomocą polecenia time systemu Unix (40)
  • Użycie modułu cProfile (41)
  • Użycie narzędzia runsnake do wizualizacji danych wyjściowych modułu cProfile (46)
  • Użycie narzędzia line_profiler do pomiarów dotyczących kolejnych wierszy kodu (46)
  • Użycie narzędzia memory_profiler do diagnozowania wykorzystania pamięci (51)
  • Inspekcja obiektów w stercie za pomocą narzędzia heapy (56)
  • Użycie narzędzia dowser do generowania aktywnego wykresu dla zmiennych z utworzonymi instancjami (58)
  • Użycie modułu dis do sprawdzania kodu bajtowego narzędzia CPython (60)
    • Różne metody, różna złożoność (62)
  • Testowanie jednostkowe podczas optymalizacji w celu zachowania poprawności (64)
    • Dekorator @profile bez operacji (64)
  • Strategie udanego profilowania kodu (66)
  • Podsumowanie (67)

3. Listy i krotki (69)

  • Bardziej efektywne wyszukiwanie (71)
  • Porównanie list i krotek (73)
  • Listy jako tablice dynamiczne (74)
  • Krotki w roli tablic statycznych (77)
  • Podsumowanie (78)

4. Słowniki i zbiory (79)

  • Jak działają słowniki i zbiory? (82)
    • Wstawianie i pobieranie (82)
    • Usuwanie (85)
    • Zmiana wielkości (85)
    • Funkcje mieszania i entropia (86)
  • Słowniki i przestrzenie nazw (89)
  • Podsumowanie (92)

5. Iteratory i generatory (93)

  • Iteratory dla szeregów nieskończonych (96)
  • Wartościowanie leniwe generatora (97)
  • Podsumowanie (101)

6. Obliczenia macierzowe i wektorowe (103)

  • Wprowadzenie do problemu (104)
  • Czy listy języka Python są wystarczająco dobre? (107)
    • Problemy z przesadną alokacją (109)
  • Fragmentacja pamięci (111)
    • Narzędzie perf (113)
    • Podejmowanie decyzji z wykorzystaniem danych wyjściowych narzędzia perf (115)
    • Wprowadzenie do narzędzia numpy (116)
  • Zastosowanie narzędzia numpy w przypadku problemu dotyczącego dyfuzji (119)
    • Przydziały pamięci i operacje wewnętrzne (121)
    • Optymalizacje selektywne: znajdowanie tego, co wymaga poprawienia (124)
  • Moduł numexpr: przyspieszanie i upraszczanie operacji wewnętrznych (127)
  • Przestroga: weryfikowanie "optymalizacji" (biblioteka scipy) (129)
  • Podsumowanie (131)

7. Kompilowanie do postaci kodu C (133)

  • Jakie wzrosty szybkości są możliwe? (134)
  • Porównanie kompilatorów JIT i AOT (136)
  • Dlaczego informacje o typie ułatwiają przyspieszenie działania kodu? (136)
  • Użycie kompilatora kodu C (137)
  • Analiza przykładu zbioru Julii (138)
  • Cython (139)
    • Kompilowanie czystego kodu Python za pomocą narzędzia Cython (139)
    • Użycie adnotacji kompilatora Cython do analizowania bloku kodu (141)
    • Dodawanie adnotacji typu (143)
  • Shed Skin (147)
    • Tworzenie modułu rozszerzenia (148)
    • Koszt związany z kopiami pamięci (150)
  • Cython i numpy (151)
    • Przetwarzanie równoległe rozwiązania na jednym komputerze z wykorzystaniem interfejsu OpenMP (152)
  • Numba (154)
  • Pythran (155)
  • PyPy (157)
    • Różnice związane z czyszczeniem pamięci (158)
    • Uruchamianie interpretera PyPy i instalowanie modułów (159)
  • Kiedy stosować poszczególne technologie? (160)
    • Inne przyszłe projekty (162)
    • Uwaga dotycząca układów GPU (162)
    • Oczekiwania dotyczące przyszłego projektu kompilatora (163)
  • Interfejsy funkcji zewnętrznych (163)
    • ctypes (164)
    • cffi (166)
    • f2py (169)
    • Moduł narzędzia CPython (171)
  • Podsumowanie (174)

8. Współbieżność (175)

  • Wprowadzenie do programowania asynchronicznego (176)
  • Przeszukiwacz szeregowy (179)
  • gevent (181)
  • tornado (185)
  • AsyncIO (188)
  • Przykład z bazą danych (190)
  • Podsumowanie (193)

9. Moduł multiprocessing (195)

  • Moduł multiprocessing (198)
  • Przybliżenie liczby pi przy użyciu metody Monte Carlo (200)
  • Przybliżanie liczby pi za pomocą procesów i wątków (201)
    • Zastosowanie obiektów języka Python (201)
    • Liczby losowe w systemach przetwarzania równoległego (208)
    • Zastosowanie narzędzia numpy (209)
  • Znajdowanie liczb pierwszych (211)
    • Kolejki zadań roboczych (217)
  • Weryfikowanie liczb pierwszych za pomocą komunikacji międzyprocesowej (221)
    • Rozwiązanie z przetwarzaniem szeregowym (225)
    • Rozwiązanie z prostym obiektem Pool (225)
    • Rozwiązanie z bardzo prostym obiektem Pool dla mniejszych liczb (227)
    • Użycie obiektu Manager.Value jako flagi (228)
    • Użycie systemu Redis jako flagi (229)
    • Użycie obiektu RawValue jako flagi (232)
    • Użycie modułu mmap jako flagi (232)
    • Użycie modułu mmap do odtworzenia flagi (233)
  • Współużytkowanie danych narzędzia numpy za pomocą modułu multiprocessing (236)
  • Synchronizowanie dostępu do zmiennych i plików (242)
    • Blokowanie plików (242)
    • Blokowanie obiektu Value (245)
  • Podsumowanie (248)

10. Klastry i kolejki zadań (249)

  • Zalety klastrowania (250)
  • Wady klastrowania (251)
    • Strata o wartości 462 milionów dolarów na giełdzie Wall Street z powodu kiepskiej strategii aktualizacji klastra (252)
    • 24-godzinny przestój usługi Skype w skali globalnej (253)
  • Typowe projekty klastrowe (254)
  • Metoda rozpoczęcia tworzenia rozwiązania klastrowego (254)
  • Sposoby na uniknięcie kłopotów podczas korzystania z klastrów (255)
  • Trzy rozwiązania klastrowe (257)
    • Użycie modułu Parallel Python dla prostych klastrów lokalnych (257)
    • Użycie modułu IPython Parallel do obsługi badań (259)
  • Użycie systemu NSQ dla niezawodnych klastrów produkcyjnych (262)
    • Kolejki (263)
    • Publikator/subskrybent (264)
    • Rozproszone obliczenia liczb pierwszych (266)
  • Inne warte uwagi narzędzia klastrowania (268)
  • Podsumowanie (269)

11. Mniejsze wykorzystanie pamięci RAM (271)

  • Obiekty typów podstawowych są kosztowne (272)
    • Moduł array zużywa mniej pamięci do przechowywania wielu obiektów typu podstawowego (273)
  • Analiza wykorzystania pamięci RAM w kolekcji (276)
  • Bajty i obiekty Unicode (277)
  • Efektywne przechowywanie zbiorów tekstowych w pamięci RAM (279)
    • Zastosowanie metod dla 8 milionów tokenów (280)
  • Wskazówki dotyczące mniejszego wykorzystania pamięci RAM (288)
  • Probabilistyczne struktury danych (289)
    • Obliczenia o bardzo dużym stopniu przybliżenia z wykorzystaniem jednobajtowego licznika Morrisa (290)
    • Wartości k-minimum (291)
    • Filtry Blooma (295)
    • Licznik LogLog (299)
    • Praktyczny przykład (303)

12. Rady specjalistów z branży (307)

  • Narzędzie Social Media Analytics (SoMA) firmy Adaptive Lab (307)
    • Język Python w firmie Adaptive Lab (308)
    • Projekt narzędzia SoMA (308)
    • Zastosowana metodologia projektowa (309)
    • Serwisowanie systemu SoMA (309)
    • Rada dla inżynierów z branży (310)
  • Technika głębokiego uczenia prezentowana przez firmę RadimRehurek.com (310)
    • Strzał w dziesiątkę (311)
    • Rady dotyczące optymalizacji (313)
    • Podsumowanie (315)
  • Uczenie maszynowe o dużej skali gotowe do zastosowań produkcyjnych w firmie Lyst.com (315)
    • Rola języka Python w witrynie Lyst (316)
    • Projekt klastra (316)
    • Ewolucja kodu w szybko rozwijającej się nowej firmie (316)
    • Budowanie mechanizmu rekomendacji (316)
    • Raportowanie i monitorowanie (317)
    • Rada (317)
  • Analiza serwisu społecznościowego o dużej skali w firmie Smesh (318)
    • Rola języka Python w firmie Smesh (318)
    • Platforma (318)
    • Dopasowywanie łańcuchów w czasie rzeczywistym z dużą wydajnością (319)
    • Raportowanie, monitorowanie, debugowanie i wdrażanie (320)
  • Interpreter PyPy zapewniający powodzenie systemów przetwarzania danych i systemów internetowych (322)
    • Wymagania wstępne (322)
    • Baza danych (323)
    • Aplikacja internetowa (323)
    • Mechanizm OCR i tłumaczenie (324)
    • Dystrybucja zadań i procesy robocze (324)
    • Podsumowanie (325)
  • Kolejki zadań w serwisie internetowym Lanyrd.com (325)
    • Rola języka Python w serwisie Lanyrd (325)
    • Zapewnianie odpowiedniej wydajności kolejki zadań (326)
    • Raportowanie, monitorowanie, debugowanie i wdrażanie (326)
    • Rada dla programistów z branży (326)

Najniższa cena z 30 dni przed obniżką 44,25zł

Python Programuj szybko i wydajnie Wydajne aplikacje w języku Python
Tytuł książki: "Python Programuj szybko i wydajnie Wydajne aplikacje w języku Python"
Autor: Micha Gorelick, Ian Ozsvald
Wydawnictwo: Helion
Cena: 59.00zł 44.25zł
Klienci, którzy kupili „Python Programuj szybko i wydajnie Wydajne aplikacje w języku Python”, kupili także:

Podręcznik szybkiego czytania, Tony Buzan, Wydawnictwo AHA

Metoda Lean Startup Wykorzystaj innowacyjne narzędzia i stwórz firmę, która zdobędzie rynek, Eric Ries, Wydawnictwo Helion

Spark. Zaawansowana analiza danych, Sandy Ryza, Uri Laserson, Sean Owen, Josh Wills, Wydawnictwo Helion

Analiza i prognozowanie szeregów czasowych Praktyczne wprowadzenie na bazie środowiska R, Adam Zagdański, Wydawnictwo Naukowe PWN

Tworzenie animacji z użyciem języka JavaScript, lian Shapiro, Wydawnictwo Helion

What if A co gdyby Naukowe odpowiedzi na absurdalne i hipotetyczne pytania, Randall Munroe, Wydawnictwo Czarna Owca

czwartek, 28 marca 2024   Mapa strony |  Nowości |  Dzisiejsze promocje |  Koszty wysyłki |  Kontakt z nami