-
nowość
Programuj ze sztuczną inteligencją. Twórz kod w Pythonie z wykorzystaniem GitHub Copilot i ChatGPT - ebook
Programuj ze sztuczną inteligencją. Twórz kod w Pythonie z wykorzystaniem GitHub Copilot i ChatGPT - ebook
Nie jesteś w stanie konkurować ze sztuczną inteligencją. Zamiast tego sprawdź, jak może wspomagać Twoją pracę.
Srihari Sridharan, Thoughtworks
Wyobraź sobie, że zamiast mozolnego pisania kodu linijka po linijce opisujesz w języku naturalnym, jak ma działać gotowy program. I po chwili Twój ulubiony asystent AI, taki jak GitHub Copilot, generuje dobry, działający kod!
Książka w mistrzowski sposób łączy podstawy programowania ze skutecznym zastosowaniem narzędzi sztucznej inteligencji do tworzenia kodu!
Mehran Sahami, Uniwersytet Stanforda
Dzięki tej książce przekonasz się, że tak właśnie wygląda praca programisty przyszłości. W trakcie nauki opanujesz Pythona na tyle, by rozumieć i ulepszać kod, który tworzy Copilot. Dowiesz się, jak z jego użyciem tworzyć własne gry, narzędzia i inne proste aplikacje. Zdziwisz się, jak szybko możesz przejść od pomysłu do gotowego programu! Znajdziesz tu wszystkie potrzebne instrukcje zapisane przejrzyście krok po kroku: od prostych projektów, takich jak program sprawdzający siłę hasła, po narzędzia automatyzujące żmudne zadania.
W książce:
- skuteczne prompty, które generują działający kod Pythona
- zasady dekompozycji złożonych pomysłów na mniejsze, zrozumiałe dla AI części
- zastosowanie AI do testowania i ulepszania kodu
- podstawy projektowania programów komputerowych
Ta książka niewiarygodnie przyspiesza naukę programowania z Copilotem!
Austin Z. Henley, Microsoft
Wartościowa lektura dla każdego, kto szuka niekonwencjonalnego sposobu nauki programowania.
Wei Luo, Deakin University
Spis treści
Słowo wstępne
Podziękowania
Wprowadzenie
O autorach
1. Programowanie wspomagane sztuczną inteligencją z GitHub Copilot
- 1.1. Doskonalenie komunikacji z komputerami
- 1.1.1. Jak to nieco ułatwić?
- 1.1.2. Znaczne ułatwienie
- 1.2. O technologii
- 1.2.1. Python, Twój język programowania
- 1.2.2. GitHub Copilot, Twój asystent AI
- 1.2.3. Jak działa Copilot za kulisami - w 30 sekund
- 1.3. Jak Copilot zmienia sposób nauki programowania?
- 1.4. Co jeszcze może dla nas zrobić Copilot?
- 1.5. Zagrożenia i wyzwania związane z korzystaniem z Copilota
- 1.6. Potrzebne umiejętności
- 1.7. Obawy społeczne dotyczące asystentów programistycznych AI takich jak Copilot
- Podsumowanie
2. Pierwsze kroki z Copilotem
- 2.1. Przygotowanie komputera do rozpoczęcia nauki
- 2.2. Oprogramowanie, którego będziemy używać
- 2.2.1. Python
- 2.2.2. Visual Studio Code
- 2.2.3. Konto w serwisie GitHub
- 2.3. Konfiguracja systemu. Część 1.
- 2.4. Praca z Pythonem w Visual Studio Code
- 2.4.1. Przygotowanie katalogu roboczego
- 2.4.2. Sprawdzenie poprawności konfiguracji
- 2.5. Tworzenie i uruchamianie prostych programów
- 2.6. Konfiguracja systemu. Część 2.
- 2.6.1. Sprawdzanie poprawności działania Copilota
- 2.7. Rozwiązywanie typowych wyzwań związanych z Copilotem
- 2.8. Co dalej?
- 2.8.1. Jak będziemy pracować z Copilotem w tej książce?
- 2.8.2. Prezentacja wartości Copilota w zadaniu przetwarzania danych
- Podsumowanie
3. Projektowanie funkcji
- 3.1. Funkcje
- 3.1.1. Z czego składa się funkcja?
- 3.1.2. Korzystanie z funkcji
- 3.2. Cykl projektowania funkcji z Copilotem
- 3.3. Przykłady tworzenia dobrych funkcji z Copilotem
- 3.3.1. Wybór akcji Daniela
- 3.3.2. Hasło Leo
- 3.3.3. Tworzenie silnego hasła
- 3.3.4. Punktacja w Scrabble
- 3.3.5. Najlepsze słowo
- 3.4. Zalety funkcji
- 3.5. Zastosowania funkcji
- 3.6. Jakie zadanie powinna wykonywać funkcja?
- 3.6.1. Cechy dobrych funkcji
- 3.6.2. Przykłady dobrych (i złych) funkcji liści
- 3.7. Ćwiczenia
- Podsumowanie
4. Czytanie kodu Pythona. Część 1.
- 4.1. Dlaczego warto czytać kod?
- 4.2. Jak poprosić Copilota o wyjaśnienie kodu?
- 4.3. Dziesięć najważniejszych konstrukcji programistycznych, które musisz znać. Część 1.
- 4.3.1. Nr 1. Funkcje
- 4.3.2. Nr 2. Zmienne
- 4.3.3. Nr 3. Instrukcje warunkowe
- 4.3.4. Nr 4. Ciągi znaków
- 4.3.5. Nr 5. Listy
- 4.4. Ćwiczenia
- Podsumowanie
5. Czytanie kodu Pythona. Część 2.
- 5.1. Dziesięć najważniejszych konstrukcji programistycznych, które powinieneś znać. Część 2.
- 5.1.1. Nr 6. Pętle
- 5.1.2. Nr 7. Wcięcia
- 5.1.3. Nr 8. Słowniki
- 5.1.4. Nr 9. Pliki
- 5.1.5. Nr 10. Moduły
- 5.2. Ćwiczenia
- Podsumowanie
6. Testowanie i inżynieria promptów
- 6.1. Dlaczego testowanie kodu jest kluczowe?
- 6.2. Testy czarnej i białej skrzynki
- 6.2.1. Testy czarnej skrzynki
- 6.2.2. Jak wybrać odpowiednie przypadki testowe?
- 6.2.3. Testy białej skrzynki
- 6.3. Jak testować kod?
- 6.3.1. Testowanie z użyciem konsoli Pythona
- 6.3.2. Testowanie w pliku Pythona (nie będziemy tego robić w ten sposób)
- 6.3.3. Doctest
- 6.4. Ponowne spojrzenie na cykl projektowania funkcji z Copilotem
- 6.5. Pełny przykład testowania
- 6.5.1. Znajdowanie maksymalnej liczby uczniów, których można umieścić w rzędzie
- 6.5.2. Udoskonalanie promptu w celu znalezienia lepszego rozwiązania
- 6.5.3. Testowanie nowego rozwiązania
- 6.6. Kolejny pełny przykład testowania. Testowanie z użyciem plików
- 6.6.1. Jakie testy należy przeprowadzić?
- 6.6.2. Tworzenie funkcji
- 6.6.3. Testowanie funkcji
- 6.6.4. Typowe wyzwania związane z modułem doctest
- 6.7. Ćwiczenia
- Podsumowanie
7. Dekompozycja
- 7.1. Dekompozycja problemu
- 7.2. Krótkie przykłady projektowania metodą góra-dół
- 7.3. Sugestie poprawek pisowni
- 7.4. Korekta pisowni z użyciem projektowania góra-dół
- 7.5. Rozkładanie procesu na mniejsze części
- 7.5.1. Pobieranie listy słów z pliku
- 7.5.2. Tworzenie listy wszystkich możliwych słów
- 7.5.3. Generowanie listy wszystkich prawidłowych słów
- 7.6. Podsumowanie projektu góra-dół
- 7.7. Implementacja funkcji
- 7.7.1. Funkcja stwórz_listę_słów
- 7.7.2. Funkcja dodaj_literę
- 7.7.3. Funkcja usuń_literę
- 7.7.4. Funkcja zmień_literę
- 7.7.5. Funkcja wszystkie_możliwe_słowa
- 7.7.6. Funkcja wszystkie_prawidłowe_słowa
- 7.7.7. Funkcja pobierz_sugestie_pisowni
- 7.7.8. Funkcja sprawdź_pisownię
- 7.8. Ćwiczenia
- Podsumowanie
8. Debugowanie i lepsze zrozumienie kodu
- 8.1. Co powoduje powstawanie błędów w programach?
- 8.2. Jak znaleźć błąd?
- 8.2.1. Wykorzystanie instrukcji print do analizy działania kodu
- 8.2.2. Wykorzystanie debugera VS Code do analizy zachowania kodu
- 8.3. Jak naprawić błąd (gdy już go znajdziesz)?
- 8.3.1. Prośba o naprawę błędu za pomocą czatu z Copilotem
- 8.3.2. Przekazywanie Copilotowi nowego promptu dla całej funkcji
- 8.3.3. Przekazywanie Copilotowi ukierunkowanego promptu dla części funkcji
- 8.3.4. Samodzielne modyfikowanie kodu w celu naprawy błędu
- 8.4. Dostosowanie przepływu pracy z uwzględnieniem nowych umiejętności
- 8.5. Zastosowanie umiejętności debugowania w nowym problemie
- 8.6. Wykorzystanie debugera do lepszego zrozumienia kodu
- 8.7. Przestroga dotycząca debugowania
- 8.8. Ćwiczenia
- Podsumowanie
9. Automatyzacja żmudnych zadań
- 9.1. Dlaczego programiści tworzą narzędzia?
- 9.2. Jak wykorzystać Copilota do tworzenia narzędzi?
- 9.3. Przykład 1. Oczyszczanie tekstu wiadomości e-mail
- 9.3.1. Rozmowa z Copilotem
- 9.3.2. Tworzenie narzędzia do oczyszczania wiadomości e-mail
- 9.4. Przykład 2. Dodawanie tytułowych stron do plików PDF
- 9.4.1. Rozmowa z Copilotem
- 9.4.2. Tworzenie narzędzia
- 9.5. Przykład 3. Łączenie bibliotek zdjęć z telefonu
- 9.5.1. Rozmowa z Copilotem
- 9.5.2. Projektowanie góra-dół
- 9.5.3. Tworzenie narzędzia
- 9.6. Ćwiczenia
- Podsumowanie
10. Tworzenie gier
- 10.1. Programowanie gier
- 10.2. Wprowadzenie losowości
- 10.3. Przykład 1. Byki i krowy
- 10.3.1. Jak działa gra?
- 10.3.2. Projektowanie metodą góra-dół
- 10.3.3. Parametry i typy zwracanych wartości
- 10.3.4. Implementacja funkcji
- 10.3.5. Dodanie interfejsu graficznego do gry Byki i krowy
- 10.4. Przykład 2. Bogart
- 10.4.1. Jak działa gra?
- 10.4.2. Projektowanie metodą góra-dół
- 10.4.3. Implementacja funkcji
- 10.5. Ćwiczenia
- Podsumowanie
11. Tworzenie programu do identyfikacji autorstwa
- 11.1. Identyfikacja autorstwa
- 11.2. Identyfikacja autorstwa z użyciem projektowania typu góra-dół
- 11.3. Rozłożenie problemu przetwarzania na części składowe
- 11.3.1. Wyznaczanie profilu nieznanej książki
- 11.4. Podsumowanie projektu góra-dół
- 11.5. Implementacja funkcji
- 11.5.1. Funkcja oczyść_słowo
- 11.5.2. Funkcja średnia_długość_słowa
- 11.5.3. Funkcja różne_do_wszystkich
- 11.5.4. Funkcja użyte_dokładnie_raz_do_wszystkich
- 11.5.5. Funkcja podziel_ciąg
- 11.5.6. Funkcja wyodrębnij_zdania
- 11.5.7. Funkcja średnia_długość_zdania
- 11.5.8. Funkcja wyodrębnij_frazy
- 11.5.9. Funkcja średnia_złożoność_zdania
- 11.5.10. Funkcja utwórz_profil
- 11.5.11. Funkcja pobierz_wszystkie_profile
- 11.5.12. Funkcja uzyskaj_ocenę
- 11.5.13. Funkcja najniższa_ocena
- 11.5.14. Funkcja przetwarzaj_dane
- 11.5.15. Funkcja odgadnij_autora
- 11.6. Co dalej?
- 11.7. Ćwiczenia
- Podsumowanie
12. Dalsze kroki
- 12.1. Wzorce promptów
- 12.1.1. Wzorzec odwróconej komunikacji
- 12.1.2. Wzorzec osobowości
- 12.2. Ograniczenia i kierunki rozwoju
- 12.2.1. Gdzie Copilot (obecnie) ma trudności?
- 12.2.2. Czy Copilot to nowy język programowania?
- 12.3. Ćwiczenia
- Podsumowanie
Bibliografia
| Kategoria: | Programowanie |
| Zabezpieczenie: |
Watermark
|
| ISBN: | 978-83-289-3049-0 |
| Rozmiar pliku: | 7,6 MB |