Kategorien
E-Books
-
Wirtschaft
- Bitcoin
- Geschäftsfrau
- Coaching
- Controlling
- E-Business
- Ökonomie
- Finanzen
- Börse und Investitionen
- Persönliche Kompetenzen
- Computer im Büro
- Kommunikation und Verhandlungen
- Kleines Unternehmen
- Marketing
- Motivation
- Multimedia-Training
- Immobilien
- Überzeugung und NLP
- Steuern
- Sozialpolitik
- Handbȕcher
- Präsentationen
- Führung
- Public Relation
- Berichte, Analysen
- Geheimnis
- Social Media
- Verkauf
- Start-up
- Ihre Karriere
- Management
- Projektmanagement
- Personal (HR)
-
Für Kinder
-
Für Jugendliche
-
Bildung
-
Enzyklopädien, Wörterbücher
-
E-Presse
- Architektura i wnętrza
- Biznes i Ekonomia
- Haus und Garten
- E-Business
- Finanzen
- Persönliche Finanzen
- Unternehmen
- Fotografie
- Informatik
- HR und Gehaltsabrechnung
- Computer, Excel
- Buchhaltung
- Kultur und Literatur
- Wissenschaftlich und akademisch
- Umweltschutz
- meinungsbildend
- Bildung
- Steuern
- Reisen
- Psychologie
- Religion
- Landwirtschaft
- Buch- und Pressemarkt
- Transport und Spedition
- Gesundheit und Schönheit
-
Geschichte
-
Informatik
- Office-Programme
- Datenbank
- Bioinformatik
- IT Branche
- CAD/CAM
- Digital Lifestyle
- DTP
- Elektronik
- Digitale Fotografie
- Computergrafik
- Spiele
- Hacking
- Hardware
- IT w ekonomii
- Wissenschaftliche Pakete
- Schulbücher
- Computergrundlagen
- Programmierung
- Mobile-Programmierung
- Internet-Server
- Computernetzwerke
- Start-up
- Betriebssysteme
- Künstliche Inteligenz
- Technik für Kinder
- Webmaster
-
Andere
-
Fremdsprachen lernen
-
Kultur und Kunst
-
Lektüre
-
Literatur
- Anthologien
- Ballade
- Biografien und Autobiografien
- Für Erwachsene
- Drama
- Tagebücher, Memoiren, Briefe
- Epos
- Essay
- Science Fiction
- Felietonys
- Fiktion
- Humor, Satire
- Andere
- Klassisch
- Krimi
- Sachbücher
- Belletristik
- Mity i legendy
- Nobelpreisträger
- Kurzgeschichten
- Gesellschaftlich
- Okultyzm i magia
- Erzählung
- Erinnerungen
- Reisen
- Gedicht
- Poesie
- Politik
- Populärwissenschaftlich
- Roman
- Historischer Roman
- Prosa
- Abenteuer
- Journalismus
- Reportage
- Romans i literatura obyczajowa
- Sensation
- Thriller, Horror
- Interviews und Erinnerungen
-
Naturwissenschaften
-
Sozialwissenschaften
-
Schulbücher
-
Populärwissenschaft und akademisch
- Archäologie
- Bibliotekoznawstwo
- Filmwissenschaft
- Philologie
- Polnische Philologie
- Philosophie
- Finanse i bankowość
- Erdkunde
- Wirtschaft
- Handel. Weltwirtschaft
- Geschichte und Archäologie
- Kunst- und Architekturgeschichte
- Kulturwissenschaft
- Linguistik
- Literaturwissenschaft
- Logistik
- Mathematik
- Medizin
- Geisteswissenschaften
- Pädagogik
- Lehrmittel
- Populärwissenschaftlich
- Andere
- Psychologie
- Soziologie
- Theatrologie
- Teologie
- Theorien und Wirtschaftswissenschaften
- Transport i spedycja
- Sportunterricht
- Zarządzanie i marketing
-
Handbȕcher
-
Spielanleitungen
-
Professioneller und fachkundige Leitfaden
-
Jura
- Sicherheit und Gesundheit am Arbeitsplatz
- Geschichte
- Verkehrsregeln. Führerschein
- Rechtswissenschaften
- Gesundheitswesen
- Allgemeines. Wissenskompendium
- akademische Bücher
- Andere
- Bau- und Wohnungsrecht
- Zivilrecht
- Finanzrecht
- Wirtschaftsrecht
- Wirtschafts- und Handelsrecht
- Strafrecht
- Strafrecht. Kriminelle Taten. Kriminologie
- Internationales Recht
- Internationales und ausländisches Recht
- Gesundheitsschutzgesetz
- Bildungsrecht
- Steuerrecht
- Arbeits- und Sozialversicherungsrecht
- Öffentliches, Verfassungs- und Verwaltungsrecht
- Familien- und Vormundschaftsrecht
- Agrarrecht
- Sozialrecht, Arbeitsrecht
- EU-Recht
- Industrie
- Agrar- und Umweltschutz
- Wörterbücher und Enzyklopädien
- Öffentliche Auftragsvergabe
- Management
-
Führer und Reisen
- Afrika
- Alben
- Südamerika
- Mittel- und Nordamerika
- Australien, Neuseeland, Ozeanien
- Österreich
- Asien
- Balkan
- Naher Osten
- Bulgarien
- China
- Kroatien
- Tschechische Republik
- Dänemark
- Ägypten
- Estland
- Europa
- Frankreich
- Berge
- Griechenland
- Spanien
- Niederlande
- Island
- Litauen
- Lettland
- Mapy, Plany miast, Atlasy
- Miniführer
- Deutschland
- Norwegen
- Aktive Reisen
- Polen
- Portugal
- Andere
- Russland
- Rumänien
- Slowakei
- Slowenien
- Schweiz
- Schweden
- Welt
- Türkei
- Ukraine
- Ungarn
- Großbritannien
- Italien
-
Psychologie
- Lebensphilosophien
- Kompetencje psychospołeczne
- zwischenmenschliche Kommunikation
- Mindfulness
- Allgemeines
- Überzeugung und NLP
- Akademische Psychologie
- Psychologie von Seele und Geist
- Arbeitspsychologie
- Relacje i związki
- Elternschafts- und Kinderpsychologie
- Problemlösung
- Intellektuelle Entwicklung
- Geheimnis
- Sexualität
- Verführung
- Aussehen ind Image
- Lebensphilosophien
-
Religion
-
Sport, Fitness, Diäten
-
Technik und Mechanik
Hörbücher
-
Wirtschaft
- Bitcoin
- Geschäftsfrau
- Coaching
- Controlling
- E-Business
- Ökonomie
- Finanzen
- Börse und Investitionen
- Persönliche Kompetenzen
- Kommunikation und Verhandlungen
- Kleines Unternehmen
- Marketing
- Motivation
- Immobilien
- Überzeugung und NLP
- Steuern
- Handbȕcher
- Präsentationen
- Führung
- Public Relation
- Geheimnis
- Social Media
- Verkauf
- Start-up
- Ihre Karriere
- Management
- Projektmanagement
- Personal (HR)
-
Für Kinder
-
Für Jugendliche
-
Bildung
-
Enzyklopädien, Wörterbücher
-
Geschichte
-
Informatik
-
Andere
-
Fremdsprachen lernen
-
Kultur und Kunst
-
Lektüre
-
Literatur
- Anthologien
- Ballade
- Biografien und Autobiografien
- Für Erwachsene
- Drama
- Tagebücher, Memoiren, Briefe
- Epos
- Essay
- Science Fiction
- Felietonys
- Fiktion
- Humor, Satire
- Andere
- Klassisch
- Krimi
- Sachbücher
- Belletristik
- Mity i legendy
- Nobelpreisträger
- Kurzgeschichten
- Gesellschaftlich
- Okultyzm i magia
- Erzählung
- Erinnerungen
- Reisen
- Poesie
- Politik
- Populärwissenschaftlich
- Roman
- Historischer Roman
- Prosa
- Abenteuer
- Journalismus
- Reportage
- Romans i literatura obyczajowa
- Sensation
- Thriller, Horror
- Interviews und Erinnerungen
-
Naturwissenschaften
-
Sozialwissenschaften
-
Populärwissenschaft und akademisch
- Archäologie
- Philosophie
- Wirtschaft
- Handel. Weltwirtschaft
- Geschichte und Archäologie
- Kunst- und Architekturgeschichte
- Kulturwissenschaft
- Literaturwissenschaft
- Mathematik
- Medizin
- Geisteswissenschaften
- Pädagogik
- Lehrmittel
- Populärwissenschaftlich
- Andere
- Psychologie
- Soziologie
- Teologie
- Zarządzanie i marketing
-
Handbȕcher
-
Professioneller und fachkundige Leitfaden
-
Jura
-
Führer und Reisen
-
Psychologie
- Lebensphilosophien
- zwischenmenschliche Kommunikation
- Mindfulness
- Allgemeines
- Überzeugung und NLP
- Akademische Psychologie
- Psychologie von Seele und Geist
- Arbeitspsychologie
- Relacje i związki
- Elternschafts- und Kinderpsychologie
- Problemlösung
- Intellektuelle Entwicklung
- Geheimnis
- Sexualität
- Verführung
- Aussehen ind Image
- Lebensphilosophien
-
Religion
-
Sport, Fitness, Diäten
-
Technik und Mechanik
Videokurse
-
Datenbank
-
Big Data
-
Biznes, ekonomia i marketing
-
Cybersicherheit
-
Data Science
-
DevOps
-
Für Kinder
-
Elektronik
-
Grafik / Video / CAX
-
Spiele
-
Microsoft Office
-
Entwicklungstools
-
Programmierung
-
Persönliche Entwicklung
-
Computernetzwerke
-
Betriebssysteme
-
Softwaretest
-
Mobile Geräte
-
UX/UI
-
Web development
-
Management
Podcasts
- E-Books
- Programmierung
- Java
- Programowanie w języku Kotlin. The Big Nerd Ranch Guide
Details zum E-Book
Gdy w 2017 roku na konferencji Google ogłoszono, że Kotlin jest jednym z oficjalnie wspieranych języków programowania aplikacji dla Androida, język ten błyskawicznie stał się popularny. Najpoważniejsze firmy technologiczne doceniają jego zalety, takie jak zwarta składnia i integracja z kodem Javy. Co ważne, twórcy Kotlina czerpali z doświadczeń projektantów Javy i zapewnili, że te dwa języki są ze sobą ściśle powiązane. W ten sposób świeżość rozwiązań i nowoczesne mechanizmy zostały znakomicie połączone z najlepszymi cechami Javy, a Kotlin stał się wszechstronnym wieloplatformowym językiem programowania.
Ta książka jest przeznaczona dla programistów, którzy chcą poznać język o możliwościach wykraczających poza Javę i pisać solidne aplikacje dla różnych platform. Pozwala w praktyczny sposób zapoznać się z unikalnymi możliwościami Kotlina i - na podstawie licznych przykładowych projektów - stopniowo zgłębiać złożone zagadnienia. Znakomitym uzupełnieniem prezentowanych treści są informacje o wewnętrznych mechanizmach działania języka wraz z ćwiczeniami do samodzielnego wykonania. Dzięki tej książce nawet początkujący programista szybko zacznie pisać efektywne i solidne aplikacje, które będą służyć użytkownikom różnych platform.
W tej książce między innymi:
- wprowadzenie do Kotlina
- funkcje w Kotlinie, w tym funkcje anonimowe
- praca na obiektach: dziedziczenie, klasy, klasy abstrakcyjne
- programowanie funkcyjne w Kotlinie
- najciekawsze biblioteki i współdziałanie z Javą
Big Nerd Ranch mieści się w Atlancie w USA. Firma została założona w 2001 roku przez Aarona Hillegassa, znakomitego programistę i trenera programowania. Jej misją jest krzewienie wiedzy o rozwijających się technologiach mobilnych. Słynie ze świetnych szkoleń i znakomitych trenerów.
Kotlin: najlepsze rozwiązania nie tylko dla Androida!
Podziękowania 13
Przedstawienie Kotlina 15
- Dlaczego Kotlin? 15
- Dla kogo jest przeznaczona ta książka? 16
- Jak korzystać z tej książki? 16
- Dla ciekawskich 17
- Wyzwania 17
- Konwencje typograficzne 17
- Patrząc w przyszłość 17
1. Pierwsza aplikacja w Kotlinie 19
- Instalowanie IntelliJ IDEA 19
- Pierwszy projekt programu w Kotlinie 20
- Tworzenie pierwszego pliku źródłowego w Kotlinie 25
- Wykonywanie pliku źródłowego 27
- Kotlin REPL 29
- Dla ciekawskich: Dlaczego warto używać właśnie IntelliJ? 30
- Dla ciekawskich: Pisanie kodu przeznaczonego na JVM 31
- Wyzwanie: Arytmetyka REPL 32
2. Zmienne, stałe i typy 33
- Typy 33
- Deklarowanie zmiennych 34
- Wbudowane typy języka Kotlin 36
- Zmienne tylko do odczytu 37
- Wnioskowanie typów 40
- Stałe czasu kompilacji 41
- Oglądanie kodów bajtowych 42
- Dla ciekawskich: Podstawowe typy danych Javy w Kotlinie 45
- Wyzwanie: hasSteed 46
- Wyzwanie: Szynk Hipolit'a 46
- Wyzwanie: Magiczne lustro 46
3. Instrukcje warunkowe 47
- Instrukcje if/else 47
- Dodawanie kolejnych warunków 50
- Zagnieżdżone instrukcje if/else 52
- Bardziej eleganckie wyrażenia warunkowe 53
- Zakresy 59
- Wyrażenia when 60
- Szablony łańcuchowe 62
- Wyzwanie: Eksperymenty z zakresami 64
- Wyzwanie: Rozbudowa aury 64
- Wyzwanie: Konfigurowalny format statusu 65
4. Funkcje 67
- Wyodrębnianie kodu do funkcji 67
- Anatomia funkcji 69
- Nagłówek funkcji 70
- Ciało funkcji 72
- Zasięg funkcji 73
- Wywoływanie funkcji 74
- Refaktoryzacja funkcji 75
- Pisanie własnych funkcji 76
- Argumenty domyślne 78
- Funkcje jednowyrażeniowe 79
- Funkcje typu Unit 80
- Nazwane argumenty funkcji 81
- Dla ciekawskich: Typ Nothing 82
- Dla ciekawskich: Funkcje plikowe w Javie 83
- Dla ciekawskich: Przeciążanie funkcji 84
- Dla ciekawskich: Nazwy funkcji w odwrotnych apostrofach 85
- Wyzwanie: Funkcje jednowyrażeniowe 87
- Wyzwanie: Poziom upojenia magicznego 87
- Wyzwanie: Status upojenia magicznego 87
5. Funkcje anonimowe i typ funkcyjny 89
- Funkcje anonimowe 89
- Typ funkcyjny 91
- Niejawne instrukcje return 92
- Argumenty funkcyjne 92
- Słowo kluczowe it 93
- Akceptowanie wielu argumentów 94
- Wsparcie dla wnioskowania typów 95
- Definiowanie funkcji akceptujących inne funkcje 96
- Składnia skrócona 97
- Wpisywanie funkcji 98
- Referencje funkcji 99
- Typ funkcyjny jako typ wyniku 100
- Dla ciekawskich: Funkcje lambda w Kotlinie są domknięciami 102
- Dla ciekawskich: Funkcje lambda a anonimowe klasy wewnętrzne 102
6. Bezpieczeństwo wartości pustych i wyjątki 105
- Akceptowanie wartości pustych 105
- Jawny typ null w Kotlinie 107
- W czasie kompilacji czy w czasie wykonywania? 108
- Bezpieczeństwo wartości pustych 109
- Opcja pierwsza: bezpieczny operator wywołania 110
- Opcja druga: operator podwójnego wykrzyknika 111
- Opcja trzecia: użycie if do sprawdzania, czy wartość jest równa null 112
- Wyjątki 115
- Zgłaszanie wyjątków 116
- Niestandardowe wyjątki 117
- Obsługa wyjątków 118
- Warunki wstępne 120
- Null: do czego się przydaje? 122
- Dla ciekawskich: Wyjątki sprawdzane i niesprawdzane 123
- Dla ciekawskich: Jak wymuszana jest możliwość stosowania wartości null? 123
7. Łańcuchy 125
- Pobieranie fragmentów łańcuchów 125
- Funkcja substring 125
- Funkcja split 127
- Operacje na łańcuchach 129
- Łańcuchy są niezmienne 131
- Porównywanie łańcuchów 131
- Dla ciekawskich: Unicode 133
- Dla ciekawskich: Przeglądanie znaków w łańcuchu 133
- Wyzwanie: Usprawnianie smoczej mowy 134
8. Liczby 135
- Typy liczbowe 135
- Liczby całkowite 136
- Liczby dziesiętne 138
- Konwersja łańcuchów na typy liczbowe 138
- Konwersja typu Int na Double 139
- Formatowanie wartości typu Double 141
- Konwertowanie wartości typu Double na Int 142
- Dla ciekawskich: Operacje bitowe 143
- Wyzwanie: Pozostałe kwaterki 144
- Wyzwanie: Obsługa ujemnego stanu sakiewki 144
- Wyzwanie: Smoczykojn 145
9. Funkcje standardowe 147
- Funkcja apply 147
- Funkcja let 148
- Funkcja run 149
- Funkcja with 150
- Funkcja also 151
- Funkcja takeIf 151
- Funkcja takeUnless 152
- Stosowanie funkcji standardowych 152
10. Listy i zbiory 155
- Listy 155
- Dostęp do elementów listy 157
- Zmienianie zawartości listy 159
- Iteracja 163
- Wczytywanie pliku do listy 167
- Destrukturyzacja 169
- Zbiory 169
- Tworzenie zbiorów 169
- Dodawanie elementów do zbioru 171
- Pętle while 173
- Wyrażenie break 175
- Konwersje kolekcji 175
- Dla ciekawskich: Typy tablicowe 176
- Dla ciekawskich: Tylko do odczytu a niezmienny 177
- Wyzwanie: Formatowanie menu gospody 178
- Wyzwanie: Zaawansowane formatowanie menu 179
11. Mapy 181
- Tworzenie map 181
- Dostęp do wartości mapy 183
- Dodawanie elementów do map 183
- Modyfikowanie wartości mapy 186
- Wyzwanie: Wykidajło 190
12. Definiowanie klas 191
- Definiowanie klasy 191
- Tworzenie instancji 191
- Funkcje klasowe 192
- Widoczność i hermetyzacja 194
- Właściwości klas 195
- Akcesory get i set i ich właściwości 197
- Widoczność właściwości 200
- Właściwości obliczane 200
- Refaktoryzacja kodu projektu NyetHack 201
- Stosowanie pakietów 209
- Dla ciekawskich: Bliższe spojrzenie na właściwości var i val 210
- Dla ciekawskich: Zapobieganie występowaniu wyścigu 213
- Dla ciekawskich: prywatny w pakiecie 214
13. Inicjalizacja 217
- Konstruktory 218
- Konstruktory podstawowe 218
- Definiowanie właściwości w konstruktorze podstawowym 219
- Konstruktory dodatkowe 220
- Argumenty domyślne 221
- Argumenty nazwane 222
- Blok inicjalizatora 223
- Inicjalizacja właściwości 224
- Kolejność inicjalizacji 227
- Odraczanie inicjalizacji 228
- Inicjalizacja opóźniona 228
- Inicjalizacja leniwa 229
- Dla ciekawskich: Kruczki inicjalizacji 231
- Wyzwanie: Zagadka Excalibura 233
14. Dziedziczenie 235
- Definiowanie klasy Room 235
- Tworzenie klas pochodnych 236
- Sprawdzanie typów 242
- Hierarchia typów w języku Kotlin 244
- Rzutowanie typów 245
- Inteligentne rzutowanie 246
- Dla ciekawskich: Klasa Any 247
15. Obiekty 249
- Słowo kluczowe object 249
- Deklaracje obiektów 250
- Wyrażenie obiektowe 255
- Obiekty uzupełniające 255
- Klasy zagnieżdżone 256
- Klasy danych 259
- Funkcja toString 260
- Funkcja equals 261
- Funkcja copy 261
- Deklaracje destrukturyzujące 261
- Klasy wyliczeniowe 263
- Przeciążanie operatorów 264
- Eksplorowanie świata NyetHack 266
- Dla ciekawskich: Definiowanie porównań strukturalnych 269
- Dla ciekawskich: Algebraiczne typy danych 271
- Wyzwanie: Polecenie "Wyjdź" 273
- Wyzwanie: Implementacja mapy świata 274
- Wyzwanie: Dzwonimy 274
16. Interfejsy i klasy abstrakcyjne 275
- Definiowanie interfejsów 275
- Implementacja interfejsu 276
- Domyślne implementacje 279
- Klasy abstrakcyjne 279
- Walka w świecie NyetHack 282
17. Typy sparametryzowane 287
- Definiowanie typów sparametryzowanych 287
- Funkcje sparametryzowane 289
- Wiele parametrów typów sparametryzowanych 290
- Ograniczenia typów sparametryzowanych 291
- vararg i get 293
- in i out 295
- Dla ciekawskich: Słowo kluczowe reified 299
18. Rozszerzenia 303
- Definiowanie funkcji rozszerzenia 303
- Definiowanie rozszerzenia dla klasy bazowej 304
- Sparametryzowane funkcje rozszerzeń 305
- Właściwości rozszerzające 307
- Rozszerzenia dla typów akceptujących wartości puste 308
- Funkcje rozszerzeń - za kulisami 309
- Wyodrębnianie kodu do rozszerzeń 310
- Definiowanie plików rozszerzeń 311
- Zmiana nazwy rozszerzenia 313
- Rozszerzenia w standardowej bibliotece Kotlina 314
- Dla ciekawskich: Literały funkcyjne z odbiorcami 315
- Wyzwanie: Funkcja rozszerzenia toDragonSpeak 316
- Wyzwanie: Funkcja rozszerzenia frame 316
19. Podstawy programowania funkcyjnego 319
- Kategorie funkcji 319
- Przekształcenia 319
- Filtry 321
- Złączenia 323
- Dlaczego programowanie funkcyjne? 324
- Sekwencje 325
- Dla ciekawskich: Profilowanie 326
- Dla ciekawskich: Arrow.kt 327
- Wyzwanie: Odwracanie wartości w mapie 328
- Wyzwanie: Zastosowanie programowania funkcyjnego w pliku Tavern.kt 328
- Wyzwanie: Ruchome okno 329
20. Współdziałanie z Javą 331
- Współdziałanie z klasami Javy 331
- Współdziałanie a stosowanie wartości pustych 332
- Odwzorowywanie typów 335
- Akcesory get, set i współdziałanie 337
- Więcej niż tylko klasy 339
- Wyjątki a współdziałanie 347
- Typy funkcyjne w Javie 350
21. Tworzenie w Kotlinie pierwszej aplikacji na Androida 353
- Android Studio 353
- Konfiguracja Gradle 356
- Organizacja projektu 359
- Definiowanie interfejsu użytkownika 359
- Uruchamianie aplikacji w emulatorze 362
- Generowanie postaci 363
- Klasa aktywności 365
- Podłączanie widoków 366
- Syntetyczne właściwości rozszerzeń Kotlina dla Androida 368
- Tworzenie obiektu nasłuchującego kliknięć 370
- Zapisany stan instancji 371
- Odczyt zapisanego stanu instancji 374
- Refaktoryzacja do postaci rozszerzeń 374
- Dla ciekawskich: Biblioteki Kotlin KTX i Anko 377
22. Wprowadzenie do Kotlin Coroutines 379
- Parsowanie danych postaci 379
- Pobieranie rzeczywistych danych 381
- Główny wątek aplikacji na Androida 384
- Włączanie koprocedur 385
- Tworzenie koprocedur przy użyciu funkcji async 385
- Funkcje launch a async i await 387
- Funkcje zawieszające 387
- Wyzwanie: Rzeczywiste dane 388
- Wyzwanie: Minimalna siła 388
23. Posłowie 389
- Co dalej? 389
- Bezwstydna reklama 389
- Dziękujemy! 390
A. Więcej wyzwań 393
- Korzystanie z Exercism 393
Skorowidz 401
- Titel: Programowanie w języku Kotlin. The Big Nerd Ranch Guide
- Autor: Josh Skeen, David Greenhalgh
- Originaler Titel: Kotlin Programming: The Big Nerd Ranch Guide
- Übersetzung: Piotr Rajca
- ISBN: 978-83-283-5537-8, 9788328355378
- Veröffentlichungsdatum: 2019-10-11
- Format: E-book
- Artikelkennung: prokot
- Verleger: Helion