دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
دسته بندی: برنامه نويسي ویرایش: 1st نویسندگان: Brett Slatkin سری: ISBN (شابک) : 9788328315433 ناشر: Helion سال نشر: 2015 تعداد صفحات: 229 زبان: Polish فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 3 مگابایت
در صورت تبدیل فایل کتاب Efektywny Python 59 sposobow na lepszy kod به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب راه های موثر پایتون 59 برای کدنویسی بهتر نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Spis treści......Page 4
Wprowadzenie......Page 8
Podziękowania......Page 12
O autorze......Page 14
Sposób 1. Ustalenie używanej wersji Pythona......Page 16
Skorowidz......Page 0
Sposób 4. Decyduj się na funkcje pomocnicze zamiast na skomplikowane wyrażenia......Page 23
Sposób 5. Umiejętnie podziel sekwencje......Page 26
Sposób 6. Unikaj użycia indeksów początek, koniec i wartości kroku w pojedynczej operacji podziału......Page 28
Sposób 7. Używaj list składanych zamiast funkcji map() i filter()......Page 30
Sposób 8. Unikaj więcej niż dwóch wyrażeń na liście składanej......Page 32
Sposób 9. Rozważ użycie generatora wyrażeń dla dużych list składanych......Page 33
Sposób 10. Preferuj użycie funkcji enumerate() zamiast range()......Page 35
Sposób 11. Użycie funkcji zip() do równoczesnego przetwarzania iteratorów......Page 36
Sposób 12. Unikaj bloków else po pętlach for i while......Page 38
Sposób 13. Wykorzystanie zalet wszystkich bloków w konstrukcji try-except-else-finally......Page 41
Sposób 14. Preferuj wyjątki zamiast zwrotu wartości None......Page 44
Sposób 15. Zobacz, jak domknięcia współdziałają z zakresem zmiennej......Page 46
Sposób 16. Rozważ użycie generatorów, zamiast zwracać listy......Page 51
Sposób 17. Podczas iteracji przez argumenty zachowuj postawę defensywną......Page 53
Sposób 18. Zmniejszenie wizualnego zagmatwania za pomocą zmiennej liczby argumentów pozycyjnych......Page 58
Sposób 19. Zdefiniowanie zachowania opcjonalnego za pomocą argumentów w postaci słów kluczowych......Page 60
Sposób 20. Użycie None i docstring w celu dynamicznego określenia argumentów domyślnych......Page 63
Sposób 21. Wymuszaj czytelność kodu, stosując jedynie argumenty w postaci słów kluczowych......Page 66
Sposób 22. Preferuj klasy pomocnicze zamiast słowników i krotek......Page 70
Sposób 23. Dla prostych interfejsów akceptuj funkcje zamiast klas......Page 75
Sposób 24. Użycie polimorfizmu @classmethod w celu ogólnego tworzenia obiektów......Page 79
Sposób 25. Inicjalizacja klasy nadrzędnej za pomocą wywołania super()......Page 84
Sposób 26. Wielokrotnego dziedziczenia używaj jedynie w klasach narzędziowych......Page 88
Sposób 27. Preferuj atrybuty publiczne zamiast prywatnych......Page 92
Sposób 28. Dziedziczenie po collections.abc w kontenerach typów niestandardowych......Page 96
Sposób 29. Używaj zwykłych atrybutów zamiast metod typu getter i setter......Page 102
Sposób 30. Rozważ użycie @property zamiast refaktoryzacji atrybutów......Page 106
Sposób 31. Stosuj deskryptory, aby wielokrotnie wykorzystywać metody udekorowane przez @property......Page 110
Sposób 32. Używaj metod __getattr__(), __getattribute__() i __setattr__() dla opóźnionych atrybutów......Page 114
Sposób 33. Sprawdzaj podklasy za pomocą metaklas......Page 119
Sposób 34. Rejestruj istniejące klasy wraz z metaklasami......Page 121
Sposób 35. Adnotacje atrybutów klas dodawaj za pomocą metaklas......Page 125
Rozdział 5. Współbieżność i równoległość......Page 128
Sposób 36. Używaj modułu subprocess do zarządzania procesami potomnymi......Page 129
Sposób 37. Użycie wątków dla operacji blokujących wejście-wyjście, unikanie równoległości......Page 133
Sposób 38. Używaj klasy Lock, aby unikać stanu wyścigu w wątkach......Page 137
Sposób 39. Używaj klasy Queue do koordynacji pracy między wątkami......Page 140
Sposób 40. Rozważ użycie współprogramów w celu jednoczesnego wykonywania wielu funkcji......Page 147
Sposób 41. Rozważ użycie concurrent.futures(), aby otrzymać prawdziwą równoległość......Page 155
Sposób 42. Dekoratory funkcji definiuj za pomocą functools.wraps......Page 160
Sposób 43. Rozważ użycie poleceń contextlib i with w celu uzyskania wielokrotnego użycia konstrukcji try-finally......Page 163
Sposób 44. Niezawodne użycie pickle wraz z copyreg......Page 166
Sposób 45. Podczas obsługi czasu lokalnego używaj modułu datetime zamiast time......Page 171
Sposób 46. Używaj wbudowanych algorytmów i struktur danych......Page 175
Sposób 47. Gdy ważna jest precyzja, używaj modułu decimal......Page 180
Sposób 48. Kiedy szukać modułów opracowanych przez społeczność?......Page 182
Sposób 49. Dla każdej funkcji, klasy i modułu utwórz docstring......Page 184
Sposób 50. Używaj pakietów do organizacji modułów i dostarczania stabilnych API......Page 188
Sposób 51. Zdefiniuj główny wyjątek Exception w celu odizolowania komponentu wywołującego od API......Page 193
Sposób 52. Zobacz, jak przerwać krąg zależności......Page 196
Sposób 53. Używaj środowisk wirtualnych dla odizolowanych i powtarzalnych zależności......Page 201
Sposób 54. Rozważ użycie kodu o zasięgu modułu w celu konfiguracji środowiska wdrożenia......Page 208
Sposób 55. Używaj ciągów tekstowych repr do debugowania danych wyjściowych......Page 211
Sposób 56. Testuj wszystko za pomocą unittest......Page 214
Sposób 57. Rozważ interaktywne usuwanie błędów za pomocą pdb......Page 217
Sposób 58. Przed optymalizacją przeprowadzaj profilowanie......Page 219
Sposób 59. Stosuj moduł tracemalloc, aby poznać sposób użycia pamięci i wykryć jej wycieki......Page 223
Skorowidz......Page 226
Sposób 2. Stosuj styl PEP 8......Page 18
Sposób 3. Różnice między typami bytes, str i unicode......Page 20