D
Z Wikibooks, biblioteki wolnych podręczników.
Witaj w kursie programowania w języku D na Wikibooks. Podręcznik ten przybliży w szybki sposób składnie języka, jego możliwości oraz zastosowania. Znajdziesz tutaj również opis wielu przydatnych funkcji dostępnych w bibliotece standardowej.
Podręcznik jest w początkowej fazie rozwoju. Bardzo zachęcamy do współpomocy przy jego rozwoju - choćby tłumaczenia odpowiednich fragmentów z angielskiej wersji podręcznika (polska wersja w założeniu rozwija się samodzielnie od podstaw, ponieważ nie uważamy że wersja angielska jest najlepsza, lecz fragmenty na pewno się przydadzą). Warto również skorzystać z tego co jest na stronie o programowaniu w C.
Spis treści |
[edytuj] Spis treści
[edytuj] Wstęp
- O podręczniku

- podstawowe informacje, o autorach i jak pomóc - O języku

- historia i zastosowania języka D - Czego potrzebujesz

- informacje o niezbędnych narzędziach - Używanie kompilatora

- korzystanie z podstawowych narzędzi
[edytuj] D dla początkujących
- Pierwszy program

- wstęp do składni języka, przykładowe programy, pierwsza kompilacja i uruchomienie - Podstawowe wiadomości

- czym jest, jak działa oraz co może D - Zmienne w D

- użycie, typy, modyfikatory, stałe, konwersje - Podstawowe procedury wejścia i wyjścia

- czym jest wejście-wyjście, korzystanie z podstawowych funkcji - Podstawowe operacje matematyczne

- matematyka w języku D, operatory matematyczne - Instrukcje sterujące

- if, switch, for, while, foreach - Funkcje

- pojęcie funkcji i procedury - Tablice

- pojęcie tablicy, operacje na tablicy; tablice dynamiczne i assocjasyjne. - Napisy

- przechowywanie, operacje, konwersje - Kontrakty

- programowanie kontraktowe, assercje, testy jednostkowe, czyli jak zabezpieczyć się przed błędami - Biblioteka standardowa

- jak korzystać z plików biblioteki standardowej; importowanie innych modułów - Ćwiczenia

[edytuj] Zaawansowany D
- Typy złożone

- deklarowanie własnych typów, typy wyliczeniowe, unie i struktury - Obsługa plików

- odczyt i zapis do pliku, operacje na plikach i katalogach - Więcej o kompilowaniu

- jak działa kompilator, używanie plików Makefile oraz programu Build - Zaawansowane operacje matematyczne

- używanie funkcji matematycznych, operacje na liczbach zespolonych - Przeciążanie funkcji

- po co i jak przeciązać funkcje - Wskaźniki

- wskaźniki, zarządzenie pamięcią - Powszechne praktyki

- kilka dobrych zwyczajów programisty D - Przenośność programów

- kilka ważnych informacji nt. przenośności programów napisanych w języku D - Łączenie z innymi językami

- łączenie języka D z innymi językami programowania (C, Python, Fortran) - Ćwiczenia

[edytuj] Obiekty w D
- Programowanie obiektowe

- idea klas i obiektów, pól i metod - Konstruktor i destruktor

- konstruktor i destruktor, więcej o zarządzaniu pamięcią w D - Moduły

- jak pisać własne moduły, czyli podzielić program na wiele części - Przeładowywanie operatorów

- jak ułatwić korzystanie z pewnych obiektów - Dziedziczenie i interfejsy

- jak rozszerzyć już istniejącą klasę - Składniki statyczne

- pola i metody statyczne - Kontrakty w obiektach

- kontrakty w metodach, testy jednostkowe, niezmienniki obiektów - Kontrola dostępu

- dostęp publiczny i prywatny - Ćwiczenia

[edytuj] D dla wtajemniczonych
- Wyjątki

- sytuacje wyjątkowe w D oraz ich obsługa - Kompilacja warunkowa

- generacja różnego kodu na etapie kompilacji (version, debug) - Szablony

- idea szablonów (template), interakcja z kompilatorem (pragma) - Mixiny

- czyli programy piszące inne programy - Funkcje czasu kompilacji

- wywoływanie funkcji w czasie kompilacji - Delegaty i leniwa ewaluacja

- elementy programowania funkcyjnego - Krotki typów

- TypeTuple, czyli manipulowanie zbiorami typów i szablonami o zmiennej ilości argumentów - Metaprogramowanie

- czyli połączenie templetów, mixinów i funkcji czasu kompilacji - Wątki

- Programowanie wielowątkowe (thread, synchronized) - Odpluskwianie

- Używanie debugera gdb do znajdywania błędów w programach - Profilowanie oraz analiza pokrycia

- Między innymi, jak mierzyć ile czasu zajmuje wykonanie różnych cześci programu, które fragmenty zoptymalizować oraz czy nasz program jest dobrze przetestowany
[edytuj] Dodatki
- Wprowadzenie dla programistów C/C++

- Super szybkie wprowadzenie dla programistów z języków C/C++ (skrót rozdziału "D dla początkujących") - Wyrażenia regularne

- Wprowadzenie do obsługi wyrażeń regularnych w D - DFL

- Wprowadzenie do osługi interfejsu graficznego poprzez bibliotekę DFL - Bazy danych

- Wprowadzenie do obsługi baz danych w D - Programowanie sieciowe

- Proste aplikacje typu klient-serwer w D - Indeks słów kluczowych

- Indeks słów kluczowych języka D wraz z odnośnikami do pierwszego użycia w podręczniku - Test

- Kilka testów wraz z odpowiedziami, które pomogą tobie ocenić znajomość języka oraz przygotują na ewentualny egzamin.