Poznaj specyfikę języka Java i zostań mistrzem programowania
* Jak korzystać z bibliotek języka Java?
* Jak pisać funkcjonalny i klarowny kod?
* Jak stworzyć profesjonalny i efektowny program?
Język Java jest językiem obiektowym z dziedziczeniem jednobazowym. Wewnątrz każdej metody korzysta on ze zorientowanego na instrukcje stylu kodowania. Aby dobrze poznać jakikolwiek język, należy nauczyć się posługiwać jego regułami, zasadami i składnią — podobnie jest z językiem programowania. Jeśli chcesz zyskać możliwość efektywnego programowania w języku Java, powinieneś poznać struktury danych, operacje i udogodnienia, oferowane przez biblioteki standardowe, a także często stosowane i efektywne sposoby tworzenia kodu. Całą potrzebną Ci wiedzę znajdziesz właśnie w tym podręczniku.
W książce „Java. Efektywne programowanie” w sposób zrozumiały i klarowny przedstawiono zasady opisujące mechanizmy używane w najlepszych technikach programowania. Ten podręcznik podpowie Ci, jak najbardziej racjonalnie korzystać z języka Java oraz jego podstawowych bibliotek. Dowiesz się, jak stosować wyjątki przechwytywalne i wyjątki czasu wykonania, poznasz także zalety stosowania statycznych klas składowych. Opanujesz metody sprawdzania poprawności parametrów i projektowania sygnatur oraz wszelkie instrukcje, które pozwolą Ci na wydajne i profesjonalne programowanie.
* Tworzenie i usuwanie obiektów
* Klasy i interfejsy
* Zapewnianie niezmienności obiektu
* Projektowanie i dokumentowanie klas przeznaczonych do dziedziczenia
* Zalety stosowania statycznych klas składowych
* Typy ogólne
* Typy wyliczeniowe i adnotacje
* Metody
* Programowanie
* Wykorzystanie ogólnie przyjętych konwencji nazewnictwa
* Wyjątki
* Współbieżność i serializacja
* Dokumentowanie bezpieczeństwa dla wątków
Nie wystarczy samo poznanie języka Java. Trzeba wiedzieć, jak z niego efektywnie korzystać!
Java to wspaniałe narzędzie w rękach programisty. Ale nawet najlepsze narzędzie może zostać źle użyte. Istnieje wiele książek, które opisują ten język programowania, skupiając się na przedstawieniu jego składni. Ta książka jest zupełnie inna. Adresowana do osób znających już Javę, przedstawia 57 praktycznych zasad pisania efektywnego, poprawnego kodu.
Każda wskazówka to oddzielny podrozdział, przedstawiający opis problemu, przykłady poprawnego (i błędnego!) kodu, a także historie wzięte z doświadczenia autora. Dzięki książce zapoznasz się z idiomami właściwymi językowi Java oraz z istotnymi z praktycznego punktu widzenia wzorcami projektowymi.
Wskazówki dotyczą między innymi:
* Tworzenia i usuwania obiektów
* Pisania metod wspólnych dla wielu obiektów
* Klas i interfejsów
* Javowych odpowiedników konstrukcji znanych z C
* Pisania poprawnych metod
* Obsługi wyjątków
* Korzystania z wątków
* Serializacji obiektów
O autorze:
Joshua Bloch jest współautorem wielu bibliotek języka Java, takich jak Java Collections Framework i java.math, a także autorem licznych prac naukowych.
[więcej...]
Wyzwól swój twórczy potencjał
-- projektuj z programem CorelDraw X3 PL
* Poznaj możliwości CorelDraw X3 PL
* Naucz się korzystać ze wszystkich dostępnych narzędzi
* Daj upust swojej kreatywności i twórz niezwykłe projekty!
CorelDraw to jeden z najbardziej znanych i lubianych programów graficznych. Słynie z łatwości obsługi i ogromnej różnorodności zastosowań. Można wykorzystywać go na wiele różnych sposobów: do projektowania plakatów i reklam, szyldów i wizytówek, tworzenia rysunków technicznych, a nawet dokumentów tekstowych. Jednak z uwagi na to, że jego działanie jest oparte na innych zasadach niż działanie konkurencyjnych programów, nauka obsługi CorelDraw wymaga trochę czasu. Jeśli chcesz skrócić go do minimum, powinieneś mieć tę książkę.
Książka "CorelDraw X3 PL. Kurs" w sposób jasny i przejrzysty wprowadzi Cię w świat CorelDraw X3 PL, czyli trzynastej już wersji programu. W tym podręczniku każde kolejne działanie -- od instalacji na dysku do używania najbardziej wyrafinowanych narzędzi -- zostało dokładnie i szczegółowo opisane oraz zobrazowane. Stąd możesz dowiedzieć się, jak otwierać i zapisywać dokumenty, dodawać i modyfikować obiekty, stosować kolorowe wypełnienia, wstawiać tekst i używać efektów specjalnych. Proponowany tu kurs pozwoli Ci swobodnie i bez żadnego problemu tworzyć świetne projekty w tym programie.
Nauczysz się:
* Instalować i uruchamiać CorelDraw X3 PL
* Otwierać, zapisywać i drukować rysunki
* Wstawiać, rysować i wypełniać kolorem obiekty
* Kopiować, modyfikować, grupować obiekty
* Wpisywać i formatować tekst
* Stosować wypełnienia i krzywe Beziera
* Używać linijek i dynamicznych prowadnic
* Wykorzystywać efekty specjalne
Książki wydawnictwa z serii "Kurs" adresowane są do początkujących użytkowników komputerów, którzy chcą w krótkim czasie nabyć praktyczne umiejętności przydatne w karierze zawodowej i codziennej pracy. Napisane przystępnym językiem i bogato ilustrowane są wspaniałą pomocą w samodzielnej nauce.
* Przeznaczone dla początkujących
* Praktyczne zadania omówione krok po kroku
* Przystępny i zrozumiały język
* Liczne ilustracje
* Idealny do samodzielnej nauki
Odkryj CorelDraw X3 PL -- i zacznij projektować z przyjemnością
Flash MX to aplikacja o oszałamiających możliwościach. Dynamiczne prezentacje, łączenie grafiki z dźwiękiem, animacje -- to tylko część zastosowań tego najpopularniejszego narzędzia multimedialnego stworzonego na potrzeby Internetu. Jeśli chcesz wzbogacić swoje strony WWW o atrakcyjne animacje -- po prostu sięgnij po tę książkę. Bez zbędnych opisów wprowadzi Cię ona w świat Flasha MX.
Dowiesz się:
* Jak funkcjonuje środowisko Flash i jakie nowości wprowadzono w wersji MX
* Jak tworzyć i modyfikować grafikę we Flashu
* Jak wykorzystać możliwości pracy z warstwami
* Jak używać symboli
* Jak tworzyć animacje
* Jak stworzyć animację reagującą na działania użytkownika
* Jak łączyć animacje z dźwiękiem i obrazem wideo
* ... i wiele więcej
Systematycznie lub wyrywkowo: czytaj tę książkę tak, jak chcesz. Zwięzłe objaśnienia i towarzyszące im liczne ilustracje oraz przykłady doprowadzą Cię wprost do celu.
Twórz bezpieczne i wydajne aplikacje wielowątkowe
Chcesz podnieść wydajność swoich aplikacji? Planujesz stworzenie systemu, który będzie uruchamiany na maszynach wyposażonych w procesory wielordzeniowe? A może próbowałeś już tworzyć aplikacje wielowątkowe, ale zniechęciłeś się po wielogodzinnych poszukiwaniach przyczyn błędów, które pojawiają się przy wysokich obciążeniach? Java niemal od początku swego istnienia jest wyposażona w mechanizmy umożliwiające tworzenie aplikacji wielowątkowych, lecz dopiero wersja 5. wniosła zupełnie nową jakość, dzięki wielu poprawkom zwiększającym wydajność maszyny wirtualnej oraz dodatkowym klasom ułatwiającym osiąganie lepszej współbieżności.
W książce "Java. Współbieżność dla praktyków" znajdziesz wyczerpujący opis metod projektowania i tworzenia aplikacji wielowątkowych. Przeczytasz nie tylko o klasach, ich działaniu i sposobach wykorzystania, ale również poznasz wzorce projektowe, praktyki programistyczne i modele, dzięki którym programowanie współbieżne jest łatwiejsze. Znajdziesz tu praktyczne aspekty oraz przykłady tworzenia pewnych, skalowalnych i łatwych w konserwacji aplikacji współbieżnych. Dowiesz się także, w jaki sposób testować aplikacje wielowątkowe, wynajdywać w nich błędy i usuwać je.
Dzięki książce poznasz:
* Możliwości wykorzystania wątków
* Podstawy stosowania wątków
* Współdzielenie obiektów
* Struktura aplikacji wielowątkowych
* Zarządzanie wątkami i zadaniami
* Zastosowania pul wątków
* Optymalizowanie wydajności
* Skalowalność aplikacji wielowątkowych
* Testowanie aplikacji współbieżnych
* Model pamięci Javy
* Tworzenie własnych synchronizatorów
Tworzenie aplikacji dla Windows. Od prostych programów do gier komputerowychWydawnictwo Helion
Poznaj tajniki tworzenia aplikacji dla Windows
* Jak określić położenie, rozmiar i styl okna?
* Jak tworzyć wątki aplikacji za pomocą funkcji CreateThread?
* Jak definiować biblioteki?
Dev-C++ to zintegrowane środowisko programistyczne, którego niewątpliwym atutem są tzw. DevPaki, czyli rozszerzenia programu, pozwalające korzystać z różnych bibliotek, szablonów i narzędzi. Środowisko Dev-C++ wspomaga także pracę nad nowym projektem Windows — gotowym kodem tworzącym okno z obsługą podstawowych komunikatów. Wszystko to sprawia, że mamy do czynienia z wygodnym i funkcjonalnym środowiskiem, zarówno dla początkujących, jak i zaawansowanych programistów.
Z książki „Tworzenie aplikacji dla Windows. Od prostych programów do gier komputerowych” może skorzystać każdy, kto chce nauczyć się programowania: zarówno studenci kierunków informatycznych, jak i osoby, które nie mają takiego przygotowania. Podręcznik kolejno odsłania poszczególne elementy wiedzy programistycznej — od najprostszych po najbardziej zaawansowane. Dowiesz się więc, jak wprowadzać niewielkie zmiany w kodzie, jak projektować aplikacje wielowątkowe i definiować biblioteki, jak budować duże, składające się z kilku plików projekty, aby na koniec samodzielnie stworzyć grę komputerową.
* Instalacja środowiska Dev-C++
* Tworzenie narzędzia pióro
* Obsługa map bitowych
* Obsługa komunikatów myszy i klawiatury
* Obiekty sterujące w oknie
* Menu i plik zasobów
* Projektowanie aplikacji wielowątkowych
* Biblioteki statyczne i dynamiczne
* Multimedia
* Programowanie gier
Naucz się programowania i twórz własne gry!
Podobnie jak wszystkie książki z serii "Po prostu...", również ta ma na celu wyrwanie Cię z trybu pasywnego czytania i zachęcenie do rozpoczęcia pracy z programem. Ćwiczenia zawarte w książce uczą obsługi funkcji programu Flash. Książka jest przeznaczona zarówno dla początkujących użytkowników programu, jak i dla średnio zaawansowanych projektantów.
Początkowe rozdziały odkrywają podstawy tworzenia elementów graficznych z wykorzystaniem unikalnego zbioru narzędzi rysowniczych programu Flash. Następnie nauczysz się przekształcać elementy graficzne w animację. Potem poznasz sposoby tworzenia elementów interfejsu użytkownika, na przykład przycisków. Aby uczynić zawartość strony interaktywną, użyjesz panelu Behaviors do "napisania" podstawowych skryptów w języku ActionScript. W książce znajdują się też informacje o imporcie różnych plików spoza programu Flash -- czyli utworzonych w innych aplikacjach: grafik, dźwięków i klipów wideo -- oraz ich przetwarzania. Zamieszczono także przegląd nowych narzędzi edycyjnych. Na koniec nauczysz się korzystać z funkcji Publish, czyli tworzyć kod HTML, który jest potrzebny do umieszczania filmów Flasha na stronach WWW.
Wykorzystaj możliwości warstw!
* Jak wykorzystać potęgę drzemiącą w mechanizmie warstw?
* Jak zarządzać warstwami?
* Jak wykorzystać tryby mieszania?
Adobe Photoshop udowadnia, że nie tylko świat nie jest dwuwymiarowy - więcej wymiarów ma także grafika rastrowa! Aby ułatwić tworzenie spektakularnych grafik i ciekawych efektów, twórcy tego narzędzia zaimplementowali w nim mechanizm warstw. Daje on wręcz nieograniczone możliwości projektowania i modyfikacji obrazów. To, jak go wykorzystasz, zależy tylko od Twojej wyobraźni i wiedzy!
Dzięki tej wyczerpującej książce poznasz działanie mechanizmu warstw i techniki pracy z nimi. Autorzy w przejrzysty i przyjazny dla Czytelnika sposób przekazują potrzebną wiedzę - od podstaw aż po zaawansowane zagadnienia. Dowiesz się, w jaki sposób zarządzać warstwami, scalać je i organizować. Zrozumiesz, na czym polega przekształcanie warstw, nauczysz się zmieniać ich rozmiary oraz używać masek. W kolejnych rozdziałach zobaczysz, jak wykorzystać warstwy specjalnego przeznaczenia - tekstowe oraz kształtu. Znajdziesz tu także style i kompozycje warstw oraz niezwykle praktyczne informacje na temat warstw dopasowania i wypełnienia. Ta książka to prawdziwe kompendium wiedzy na temat warstw i ich efektownego wykorzystania!
* Podstawy pracy z warstwami
* Koncepcja warstw
* Sposoby zarządzania warstwami i ich organizacja
* Kontrola położenia warstwy
* Przekształcanie warstw
* Zmiana rozmiaru warstwy
* Wykorzystanie warstwy tekstowej
* Zastosowanie warstw kształtu, dopasowania i wypełnienia
* Łączenie warstw z wykorzystaniem trybów mieszania
* Tworzenie i stosowanie inteligentnych obiektów
* Używanie masek
* Style i kompozycje warstw
* Zastosowanie warstw w praktyce
* Sposoby manipulacji zdjęciami za pomocą warstw
* Stosowanie warstw w innych aplikacjach
Źródło wszelkich informacji o warstwach - dla amatora i profesjonalisty!
Choć Java to język gwarantujący efektywną pracę, to jednak kryje w sobie wiele pułapek, które mogą zniweczyć jej efekty. Książka ta ma za zadanie oszczędzić Twój czas i zapobiec frustracji przeprowadzając Cię bezpiecznie przez skomplikowane zagadnienia. Zespół ekspertów od języka Java pod wodzą guru programowania w osobie Michaela Daconta proponuje Ci zestaw sprawdzonych rozwiązań 50 trudnych problemów pojawiających się w praktyce każdego programisty. Rozwiązania te pozwolą Ci uniknąć problemów wynikających z niedostatków języka Java oraz jego interfejsów programowych, w tym pakietów java.util, java.io, java.awt i javax.swing. Autorzy dzielą się także z Czytelnikiem swoimi sposobami na poprawę wydajności aplikacji pisanych w Javie.
Oto niektóre z omawianych zagadnień:
* Składnia języka: zastosowanie metody equals() zamiast operatora == do porównywania obiektów klasy String
* Funkcjonalność wbudowana w język: rozdział metod a mechanizm refleksji, interfejsy i klasy anonimowe
* Użyteczne klasy i kolekcje: wybór klasy PropertyFile i ResourceBundle
* Wejście i wyjście, w tym subtelności związane z przesyłaniem serializowanych obiektów za pomocą gniazd sieciowych
* Graficzny interfejs użytkownika: sposoby uniknięcia typowej pułapki polegającej na zastosowaniu metody repaint() zamiast metody validate() w celu uzyskania nowego układu komponentów
* Graficzny interfejs użytkownika -- sterowanie: m.in. bardziej funkcjonalna kontrola danych wprowadzanych przez użytkownika
* Wydajność: m.in. zastosowanie odroczonego ładowania, tak by zwiększyć szybkość uruchamiania programów
Java to wspaniałe narzędzie w rękach programisty. Ale nawet najlepsze narzędzie może zostać źle użyte. Istnieje wiele książek, które opisują ten język programowania, skupiając się na przedstawieniu jego składni. Ta książka jest zupełnie inna. Adresowana do osób znających już Javę, przedstawia 57 praktycznych zasad pisania efektywnego, poprawnego kodu.
Każda wskazówka to oddzielny podrozdział, przedstawiający opis problemu, przykłady poprawnego (i błędnego!) kodu, a także historie wzięte z doświadczenia autora. Dzięki książce zapoznasz się z idiomami właściwymi językowi Java oraz z istotnymi z praktycznego punktu widzenia wzorcami projektowymi.
Wskazówki dotyczą między innymi:
* Tworzenia i usuwania obiektów
* Pisania metod wspólnych dla wielu obiektów
* Klas i interfejsów
* Javowych odpowiedników konstrukcji znanych z C
* Pisania poprawnych metod
* Obsługi wyjątków
* Korzystania z wątków
* Serializacji obiektów
O autorze:
Joshua Bloch jest współautorem wielu bibliotek języka Java, takich jak Java Collections Framework i java.math, a także autorem licznych prac naukowych.
[więcej...]
Wyzwól swój twórczy potencjał
-- projektuj z programem CorelDraw X3 PL
* Poznaj możliwości CorelDraw X3 PL
* Naucz się korzystać ze wszystkich dostępnych narzędzi
* Daj upust swojej kreatywności i twórz niezwykłe projekty!
CorelDraw to jeden z najbardziej znanych i lubianych programów graficznych. Słynie z łatwości obsługi i ogromnej różnorodności zastosowań. Można wykorzystywać go na wiele różnych sposobów: do projektowania plakatów i reklam, szyldów i wizytówek, tworzenia rysunków technicznych, a nawet dokumentów tekstowych. Jednak z uwagi na to, że jego działanie jest oparte na innych zasadach niż działanie konkurencyjnych programów, nauka obsługi CorelDraw wymaga trochę czasu. Jeśli chcesz skrócić go do minimum, powinieneś mieć tę książkę.
Książka "CorelDraw X3 PL. Kurs" w sposób jasny i przejrzysty wprowadzi Cię w świat CorelDraw X3 PL, czyli trzynastej już wersji programu. W tym podręczniku każde kolejne działanie -- od instalacji na dysku do używania najbardziej wyrafinowanych narzędzi -- zostało dokładnie i szczegółowo opisane oraz zobrazowane. Stąd możesz dowiedzieć się, jak otwierać i zapisywać dokumenty, dodawać i modyfikować obiekty, stosować kolorowe wypełnienia, wstawiać tekst i używać efektów specjalnych. Proponowany tu kurs pozwoli Ci swobodnie i bez żadnego problemu tworzyć świetne projekty w tym programie.
Nauczysz się:
* Instalować i uruchamiać CorelDraw X3 PL
* Otwierać, zapisywać i drukować rysunki
* Wstawiać, rysować i wypełniać kolorem obiekty
* Kopiować, modyfikować, grupować obiekty
* Wpisywać i formatować tekst
* Stosować wypełnienia i krzywe Beziera
* Używać linijek i dynamicznych prowadnic
* Wykorzystywać efekty specjalne
Książki wydawnictwa z serii "Kurs" adresowane są do początkujących użytkowników komputerów, którzy chcą w krótkim czasie nabyć praktyczne umiejętności przydatne w karierze zawodowej i codziennej pracy. Napisane przystępnym językiem i bogato ilustrowane są wspaniałą pomocą w samodzielnej nauce.
* Przeznaczone dla początkujących
* Praktyczne zadania omówione krok po kroku
* Przystępny i zrozumiały język
* Liczne ilustracje
* Idealny do samodzielnej nauki
Odkryj CorelDraw X3 PL -- i zacznij projektować z przyjemnością
Flash MX to aplikacja o oszałamiających możliwościach. Dynamiczne prezentacje, łączenie grafiki z dźwiękiem, animacje -- to tylko część zastosowań tego najpopularniejszego narzędzia multimedialnego stworzonego na potrzeby Internetu. Jeśli chcesz wzbogacić swoje strony WWW o atrakcyjne animacje -- po prostu sięgnij po tę książkę. Bez zbędnych opisów wprowadzi Cię ona w świat Flasha MX.
Dowiesz się:
* Jak funkcjonuje środowisko Flash i jakie nowości wprowadzono w wersji MX
* Jak tworzyć i modyfikować grafikę we Flashu
* Jak wykorzystać możliwości pracy z warstwami
* Jak używać symboli
* Jak tworzyć animacje
* Jak stworzyć animację reagującą na działania użytkownika
* Jak łączyć animacje z dźwiękiem i obrazem wideo
* ... i wiele więcej
Systematycznie lub wyrywkowo: czytaj tę książkę tak, jak chcesz. Zwięzłe objaśnienia i towarzyszące im liczne ilustracje oraz przykłady doprowadzą Cię wprost do celu.
Twórz bezpieczne i wydajne aplikacje wielowątkowe
Chcesz podnieść wydajność swoich aplikacji? Planujesz stworzenie systemu, który będzie uruchamiany na maszynach wyposażonych w procesory wielordzeniowe? A może próbowałeś już tworzyć aplikacje wielowątkowe, ale zniechęciłeś się po wielogodzinnych poszukiwaniach przyczyn błędów, które pojawiają się przy wysokich obciążeniach? Java niemal od początku swego istnienia jest wyposażona w mechanizmy umożliwiające tworzenie aplikacji wielowątkowych, lecz dopiero wersja 5. wniosła zupełnie nową jakość, dzięki wielu poprawkom zwiększającym wydajność maszyny wirtualnej oraz dodatkowym klasom ułatwiającym osiąganie lepszej współbieżności.
W książce "Java. Współbieżność dla praktyków" znajdziesz wyczerpujący opis metod projektowania i tworzenia aplikacji wielowątkowych. Przeczytasz nie tylko o klasach, ich działaniu i sposobach wykorzystania, ale również poznasz wzorce projektowe, praktyki programistyczne i modele, dzięki którym programowanie współbieżne jest łatwiejsze. Znajdziesz tu praktyczne aspekty oraz przykłady tworzenia pewnych, skalowalnych i łatwych w konserwacji aplikacji współbieżnych. Dowiesz się także, w jaki sposób testować aplikacje wielowątkowe, wynajdywać w nich błędy i usuwać je.
Dzięki książce poznasz:
* Możliwości wykorzystania wątków
* Podstawy stosowania wątków
* Współdzielenie obiektów
* Struktura aplikacji wielowątkowych
* Zarządzanie wątkami i zadaniami
* Zastosowania pul wątków
* Optymalizowanie wydajności
* Skalowalność aplikacji wielowątkowych
* Testowanie aplikacji współbieżnych
* Model pamięci Javy
* Tworzenie własnych synchronizatorów
Tworzenie aplikacji dla Windows. Od prostych programów do gier komputerowychWydawnictwo Helion
Poznaj tajniki tworzenia aplikacji dla Windows
* Jak określić położenie, rozmiar i styl okna?
* Jak tworzyć wątki aplikacji za pomocą funkcji CreateThread?
* Jak definiować biblioteki?
Dev-C++ to zintegrowane środowisko programistyczne, którego niewątpliwym atutem są tzw. DevPaki, czyli rozszerzenia programu, pozwalające korzystać z różnych bibliotek, szablonów i narzędzi. Środowisko Dev-C++ wspomaga także pracę nad nowym projektem Windows — gotowym kodem tworzącym okno z obsługą podstawowych komunikatów. Wszystko to sprawia, że mamy do czynienia z wygodnym i funkcjonalnym środowiskiem, zarówno dla początkujących, jak i zaawansowanych programistów.
Z książki „Tworzenie aplikacji dla Windows. Od prostych programów do gier komputerowych” może skorzystać każdy, kto chce nauczyć się programowania: zarówno studenci kierunków informatycznych, jak i osoby, które nie mają takiego przygotowania. Podręcznik kolejno odsłania poszczególne elementy wiedzy programistycznej — od najprostszych po najbardziej zaawansowane. Dowiesz się więc, jak wprowadzać niewielkie zmiany w kodzie, jak projektować aplikacje wielowątkowe i definiować biblioteki, jak budować duże, składające się z kilku plików projekty, aby na koniec samodzielnie stworzyć grę komputerową.
* Instalacja środowiska Dev-C++
* Tworzenie narzędzia pióro
* Obsługa map bitowych
* Obsługa komunikatów myszy i klawiatury
* Obiekty sterujące w oknie
* Menu i plik zasobów
* Projektowanie aplikacji wielowątkowych
* Biblioteki statyczne i dynamiczne
* Multimedia
* Programowanie gier
Naucz się programowania i twórz własne gry!
Podobnie jak wszystkie książki z serii "Po prostu...", również ta ma na celu wyrwanie Cię z trybu pasywnego czytania i zachęcenie do rozpoczęcia pracy z programem. Ćwiczenia zawarte w książce uczą obsługi funkcji programu Flash. Książka jest przeznaczona zarówno dla początkujących użytkowników programu, jak i dla średnio zaawansowanych projektantów.
Początkowe rozdziały odkrywają podstawy tworzenia elementów graficznych z wykorzystaniem unikalnego zbioru narzędzi rysowniczych programu Flash. Następnie nauczysz się przekształcać elementy graficzne w animację. Potem poznasz sposoby tworzenia elementów interfejsu użytkownika, na przykład przycisków. Aby uczynić zawartość strony interaktywną, użyjesz panelu Behaviors do "napisania" podstawowych skryptów w języku ActionScript. W książce znajdują się też informacje o imporcie różnych plików spoza programu Flash -- czyli utworzonych w innych aplikacjach: grafik, dźwięków i klipów wideo -- oraz ich przetwarzania. Zamieszczono także przegląd nowych narzędzi edycyjnych. Na koniec nauczysz się korzystać z funkcji Publish, czyli tworzyć kod HTML, który jest potrzebny do umieszczania filmów Flasha na stronach WWW.
Wykorzystaj możliwości warstw!
* Jak wykorzystać potęgę drzemiącą w mechanizmie warstw?
* Jak zarządzać warstwami?
* Jak wykorzystać tryby mieszania?
Adobe Photoshop udowadnia, że nie tylko świat nie jest dwuwymiarowy - więcej wymiarów ma także grafika rastrowa! Aby ułatwić tworzenie spektakularnych grafik i ciekawych efektów, twórcy tego narzędzia zaimplementowali w nim mechanizm warstw. Daje on wręcz nieograniczone możliwości projektowania i modyfikacji obrazów. To, jak go wykorzystasz, zależy tylko od Twojej wyobraźni i wiedzy!
Dzięki tej wyczerpującej książce poznasz działanie mechanizmu warstw i techniki pracy z nimi. Autorzy w przejrzysty i przyjazny dla Czytelnika sposób przekazują potrzebną wiedzę - od podstaw aż po zaawansowane zagadnienia. Dowiesz się, w jaki sposób zarządzać warstwami, scalać je i organizować. Zrozumiesz, na czym polega przekształcanie warstw, nauczysz się zmieniać ich rozmiary oraz używać masek. W kolejnych rozdziałach zobaczysz, jak wykorzystać warstwy specjalnego przeznaczenia - tekstowe oraz kształtu. Znajdziesz tu także style i kompozycje warstw oraz niezwykle praktyczne informacje na temat warstw dopasowania i wypełnienia. Ta książka to prawdziwe kompendium wiedzy na temat warstw i ich efektownego wykorzystania!
* Podstawy pracy z warstwami
* Koncepcja warstw
* Sposoby zarządzania warstwami i ich organizacja
* Kontrola położenia warstwy
* Przekształcanie warstw
* Zmiana rozmiaru warstwy
* Wykorzystanie warstwy tekstowej
* Zastosowanie warstw kształtu, dopasowania i wypełnienia
* Łączenie warstw z wykorzystaniem trybów mieszania
* Tworzenie i stosowanie inteligentnych obiektów
* Używanie masek
* Style i kompozycje warstw
* Zastosowanie warstw w praktyce
* Sposoby manipulacji zdjęciami za pomocą warstw
* Stosowanie warstw w innych aplikacjach
Źródło wszelkich informacji o warstwach - dla amatora i profesjonalisty!
Choć Java to język gwarantujący efektywną pracę, to jednak kryje w sobie wiele pułapek, które mogą zniweczyć jej efekty. Książka ta ma za zadanie oszczędzić Twój czas i zapobiec frustracji przeprowadzając Cię bezpiecznie przez skomplikowane zagadnienia. Zespół ekspertów od języka Java pod wodzą guru programowania w osobie Michaela Daconta proponuje Ci zestaw sprawdzonych rozwiązań 50 trudnych problemów pojawiających się w praktyce każdego programisty. Rozwiązania te pozwolą Ci uniknąć problemów wynikających z niedostatków języka Java oraz jego interfejsów programowych, w tym pakietów java.util, java.io, java.awt i javax.swing. Autorzy dzielą się także z Czytelnikiem swoimi sposobami na poprawę wydajności aplikacji pisanych w Javie.
Oto niektóre z omawianych zagadnień:
* Składnia języka: zastosowanie metody equals() zamiast operatora == do porównywania obiektów klasy String
* Funkcjonalność wbudowana w język: rozdział metod a mechanizm refleksji, interfejsy i klasy anonimowe
* Użyteczne klasy i kolekcje: wybór klasy PropertyFile i ResourceBundle
* Wejście i wyjście, w tym subtelności związane z przesyłaniem serializowanych obiektów za pomocą gniazd sieciowych
* Graficzny interfejs użytkownika: sposoby uniknięcia typowej pułapki polegającej na zastosowaniu metody repaint() zamiast metody validate() w celu uzyskania nowego układu komponentów
* Graficzny interfejs użytkownika -- sterowanie: m.in. bardziej funkcjonalna kontrola danych wprowadzanych przez użytkownika
* Wydajność: m.in. zastosowanie odroczonego ładowania, tak by zwiększyć szybkość uruchamiania programów
Możliwości komercyjnych systemów operacyjnych nie odpowiadają Ci? Może Twój komputer nie spełnia minimalnych wymagań sprzętowych niezbędnych do ich uruchomienia? A może po prostu nie chcesz wydawać pieniędzy na licencjonowany system ani ryzykować używaniem wersji pirackiej? Skorzystaj z darmowej alternatywy! Zastosuj Linuksa. Popularność tego systemu operacyjnego, tworzonego i rozwijanego przez zapaleńców z całego świata, rośnie w lawinowym tempie. Linux już dawno przestał być zabawką dla pasjonatów -- teraz to w pełni funkcjonalny produkt, bezpieczny, stabilny i wygodny w obsłudze.
"Linux. Kurs. Wydanie II" to podręcznik, dzięki któremu poznasz i opanujesz możliwości tego systemu operacyjnego. Przedstawia on Mandrivę -- jedną z jego najpopularniejszych wersji, zwanych dystrybucjami. Czytając tę książkę, dowiesz się, jak zainstalować system i skonfigurować go. Nauczysz się korzystać z graficznego środowiska pracy, zarządzać kontami użytkowników i systemem plików, instalować i usuwać nowe aplikacje, nagrywać płyty CD i DVD oraz drukować. Przekonasz się także, że dołączony do Linuksa pakiet biurowy OpenOffice jest doskonałym narzędziem do edycji tekstów, przeprowadzania obliczeń i tworzenia baz danych. Ma również możliwość wymiany plików z popularnym, lecz komercyjnym MS Office.
* Pobieranie wersji instalacyjnej Linuksa
* Logowanie i korzystanie z terminala
* Praca ze środowiskiem graficznym
* Nagrywanie płyt CD i DVD
* Przeglądanie stron WWW
* Korzystanie z poczty elektronicznej
* Tworzenie grafiki za pomocą programu GIMP
* Redagowanie plików tekstowych za pomocą OpenOffice Writer
* Tworzenie arkuszy kalkulacyjnych za pomocą OpenOffice Calc
Przekonaj się, że nie musisz wydawać pieniędzy,
aby dysponować doskonałymi narzędziami do pracy.
Flash CS3 Professional PL. Techniki zaawansowane. Klatka po klatceWydawnictwo Helion
Odkryj najgłębiej strzeżone tajemnice Flasha
* Jak tworzyć rozbudowane animacje?
* W jaki sposób kontrolować obiekty, wykorzystując ActionScript?
* Jak pobierać dane z zewnętrznych źródeł?
Flash CS3 Professional to kolejne wcielenie narzędzia, które zyskało uznanie dziesiątek tysięcy twórców witryn WWW. Jednak jego niesamowite możliwości w zakresie tworzenia grafiki i animacji to tylko wierzchołek góry lodowej. Swoją prawdziwą potęgę Flash ujawnia, gdy sięgniemy po rozwiązania oparte na wbudowanym, obiektowym języku programowania noszącym nazwę ActionScript 3.0. Za jego pomocą możemy kontrolować niemal każdy aspekt animacji i wszystkie obiekty wchodzące w jej skład, sterować wyświetlaniem i pobieraniem danych oraz odtwarzaniem dźwięku. Jesteśmy w stanie wykreować niesamowite efekty, jakich nigdy nie uzyskalibyśmy, wykorzystując inne techniki.
W książce „Flash CS Professional PL. Techniki zaawansowane. Klatka po klatce" opisano techniki tworzenia animacji związane ze stosowaniem języka ActionScript. Czytając ją, poznasz podstawy tego języka, a także dowiesz się, w jaki sposób pisać skrypty i do jakich obiektów je dołączać. Nauczysz się kontrolować elementy graficzne, dźwiękowe, tekstowe i nawigacyjne umieszczone w prezentacji za pomocą poleceń ActionScriptu. Opanujesz sposoby łączenia witryn WWW tworzonych we Flashu z zewnętrznymi plikami, przeglądarką internetową i serwerem, na którym są publikowane. Znajdziesz tu także informacje o wykrywaniu błędów w skryptach i ich usuwaniu.
* Animacje poklatkowe i automatyczne
* Animowane maski
* Rotoskopia
* Edycja kodu ActionScript w panelu Actions
* Tworzenie funkcji
* Obsługa zdarzeń w animacji
* Zarządzanie listwami czasowymi
* Tworzenie elementów nawigacyjnych
* Pobieranie plików multimedialnych z zewnętrznych źródeł
* Przetwarzanie elementów graficznych i dźwiękowych oraz danych tekstowych
* Operacje matematyczne we Flashu
* Optymalizacja filmów
Odkryj zapierające dech w piersiach możliwości synergii Flasha i języka ActionScript!
Java jest jednym z najpopularniejszych języków programowania na świecie wykorzystywanym przy tworzeniu popularnych aplikacji. Język ten dla początkujących programistów jest często pierwszym poznanym językiem programowania. Dzięki przemyślanej architekturze obiektowej Javy łatwiej Ci będzie nabrać prawidłowych nawyków programistycznych, z kolei funkcjonalność tego języka sprawi, że nauka nie pójdzie na marne, a zdobytą wiedzę wykorzystasz w praktyce. W Javie można bowiem napisać prawie każdą aplikację, od prostej gry działającej w telefonie komórkowym, po skomplikowany system uruchamiany na potężnym serwerze.
"Po prostu Java 2" to książka, dzięki której nauczysz się pisać programy w tym języku, nawet jeśli programowanie było Ci do tej pory zupełnie obce. Książka jest pozbawiona zbędnego balastu teorii. Prezentuje ona wiele zastosowań Javy.
Dzięki książce nauczysz się:
* Składni Javy oraz podstawowych instrukcji
* Korzystać z obiektów i rozpoznawać ich metody
* Tworzyć interfejs użytkownika dla aplikacji Javy
* Pisać aplety i osadzać je w stronach WWW
* Łączyć Javę z JavaScript
* Pisać servlety i strony JSP
* Korzystać z XML z poziomu Javy
Chcesz szybko i bez zbędnych dywagacji dowiedzieć się, dlaczego Java cieszy się takim powodzeniem? Chcesz wykorzystać ją do swoich potrzeb? Ta książka z pewnością Ci w tym pomoże.
Poznaj tajniki programowania w języku PL/SQL
* Jak pisać kod w języku PL/SQL?
* Jak zarządzać błędami?
* Jak tworzyć funkcje i procedury?
PL/SQL to wbudowany język proceduralny baz danych Oracle. Jest on rozszerzeniem języka SQL i umożliwia tworzenie takich konstrukcji, jak pętle, instrukcje warunkowe, zmienne i wyzwalacze. Dzięki temu można zautomatyzować wiele czynności administracyjnych oraz rejestrować zmiany danych lub nadzorować ich modyfikacje. Język ten pozwala więc na budowanie dynamicznych i stabilnych aplikacji, opartych na bazach danych typu klient-serwer.
Książka „Oracle Database 11g. Programowanie w języku PL/SQL” zawiera omówienie wszystkich najnowszych funkcji i narzędzi tego języka programowania. Szczegółowe wyjaśnienia wzbogacone zostały o studia przypadków oraz przykładowy kod, który można wkleić do własnej aplikacji. Z tym podręcznikiem nauczysz się pobierać i modyfikować informacje w bazach danych, tworzyć wartościowe instrukcje w języku PL/SQL, skutecznie wykonywać zapytania i budować niezawodne zabezpieczenia. Dowiesz się także między innymi, jak stosować procedury, funkcje, pakiety, kolekcje i wyzwalacze oraz jak zoptymalizować wydajność aplikacji.
* Język PL/SQL — architektura i funkcje
* Struktury sterujące
* Instrukcje
* Zarządzanie błędami
* Programowanie w języku PL/SQL
* Kolekcje
* Obiekty i pakiety
* Wyzwalacze
* Komunikacja między sesjami
* Podprogramy zewnętrzne
* Typy obiektowe
* Biblioteka języka Java
* Rozwój aplikacji sieciowych
Twórz solidne aplikacje sieciowe w języku PL/SQL
Rozpocznij swoją przygodę z JavaScript!
* Jak rozpocząć przygodę z JavaScript?
* Jakie obiekty dostarcza JavaScript?
* Jak reagować na błędy?
Język JavaScript, choć ma już blisko dwanaście lat, swoimi możliwościami wciąż potrafi zafascynować niejednego projektanta stron internetowych. Ma już za sobą gorsze dni, jednak aktualnie dzięki technologii AJAX znów jest na topie. Wykorzystując go w odpowiedni sposób, sprawisz, że twój serwis WWW stanie się bardziej interaktywny i dynamiczny.
Ta książka pozwoli Ci wyjść zwycięsko z pierwszego starcia z tym językiem! Dowiesz się z niej, jak używać zmiennych, operatorów oraz funkcji. Nauczysz się reagować na zdarzenia oraz wykorzystywać okna dialogowe. Ponadto zdobędziesz wiedzę na temat pracy z obiektami DOM HTML oraz na temat sposobów reagowania na błędy w skryptach. Autor przedstawia tu także dostępne obiekty JavaScript oraz pokazuje, jak wykonywać operacje związane z czasem. Ogromnym atutem tej książki jest przejrzystość i usystematyzowany sposób prezentowania informacji. Dzięki temu również Ty szybko i bezboleśnie poznasz JavaScript!
* Typowe konstrukcje języka JavaScript
* Wykorzystanie zmiennych
* Zastosowanie funkcji
* Reagowanie na zdarzenia
* Sposoby użycia okien dialogowych
* Wykonywanie operacji związanych z czasem
* Dostępne obiekty JavaScript
* Obiekty DOM HTML
* Przygotowanie własnych obiektów
* Dziedziczenie w JavaScript
* Obsługa błędów
Przejdź bezboleśnie pierwsze starcie z JavaScript!
Skorzystaj z tego, co w Windows Vista najlepsze i najbardziej potrzebne
* Jak korzystać z ciekawych gadżetów?
* Jak bezpiecznie surfować po sieci?
* Jak obrobić grafikę?
Windows Vista to nowoczesny system operacyjny, stworzony po to, abyś mógł po prostu sprawnie, bezpiecznie i z radością używać swojego komputera i korzystać z internetu. Jeśli nie lubisz opasłych tomów przepełnionych technicznym żargonem, a zależy Ci na zdobyciu praktycznych umiejętności oraz interesuje Cię kilka pomijanych w innych książkach zagadnień, ten podręcznik jest właśnie dla Ciebie!
Dzięki książce „Windows Vista PL. Zabawa multimediami” nauczysz się efektywnie korzystać z najnowszych możliwości systemu Windows. Dowiesz się m.in. jak perfekcyjnie zorganizować swoją kolekcję cyfrowych fotografii, odtwarzać muzykę, montować i obrabiać wideo i zapewnić bezpieczną pracę komputera. Dopasujesz także Vistę do swoich potrzeb i nawet najbardziej wygórowanych oczekiwań! Każdą stronę tego podręcznika poświęcono jednemu tematowi, bogato ilustrując je kolorowymi fotografiami i zrzutami ekranowymi, ułatwiającymi opanowanie zagadnienia i szybkie znalezienie w książce właśnie tego, czego poszukujesz.
* Windows Vista — tworzenie własnego pulpitu
* Nowe gadżety i pasek boczny
* Bezpieczeństwo
* Internet i poczta elektroniczna
* Osobista galeria fotografii i upiększanie zdjęć
* Odtwarzanie i organizowanie plików muzycznych — Media Player
* DVD i własne filmy
* Porządek i nawigacja po plikach i folderach
Wszystko, co musisz wiedzieć, by czerpać radość z pracy z systemem Vista!
Standard Template Library to jedno z najpotężniejszych narzędzi programistycznych charakteryzujące się złożonością i wysokim stopniem komplikacji. W książce "STL w praktyce. 50 sposobów efektywnego wykorzystania" -- przeznaczonej dla zaawansowanych i średnio zaawansowanych programistów C++ -- znany ekspert Scott Meyers prezentuje najważniejsze techniki stosowania tego narzędzia. Poza listą zaleceń, jak postępować należy, a jak postępować się nie powinno, Meyers przedstawia wiele poważniejszych aspektów STL pozwalających zrozumieć, dlaczego pewne rozwiązania są poprawne, a innych należy unikać. Do każdej wskazówki dołączony jest kod źródłowy i dokładne objaśnienia, które powinny zainteresować zaawansowanych programistów.
Jeżeli Twoja wiedza ogranicza się do informacji dostępnych w dokumentacji STL, ta książka uzupełni ją o bezcenne wskazówki, które pozwolą Ci wykorzystać STL w praktyce.
Książka przedstawia:
* Podstawowe informacje o bibliotece STL i jej zgodności z innymi standardami
* Wskazówki dotyczące poprawnego doboru i używania pojemników
* Opis pojemników typu vector i string
* Omówienie pojemników asocjatywnych
* Metody właściwego korzystania z iteratorów
* Algorytmy wchodzące w skład STL
* Funktory, klasy-funktory i funkcje
* Programowanie za pomocą biblioteki STL
Książkę uzupełniają dodatki, w których znajdziesz między innymi obszerną bibliografię na temat STL oraz cenne wskazówki dla programistów używających kompilatorów firmy Microsoft.
"STL w praktyce. 50 sposobów efektywnego wykorzystania" to nieocenione źródło wiedzy na temat jednego z najważniejszych aspektów programowania w C++. Jeżeli chcesz w praktyce wykorzystać STL, nie obędziesz się bez informacji zawartych w tej książce.
Poznaj program Photoshop CS3 i twórz wyjątkową grafikę!
* Jak tworzyć kompozycje warstw i posługiwać się nimi?
* Jak przenosić efekty pomiędzy warstwami?
* Jak przygotować pracę do druku?
Aktualna wersja Photoshopa CS3 udostępnia wiele nowych opcji usprawniających pracę, np. przeglądarkę plików Adobe Bridge czy technologię "Obiekty inteligentne", która pozwala na odwracalne skalowanie, obracanie i zniekształcanie warstw. Program umożliwia pracę na wielu warstwach z wykorzystaniem inteligentnych linii pomocniczych, redukcję szumu znacznie poprawiającą jakość zdjęć, a także importowanie i teksturowanie modeli 3D. Ogromna różnorodność funkcji i narzędzi sprawia, że Photoshop jest doskonałym narzędziem do edycji i obróbki grafiki rastrowej. Jednak aby profesjonalnie posługiwać się tą aplikacją, niezbędna jest rzetelna wiedza oraz sprawność w poruszaniu się po programie. Podręcznik, który trzymasz w rękach, pozwoli Ci na takie poznanie funkcji i możliwości Photoshopa, aby wreszcie w pełni je wykorzystywać!
Książka "Po prostu Photoshop CS3/CS3 PL" zawiera zwięzłe, zrozumiałe, bogato ilustrowane i dokładnie przetestowane rozwiązania - gotowe przepisy na korzystanie z Photoshopa. Nie oznacza to jednak, że musisz zrezygnować z własnej kreatywności. Wręcz przeciwnie - umiejętność posługiwania się konkretnymi narzędziami pozwala na eksperymentowanie i zachęca do twórczych działań. Ten przewodnik udostępnia Ci całą potrzebną wiedzę, żebyś mógł realizować wszelkie zadania w Photoshopie, wykorzystując swój artystyczny potencjał. Nauczysz się pracować z warstwami, zarządzać kolorem, korygować i retuszować zdjęcia. Dowiesz się także, jak prezentować i drukować swoje prace.
* Interfejs i pasek narzędzi
* Zarządzanie kolorem
* Program Bridge
* Kadrowanie, obracanie i odwracanie obrazów
* Warstwy, maski i siatki
* Praca z zaznaczeniami
* Korekcja tonalna
* Format Camera Raw
* Ekspozycja i wyostrzanie
* Retusz i gradienty
* Zastosowanie stylów
* Praca z tekstem
* Prezentacja prac i drukowanie
Po prostu wykorzystaj swój artystyczny potencjał!
Kompletny przewodnik dla cyfrowych fotografów
* Jak precyzyjnie wyostrzać fotografie?
* W jaki sposób przetwarzać pliki RAW?
* Jak zautomatyzować pracę Photoshopa?
Aparaty cyfrowe, których możliwości rosną w ogromnym tempie, nadal nie zapewniają uzyskiwania doskonałych fotografii w każdych warunkach. Nawet fotografie wykonywane przez profesjonalistów korzystających z najnowocześniejszych cyfrowych lustrzanek poddawane są cyfrowej obróbce – korekcie barw, wyrównaniu oświetlenia czy też konwersji na tryb czarno-biały. Chyba każdy użytkownik "cyfrówki“, przeglądając wykonane przez siebie zdjęcia, znajduje w nich liczne błędy. Na szczęście, korekcja takich niedociągnięć nie wymaga zakupu profesjonalnego sprzętu laboratoryjnego – w zupełności wystarczy komputer, odpowiednie narzędzia i wiedza, jak to zrobić!
Książka "Fotografia cyfrowa. Edycja zdjęć. Wydanie IV" to kolejny rewelacyjny podręcznik autorstwa Scotta Kelby’ego, guru cyfrowej fotografii. Przedstawia zaawansowane techniki obróbki i modyfikacji zdjęć cyfrowych wykorzystywane przez profesjonalistów z branży fotograficznej i projektowej. Przeczytasz w niej o możliwościach, jakie w zakresie korekcji zdjęć oferuje Photoshop CS3. Dowiesz się, jak katalogować i opisywać zdjęcia, przetwarzać pliki RAW, poprawiać ostrość i nasycenie barw oraz kompensować nierównomierne oświetlenie kadru. Dzięki tej książce nauczysz się kadrować, prostować i retuszować fotografie. Ponadto Scott Kelby podaje w niej gotowe receptury zapewniające błyskawiczny i zachwycający efekt!
* Katalogowanie, opisywanie i archiwizowanie fotografii
* Przetwarzanie plików RAW
* Skalowanie i kadrowanie zdjęć
* Zarządzanie kolorem w aparacie i w Photoshopie
* Korekcja kolorystyki fotografii
* Konwersja zdjęć do trybu czarno-białego
* Retusz portretów
* Efekty specjalne
* Wyostrzanie obrazów
* Prezentowanie i sprzedawanie własnych prac
Wybierz się do świata fotografii cyfrowej z profesjonalnym przewodnikiem!
Adobe InDesign to jeden z najbardziej zaawansowanych programów służących do składu wszelkiego rodzaju publikacji. W wersji 2.0 został wzbogacony o ponad 800 nowych funkcji -- daje to pojęcie o jego złożoności. Możliwości programu InDesign powiększą się jeszcze bardziej, jeśli w procesie składu wykorzystamy inne programy firmy Adobe: Photoshopa i Illustratora.
"Po prostu InDesign 2.0" to wprowadzenie do tworzenia publikacji za pomocą programu firmy Adobe. Książki z serii "Po prostu…" pokazują, jak wykonać konkretne zadanie, dzięki czemu, gdy tylko napotkasz trudności przy pracy, szybko znajdziesz ich rozwiązanie. Książka jest więc zarówno podręcznikiem, jak i pomocą dla osoby używającej InDesign.
W książce przedstawiono:
* Rozpoczęcie pracy z InDesign 2.0
* Konfigurowanie ustawień dokumentu
* Pracę z tekstem: formatowanie, ramki tekstowe, typografia
* Tworzenie obiektów graficznych: umieszczanie ich na stronie i przekształcanie
* Importowanie grafiki i łączenie jej z tekstem
* Pracę z tabelami i obszernymi dokumentami (tworzenie spisów treści i indeksów)
* Drukowanie dokumentów i tworzenie plików PDF
Przystępny język, liczne przykłady i szeroki zakres przedstawionych zagadnień to niewątpliwe atuty tej książki. Dzięki lekturze "Po prostu InDesign 2.0" i możliwościom opisywanego programu niedługo i Ty będziesz mógł tworzyć profesjonalne publikacje łatwo i szybko.
Poznaj nowoczesne, oparte na wiedzy metody projektowania
* Jak dobrać właściwe ustawienia systemu CATIA, stosowane w budowie modeli autogenerujących?
* Jak tworzyć bazy reguł i tablice projektowe?
* Jak wykorzystywać zaawansowane narzędzia parametryzacji i integracji wiedzy?
CATIA to zaawansowany system wspomagania prac inżynierskich w przemyśle lotniczym, samochodowym, stoczniowym, maszynowym i innych. Projektowanie oparte na wiedzy jest tendencją polegającą na sprowadzeniu do komputerowego zapisu budowy zasad i reguł procesu projektowo-konstrukcyjnego. Wzbogacony o te zasady i reguły model geometryczny konstrukcji nazywany jest modelem autogenerującym. Model autogenerujący automatyzuje pewne rutynowe czynności procesu projektowego poprzez samodzielne wyznaczanie cech konstrukcyjnych w oparciu o zapisaną w nim wiedzę.
Książka „CATIA V5. Podstawy budowy modeli autogenerujących” przedstawia zagadnienia dotyczące automatyzacji procesu projektowo-konstrukcyjnego i wprowadzania wiedzy do modelu komputerowego. Materiał zawarty w tym podręczniku pozwala zyskać umiejętność stosowania technik parametryzacji oraz budowania zaawansowanych modeli parametrycznych i modeli autogenerujących. Książka przeznaczona jest dla średnio zaawansowanych i zaawansowanych użytkowników systemu CATIA, chcących wdrożyć do swych działań metody oparte na wiedzy.
* Wprowadzenie do modelowania autogenerującego
* Projektowanie z zastosowaniem wiedzy w systemie CATIA
* Podstawowe i zaawansowane narzędzia parametryzacji
* Formuły i tablice projektowe
* Tworzenie reguł, sprawdzeń i reakcji
* Narzędzia zarządzania wiedzą i jej implementacji
* Szablony wiedzy - PowerCopy, User Defined Feature, Document Template
* Modele autogenerujące części
* Model autogenerujący elementu i podzespołu
Wykorzystaj potęgę programu CATIA i twórz modele autogenerujące!
Master Thesis - Comparative analysis of programming Environments based on Rub...Adam Skołuda
In this thesis, we analyzed technologies for creating web applications, using Ruby and JavaScript. Were chosen two tools for creating frontend and three responsible for the backend. The main emphasis has been on a comparison of selected tools. The preface provides background information to the problem, presents the purpose and division of work. This also explains the motivation to take the topic of work and arrangement of chapters. The theoretical introduction describes the essential issues of web application architecture, the understanding of which is crucial for the realization of the theme. Description of the technology is an important chapter, which describes the selected libraries. These chapters lead to the multivariate analysis. This chapter is a comparison of selected tools, aimed to identify the best in each category. At the end, there is a summary of the work carried out, the conclusions of the study, as well as a subjective assessment of examined technologies. It also takes a polemic about the future direction of web applications.
Wkrocz w świat projektowania 3D
* Jak definiować parametry projektu?
* W jaki sposób korzystać z narzędzi projektowych?
* Jak generować dokumentację techniczną?
Inventor, opracowany i sprzedawany przez firmę Autodesk, to program typu CAD, pozwalający na zamodelowanie projektowanego urządzenia lub elementu w postaci bryły trójwymiarowej. W oparciu o tak zamodelowaną bryłę Inventor umożliwia wygenerowanie pełnej dokumentacji projektowej — rysunków wykonawczych i złożeniowych, wykazu części i innych. Aplikacja pozwala także na przeprowadzenie symulacji i analizy działania projektowanego urządzenia.
"Inventor. Pierwsze kroki " to podręcznik dla wszystkich osób, które chcą poznać możliwości tej aplikacji i wykorzystać je w swojej pracy. Książka opisuje proces instalacji i konfiguracji programu oraz definiowania parametrów projektu. Pokazuje także kolejne kroki jego realizacji. Przeczytasz w niej o tworzeniu szkiców, definiowaniu wiązań, generowaniu modeli bryłowych i tworzeniu zespołów. Dowiesz się także, w jaki sposób wygenerować dokumentację techniczną w oparciu o gotowy model oraz jak zaprezentować elementy projektu w postaci animacji trójwymiarowej.
* Instalacja Inventora
* Konfiguracja interfejsu użytkownika
* Praca z oknami dialogowymi
* Tworzenie szkiców i wiązań
* Edycja obiektów graficznych
* Tworzenie brył trójwymiarowych
* Łączenie elementów w zespoły
* Tworzenie dokumentacji technicznej
* Prezentacja zespołów
Zrealizuj swoje wizje za pomocą Inventora!
Opanuj język programowania, który zmienił oblicze sieci
* Jakie elementy tworzą język Java?
* Jak wykorzystać pełnię możliwości programowania obiektowego?
* Jak tworzyć własne aplety i aplikacje?
Interesuje Cię język programowania, który zyskuje coraz większą popularność wśród twórców rozwiązań korporacyjnych? A może zamierzasz tworzyć aplikacje dla urządzeń mobilnych? Najwyższa pora poznać tajniki Javy. Ten język już dawno przestał być narzędziem do tworzenia prostych programików osadzanych na stronach WWW. Współczesna Java to potężny obiektowy język programowania wykorzystywany w aplikacjach bankowych i finansowych, portalach internetowych i wielu innych systemach. Jedna z jego wersji służy także do pisania oprogramowania dla telefonów komórkowych, terminali BlackBerry i komputerów przenośnych. Warto więc poznać Javę.
"Praktyczny kurs Java. Wydanie II" to kolejna edycja podręcznika, dzięki któremu poznasz tajniki tego niezwykłego języka programowania. Znajdziesz tu omówienie elementów najnowszej wersji Javy, słów kluczowych tego języka, konstrukcji sterujących i zasad programowania. Dowiesz się, na czym polega projektowanie i programowanie obiektowe. Nauczysz się korzystać z mechanizmów obsługi wyjątków, implementować w programach operacje wejścia i wyjścia oraz budować własne aplikacje i aplety.
* Instalacja Javy w Windows i Linuksie
* Instrukcje Javy
* Operacje na tablicach
* Podstawy programowania obiektowego
* Obsługa wyjątków
* Zaawansowane zagadnienia programowania obiektowego
* Operacje wejścia i wyjścia
* Obsługa myszy i klawiatury
* Tworzenie interfejsów użytkownika
* Korzystanie z komponentów
Zostań profesjonalnym programistą Javy.
* Poznaj sekrety kanałów barwnych
* Dobieraj umiejętnie maski
* Projektuj jak profesjonalista
Photoshop — najpopularniejszy program do tworzenia i obróbki grafiki — wciąż skrywa wiele tajemnic, a jego możliwości są tak ogromne, że wprawiają w zachwyt nawet najbardziej doświadczonych projektantów i fotografów. Na szczęście dzięki intuicyjnemu interfejsowi ogrom jego możliwości wcale nie utrudnia użytkowania! Umożliwia za to niezwykłą synergię różnych technik i narzędzi oraz pozwala na tworzenie profesjonalnych, niepowtarzalnych projektów. Aktualna wersja — Photoshop CS3/CS3 PL — jest sprawniejsza i bardziej intuicyjna niż poprzednie, m.in. dzięki udoskonaleniu interfejsu użytkownika oraz wprowadzeniu nowych funkcji, takich jak inteligentne filtry.
Książka „Photoshop CS3/CS3 PL. Kanały i maski. Biblia” zawiera szczegółowe omówienie sposobów zarządzania kanałami kolorów i maskami oraz wyjawia tajniki sprawnej pracy w tym programie. Dodatkowo wszystkie przykłady zastosowania narzędzi zostały zilustrowane kolorowymi zdjęciami. Korzystając z tego wyczerpującego podręcznika, poznasz techniki służące do mieszania kanałów, tworzenia obrazów monochromatycznych, bichromii i wprowadzania koloru dodatkowego. Dowiesz się, na czym polega praca w trybie Lab oraz przekształcanie zaznaczeń. Nauczysz się efektownie kompilować zdjęcia za pomocą kanałów i masek. Ta książka łączy w sobie ekspercką wiedzę teoretyczną z praktycznymi technikami. Takie połączenie wzbogaci Twój warsztat i zainspiruje Cię do tworzenia własnych, wyjątkowych obrazów!
* Obrazy wektorowe i rastrowe
* Przekształcanie zdjęć
* Korzystanie z narzędzia Crop
* Praca z warstwami
* Korzystanie z palet
* Konwersja trybów barwnych
* Tworzenie kolorów
* CMYK i RGB
* Techniki pracy z kanałami barwnymi
* Zmiana informacji barwnej
* Tworzenie obrazu monochromatycznego
* Praca w trybie Lab
* Tworzenie świateł i cieni
* Praca z maskami
Połącz perfekcyjne rzemiosło i artystyczną inspirację!
Podręcznik zawiera:
* 19 lekcji, które pomogą Ci opanować obsługę programu
* ciekawe wskazówki i techniki
* zestaw praktycznych ćwiczeń i rzeczywistych przykładów
* płytę DVD dla Windows i Mac OS
Adobe® Premiere® Pro CS3 to skalowalne, bardzo wydajne i precyzyjne narzędzie, służące do edycji materiałów wideo. Nieważne, czy jesteś entuzjastą, czy profesjonalistą, używasz formatu DV, HD, HDV czy dowolnego innego, korzystanie z tej aplikacji umożliwi Ci szybszą i bardziej kreatywną pracę. Gdy tylko rozpoczniesz naukę obsługi tego programu, przekonasz się, że to kompletny zestaw potężnych i niepowtarzalnych instrumentów, niezastąpiony w sprawnym wykonywaniu pracy edytorskiej i produkcyjnej.
Układ lekcji w tym niezwykłym podręczniku, napisanym przez autoryzowanych trenerów Adobe, umożliwi Ci szybkie opanowanie możliwości programu i maksymalne ich wykorzystanie. Poznasz na nowo zaprojektowany i usprawniony interfejs użytkownika. Jeśli dopiero zaczynasz przygodę z Adobe Premiere, będziesz miał okazję zrozumieć wszystkie niezbędne pojęcia i opcje. Jeśli zaś jesteś bardziej doświadczonym użytkownikiem, możesz od razu zagłębić się w niuanse zaawansowanych i całkiem nowych narzędzi programu. Książka zawiera także praktyczne wskazówki i techniki, ułatwiające sprawne korzystanie z najnowszej wersji Premiere. Należy do nich między innymi używanie zwolnionego tempa z ponownym mapowaniem czasu, możliwość bezpośredniego zapisywania na dysk oraz publikacja projektów Adobe Encore® CS3 na nośnikach DVD, Blu-ray lub Flash.
* Filmowanie i przechwytywanie doskonałego materiału wideo
* Adobe OnLocation
* Wybór ustawień, dostosowanie preferencji i zarządzanie zasobami
* Tworzenie wideo z ostrymi przejściami i dodawanie przejść wideo
* Tworzenie dynamicznych napisów
* Dodawanie efektów wideo i wprawianie klipów w ruch
* Nagrywanie i edycja dźwięku, ulepszanie i miksowanie
* Techniki tworzenia kompozycji
Twój elementarz sprawnego i maksymalnego wykorzystywania możliwości Adobe Premiere!
Smarty to obiektowa biblioteka dla języka PHP służąca do tworzenia witryn internetowych z wykorzystaniem szablonów. Dzięki wbudowanemu systemowi buforowania Smarty jest niezwykle wydajna i szybka, co staje się szczególnie ważne przy rozbudowanych witrynach WWW. Wykorzystanie biblioteki Smarty pozwala twórcom witryn i aplikacji WWW znacznie przyśpieszyć prace nad warstwą prezentacyjną i późniejszymi modyfikacjami swoich produktów.
Książka "Smarty PHP. Leksykon kieszonkowy" to zestawienie najważniejszych informacji dotyczących tej biblioteki. Znajdziesz w nim wszystko, co może okazać się przydatne podczas tworzenia witryny WWW z wykorzystaniem szablonów Smarty. W kolejnych rozdziałach opisano zagadnienia dotyczące konfigurowania Smarty, pracy ze zmiennymi, obiektów Smarty oraz obsługi pamięci podręcznej.
* Komentarze w szablonach
* Definiowanie zmiennych
* Konfiguracja
* Przetwarzanie danych
* Metody obiektów klasy Smarty
* Funkcje Smarty
* Korzystanie z mechanizmu buforowania
Jeśli korzystasz z szablonów Smarty,
ta książka powinna znaleźć się w Twojej bibliotece.
Błyskawiczny kurs programowania aplikacji w języku C
Język C, mimo prawie 30-letniej historii, cieszy się niesłabnącą popularnością wśród programistów. Wszyscy jego użytkownicy cenią w nim prostą i czytelną składnię, niewielki i łatwy do zapamiętania zakres słów kluczowych oraz duże możliwości, dzięki którym za pomocą C można rozwiązać niemal każde zagadnienie programistyczne. Zewnętrzne biblioteki, dostępne w sieci oraz dołączane do najpopularniejszych narzędzi programistycznych, dodatkowo rozszerzają możliwości C.
Książka "Programowanie w języku C. Szybki start" to podręcznik dla tych, którzy chcą poznać C w praktyce i nie chcą przebijać się przez dziesiątki stron opisów teoretycznych. Każde zagadnienie -- od najprostszych, związanych ze strukturą programu i zasadami kompilacji aż do złożonych typów danych i obsługi plików zewnętrznych -- jest przedstawione w postaci bogato ilustrowanej sekwencji czynności. Wykonując kolejne przykłady z książki, poznasz wszystkie podstawowe wiadomości o programowaniu w języku C.
* Struktura programu w języku C
* Typy danych
* Sterowanie działaniem programu
* Korzystanie ze standardowego wejścia i wyjścia
* Deklarowanie i stosowanie funkcji
* Dyrektywy preprocesora
* Wskaźniki i zarządzanie pamięcią
* Obsługa plików
* Złożone typy danych
Poznaj zalety i możliwości najpopularniejszego języka programowania.
Wyjątkowy język C++. 40 nowych łamigłówek, zadań programistycznych i rozwiązańWydawnictwo Helion
Poznaj skuteczne rozwiązania problemów, jakie napotkasz podczas codziennej pracy programisty
* Prawidłowo zoptymalizuj kod źródłowy
* Zaprojektuj efektywną obsługę wyjątków
* Naucz się odpowiednio korzystać z przestrzeni nazw
Nauka każdego nowego zagadnienia przebiega zdecydowanie szybciej i efektywniej pod kierunkiem osoby znającej temat. Nie inaczej jest w przypadku nauki programowania w języku C++. Programowanie w tym języku wymaga dogłębnego opanowania możliwości biblioteki standardowej, inżynierii oprogramowania i wielu innych tematów. Rozwiązując samodzielnie zagadki, jakie często pojawiają się podczas poznawania języka C++ lepiej zapamiętujemy ich rozwiązania, dzięki czemu łatwiej możemy zastosować je w codziennej pracy.
Książka "Wyjątkowy język C++. 40 nowych łamigłówek, zadań programistycznych i rozwiązań" to zbiór zagadnień związanych z niemal wszystkimi aspektami programowania w C++, przedstawionych w formie zagadek z rozwiązaniami. Opisuje zarówno podstawy stosowania szablonów, biblioteki standardowej i projektowanie klas, jak i tematy zaawansowane -- przestrzenie nazw, wyjątki, dziedziczenie i zarządzanie zasobami. Czytając ją, przekonasz się, w jaki sposób można użyć pozornie niezwiązanych ze sobą elementów do opracowania nowych i oryginalnych rozwiązań częstych problemów.
* Poprawne stosowanie predykatów
* Kontenery i wskaźniki
* Korzystanie z szablonów
* Optymalizacja kodu
* Bezpieczna obsługa wyjątków
* Mechanizmy dziedziczenia i polimorfizmu
* Zarządzanie zasobami i pamięcią
* Makrodefinicje
* Przestrzenie nazw
Gdy zrozumiesz zagadnienia opisywane w tej książce, nie będziesz musiał podczas programowania zastanawiać się nad szczegółami -- będziesz mógł skoncentrować się na problemach, które naprawdę chcesz rozwiązać.
O autorze:
Herb Sutter to ekspert od programowania w języku C++. Jest regularnie zapraszany do wygłaszania wykładów na konferencjach dla programistów.
[więcej...]
Teoria i praktyka prowadzenia projektów programistycznych
* Naucz się zasad programowania ekstremalnego i zastosuj je w praktyce
* Od konceptualizacji do przekazania działającego systemu -- poznaj najlepsze sposoby pracy na każdym etapie tworzenia oprogramowania
* Poznaj znaczenie wszystkich uczestników procesu tworzenia oprogramowania: programistów, menedżerów i klientów
* Dowiedz się, jak rozwiązać najczęstsze problemy powstające przy wdrażaniu metodologii programowania ekstemalnego
"eXtreme programming" przedstawia nową metodologię i praktykę programowania w przystępny, a jednocześnie kompleksowy sposób. Autorzy omawiają podstawowe pojęcia programowania ekstremalnego: planowanie edycji, programowanie w parach, wczesne testowanie, "zręczne modelowanie" i refaktoryzację. Zostały one zaprezentowane na przykładzie konkretnego projektu, którego realizację omówiono w książce.
Kto powinien przeczytać tę książkę? Będzie ona niewątpliwie pożyteczną lekturą dla każdego, kto choć częściowo związał swe życie z tworzeniem oprogramowania -- programisty, menedżera czy koordynatora projektu. I nawet gdyby miało skończyć się tylko na czytaniu -- bez praktycznego zastosowania w najbliższym projekcie poznanych reguł, wiedza o programowaniu ekstremalnym okaże się bez wątpienia pożyteczna.
* Naucz się zasad programowania ekstremalnego i zastosuj je w praktyce
* Od konceptualizacji do oddania działającego systemu -- poznaj najlepsze sposoby pracy na każdym etapie tworzenia programowania
* Poznaj znaczenie wszystkich uczestników procesu tworzenia oprogramowania: programistów, menedżerów i klientów
* Dowiedz się, jak rozwiązać najczęstsze problemy powstające przy wdrażaniu metodologii programowania ekstemalnego
Możliwości komercyjnych systemów operacyjnych nie odpowiadają Ci? Może Twój komputer nie spełnia minimalnych wymagań sprzętowych niezbędnych do ich uruchomienia? A może po prostu nie chcesz wydawać pieniędzy na licencjonowany system ani ryzykować używaniem wersji pirackiej? Skorzystaj z darmowej alternatywy! Zastosuj Linuksa. Popularność tego systemu operacyjnego, tworzonego i rozwijanego przez zapaleńców z całego świata, rośnie w lawinowym tempie. Linux już dawno przestał być zabawką dla pasjonatów -- teraz to w pełni funkcjonalny produkt, bezpieczny, stabilny i wygodny w obsłudze.
"Linux. Kurs. Wydanie II" to podręcznik, dzięki któremu poznasz i opanujesz możliwości tego systemu operacyjnego. Przedstawia on Mandrivę -- jedną z jego najpopularniejszych wersji, zwanych dystrybucjami. Czytając tę książkę, dowiesz się, jak zainstalować system i skonfigurować go. Nauczysz się korzystać z graficznego środowiska pracy, zarządzać kontami użytkowników i systemem plików, instalować i usuwać nowe aplikacje, nagrywać płyty CD i DVD oraz drukować. Przekonasz się także, że dołączony do Linuksa pakiet biurowy OpenOffice jest doskonałym narzędziem do edycji tekstów, przeprowadzania obliczeń i tworzenia baz danych. Ma również możliwość wymiany plików z popularnym, lecz komercyjnym MS Office.
* Pobieranie wersji instalacyjnej Linuksa
* Logowanie i korzystanie z terminala
* Praca ze środowiskiem graficznym
* Nagrywanie płyt CD i DVD
* Przeglądanie stron WWW
* Korzystanie z poczty elektronicznej
* Tworzenie grafiki za pomocą programu GIMP
* Redagowanie plików tekstowych za pomocą OpenOffice Writer
* Tworzenie arkuszy kalkulacyjnych za pomocą OpenOffice Calc
Przekonaj się, że nie musisz wydawać pieniędzy,
aby dysponować doskonałymi narzędziami do pracy.
Flash CS3 Professional PL. Techniki zaawansowane. Klatka po klatceWydawnictwo Helion
Odkryj najgłębiej strzeżone tajemnice Flasha
* Jak tworzyć rozbudowane animacje?
* W jaki sposób kontrolować obiekty, wykorzystując ActionScript?
* Jak pobierać dane z zewnętrznych źródeł?
Flash CS3 Professional to kolejne wcielenie narzędzia, które zyskało uznanie dziesiątek tysięcy twórców witryn WWW. Jednak jego niesamowite możliwości w zakresie tworzenia grafiki i animacji to tylko wierzchołek góry lodowej. Swoją prawdziwą potęgę Flash ujawnia, gdy sięgniemy po rozwiązania oparte na wbudowanym, obiektowym języku programowania noszącym nazwę ActionScript 3.0. Za jego pomocą możemy kontrolować niemal każdy aspekt animacji i wszystkie obiekty wchodzące w jej skład, sterować wyświetlaniem i pobieraniem danych oraz odtwarzaniem dźwięku. Jesteśmy w stanie wykreować niesamowite efekty, jakich nigdy nie uzyskalibyśmy, wykorzystując inne techniki.
W książce „Flash CS Professional PL. Techniki zaawansowane. Klatka po klatce" opisano techniki tworzenia animacji związane ze stosowaniem języka ActionScript. Czytając ją, poznasz podstawy tego języka, a także dowiesz się, w jaki sposób pisać skrypty i do jakich obiektów je dołączać. Nauczysz się kontrolować elementy graficzne, dźwiękowe, tekstowe i nawigacyjne umieszczone w prezentacji za pomocą poleceń ActionScriptu. Opanujesz sposoby łączenia witryn WWW tworzonych we Flashu z zewnętrznymi plikami, przeglądarką internetową i serwerem, na którym są publikowane. Znajdziesz tu także informacje o wykrywaniu błędów w skryptach i ich usuwaniu.
* Animacje poklatkowe i automatyczne
* Animowane maski
* Rotoskopia
* Edycja kodu ActionScript w panelu Actions
* Tworzenie funkcji
* Obsługa zdarzeń w animacji
* Zarządzanie listwami czasowymi
* Tworzenie elementów nawigacyjnych
* Pobieranie plików multimedialnych z zewnętrznych źródeł
* Przetwarzanie elementów graficznych i dźwiękowych oraz danych tekstowych
* Operacje matematyczne we Flashu
* Optymalizacja filmów
Odkryj zapierające dech w piersiach możliwości synergii Flasha i języka ActionScript!
Java jest jednym z najpopularniejszych języków programowania na świecie wykorzystywanym przy tworzeniu popularnych aplikacji. Język ten dla początkujących programistów jest często pierwszym poznanym językiem programowania. Dzięki przemyślanej architekturze obiektowej Javy łatwiej Ci będzie nabrać prawidłowych nawyków programistycznych, z kolei funkcjonalność tego języka sprawi, że nauka nie pójdzie na marne, a zdobytą wiedzę wykorzystasz w praktyce. W Javie można bowiem napisać prawie każdą aplikację, od prostej gry działającej w telefonie komórkowym, po skomplikowany system uruchamiany na potężnym serwerze.
"Po prostu Java 2" to książka, dzięki której nauczysz się pisać programy w tym języku, nawet jeśli programowanie było Ci do tej pory zupełnie obce. Książka jest pozbawiona zbędnego balastu teorii. Prezentuje ona wiele zastosowań Javy.
Dzięki książce nauczysz się:
* Składni Javy oraz podstawowych instrukcji
* Korzystać z obiektów i rozpoznawać ich metody
* Tworzyć interfejs użytkownika dla aplikacji Javy
* Pisać aplety i osadzać je w stronach WWW
* Łączyć Javę z JavaScript
* Pisać servlety i strony JSP
* Korzystać z XML z poziomu Javy
Chcesz szybko i bez zbędnych dywagacji dowiedzieć się, dlaczego Java cieszy się takim powodzeniem? Chcesz wykorzystać ją do swoich potrzeb? Ta książka z pewnością Ci w tym pomoże.
Poznaj tajniki programowania w języku PL/SQL
* Jak pisać kod w języku PL/SQL?
* Jak zarządzać błędami?
* Jak tworzyć funkcje i procedury?
PL/SQL to wbudowany język proceduralny baz danych Oracle. Jest on rozszerzeniem języka SQL i umożliwia tworzenie takich konstrukcji, jak pętle, instrukcje warunkowe, zmienne i wyzwalacze. Dzięki temu można zautomatyzować wiele czynności administracyjnych oraz rejestrować zmiany danych lub nadzorować ich modyfikacje. Język ten pozwala więc na budowanie dynamicznych i stabilnych aplikacji, opartych na bazach danych typu klient-serwer.
Książka „Oracle Database 11g. Programowanie w języku PL/SQL” zawiera omówienie wszystkich najnowszych funkcji i narzędzi tego języka programowania. Szczegółowe wyjaśnienia wzbogacone zostały o studia przypadków oraz przykładowy kod, który można wkleić do własnej aplikacji. Z tym podręcznikiem nauczysz się pobierać i modyfikować informacje w bazach danych, tworzyć wartościowe instrukcje w języku PL/SQL, skutecznie wykonywać zapytania i budować niezawodne zabezpieczenia. Dowiesz się także między innymi, jak stosować procedury, funkcje, pakiety, kolekcje i wyzwalacze oraz jak zoptymalizować wydajność aplikacji.
* Język PL/SQL — architektura i funkcje
* Struktury sterujące
* Instrukcje
* Zarządzanie błędami
* Programowanie w języku PL/SQL
* Kolekcje
* Obiekty i pakiety
* Wyzwalacze
* Komunikacja między sesjami
* Podprogramy zewnętrzne
* Typy obiektowe
* Biblioteka języka Java
* Rozwój aplikacji sieciowych
Twórz solidne aplikacje sieciowe w języku PL/SQL
Rozpocznij swoją przygodę z JavaScript!
* Jak rozpocząć przygodę z JavaScript?
* Jakie obiekty dostarcza JavaScript?
* Jak reagować na błędy?
Język JavaScript, choć ma już blisko dwanaście lat, swoimi możliwościami wciąż potrafi zafascynować niejednego projektanta stron internetowych. Ma już za sobą gorsze dni, jednak aktualnie dzięki technologii AJAX znów jest na topie. Wykorzystując go w odpowiedni sposób, sprawisz, że twój serwis WWW stanie się bardziej interaktywny i dynamiczny.
Ta książka pozwoli Ci wyjść zwycięsko z pierwszego starcia z tym językiem! Dowiesz się z niej, jak używać zmiennych, operatorów oraz funkcji. Nauczysz się reagować na zdarzenia oraz wykorzystywać okna dialogowe. Ponadto zdobędziesz wiedzę na temat pracy z obiektami DOM HTML oraz na temat sposobów reagowania na błędy w skryptach. Autor przedstawia tu także dostępne obiekty JavaScript oraz pokazuje, jak wykonywać operacje związane z czasem. Ogromnym atutem tej książki jest przejrzystość i usystematyzowany sposób prezentowania informacji. Dzięki temu również Ty szybko i bezboleśnie poznasz JavaScript!
* Typowe konstrukcje języka JavaScript
* Wykorzystanie zmiennych
* Zastosowanie funkcji
* Reagowanie na zdarzenia
* Sposoby użycia okien dialogowych
* Wykonywanie operacji związanych z czasem
* Dostępne obiekty JavaScript
* Obiekty DOM HTML
* Przygotowanie własnych obiektów
* Dziedziczenie w JavaScript
* Obsługa błędów
Przejdź bezboleśnie pierwsze starcie z JavaScript!
Skorzystaj z tego, co w Windows Vista najlepsze i najbardziej potrzebne
* Jak korzystać z ciekawych gadżetów?
* Jak bezpiecznie surfować po sieci?
* Jak obrobić grafikę?
Windows Vista to nowoczesny system operacyjny, stworzony po to, abyś mógł po prostu sprawnie, bezpiecznie i z radością używać swojego komputera i korzystać z internetu. Jeśli nie lubisz opasłych tomów przepełnionych technicznym żargonem, a zależy Ci na zdobyciu praktycznych umiejętności oraz interesuje Cię kilka pomijanych w innych książkach zagadnień, ten podręcznik jest właśnie dla Ciebie!
Dzięki książce „Windows Vista PL. Zabawa multimediami” nauczysz się efektywnie korzystać z najnowszych możliwości systemu Windows. Dowiesz się m.in. jak perfekcyjnie zorganizować swoją kolekcję cyfrowych fotografii, odtwarzać muzykę, montować i obrabiać wideo i zapewnić bezpieczną pracę komputera. Dopasujesz także Vistę do swoich potrzeb i nawet najbardziej wygórowanych oczekiwań! Każdą stronę tego podręcznika poświęcono jednemu tematowi, bogato ilustrując je kolorowymi fotografiami i zrzutami ekranowymi, ułatwiającymi opanowanie zagadnienia i szybkie znalezienie w książce właśnie tego, czego poszukujesz.
* Windows Vista — tworzenie własnego pulpitu
* Nowe gadżety i pasek boczny
* Bezpieczeństwo
* Internet i poczta elektroniczna
* Osobista galeria fotografii i upiększanie zdjęć
* Odtwarzanie i organizowanie plików muzycznych — Media Player
* DVD i własne filmy
* Porządek i nawigacja po plikach i folderach
Wszystko, co musisz wiedzieć, by czerpać radość z pracy z systemem Vista!
Standard Template Library to jedno z najpotężniejszych narzędzi programistycznych charakteryzujące się złożonością i wysokim stopniem komplikacji. W książce "STL w praktyce. 50 sposobów efektywnego wykorzystania" -- przeznaczonej dla zaawansowanych i średnio zaawansowanych programistów C++ -- znany ekspert Scott Meyers prezentuje najważniejsze techniki stosowania tego narzędzia. Poza listą zaleceń, jak postępować należy, a jak postępować się nie powinno, Meyers przedstawia wiele poważniejszych aspektów STL pozwalających zrozumieć, dlaczego pewne rozwiązania są poprawne, a innych należy unikać. Do każdej wskazówki dołączony jest kod źródłowy i dokładne objaśnienia, które powinny zainteresować zaawansowanych programistów.
Jeżeli Twoja wiedza ogranicza się do informacji dostępnych w dokumentacji STL, ta książka uzupełni ją o bezcenne wskazówki, które pozwolą Ci wykorzystać STL w praktyce.
Książka przedstawia:
* Podstawowe informacje o bibliotece STL i jej zgodności z innymi standardami
* Wskazówki dotyczące poprawnego doboru i używania pojemników
* Opis pojemników typu vector i string
* Omówienie pojemników asocjatywnych
* Metody właściwego korzystania z iteratorów
* Algorytmy wchodzące w skład STL
* Funktory, klasy-funktory i funkcje
* Programowanie za pomocą biblioteki STL
Książkę uzupełniają dodatki, w których znajdziesz między innymi obszerną bibliografię na temat STL oraz cenne wskazówki dla programistów używających kompilatorów firmy Microsoft.
"STL w praktyce. 50 sposobów efektywnego wykorzystania" to nieocenione źródło wiedzy na temat jednego z najważniejszych aspektów programowania w C++. Jeżeli chcesz w praktyce wykorzystać STL, nie obędziesz się bez informacji zawartych w tej książce.
Poznaj program Photoshop CS3 i twórz wyjątkową grafikę!
* Jak tworzyć kompozycje warstw i posługiwać się nimi?
* Jak przenosić efekty pomiędzy warstwami?
* Jak przygotować pracę do druku?
Aktualna wersja Photoshopa CS3 udostępnia wiele nowych opcji usprawniających pracę, np. przeglądarkę plików Adobe Bridge czy technologię "Obiekty inteligentne", która pozwala na odwracalne skalowanie, obracanie i zniekształcanie warstw. Program umożliwia pracę na wielu warstwach z wykorzystaniem inteligentnych linii pomocniczych, redukcję szumu znacznie poprawiającą jakość zdjęć, a także importowanie i teksturowanie modeli 3D. Ogromna różnorodność funkcji i narzędzi sprawia, że Photoshop jest doskonałym narzędziem do edycji i obróbki grafiki rastrowej. Jednak aby profesjonalnie posługiwać się tą aplikacją, niezbędna jest rzetelna wiedza oraz sprawność w poruszaniu się po programie. Podręcznik, który trzymasz w rękach, pozwoli Ci na takie poznanie funkcji i możliwości Photoshopa, aby wreszcie w pełni je wykorzystywać!
Książka "Po prostu Photoshop CS3/CS3 PL" zawiera zwięzłe, zrozumiałe, bogato ilustrowane i dokładnie przetestowane rozwiązania - gotowe przepisy na korzystanie z Photoshopa. Nie oznacza to jednak, że musisz zrezygnować z własnej kreatywności. Wręcz przeciwnie - umiejętność posługiwania się konkretnymi narzędziami pozwala na eksperymentowanie i zachęca do twórczych działań. Ten przewodnik udostępnia Ci całą potrzebną wiedzę, żebyś mógł realizować wszelkie zadania w Photoshopie, wykorzystując swój artystyczny potencjał. Nauczysz się pracować z warstwami, zarządzać kolorem, korygować i retuszować zdjęcia. Dowiesz się także, jak prezentować i drukować swoje prace.
* Interfejs i pasek narzędzi
* Zarządzanie kolorem
* Program Bridge
* Kadrowanie, obracanie i odwracanie obrazów
* Warstwy, maski i siatki
* Praca z zaznaczeniami
* Korekcja tonalna
* Format Camera Raw
* Ekspozycja i wyostrzanie
* Retusz i gradienty
* Zastosowanie stylów
* Praca z tekstem
* Prezentacja prac i drukowanie
Po prostu wykorzystaj swój artystyczny potencjał!
Kompletny przewodnik dla cyfrowych fotografów
* Jak precyzyjnie wyostrzać fotografie?
* W jaki sposób przetwarzać pliki RAW?
* Jak zautomatyzować pracę Photoshopa?
Aparaty cyfrowe, których możliwości rosną w ogromnym tempie, nadal nie zapewniają uzyskiwania doskonałych fotografii w każdych warunkach. Nawet fotografie wykonywane przez profesjonalistów korzystających z najnowocześniejszych cyfrowych lustrzanek poddawane są cyfrowej obróbce – korekcie barw, wyrównaniu oświetlenia czy też konwersji na tryb czarno-biały. Chyba każdy użytkownik "cyfrówki“, przeglądając wykonane przez siebie zdjęcia, znajduje w nich liczne błędy. Na szczęście, korekcja takich niedociągnięć nie wymaga zakupu profesjonalnego sprzętu laboratoryjnego – w zupełności wystarczy komputer, odpowiednie narzędzia i wiedza, jak to zrobić!
Książka "Fotografia cyfrowa. Edycja zdjęć. Wydanie IV" to kolejny rewelacyjny podręcznik autorstwa Scotta Kelby’ego, guru cyfrowej fotografii. Przedstawia zaawansowane techniki obróbki i modyfikacji zdjęć cyfrowych wykorzystywane przez profesjonalistów z branży fotograficznej i projektowej. Przeczytasz w niej o możliwościach, jakie w zakresie korekcji zdjęć oferuje Photoshop CS3. Dowiesz się, jak katalogować i opisywać zdjęcia, przetwarzać pliki RAW, poprawiać ostrość i nasycenie barw oraz kompensować nierównomierne oświetlenie kadru. Dzięki tej książce nauczysz się kadrować, prostować i retuszować fotografie. Ponadto Scott Kelby podaje w niej gotowe receptury zapewniające błyskawiczny i zachwycający efekt!
* Katalogowanie, opisywanie i archiwizowanie fotografii
* Przetwarzanie plików RAW
* Skalowanie i kadrowanie zdjęć
* Zarządzanie kolorem w aparacie i w Photoshopie
* Korekcja kolorystyki fotografii
* Konwersja zdjęć do trybu czarno-białego
* Retusz portretów
* Efekty specjalne
* Wyostrzanie obrazów
* Prezentowanie i sprzedawanie własnych prac
Wybierz się do świata fotografii cyfrowej z profesjonalnym przewodnikiem!
Adobe InDesign to jeden z najbardziej zaawansowanych programów służących do składu wszelkiego rodzaju publikacji. W wersji 2.0 został wzbogacony o ponad 800 nowych funkcji -- daje to pojęcie o jego złożoności. Możliwości programu InDesign powiększą się jeszcze bardziej, jeśli w procesie składu wykorzystamy inne programy firmy Adobe: Photoshopa i Illustratora.
"Po prostu InDesign 2.0" to wprowadzenie do tworzenia publikacji za pomocą programu firmy Adobe. Książki z serii "Po prostu…" pokazują, jak wykonać konkretne zadanie, dzięki czemu, gdy tylko napotkasz trudności przy pracy, szybko znajdziesz ich rozwiązanie. Książka jest więc zarówno podręcznikiem, jak i pomocą dla osoby używającej InDesign.
W książce przedstawiono:
* Rozpoczęcie pracy z InDesign 2.0
* Konfigurowanie ustawień dokumentu
* Pracę z tekstem: formatowanie, ramki tekstowe, typografia
* Tworzenie obiektów graficznych: umieszczanie ich na stronie i przekształcanie
* Importowanie grafiki i łączenie jej z tekstem
* Pracę z tabelami i obszernymi dokumentami (tworzenie spisów treści i indeksów)
* Drukowanie dokumentów i tworzenie plików PDF
Przystępny język, liczne przykłady i szeroki zakres przedstawionych zagadnień to niewątpliwe atuty tej książki. Dzięki lekturze "Po prostu InDesign 2.0" i możliwościom opisywanego programu niedługo i Ty będziesz mógł tworzyć profesjonalne publikacje łatwo i szybko.
Poznaj nowoczesne, oparte na wiedzy metody projektowania
* Jak dobrać właściwe ustawienia systemu CATIA, stosowane w budowie modeli autogenerujących?
* Jak tworzyć bazy reguł i tablice projektowe?
* Jak wykorzystywać zaawansowane narzędzia parametryzacji i integracji wiedzy?
CATIA to zaawansowany system wspomagania prac inżynierskich w przemyśle lotniczym, samochodowym, stoczniowym, maszynowym i innych. Projektowanie oparte na wiedzy jest tendencją polegającą na sprowadzeniu do komputerowego zapisu budowy zasad i reguł procesu projektowo-konstrukcyjnego. Wzbogacony o te zasady i reguły model geometryczny konstrukcji nazywany jest modelem autogenerującym. Model autogenerujący automatyzuje pewne rutynowe czynności procesu projektowego poprzez samodzielne wyznaczanie cech konstrukcyjnych w oparciu o zapisaną w nim wiedzę.
Książka „CATIA V5. Podstawy budowy modeli autogenerujących” przedstawia zagadnienia dotyczące automatyzacji procesu projektowo-konstrukcyjnego i wprowadzania wiedzy do modelu komputerowego. Materiał zawarty w tym podręczniku pozwala zyskać umiejętność stosowania technik parametryzacji oraz budowania zaawansowanych modeli parametrycznych i modeli autogenerujących. Książka przeznaczona jest dla średnio zaawansowanych i zaawansowanych użytkowników systemu CATIA, chcących wdrożyć do swych działań metody oparte na wiedzy.
* Wprowadzenie do modelowania autogenerującego
* Projektowanie z zastosowaniem wiedzy w systemie CATIA
* Podstawowe i zaawansowane narzędzia parametryzacji
* Formuły i tablice projektowe
* Tworzenie reguł, sprawdzeń i reakcji
* Narzędzia zarządzania wiedzą i jej implementacji
* Szablony wiedzy - PowerCopy, User Defined Feature, Document Template
* Modele autogenerujące części
* Model autogenerujący elementu i podzespołu
Wykorzystaj potęgę programu CATIA i twórz modele autogenerujące!
Master Thesis - Comparative analysis of programming Environments based on Rub...Adam Skołuda
In this thesis, we analyzed technologies for creating web applications, using Ruby and JavaScript. Were chosen two tools for creating frontend and three responsible for the backend. The main emphasis has been on a comparison of selected tools. The preface provides background information to the problem, presents the purpose and division of work. This also explains the motivation to take the topic of work and arrangement of chapters. The theoretical introduction describes the essential issues of web application architecture, the understanding of which is crucial for the realization of the theme. Description of the technology is an important chapter, which describes the selected libraries. These chapters lead to the multivariate analysis. This chapter is a comparison of selected tools, aimed to identify the best in each category. At the end, there is a summary of the work carried out, the conclusions of the study, as well as a subjective assessment of examined technologies. It also takes a polemic about the future direction of web applications.
Wkrocz w świat projektowania 3D
* Jak definiować parametry projektu?
* W jaki sposób korzystać z narzędzi projektowych?
* Jak generować dokumentację techniczną?
Inventor, opracowany i sprzedawany przez firmę Autodesk, to program typu CAD, pozwalający na zamodelowanie projektowanego urządzenia lub elementu w postaci bryły trójwymiarowej. W oparciu o tak zamodelowaną bryłę Inventor umożliwia wygenerowanie pełnej dokumentacji projektowej — rysunków wykonawczych i złożeniowych, wykazu części i innych. Aplikacja pozwala także na przeprowadzenie symulacji i analizy działania projektowanego urządzenia.
"Inventor. Pierwsze kroki " to podręcznik dla wszystkich osób, które chcą poznać możliwości tej aplikacji i wykorzystać je w swojej pracy. Książka opisuje proces instalacji i konfiguracji programu oraz definiowania parametrów projektu. Pokazuje także kolejne kroki jego realizacji. Przeczytasz w niej o tworzeniu szkiców, definiowaniu wiązań, generowaniu modeli bryłowych i tworzeniu zespołów. Dowiesz się także, w jaki sposób wygenerować dokumentację techniczną w oparciu o gotowy model oraz jak zaprezentować elementy projektu w postaci animacji trójwymiarowej.
* Instalacja Inventora
* Konfiguracja interfejsu użytkownika
* Praca z oknami dialogowymi
* Tworzenie szkiców i wiązań
* Edycja obiektów graficznych
* Tworzenie brył trójwymiarowych
* Łączenie elementów w zespoły
* Tworzenie dokumentacji technicznej
* Prezentacja zespołów
Zrealizuj swoje wizje za pomocą Inventora!
Opanuj język programowania, który zmienił oblicze sieci
* Jakie elementy tworzą język Java?
* Jak wykorzystać pełnię możliwości programowania obiektowego?
* Jak tworzyć własne aplety i aplikacje?
Interesuje Cię język programowania, który zyskuje coraz większą popularność wśród twórców rozwiązań korporacyjnych? A może zamierzasz tworzyć aplikacje dla urządzeń mobilnych? Najwyższa pora poznać tajniki Javy. Ten język już dawno przestał być narzędziem do tworzenia prostych programików osadzanych na stronach WWW. Współczesna Java to potężny obiektowy język programowania wykorzystywany w aplikacjach bankowych i finansowych, portalach internetowych i wielu innych systemach. Jedna z jego wersji służy także do pisania oprogramowania dla telefonów komórkowych, terminali BlackBerry i komputerów przenośnych. Warto więc poznać Javę.
"Praktyczny kurs Java. Wydanie II" to kolejna edycja podręcznika, dzięki któremu poznasz tajniki tego niezwykłego języka programowania. Znajdziesz tu omówienie elementów najnowszej wersji Javy, słów kluczowych tego języka, konstrukcji sterujących i zasad programowania. Dowiesz się, na czym polega projektowanie i programowanie obiektowe. Nauczysz się korzystać z mechanizmów obsługi wyjątków, implementować w programach operacje wejścia i wyjścia oraz budować własne aplikacje i aplety.
* Instalacja Javy w Windows i Linuksie
* Instrukcje Javy
* Operacje na tablicach
* Podstawy programowania obiektowego
* Obsługa wyjątków
* Zaawansowane zagadnienia programowania obiektowego
* Operacje wejścia i wyjścia
* Obsługa myszy i klawiatury
* Tworzenie interfejsów użytkownika
* Korzystanie z komponentów
Zostań profesjonalnym programistą Javy.
* Poznaj sekrety kanałów barwnych
* Dobieraj umiejętnie maski
* Projektuj jak profesjonalista
Photoshop — najpopularniejszy program do tworzenia i obróbki grafiki — wciąż skrywa wiele tajemnic, a jego możliwości są tak ogromne, że wprawiają w zachwyt nawet najbardziej doświadczonych projektantów i fotografów. Na szczęście dzięki intuicyjnemu interfejsowi ogrom jego możliwości wcale nie utrudnia użytkowania! Umożliwia za to niezwykłą synergię różnych technik i narzędzi oraz pozwala na tworzenie profesjonalnych, niepowtarzalnych projektów. Aktualna wersja — Photoshop CS3/CS3 PL — jest sprawniejsza i bardziej intuicyjna niż poprzednie, m.in. dzięki udoskonaleniu interfejsu użytkownika oraz wprowadzeniu nowych funkcji, takich jak inteligentne filtry.
Książka „Photoshop CS3/CS3 PL. Kanały i maski. Biblia” zawiera szczegółowe omówienie sposobów zarządzania kanałami kolorów i maskami oraz wyjawia tajniki sprawnej pracy w tym programie. Dodatkowo wszystkie przykłady zastosowania narzędzi zostały zilustrowane kolorowymi zdjęciami. Korzystając z tego wyczerpującego podręcznika, poznasz techniki służące do mieszania kanałów, tworzenia obrazów monochromatycznych, bichromii i wprowadzania koloru dodatkowego. Dowiesz się, na czym polega praca w trybie Lab oraz przekształcanie zaznaczeń. Nauczysz się efektownie kompilować zdjęcia za pomocą kanałów i masek. Ta książka łączy w sobie ekspercką wiedzę teoretyczną z praktycznymi technikami. Takie połączenie wzbogaci Twój warsztat i zainspiruje Cię do tworzenia własnych, wyjątkowych obrazów!
* Obrazy wektorowe i rastrowe
* Przekształcanie zdjęć
* Korzystanie z narzędzia Crop
* Praca z warstwami
* Korzystanie z palet
* Konwersja trybów barwnych
* Tworzenie kolorów
* CMYK i RGB
* Techniki pracy z kanałami barwnymi
* Zmiana informacji barwnej
* Tworzenie obrazu monochromatycznego
* Praca w trybie Lab
* Tworzenie świateł i cieni
* Praca z maskami
Połącz perfekcyjne rzemiosło i artystyczną inspirację!
Podręcznik zawiera:
* 19 lekcji, które pomogą Ci opanować obsługę programu
* ciekawe wskazówki i techniki
* zestaw praktycznych ćwiczeń i rzeczywistych przykładów
* płytę DVD dla Windows i Mac OS
Adobe® Premiere® Pro CS3 to skalowalne, bardzo wydajne i precyzyjne narzędzie, służące do edycji materiałów wideo. Nieważne, czy jesteś entuzjastą, czy profesjonalistą, używasz formatu DV, HD, HDV czy dowolnego innego, korzystanie z tej aplikacji umożliwi Ci szybszą i bardziej kreatywną pracę. Gdy tylko rozpoczniesz naukę obsługi tego programu, przekonasz się, że to kompletny zestaw potężnych i niepowtarzalnych instrumentów, niezastąpiony w sprawnym wykonywaniu pracy edytorskiej i produkcyjnej.
Układ lekcji w tym niezwykłym podręczniku, napisanym przez autoryzowanych trenerów Adobe, umożliwi Ci szybkie opanowanie możliwości programu i maksymalne ich wykorzystanie. Poznasz na nowo zaprojektowany i usprawniony interfejs użytkownika. Jeśli dopiero zaczynasz przygodę z Adobe Premiere, będziesz miał okazję zrozumieć wszystkie niezbędne pojęcia i opcje. Jeśli zaś jesteś bardziej doświadczonym użytkownikiem, możesz od razu zagłębić się w niuanse zaawansowanych i całkiem nowych narzędzi programu. Książka zawiera także praktyczne wskazówki i techniki, ułatwiające sprawne korzystanie z najnowszej wersji Premiere. Należy do nich między innymi używanie zwolnionego tempa z ponownym mapowaniem czasu, możliwość bezpośredniego zapisywania na dysk oraz publikacja projektów Adobe Encore® CS3 na nośnikach DVD, Blu-ray lub Flash.
* Filmowanie i przechwytywanie doskonałego materiału wideo
* Adobe OnLocation
* Wybór ustawień, dostosowanie preferencji i zarządzanie zasobami
* Tworzenie wideo z ostrymi przejściami i dodawanie przejść wideo
* Tworzenie dynamicznych napisów
* Dodawanie efektów wideo i wprawianie klipów w ruch
* Nagrywanie i edycja dźwięku, ulepszanie i miksowanie
* Techniki tworzenia kompozycji
Twój elementarz sprawnego i maksymalnego wykorzystywania możliwości Adobe Premiere!
Smarty to obiektowa biblioteka dla języka PHP służąca do tworzenia witryn internetowych z wykorzystaniem szablonów. Dzięki wbudowanemu systemowi buforowania Smarty jest niezwykle wydajna i szybka, co staje się szczególnie ważne przy rozbudowanych witrynach WWW. Wykorzystanie biblioteki Smarty pozwala twórcom witryn i aplikacji WWW znacznie przyśpieszyć prace nad warstwą prezentacyjną i późniejszymi modyfikacjami swoich produktów.
Książka "Smarty PHP. Leksykon kieszonkowy" to zestawienie najważniejszych informacji dotyczących tej biblioteki. Znajdziesz w nim wszystko, co może okazać się przydatne podczas tworzenia witryny WWW z wykorzystaniem szablonów Smarty. W kolejnych rozdziałach opisano zagadnienia dotyczące konfigurowania Smarty, pracy ze zmiennymi, obiektów Smarty oraz obsługi pamięci podręcznej.
* Komentarze w szablonach
* Definiowanie zmiennych
* Konfiguracja
* Przetwarzanie danych
* Metody obiektów klasy Smarty
* Funkcje Smarty
* Korzystanie z mechanizmu buforowania
Jeśli korzystasz z szablonów Smarty,
ta książka powinna znaleźć się w Twojej bibliotece.
Błyskawiczny kurs programowania aplikacji w języku C
Język C, mimo prawie 30-letniej historii, cieszy się niesłabnącą popularnością wśród programistów. Wszyscy jego użytkownicy cenią w nim prostą i czytelną składnię, niewielki i łatwy do zapamiętania zakres słów kluczowych oraz duże możliwości, dzięki którym za pomocą C można rozwiązać niemal każde zagadnienie programistyczne. Zewnętrzne biblioteki, dostępne w sieci oraz dołączane do najpopularniejszych narzędzi programistycznych, dodatkowo rozszerzają możliwości C.
Książka "Programowanie w języku C. Szybki start" to podręcznik dla tych, którzy chcą poznać C w praktyce i nie chcą przebijać się przez dziesiątki stron opisów teoretycznych. Każde zagadnienie -- od najprostszych, związanych ze strukturą programu i zasadami kompilacji aż do złożonych typów danych i obsługi plików zewnętrznych -- jest przedstawione w postaci bogato ilustrowanej sekwencji czynności. Wykonując kolejne przykłady z książki, poznasz wszystkie podstawowe wiadomości o programowaniu w języku C.
* Struktura programu w języku C
* Typy danych
* Sterowanie działaniem programu
* Korzystanie ze standardowego wejścia i wyjścia
* Deklarowanie i stosowanie funkcji
* Dyrektywy preprocesora
* Wskaźniki i zarządzanie pamięcią
* Obsługa plików
* Złożone typy danych
Poznaj zalety i możliwości najpopularniejszego języka programowania.
Wyjątkowy język C++. 40 nowych łamigłówek, zadań programistycznych i rozwiązańWydawnictwo Helion
Poznaj skuteczne rozwiązania problemów, jakie napotkasz podczas codziennej pracy programisty
* Prawidłowo zoptymalizuj kod źródłowy
* Zaprojektuj efektywną obsługę wyjątków
* Naucz się odpowiednio korzystać z przestrzeni nazw
Nauka każdego nowego zagadnienia przebiega zdecydowanie szybciej i efektywniej pod kierunkiem osoby znającej temat. Nie inaczej jest w przypadku nauki programowania w języku C++. Programowanie w tym języku wymaga dogłębnego opanowania możliwości biblioteki standardowej, inżynierii oprogramowania i wielu innych tematów. Rozwiązując samodzielnie zagadki, jakie często pojawiają się podczas poznawania języka C++ lepiej zapamiętujemy ich rozwiązania, dzięki czemu łatwiej możemy zastosować je w codziennej pracy.
Książka "Wyjątkowy język C++. 40 nowych łamigłówek, zadań programistycznych i rozwiązań" to zbiór zagadnień związanych z niemal wszystkimi aspektami programowania w C++, przedstawionych w formie zagadek z rozwiązaniami. Opisuje zarówno podstawy stosowania szablonów, biblioteki standardowej i projektowanie klas, jak i tematy zaawansowane -- przestrzenie nazw, wyjątki, dziedziczenie i zarządzanie zasobami. Czytając ją, przekonasz się, w jaki sposób można użyć pozornie niezwiązanych ze sobą elementów do opracowania nowych i oryginalnych rozwiązań częstych problemów.
* Poprawne stosowanie predykatów
* Kontenery i wskaźniki
* Korzystanie z szablonów
* Optymalizacja kodu
* Bezpieczna obsługa wyjątków
* Mechanizmy dziedziczenia i polimorfizmu
* Zarządzanie zasobami i pamięcią
* Makrodefinicje
* Przestrzenie nazw
Gdy zrozumiesz zagadnienia opisywane w tej książce, nie będziesz musiał podczas programowania zastanawiać się nad szczegółami -- będziesz mógł skoncentrować się na problemach, które naprawdę chcesz rozwiązać.
O autorze:
Herb Sutter to ekspert od programowania w języku C++. Jest regularnie zapraszany do wygłaszania wykładów na konferencjach dla programistów.
[więcej...]
Teoria i praktyka prowadzenia projektów programistycznych
* Naucz się zasad programowania ekstremalnego i zastosuj je w praktyce
* Od konceptualizacji do przekazania działającego systemu -- poznaj najlepsze sposoby pracy na każdym etapie tworzenia oprogramowania
* Poznaj znaczenie wszystkich uczestników procesu tworzenia oprogramowania: programistów, menedżerów i klientów
* Dowiedz się, jak rozwiązać najczęstsze problemy powstające przy wdrażaniu metodologii programowania ekstemalnego
"eXtreme programming" przedstawia nową metodologię i praktykę programowania w przystępny, a jednocześnie kompleksowy sposób. Autorzy omawiają podstawowe pojęcia programowania ekstremalnego: planowanie edycji, programowanie w parach, wczesne testowanie, "zręczne modelowanie" i refaktoryzację. Zostały one zaprezentowane na przykładzie konkretnego projektu, którego realizację omówiono w książce.
Kto powinien przeczytać tę książkę? Będzie ona niewątpliwie pożyteczną lekturą dla każdego, kto choć częściowo związał swe życie z tworzeniem oprogramowania -- programisty, menedżera czy koordynatora projektu. I nawet gdyby miało skończyć się tylko na czytaniu -- bez praktycznego zastosowania w najbliższym projekcie poznanych reguł, wiedza o programowaniu ekstremalnym okaże się bez wątpienia pożyteczna.
* Naucz się zasad programowania ekstremalnego i zastosuj je w praktyce
* Od konceptualizacji do oddania działającego systemu -- poznaj najlepsze sposoby pracy na każdym etapie tworzenia programowania
* Poznaj znaczenie wszystkich uczestników procesu tworzenia oprogramowania: programistów, menedżerów i klientów
* Dowiedz się, jak rozwiązać najczęstsze problemy powstające przy wdrażaniu metodologii programowania ekstemalnego
Flash MX to aplikacja o oszałamiających możliwościach. Dynamiczne prezentacje, łączenie grafiki z dźwiękiem, animacje -- to tylko część zastosowań tego najpopularniejszego narzędzia multimedialnego stworzonego na potrzeby Internetu. Jeśli chcesz wzbogacić swoje strony WWW o atrakcyjne animacje -- po prostu sięgnij po tę książkę. Bez zbędnych opisów wprowadzi Cię ona w świat Flasha MX.
Dowiesz się:
* Jak funkcjonuje środowisko Flash i jakie nowości wprowadzono w wersji MX
* Jak tworzyć i modyfikować grafikę we Flashu
* Jak wykorzystać możliwości pracy z warstwami
* Jak używać symboli
* Jak tworzyć animacje
* Jak stworzyć animację reagującą na działania użytkownika
* Jak łączyć animacje z dźwiękiem i obrazem wideo
* ... i wiele więcej
Systematycznie lub wyrywkowo: czytaj tę książkę tak, jak chcesz. Zwięzłe objaśnienia i towarzyszące im liczne ilustracje oraz przykłady doprowadzą Cię wprost do celu.
Flash MX to aplikacja o oszałamiających możliwościach. Dynamiczne prezentacje, łączenie grafiki z dźwiękiem, animacje -- to tylko część zastosowań tego najpopularniejszego narzędzia multimedialnego stworzonego na potrzeby Internetu. Jeśli chcesz wzbogacić swoje strony WWW o atrakcyjne animacje -- po prostu sięgnij po tę książkę. Bez zbędnych opisów wprowadzi Cię ona w świat Flasha MX.
Dowiesz się:
* Jak funkcjonuje środowisko Flash i jakie nowości wprowadzono w wersji MX
* Jak tworzyć i modyfikować grafikę we Flashu
* Jak wykorzystać możliwości pracy z warstwami
* Jak używać symboli
* Jak tworzyć animacje
* Jak stworzyć animację reagującą na działania użytkownika
* Jak łączyć animacje z dźwiękiem i obrazem wideo
* ... i wiele więcej
Systematycznie lub wyrywkowo: czytaj tę książkę tak, jak chcesz. Zwięzłe objaśnienia i towarzyszące im liczne ilustracje oraz przykłady doprowadzą Cię wprost do celu.
Czytanie kodu. Punkt widzenia twórców oprogramowania open sourceWydawnictwo Helion
Książka "Czytanie kodu. Punkt widzenia twórców oprogramowania" open source to pierwszy na rynku podręcznik poświęcony czytaniu kodu źródłowego jako osobnej dziedzinie wiedzy, której znajomość jest przydatna każdemu programiście. Ponad 600 przykładów, w których wykorzystywane są kody oprogramowania open source , przedstawia sposoby identyfikowania dobrego i złego kodu, czytania go, przeszukiwania pod kątem konkretnych funkcji oraz wykorzystywania umiejętności czytania kodu do poprawy jakości kodów źródłowych pisanych samodzielnie.
* Podstawowe konstrukcje sterujące działaniem programu
* Proste i złożone typy danych
* Struktury i unie
* Dynamiczne zarządzanie pamięcią
* Metody analizy projektów informatycznych
* Konwencje pisania i formatowania kodu źródłowego
* Tworzenie i czytanie dokumentacji
* Architektura systemów
Poznaj umiejętność czytania kodu źródłowego i popraw samodzielnie pisany kod.
Poszerz swoje artystyczne horyzonty
* Dowiedz się, jak przygotować i przeprowadzić sesję
* Naucz się wydobywać piękno z modelki
* Zobacz, co można zrobić ze zdjęciem przy użyciu komputera
Ciało człowieka od zawsze wzbudzało zainteresowanie artystów i było jednym z najważniejszych tematów w malarstwie oraz rzeźbie. Także w fotografii artystycznej akty, fotografie glamour, zdjęcia erotyczne czy pejzaże ciała dają artystom możliwość ekspresji i kreowania niepowtarzalnych dzieł. Obecnie, dzięki popularności aparatów cyfrowych, fotograficy zyskali dużo większą swobodę w zakresie eksperymentowania ze swoimi pracami. Jednak wciąż tworzenie profesjonalnych i artystycznych zdjęć wymaga dużej wiedzy oraz kreatywności.
Czytając książkę "Akty. Fotografia cyfrowa dla profesjonalistów", rozwiniesz swój warsztat w zakresie fotografowania aktów. Dowiesz się, jak dobrać odpowiedni sprzęt do wykonywania aktów i jak wydobyć z modelki to "coś", co sprawi, że Twoje zdjęcia będą unikalne. Nauczysz się manipulować oświetleniem, wykorzystywać cienie do tworzenia ciekawszych fotografii oraz przygotowywać i prowadzić sesje zarówno w plenerze, jak i w profesjonalnym studio. Poznasz techniki, które pomogą Ci rozwinąć swoją kreatywność, a także opanujesz metody obróbki zdjęć.
* Dobór parametrów aparatu
* Korzystanie z oprogramowania
* Współpraca z modelką
* Manipulowanie oświetleniem
* Sesje w studio i w plenerze
* Ciekawe tematy i pozy
* Cyfrowa obróbka zdjęć
Rozwiń swój warsztat i odkryj świat aktów.
Borland C++ Builder to jedno z najwygodniejszych środowisk programistycznych dla programistów C++, platforma ciesząca się dużą popularnością i mająca za sobą długą historię. W języku C++ napisano wiele aplikacji dla Windows, z których znaczna część powstała właśnie w Builderze.
"C++ Builder. Ćwiczenia" to uzupełnienie poprzedniej publikacji Wydawnictwa Helion, zatytułowanej "C++ Builder 5. Ćwiczenia praktyczne". Książka omawia zmiany, jakie wprowadzono w nowej, szóstej już wersji C++ Buildera, a także porusza wiele zagadnień, które nie znalazły się w książce traktującej o poprzedniej edycji tego programu. Informacje zostały przekazane w formie ćwiczeń z dokładnym omówieniem prezentowanego kodu źródłowego.
Znajdziesz w niej między innymi:
Zagadnienia związane z kompatybilnością pomiędzy wersjami piątą i szóstą C++ Buildera
Serię ćwiczeń przybliżających język C++
Omówienie środowiska IDE C++ Builder
Ćwiczenia z programowania w C++ z wykorzystaniem C++ Builder
Ćwiczenia z pisania aplikacji wielowątkowych
Sposoby tworzenia własnych komponentów
Metody numeryczne są to sposoby rozwiązywania złożonych problemów matematycznych za pomocą narzędzi obliczeniowych udostępnianych przez popularne języki programowania. Jeden z najpopularniejszych języków -- Pascal, będący podstawą języka ObjectPascal wykorzystywanego w Delphi, pozwala na bardzo łatwą implementację mechanizmów obliczeń numerycznych. Specyfika projektowania aplikacji w środowisku Delphi pozwala na utworzenie komponentów realizujących algorytmy numeryczne i stosowanie ich w wielu aplikacjach.
Książka "Algorytmy numeryczne w Delphi. Księga eksperta" przedstawia najczęściej wykorzystywane metody numeryczne wraz z przykładami ich implementacji w języku ObjectPascal. Każde zagadnienie jest omówione zarówno od strony teoretycznej, jak i praktycznej, co ułatwia jego zrozumienie i pozwala na modyfikacje zamieszczonych w książce kodów źródłowych.
* Typy, funkcje, klasy i procedury wykorzystywane w algorytmach numerycznych
* Algebra macierzy i równania liniowe
* Badanie funkcji
* Rozwiązywanie równań nieliniowych i wyznaczanie wartości własnych macierzy
* Układy równań różniczkowych liniowych i nieliniowych
* Przekształcenia Fouriera i Laplace’a
Niemal każdy problem obliczeniowy można rozwiązać za pomocą metod numerycznych. Nie musisz więc wymyślać ponownie koła -- wystarczy, że poznasz opisane w tej książce algorytmy.
3ds max jest jednym z najbardziej zaawansowanych i najpopularniejszych programów do obróbki i tworzenia grafiki trójwymiarowej dostępnych obecnie na rynku. Znajduje on zastosowanie w najróżniejszych przedsięwzięciach artystycznych i komercyjnych; między innymi w architekturze, grach komputerowych, produkcjach filmowych, publikacjach internetowych, wizualizacjach medycznych i naukowych, projektowaniu rzeczywistości wirtualnej oraz w sztukach pięknych.
Książka napisana została z myślą o artystach, projektantach, uczniach, nauczycielach, zawodowcach i wszystkich tych, którzy pragną urzeczywistniać swoje marzenia. Podobnie jak inne książki z serii "Po prostu", podręcznik ten został napisany tak, by być przejrzystym i łatwym w lekturze. Tekst książki został wzbogacony o ponad 1200 rysunków ilustrujących pojęcia i sposoby radzenia sobie w różnych sytuacjach. Jeżeli stawiasz pierwsze kroki, zacznij od początku i przeczytaj rozdziały po kolei. Osoby bardziej zaawansowane mogą czytać tylko wybrane rozdziały.
Dzięki tej książce:
* Zainstalujesz program 3ds max, poznasz jego interfejs i nauczysz się zarządzać plikami
* Nauczysz się tworzyć i zaznaczać obiekty, kontrolować wyświetlanie i poruszać się w przestrzeni 3D
* Dowiesz się, jak manipulować obiektami i tworzyć animacje za pomocą transformacji, modyfikatorów i kontrolerów animacji
* Poznasz zaawansowane techniki modelowania, w tym modelowanie na poziomie struktury obiektu oraz tworzenie obiektów złożonych
* Nauczysz się wykorzystywać światła i kamery do oświetlania scen i generowania obrazów
* Poznasz tajniki doboru materiałów i mapowania
* Dowiesz się, jak tworzyć wysokiej jakości obrazy i filmy.
Aby w pełni wykorzystać wiedzę zawartą w książce, powinieneś umieć poruszać się w środowisku Windows i mieć dostęp do programu 3ds max 5. Ważna jest także gruntowna wiedza na temat programów do obróbki grafiki dwuwymiarowej, takich jak Adobe Photoshop lub Corel Painter. Po przeczytaniu tej książki będziesz umiał tworzyć, modelować, mapować, animować i renderować obiekty w 3ds max 5. Powodzenia w świecie 3D!
Język programowania PHP stanowi dla wielu osób przepustkę w świat pisania aplikacji działających po stronie serwera WWW. Łatwość z jaką przychodzi nauczenie się tego języka, sprawiła, że używają go setki tysięcy amatorów i profesjonalistów na całym świecie.
Po pewnym czasie wiedza wyniesiona z podręczników opisujących podstawy PHP języka przestaje wystarczać. Niniejsza książka pomoże Ci w wykonaniu kolejnego kroku: kroku w kierunku pisania zaawansowanych aplikacji. Dzięki niej wzbogacisz swoją wiedzę i staniesz się prawdziwym ekspertem programowania w PHP, poszukiwanym na rynku pracy.
* Poznasz tajniki programowania obiektowego.
* Nauczysz się korzystać z baz danych.
* Dowiesz się, w jaki sposób zabezpieczać stworzone przez siebie aplikacje.
* Napiszesz własny sklep internetowy, korzystając z sesji i bazy SQL.
* Poznasz sposoby uruchamiania programów PHP w oderwaniu od serwera WWW.
* Nauczysz się generować nie tylko strony WWW, ale także grafikę i pliki PDF.
* Dowiesz się, jak i po co używać języka XML.
* Skorzystasz z wielu rozszerzeń języka, które ułatwiają rozwiązywanie złożonych problemów.
Pomoże Ci w tym prosty język w jakim napisana jest książka oraz liczne przykłady kodu, a także osoba autora, doświadczonego programisty i wykładowcy PHP na Uniwersytecie Kalifornijskim w Berkeley.
Praktyczne rozwiązania dla zaawansowanych programistów
Do tworzenia wydajnych programów nie wystarczy teoretyczna wiedza o algorytmach, strukturach danych i inżynierii oprogramowania. Istnieje pokaźna liczba sztuczek, sprytnych technik i praktycznych rozwiązań, których znajomość jest niezbędna każdemu programiście.
Niniejsza książka zawiera pokaźny zestaw technik, które pomogą zaoszczędzić sporo czasu. Techniki te zostały opracowane przez twórców kodu poszukujących eleganckich i wydajnych sposobów tworzenia lepszego oprogramowania. W "Uczcie programistów" doświadczony programista Hank Warren dzieli się z Czytelnikami znanymi sobie sztuczkami, które zgromadził wraz z imponującym doświadczeniem w dziedzinie programowania aplikacji i systemów operacyjnych. Większość z tych sztuczek jest niezwykle praktyczna, niektóre zostały przedstawione jako ciekawostki lub zaskakujące rozwiązania. Ich zestawienie stanowi niesamowitą kolekcję, która będzie pomocna nawet dla najbardziej doświadczonych programistów w rozszerzeniu ich umiejętności.
W książce opisano następujące zagadnienia:
* Obszerna kolekcja użytecznych sztuczek programistycznych
* Drobne algorytmy rozwiązujące często spotykane problemy
* Algorytmy kontroli przekroczenia ograniczeń
* Zmiana kolejności bitów i bajtów
* Dzielenie całkowite i dzielenie przez stałe
* Elementarne operacje na liczbach całkowitych
* Kod Gray"a
* Krzywa Hilberta
* Formuły wyznaczania liczb pierwszych
Niniejsza książka jest doskonałą pozycją dla wszystkich programistów, którzy mają zamiar tworzyć wydajny kod. "Uczta programistów" nauczy Cię tworzenia aplikacji wysokiej jakości -- wyższej niż wymagana na uczelniach i kursach programowania.
Błyskawiczny kurs obsługi niesamowitego systemu operacyjnego
* Jak zarządzać plikami i katalogami?
* W jaki sposób wykorzystywać Findera?
* Jak dostosować system do swoich potrzeb?
* W jaki sposób podłączyć komputer do internetu?
Najnowsza wersja systemu operacyjnego Mac OS X, nosząca nazwę Leopard, znów wyznacza standardy w zakresie graficznych interfejsów użytkownika oraz jakości i wygody obsługi. Filozofia korzystania z systemu Mac OS od dawna była źródłem inspiracji dla autorów innych rozwiązań. Leopard oferuje to, co najlepsze, z poprzednich wersji Mac OS X, a dodatkowo wiele nowych funkcji, dzięki którym praca z nim staje się jeszcze łatwiejsza i wydajniejsza. Nowy moduł Finder, przekonstruowana wyszukiwarka Spotlight, aplikacja Time Machine - to tylko niektóre z udoskonaleń, jakie czekają na użytkowników Leoparda.
Książka "Po prostu Mac OS X 10.5 Leopard PL" to podręcznik, dzięki któremu ujarzmisz kolejnego dzikiego kota spod znaku jabłka. Dowiesz się, jak zainstalować system, korzystać z jego podstawowych elementów - biurka, Docka, Findera, Spotlight, menu systemowego - i zarządzać plikami oraz katalogami. Poznasz programy dołączone do Mac OS X, nauczysz się dostosowywać system do swoich potrzeb, korzystać z przeglądarki Safari, programu Mail oraz widgetów. Przeczytasz także o aplikacji Time Machine, pracy w sieci, odtwarzaniu plików multimedialnych i wielu innych zadaniach, jakie możesz zrealizować za pomocą Twojego Maca i systemu Leopard. Co najważniejsze, każde z zagadnień jest przedstawione w postaci bogato ilustrowanej sekwencji czynności. Dzięki temu szybko je opanujesz i będziesz mógł zająć się pracą oraz zabawą z Leopardem.
* Instalacja systemu
* Korzystanie z klawiatury i myszy
* Dock, Finder i Spotlight
* Zarządzanie katalogami
* Narzędzia do zarządzania dyskami
* Nagrywanie płyt CD i DVD
* Wykorzystywanie wszystkich możliwości Findera
* Edycja tekstów w programie TextEdit
* Odtwarzanie muzyki i filmów
* Dashboard
* Drukowanie i faksowanie
* Zarządzanie czcionkami
* Praca w sieci
* Przeglądanie stron WWW i korzystanie z poczty elektronicznej
* Preferencje systemowe
* Instalacja systemu Windows za pomocą modułu BootCamp
Poznaj system Leopard - kota zaskakująco łatwego w tresurze!
Bezproblemowe wprowadzenie do języka JavaScript
* Chcesz budować bardziej interaktywne witryny internetowe?
* Chcesz zobaczyć, jak dynamicznie manipulować elementami stron?
* Chcesz dowiedzieć się, jak ulepszyć interfejs użytkownika za pomocą technologii Ajax?
W życiu każdego webmastera nadchodzi moment, w którym zwykły kod HTML oraz arkusze CSS już nie wystarczają i pora poszukać bardziej zaawansowanych narzędzi. Jeśli sięgnąłeś po tę książkę, prawdopodobnie pragniesz też tchnąć w swe witryny więcej życia i dynamiki. Naturalną drogą rozwoju jest nauka języka JavaScript, który umożliwia budowanie bardziej interaktywnych i efektownych stron internetowych. A skoro już zaczniesz poznawać ten język, dlaczego nie wypróbować bazującej na nim technologii Ajax, która pozwala tworzyć jeszcze ciekawsze i bardziej wygodne interfejsy użytkownika.
Dzięki książce "Po prostu JavaScript i Ajax. Wydanie VI" błyskawicznie nauczysz się wykorzystywać JavaScript do poprawy jakości własnych witryn internetowych. Poznasz podstawy składni tego języka, sposoby zagnieżdżania skryptów w kodzie HTML, techniki dynamicznego manipulowania rozmaitymi elementami stron internetowych oraz reagowania na zdarzenia zachodzące w przeglądarce. Dowiesz się też, do czego służy technologia Ajax oraz jak wykorzystać jej możliwości do tworzenia efektownych i szybkich interfejsów użytkownika.
* Podstawy języka JavaScript
* Dodawanie rysunków i animacji
* Korzystanie z ramek
* Sterowanie oknami przeglądarki
* Stosowanie formularzy
* Obsługa zdarzeń
* Używanie ciasteczek
* Stosowanie arkuszy CSS
* Manipulowanie modelem DOM
* Korzystanie z technologii Ajax
* Tworzenie skryptozakładek
Poznaj praktyczne zastosowania języka JavaScript
i twórz lepsze witryny internetowe.
Architektura korporacyjna. Aspekty teoretyczne i wybrane zastosowania praktyc...Andrzej Sobczak
Obszerna (ponad 400 strony) książka w języku polskim nt. architektury korporacyjnej. Zawiera ona omówienie zarówno aspektów metodycznych związanych z architekturą korporacyjną jak i wynik badań dotyczących wdrażania tej koncepcji w Polsce. Dodatkową wartością tej pozycji jest 21 wywiadów przeprowadzonych przez autora z osobami z 13 krajów nt. ich postrzegania architektury korporacyjnej.
Szczegóły: http://kompendium.architekturakorporacyjna.pl.
Bogate źródło wiedzy o Photoshopie CS3
* Metody obróbki zdjęć cyfrowych
* Techniki rysunkowe i malarskie
* Przygotowanie grafiki do druku i publikacji w sieci
* Przekształcanie obrazów w przestrzeni 3D
Adobe Photoshop CS3 to kolejna edycja chyba najbardziej znanego produktu firmy Adobe -- doskonałego edytora cyfrowych obrazów wykorzystywanego przez projektantów, grafików i fotografów. W nowej wersji znajdziemy udoskonalone narzędzia znane już użytkownikom poprzednich edycji, ale i wiele nowych funkcji -- między innymi inteligentne filtry i przekształcenia trójwymiarowe. Opanowanie tak rozbudowanego programu może zająć wiele tygodni, ale czas ten da się znacznie skrócić dzięki poznawaniu go w praktyce i wykorzystywaniu w projektach.
Taki właśnie sposób nauki proponują Ci autorzy książki "Adobe Photoshop CS3/CS3 PL. Oficjalny podręcznik" -- zespół doświadczonych instruktorów, na co dzień prowadzących kursy i wykłady. Wykonując kolejne zadania zamieszczone w książce, poznasz zasady wykorzystywania Photoshopa do różnych zadań, z którymi grafik i fotograf spotyka się w swojej pracy. Nauczysz się korygować cyfrowe zdjęcia, obrabiać "cyfrowe negatywy" -- pliki RAW i DNG -- usuwać z obrazów niepożądane elementy, tworzyć nowe obrazy i przygotowywać projekty do druku. Dowiesz się, jak tworzyć obiekty wektorowe, publikacje drukowane i ilustracje naukowe. Poznasz również metody przygotowywania grafiki na strony WWW za pomocą programu ImageReady.
* Interfejs użytkownika
* Korzystanie z Adobe Bridge
* Korekcja cyfrowych fotografii
* Techniki zaznaczania elementów obrazu
* Warstwy, maski i kanały
* Obróbka plików RAW za pomocą modułu Camera RAW
* Narzędzia typograficzne
* Ścieżki, maski i kształty wektorowe
* Zaawansowane techniki kompozycji obrazów
* Przygotowanie obrazów przeznaczonych do prezentacji naukowych
* Tworzenie grafiki przeznaczonej na strony WWW
* Kalibracja kolorów
Ujarzmij potęgę Photoshopa CS3!
C++ to popularny i uniwersalny język programowania. Jednak po dłuższym stosowaniu programiści zaczynają zauważać pewne jego niedoskonałości i ograniczenia. System typów, sposób działania niektórych kompilatorów, związki pomiędzy wskaźnikami i tablicami, nieprzewidziane w standardzie zachowania obiektów statycznych i bibliotek dynamicznych to tylko niektóre z nich. Aby je obejść, należy wykorzystywać wiele bardzo zaawansowanych i nieznanych wielu programistom metod.
Książka "Język C++. Gotowe rozwiązania dla programistów" to podręcznik dla tych programistów C++, którzy zaczęli już dostrzegać ograniczenia tego języka i zastanawiają się, jak sobie z nimi poradzić. Autor pokazuje sposoby ujarzmienia złożoności języka i uzyskania pełnej kontroli nad kodem. Przedstawia najpoważniejsze wady C++ i sposoby rozwiązywania powodowanych przez nie problemów. Opisuje również metody tworzenia stabilniejszego, bardziej uniwersalnego, wydajniejszego i łatwiejszego w pielęgnacji kodu.
* Wymuszanie założeń projektowych
* Cykl życia obiektów
* Hermetyzacja zasobów, danych i typów
* Modele dostępu do obiektów
* Obsługa wątków
* Korzystanie z obiektów statycznych
* Konwersja danych i typów
* Zarządzanie pamięcią
* Sterowanie działaniem kompilatora
Wszyscy programiści, niezależnie od stopnia zaawansowania, znajdą w tej książce wiadomości, które usprawnią i przyspieszą ich pracę.
Czy informatyka jest dla Ciebie dziedziną wiedzy równie tajemniczą jak kabała lub indiańska magia? Tak właśnie postrzega ją wielu ludzi, którzy nie mieli dotychczas kontaktu z komputerami. Tymczasem komputer to nic innego jak tylko narzędzie, które można opanować tak samo jak wszystkie inne. Wymaga to jedynie odrobiny cierpliwości i praktyki -- jak każda nauka.
"Windows XP PL. Ilustrowany przewodnik" to książka, dzięki której przestaniesz traktować komputer jak magiczną skrzynkę robiącą dość dziwne rzeczy -- w dodatku nie wiadomo dlaczego i jak. Poznasz Windows XP, a ponieważ obsługa systemu operacyjnego jest właściwie równoznaczna z obsługą komputera -- nauczysz się korzystać z peceta! Dowiesz się, jak dostosować wygląd Windows XP do własnych wymagań i używać różnych jego funkcji i narzędzi. Nauczysz się drukować pliki, pobierać zdjęcia z aparatu cyfrowego oraz korzystać z poczty elektronicznej i WWW. Co więcej -- może nawet zaczniesz rozumieć dowcipy dla informatyków.
* Podstawy obsługi Windows XP
* Pliki, foldery i kosz
* Porządkowanie pulpitu
* Aplikacje dołączone do systemu
* Korzystanie z Panelu sterowania
* Drukowanie
* Sieci i internet
* Multimedia
Po przeczytaniu tej książki przestaniesz traktować informatyków jak przybyszów z innej planety, przełamiesz lęk przed komputerem i przekonasz się, że korzystanie z niego wcale nie wymaga nadprzyrodzonych zdolności.
Poznaj potężne możliwości języka Visual Basic i twórz zaawansowane aplikacje
* Jak pisać zaawansowane programy?
* Jak dobierać kontrolki do zadań?
* Jak dzielić program na mniejsze części?
Visual Basic jest niezwykle wydajnym językiem, pozwalającym na tworzenie zaawansowanych aplikacji, m.in. dzięki wykorzystywaniu jednego z najpotężniejszych środowisk programistycznych, jakie kiedykolwiek powstały — Visual Studio. Środowisko to udostępnia narzędzia takie, jak edytory graficzne czy funkcja automatycznego uzupełniania, które sprawiają, że budowa aplikacji staje się intuicyjna i znacznie sprawniejsza. Najnowsza wersja tego języka — Visual Basic 2008 — oferuje także opcje formularzy XAML i nowe kontrolki, a ponadto z aplikacją zintegrowano SQL Server 2005 Compact Edition, dzięki czemu pojawiło się wbudowane wsparcie dla języka LINQ w komunikacji z bazą danych.
Książka „Visual Basic 2008. Warsztat programisty” jest doskonałym podręcznikiem zarówno dla początkujących, jak i zaawansowanych programistów. Zawiera ona opis technologii i środowiska programistycznego, a także wiele przykładów i porad z dokładnie przedstawionym oraz przetestowanym kodem, zgodnym z wersją 2008 tego języka. Przykłady te pozwalają dogłębnie zrozumieć wszelkie jego zawiłości. Z książki dowiesz się, jak korzystać z formularzy i kontrolek oraz zwiększać funkcjonalność istniejących klas i obsługiwać błędy. Nauczysz się rysować obrazy przy użyciu interfejsu urządzenia graficznego, a także stosować wiele różnych obiektów, aby budować zaawansowane i nowoczesne aplikacje.
* Edytor kodu Visual Basic
* Struktura programu i modułu
* Typy danych, zmienne i stałe
* Operatory
* Procedury i funkcje
* Instrukcje sterujące
* Obsługa błędów
* Składnia zapytań i funkcje LINQ
* Tworzenie niestandardowych kontrolek
* Tworzenie nazw i klasy kolekcyjne
* Grafika i tekst
* Przetwarzanie obrazów
* Drukowanie i raportowanie
* Obiekty systemu plików
* Windows Communication Foundation
Bądź profesjonalistą — szlifuj swój warsztat programisty!
Similar to Java. Efektywne programowanie. Wydanie II (20)
Windows Movie Maker dołączany do systemu Windows XP to doskonałe narzędzie do domowego montażu cyfrowych filmów wideo. Jest prosty w obsłudze, posiada spore możliwości, a montaż filmów za jego pomocą jest przyjemną zabawą. Movie Maker pozwala na przeniesienie klipów z kamery cyfrowej, zaimportowanie materiałów z dysku, rozmieszczenie ujęć i połączenie ich przejściami, a także udźwiękowienie i dodanie efektów specjalnych. Gotowy film można wysłać pocztą elektroniczną, zapisać na dysku lub płycie CD albo opublikować w internecie.
Książka "Tworzenie filmów w Windows XP. Projekty" przedstawia proces tworzenia filmu wideo. Opisuje kolejne kroki prowadzące do zmontowania cyfrowego filmu wideo z przechwyconych ujęć i zaimportowanych materiałów. Nie znajdziesz w niej jednak długich opisów i dziesiątek parametrów. Każde zagadnienie jest przedstawione za pomocą zrzutów ekranu i krótkich instrukcji. Dzięki temu w ciągu kilku godzin zrealizujesz swój pierwszy projekt w Movie Makerze.
* Elementy interfejsu użytkownika
* Przechwytywanie klipów z kamery wideo
* Import materiałów źródłowych
* Tworzenie wstępnego montażu
* Dodawanie przejść i efektów specjalnych
* Nakładanie plansz tytułowych i napisów
* Udźwiękowienie filmu
* Korzystanie z funkcji Autofilm
* Eksport zmontowanego filmu
Przekonaj się, jak proste może być tworzenie własnych filmów wideo.
Przedstaw się światu!
* Jak zbudować elegancką stronę z blogiem?
* Jak tworzyć wyspecjalizowane przeglądarki bloga?
* Jak dodawać do własnego serwisu blogowego kanał RSS?
Prowadzenie bloga to nowy sposób na zwiększenie aktywności społecznej - szansa na zaistnienie w rzeczywistości wirtualnej, mająca swoje odbicie w tak zwanym „prawdziwym życiu”. Dlatego blogi piszą dziś niemal wszyscy: politycy, marketingowcy, celebryci, biznesmeni. Forma publicznie dostępnego pamiętnika pozwala na szeroką prezentację własnych poglądów, przekonań czy wartości. Z tego powodu blogi wykorzystywane są też jako wortale poświęcone określonej tematyce, promujące idee lub produkty. Ich użytkownicy stworzyli nawet własną społeczność, która 31 sierpnia obchodzi swoje święto - Dzień Bloga. Już dziś możesz do nich dołączyć!
„Blog, więcej niż internetowy pamiętnik” to książka, która pokaże Ci, jak założyć i prowadzić własny blog, a także aktywnie korzystać z innych blogów. Dowiesz się z niej, jak skorzystać z oprogramowania obsługującego serwisy blogowe, jak zintegrować języki PHP, HTML, CSS i SQL, aby stworzyć elegancką stronę prezentującą Twój blog. Nauczysz się budować własną bazę danych, przeznaczoną do przechowywania wpisów, a także zabezpieczać ją przed niepowołanymi modyfikacjami. I wreszcie poznasz sposób na dodanie do własnego serwisu kanału RSS, aby czytelnicy na bieżąco mogli obserwować pojawianie się nowych wpisów. Znajdziesz tu wszystko, czego potrzebujesz, aby zaprezentować światu swój blog!
* Obsługa okna tworzenia bloga
* Modyfikowanie wyglądu bloga
* Publikowanie w określonym terminie
* Rozbudowa bloga
* Instalacja czytnika RSS
* Subskrybowanie blogów za pomocą RSS
* Instalacja oprogramowania własnego serwera
* Baza danych i modyfikacja danych
* Projektowanie struktury bloga
* Zakładanie konta użytkownika
* Zakładanie bazy danych i tabeli danych
* Nadawanie uprawnień do korzystania z tabeli
* Przygotowanie szablonu i tworzenie strony www
* Automatyzowanie, blokowanie i trwałe usuwanie wpisu
* Tworzenie formularza wyszukiwania
* Tworzenie kanału RSS i wypełnianie go treścią
* Pobieranie programu Weber
Blog to prosty i fascynujący sposób, aby świat dowiedział się o Twoim istnieniu!
Pakiet biurowy MS Office jest jednym z podstawowych narzędzi wykorzystywanych we współczesnych firmach. Zawarty w nim system zarządzania bazami danych Access to wygodna w obsłudze aplikacja służąca do operowania na zbiorach danych. Dzięki prostocie obsługi, sporym możliwościom i wizualnym narzędziom stanowi doskonałe rozwiązanie dla przedsiębiorstw, w których duże znaczenie ma czas poświęcany na opanowanie nowych programów. Kreatory i rozbudowany system pomocy oferowane przez Accessa niezwykle upraszczają proces tworzenia bazy oraz aplikacji przeznaczonych do obsługi zgromadzonych w niej danych.
W książce "Access w biurze i nie tylko" znajdziesz omówienie podstawowych możliwości tego systemu. Nauczysz się tworzyć i otwierać istniejące bazy danych oraz tworzyć nowe. Dowiesz się, w jaki sposób projektować tabele i jak dobierać typy danych dla poszczególnych kolumn tabeli. Przeczytasz o relacjach, poznasz sposoby wybierania i wstawiania danych, a także manipulowania nimi za pomocą kwerend. W kolejnych rozdziałach znajdziesz informacje o tworzeniu formularzy i raportów oraz wyświetlaniu wykresów na podstawie danych zgromadzonych w bazie. Nauczysz się także pisać własne makra i poznasz podstawy języka Visual Basic for Applications.
* Otwieranie istniejących baz danych
* Tworzenie tabel
* Typy danych
* Tworzenie i modyfikowanie relacji
* Manipulowanie danymi za pomocą kwerend
* Konstruowanie formularzy
* Budowanie raportów
* Automatyzacja pracy za pomocą makropoleceń
* Tworzenie i wyświetlanie wykresów
Dane to dziś najcenniejszy towar. Naucz się nim zarządzać.
Pozycjonowanie i optymalizacja stron WWW. Ćwiczenia praktyczneWydawnictwo Helion
Zapewnij swojej witrynie miejsce w pierwszej dziesiątce!
* Jak działają wyszukiwarki?
* Jaki wpływ na pozycję serwisu mają linki przychodzące i wychodzące?
* Czy istnieją zagrożenia związane z niewłaściwym pozycjonowaniem?
Stworzenie serwisu WWW to dopiero połowa sukcesu w Internecie. Druga połowa to zapewnienie witrynie odpowiedniej popularności. A tę popularność może zagwarantować przede wszystkim wysokie miejsce w wynikach wyszukiwarek. Jak to osiągnąć? Od czego zacząć i jak monitorować skuteczność prowadzonych działań? Wszystkie odpowiedzi znajdziesz właśnie w tej książce!
Poprzez liczne przykłady i ćwiczenia autorzy zapoznają Cię ze sposobem działania wyszukiwarki Google i zasadami doboru właściwych słów kluczowych. Pokażą, jak najlepiej rozmieścić je na stronie. Ponadto dowiesz się, jaki wpływ na pozycję strony mają linki wychodzące oraz przychodzące, jak przebiega proces indeksowania strony, jak działają systemy wymiany linków oraz jak wykorzystać statystyki do obserwacji ruchu na stronie. Przeczytasz także o tym, jakie zagrożenia niesie ze sobą niewłaściwa procedura pozycjonowania.
* Sposób działania Google oraz innych wyszukiwarek
* Definiowanie fraz i słów kluczowych
* Wpływ linków przychodzących i wychodzących na pozycję strony
* Korzystanie z systemów wymiany linków
* Proces indeksacji witryny
* Zagrożenia związane z niewłaściwym pozycjonowaniem
* Wykorzystanie statystyk do śledzenia ruchu na stronie
* Sposoby reklamowania serwisu
Zwiększ oglądalność swojej witryny WWW!
E-wizerunek. Internet jako narzędzie kreowania image'u w biznesieWydawnictwo Helion
Lustereczko, powiedz przecie,
kto jest najwspanialszy w necie?
* Tworzenie i wykorzystywanie odpowiedniego wizerunku oraz zarabianie na nim
* Budowanie pożądanych marek bez wielkich nakładów finansowych
* Interaktywne relacje z klientami
* Wykorzystanie Internetu do rozwoju biznesu
* Narzędzia kreowania wizerunku w sieci
Jak Cię widzą (w sieci), tak Cię piszą
Internet jest nie tylko rewolucyjnym medium, pierwszym o naprawdę masowym zasięgu działania. Stanowi on przede wszystkim fascynujący alternatywny świat. Działa jak magnes, co roku przyciągając nowych użytkowników. Niczym używka, wciąż odnotowuje wydłużenie czasu kontaktu z odbiorcą. I last but not least — Internet to niekończący się pasaż handlowy, wymarzone miejsce spotkań podaży i popytu.
Poznaj specyfikę światowej sieci WWW i znajdź w niej właściwe miejsce dla Twojej marki. E-marketing rządzi się własnymi prawami — z jednej strony bezustannie stawia firmy przed nowymi wyzwaniami, z drugiej zaś stale kreuje nowe narzędzia dotarcia do klienta. A są one naprawdę fascynujące: możliwość dowolnej personalizacji przekazu, olbrzymia ilość kanałów, a przede wszystkim atrakcyjne społeczności — ludzie młodzi, aktywni, hobbyści, biznesmeni oraz entuzjaści nowinek. Mogą oni zostać ambasadorami Twojej marki, ale mogą też ją zniszczyć. Dlatego musisz poznać zasady rządzące Internetem i jego społecznościami, a następnie zacząć budować instrumenty wywierania wpływu i wykorzystać je dla dobra Twojego produktu.
Internet ma przyszłość!
* Czym jest e-wizerunek i jak wpływa na sukces firm, produktów i ludzi?
* Narzędzia budowania image’u — strona WWW, fora internetowe, newslettery i inne.
* Sześć zasad skutecznego kreowania e-wizerunku.
* Grzechy główne działań internetowych.
* Marka jako efekt przemyślanej strategii wizerunkowej.
* Case studies
Microsoft Visual C++ 2008. Tworzenie aplikacji dla WindowsWydawnictwo Helion
Rozpocznij przygodę z Visual C++!
* Jakie prawa rządzą programowaniem obiektowym?
* Jak tworzyć usługi systemowe?
* Jak dokumentować tworzony kod?
Microsoft Visual C++ jest zintegrowanym środowiskiem, pozwalającym na tworzenie aplikacji przy użyciu języków C, C++ lub C++/CLI. Zawiera ono wyspecjalizowane narzędzia, pomagające w wydajnym tworzeniu rozwiązań opartych o te języki. Pierwsza wersja Visual C++ została wydana w 1992 roku, a środowisko to jest bezustannie ulepszane. Najnowsze wydanie, z datą 2008, zostało opublikowane w listopadzie 2007 roku i wprowadziło wiele nowości — jak chociażby wsparcie dla technologii .NET 3.5. Niewątpliwie narzędzie firmowane przez giganta z Redmond jest jednym z najpopularniejszych, a używają go programiści z całego świata.
Dzięki tej książce również Ty możesz dołączyć do tego wybitnego grona. Po jej przeczytaniu będziesz miał wiedzę na temat środowiska programistycznego i platformy .NET. Poznasz podstawy programowania obiektowego, nauczysz się uzyskiwać dostęp do informacji zgromadzonych w bazach danych oraz korzystać z możliwości Internetu bezpośrednio w Twoich programach. Kolejne rozdziały przedstawiają interesujące tematy dotyczące obsługi wyjątków, programów wielowątkowych oraz sposobów tworzenia usług systemowych. Ostatni rozdział poświęcony został tak istotnej kwestii, jak dokumentowanie kodu — to czynność, o której wielu programistów zapomina. Jeżeli chcesz rozpocząć przygodę z Microsoft Visual C++, ta książka jest idealną lekturą dla Ciebie!
* Praca w zintegrowanym środowisku programistycznym
* Pojęcia związane z programowaniem obiektowym
* Uzyskiwanie dostępu do informacji zgromadzonych w bazach danych
* Wykorzystanie transakcji w pracy z danymi
* Sposoby integracji z siecią Internet
* Obsługa wyjątków
* Programowanie wielowątkowe
* Tworzenie grafiki oraz wykorzystanie multimediów
* Drukowanie w systemie Windows
* Tworzenie usług systemowych
* Dokumentowanie kodu programu
Wykorzystaj możliwości Microsoft Visual C++ 2008!
Co potrafi Twój iPhone? Podręcznik użytkownika. Wydanie IIWydawnictwo Helion
Poznaj możliwości iPhone’a!
* Jak rozpocząć pracę z iPhone’em?
* Jak wykorzystać możliwości przeglądarki Safari?
* Jak używać map?
Pojawienie się iPhone’a firmy Apple można bez wahania nazwać Rewolucją! Rewolucją przez duże "R". Nigdy wcześniej żaden nowy telefon nie wzbudził takich emocji. Nigdy wcześniej nie ustawiały się na wiele dni przed premierą kolejki pod salonami. Co sprawia, że ludzie szaleją za tym małym cudem techniki? Wielodotykowy (ang. multitouch) ekran, dostęp do tysięcy aplikacji, stabilny system operacyjny oraz elegancki, przykuwający uwagę wygląd to tylko niektóre z jego zalet.
Właśnie dzięki tej książce dowiesz się, co tak naprawdę potrafi Twój iPhone. Autor — niezawodny Scott Kelby — bez zbędnego zagłębiania się w szczegóły techniczne opowie Ci o możliwościach tego rewolucyjnego urządzenia. Zaprezentuje Ci m.in. sposoby wykonywania różnych operacji przy użyciu tego telefonu. Poznasz tajniki jego konfiguracji i synchronizacji z komputerem oraz metodę sprawdzania poziomu naładowania baterii. Nauczysz się wykorzystywać wszystkie możliwości przeglądarki Safari, czytnika poczty oraz terminarza. Dowiesz się również, jak odtwarzać klipy z YouTube, słuchać muzyki czy oglądać filmy. Książka ta jest zatem świetną pozycją zarówno dla początkującego użytkownika telefonu iPhone, jak również dla zaawansowanego — ten ostatni znajdzie tu informacje, które go zaskoczą i zachwycą! W końcu iPhone to zdolna i piękna bestia…
* Włączanie, usypianie, wyłączanie iPhone’a
* Wykorzystanie wbudowanego głośnika
* Obsługa ekranu
* Importowanie kontaktów
* Dodawanie numerów
* Połączenia konferencyjne
* Wyciszanie dzwonka
* Odbieranie i wysyłanie wiadomości e-mail
* Obsługa przeglądarki Safari
* Wykorzystanie kalendarza
* Odtwarzanie klipów z YouTube
* Używanie mapy
* Sprawdzanie prognozy pogody
* Importowanie i odtwarzanie muzyki
* Wykonywanie zdjęć
* Rozwiązywanie typowych problemów
Sprawdź, co potrafi Twój iPhone!
Uwiecznij świat, jakiego nie znałeś!
* Jaki sprzęt jest potrzebny do makrofotografii?
* Jak uzyskać duże powiększenia?
* Jak komponować efektowne zdjęcia?
Wiele osób nie zwraca uwagi na niepozorne, małe elementy otaczającego nas świata. Czyż nie warto pokazać im, co tracą? Wykonanie dobrego zdjęcia w skali makro to wyzwanie, ale zachwyt na twarzach oglądających jest wart wszelkich poświęceń. Właśnie dzięki makrofotografii można ujrzeć cudowny świat, niezauważalny na co dzień. Magiczny świat szczegółów!
Autor książki "Makrofotografia. Magia szczegółu " przedstawia ten temat w sposób przejrzysty i systematyczny. Dzięki tej publikacji zdobędziesz informacje dotyczące sprzętu potrzebnego do wykonania makrofotografii oraz sposobu kompozycji zdjęcia. Poznasz zagadnienia związane z właściwym doborem ostrości, a także takie pojęcia, jak głębia ostrości, długość ogniskowej, jasność obiektywu i wiele innych. Pozwolą Ci one na swobodne poruszanie się po świecie makrofotografii. Ponadto poszerzysz swoją wiedzę odnośnie doboru właściwego oświetlenia oraz programów odpowiednich do obróbki wykonanych zdjęć. Niewątpliwym atutem tej książki są pytania i zadania kontrolne, które pozwolą Ci zweryfikować zdobyte umiejętności. Jeżeli chcesz uwiecznić otoczenie w makrofotografii, ta pozycja będzie dla Ciebie nieocenionym źródłem informacji, a może nawet twórczej inspiracji!
* Sprzęt konieczny do wykonania makrofotografii
* Sposoby na uzyskanie dużych powiększeń
* Komponowanie zdjęć
* Zasady doboru kadru
* Uzyskiwanie właściwej ostrości
* Ograniczenia ostrości
* Dobór właściwego oświetlenia
* Metody pomiaru światła
* Doświetlanie zdjęć
* Narzędzia do edycji zdjęć
Odsłoń na fotografiach całe piękno szczegółu!
Naucz się korzystać z nowoczesnych narzędzi PowerShella
i usprawniaj żmudne zadania administracyjne!
* Jak skonfigurować środowisko PowerShella?
* Jak tworzyć aplety poleceń i jak ich używać?
* Jak korzystać z potoku danych?
Windows PowerShell to innowacyjne narzędzie do zarządzania systemem i przetwarzania skryptów dla serwerów oraz klientów pod kontrolą Windows. Charakterystyczną cechą tego interpretera poleceń jest obiektowa logika, która sprawia, że wynikiem każdego polecenia jest obiekt określonego typu. Dodatkowo wszystkie funkcje dostępne przez API systemu są możliwe do wywołania z poziomu PowerShella. Dzięki swojej uniwersalności oraz nowoczesnym narzędziom interpreter ten zapewnia spójny oraz jasny mechanizm zarządzania, oparty na wierszu poleceń i niewymagający od użytkownika dużej wiedzy programistycznej.
Książka "Windows PowerShell. Podstawy" zawiera dokładny opis innowacyjnej architektury PowerShella, zasad pisania skryptów oraz możliwości korzystania z podstawowych interfejsów systemowych: COM, WMI, ADSI i ADO.NET, a także obszerny zbiór opisów rozwiązań konkretnych zadań administracyjnych. Korzystając z tego przewodnika, poznasz funkcje i narzędzia PowerShella. Nauczysz się również korzystać z obiektowego potoku danych i zarządzać procesami, dziennikami zdarzeń oraz wpisami rejestru. Dzięki zawartej tu wiedzy z pewnością usprawnisz i zautomatyzujesz wszelkie czasochłonne zadania administracyjne, by móc swobodnie stosować PowerShell jako podstawową konsolę do codziennej pracy.
* Aplety poleceń
* Przetwarzanie potokowe
* Potoki danych
* Uniwersalny model nawigacji
* Definiowanie dysków
* Język skryptów PowerShella
* Tablice asocjacyjne
* Praca ze skryptami
* Różnicowanie reakcji na błędy
* Biblioteki klas
* Narzędzia PowerShella
* Zarządzanie użytkownikami i grupami w Active Directory
* Bazy danych
* Zaawansowane operacje dostępu do danych
PowerShell skróci czas Twojej pracy!
Naucz się łączyć największe zalety języków oraz technik programowania
i twórz interaktywne strony internetowe
* Jak unikać typowych błędów i sprawnie rozwiązywać problemy programistyczne?
* Jak połączyć zalety HTML, XML i PHP dla uzyskania pożądanych efektów?
* Jak tworzyć aplikacje wyposażone w aktywny interfejs użytkownika?
Statyczne strony WWW to dziś już przeszłość. Powszechnie dostępne narzędzia dają programistom prawie nieograniczone możliwości w zakresie tworzenia interaktywnych witryn internetowych, wzbogaconych o najróżniejsze efekty wizualne, animacje oraz wbudowane narzędzia pomocnicze. Największą popularność zdobyły sobie narzędzia z kategorii open source — z powodu ich minimalnego kosztu oraz niezwykle dużych zasobów, dostępnych za pośrednictwem Internetu. Z tej książki dowiesz się, jak tworzyć bogate i interaktywne strony WWW, łącząc rozmaite techniki i korzystając z różnych języków.
Książka "Ajax, JavaScript i PHP. Intensywny trening" poprowadzi Cię krok po kroku po podstawowych zasadach programowania w językach JavaScript, PHP i HTML oraz technologiach programowania. Dzięki temu podręcznikowi dowiesz się m.in., jak wykorzystywać dostępne biblioteki ajaksowe do implementowania i ulepszania podstawowych mechanizmów aplikacji. Szybko nauczysz się tworzyć interaktywne strony WWW, zarówno za pomocą technologii serwerowych, jak i technik oraz narzędzi umiejscowionych po stronie klienckiej, a także ich kombinacji.
* Tworzenie stron WWW w języku HTML
* Stylizacja stron za pomocą arkuszy CSS
* Tworzenie skryptów w języku JavaScript
* Wbudowanie skryptu w stronę WWW
* Obiektowy model dokumentu (DOM)
* Obiekty String
* Instrukcje warunkowe i pętle
* Funkcje wbudowane i biblioteki
* Konstruowanie aplikacji ajaksowych
* Zmienne w języku PHP
* Funkcje liczbowe, łańcuchy i tabele
* Kontrola przepływu sterowania
* Usługi webowe oraz protokoły REST i SOAP
Łącz, kompiluj, dobieraj — niech Twoje strony WWW zrobią wrażenie!
Poznaj narzędzia programu PowerPoint i twórz wyjątkowe prezentacje!
* Jak stworzyć profesjonalną prezentację na każdą okazję?
* Jak modyfikować grafikę SmartArt?
* Jak korzystać z programu Clip Organizer i biblioteki slajdów?
Z pewnością wiesz, do czego służy program PowerPoint, lecz jeśli jeszcze nie potrafisz z niego korzystać, a musisz szybko przygotować profesjonalną prezentację, ta książka jest właśnie dla Ciebie! Znajdziesz tu opis ostatniej wersji programu — PowerPoint 2007. Umożliwia ona stworzenie zaawansowanej i bogatej prezentacji, wyposażonej w dźwięk, fotografie i animacje filmowe. Nowy PowerPoint pozwala także na bezpieczne udostępnianie Twojej prezentacji wszystkim zainteresowanym.
Książka "PowerPoint 2007 PL. Seria praktyk" to bogato ilustrowany, a przy tym prawdziwie intuicyjny podręcznik, dzięki któremu każdy nauczy się sprawnie korzystać z tej aplikacji. Kolor i zrzuty ekranowe ilustrujące kolejne informacje, jak również klarowne i zrozumiałe instrukcje sprawiają, że nauka staje się niezwykle prosta. Dzięki tej książce poznasz wszystkie niezbędne narzędzia PowerPointa i ciekawe funkcje tego programu. Dowiesz się, jak zastosować w swojej prezentacji grafiki SmartArt oraz zaawansowane układy slajdów, a także w jaki sposób korzystać z galerii stylów czy biblioteki slajdów.
* Tworzenie prezentacji
* Praca z tekstem
* Grafika i linie
* Konwersja na grafikę SmartArt
* Tabele i wykresy
* Używanie Excela 2007 — kopiowanie i wstawianie tabel
* Wzbogacanie prezentacji — animacje
* Multimedia
* Dodawanie filmów i dźwięku
* Tworzenie albumów
* Pokaz slajdów
* Nagrywanie narracji
* Udostępnianie prezentacji
* Bezpieczeństwo
PowerPoint jest dla każdego!
Poznaj narzędzia oraz funkcje Excela i z łatwością wykorzystuj tę wiedzę w pracy
* Jak tworzyć skoroszyty i wykresy?
* Jak zarządzać danymi w arkuszach?
* Jak szacować formuły?
Na samo brzmienie słowa "Excel" reagujesz paniką? Uważasz, że to bardzo skomplikowany i trudny w obsłudze program? Świetnie! Ta książka została napisana właśnie z myślą o Tobie! Podręcznik, który trzymasz w rękach, stanowi namacalny dowód na to, że Excel 2007 może być prosty, a nauka jego obsługi bardzo przyjemna! Choć trudno Ci w tej chwili w to uwierzyć, aplikacja ta oferuje cale spektrum nowoczesnych, a przy tym przyjaznych i intuicyjnych narzędzi oraz funkcji, dzięki którym znacznie usprawnisz i przyspieszysz swoją pracę. Naprawdę warto je poznać!
Książkę "Excel 2007 PL. Seria praktyk" przygotowano w taki sposób, aby każdy mógł nauczyć się korzystać z narzędzi Excela, tworzyć odpowiednie arkusze oraz wykonywać na nich praktyczne operacje. Wszystkie porady i instrukcje napisane zostały prostym, zrozumiałym językiem. Dzięki temu szybko opanujesz sposoby zarządzania danymi czy szacowania formuł w tym programie. Wszystkie omawiane zagadnienia zilustrowane są ułatwiającymi zrozumienie zrzutami ekranowymi, a kolorowy druk znacznie uprzyjemni Ci korzystanie z książki. Wystarczy ją przeczytać, a poznasz Excela w stopniu pozwalającym Ci na swobodną pracę w tym programie. Na co zatem czekasz? Przed Tobą nauka takich zagadnień, jak:
* Tworzenie skoroszytu
* Wprowadzanie danych do arkusza i zarządzanie nimi
* Formuły i funkcje
* Tabele i wykresy
* Konwersja tabeli do postaci zakresu
* Zaawansowane funkcje
* Szacowanie formuł
* Zarządzanie Excelem
* Makra
* Szablony i scenariusze
* Łącza i odwołania
* Stosowanie aktualizacji
Najprostszy i najprzyjemniejszy sposób na poznanie Excela!
Poznaj praktyczne możliwości programu Access 2007!
* Jak właściwie zaprojektować bazę danych?
* Jak korzystać z szablonów?
* Jak tworzyć tabele i definiować relacje między nimi?
Wbrew pozorom nie trzeba być specjalistą, żeby korzystać z Accessa! Jest to program wyjątkowo przyjazny dla użytkownika, umożliwiający tworzenie baz danych i zarządzanie nimi bez potrzeby dogłębnego poznawania języka SQL oraz skomplikowanych środowisk serwerowych. Aplikacja pozwala na zapisywanie danych z wykorzystaniem formularzy, kierowanie zapytań do bazy, a także dzielenie danych ze współpracownikami za pośrednictwem sieci komputerowej.
Książka "Access 2007 PL. Seria praktyk" zawiera zwięzły i czytelny opis wszystkich najważniejszych funkcji tego programu, a także konkretne przykłady i jasne instrukcje zastosowania narzędzi Accessa. Kolorowe strony pozwalają na szybkie odnalezienie interesujących Cię zagadnień. Dzięki temu podręcznikowi poznasz podstawowe zasady tworzenia dobrego projektu bazy danych oraz jej zaawansowane możliwości. Nauczysz się tworzyć tabele, formularze i raporty, a także korzystać z kluczy podstawowych i obcych. Bez problemu zbudujesz taką bazę danych, która pozwoli Ci sprawnie zarządzać informacjami.
* Personalizacja Accessa 2007
* Projektowanie baz danych
* Relacyjne bazy danych
* Klucze podstawowe i obce
* Tworzenie tabel
* Korzystanie z typów danych
* Definiowanie relacji
* Kwerendy
* Korzystanie z SQL
* Tworzenie i dostrajanie formularzy
* Tworzenie raportów
* Współdzielenie Accessa
Naucz się korzystać z Accessa — zachwycą Cię jego możliwości!
Odkryj bogactwo funkcji Worda!
Jak poprawnie formatować i uatrakcyjniać dokumenty?
Chcesz zacząć sprawnie tworzyć w programie Word dokumenty o profesjonalnym wyglądzie? A może tak dobrze go już znasz, że wątpisz, by skrywał przed Tobą jeszcze jakiekolwiek tajemnice? Tak czy inaczej warto opanować wszystkie potężne możliwości najpopularniejszego edytora tekstów, różne sposoby pracy z nim i metody tworzenia dokumentów tekstowych. Uzbrojony w taką wiedzę, z pewnością będziesz pracował szybciej i sprawniej.
Książka "Word 2007 PL. Seria praktyk" jest graficznym przewodnikiem po najnowszej wersji Worda i zawiera dokładny opis jego funkcji podstawowych oraz zaawansowanych — począwszy od tworzenia i formatowania tekstów, a na złożonych makrach skończywszy. Wszystko to przedstawione zostało za pomocą przejrzystych, kolorowych i szczegółowych instrukcji oraz praktycznych przykładów. Dzięki temu podręcznikowi poznasz całe spektrum narzędzi Worda i udoskonalisz swoją pracę z tym programem.
* Narzędzia główne
* Formatowanie tekstu
* Szybkie style
* Praca z dokumentem
* Drukowanie i publikowanie
* Konwersja do formatu PDF
* Biblioteka ClipArt i SmartArt
* Hiperłącza i zakładki
* Równania
* Zaawansowane funkcje — podpis cyfrowy
* Makra
Opanuj wszystkie narzędzia Worda i ciesz się swobodą tworzenia dokumentów!
Serwisy społecznościowe. Budowa, administracja i moderacjaWydawnictwo Helion
Dołącz do kreatorów nowych trendów! Stwórz własny serwis społecznościowy!
* Pierwsze kroki w roli twórcy serwisu — rodzaje stron, prawo i reklama
* Skrypty, instalacja i administracja — PHPizabi, Elgg, Dolphin, Joomla!
* ABC moderatora i użytkownika — regulamin, trolle, zakres ingerencji
Serwisy społecznościowe są bodaj najszybciej rozwijającą się dziś częścią internetu. Nie sposób przecenić ich roli społecznej i opiniotwórczej. Liczba użytkowników i ich poczucie wspólnoty decydują o sile i prężności tych serwisów. W każdej chwili możesz przyłączyć się do któregoś z nich. Jednak znacznie więcej radości sprawiłoby Ci na pewno prowadzenie własnego serwisu, wokół którego skupiałaby się cała społeczność osób o zainteresowaniach podobnych do Twoich.
W książce "Serwisy społecznościowe. Budowa, administracja i moderacja" znajdziesz wszelkie informacje dotyczące tworzenia i obsługi serwisu społecznościowego. Opisano w niej początki tego zjawiska społecznego, podstawy jego działania, rozmaite odmiany serwisów, wszelkie kwestie prawne i techniczne. Niezależnie od tego, czy szukasz inspiracji odnośnie treści umieszczanych w serwisie, czy chciałbyś dowiedzieć się, jak rozwiązać konkretne problemy z konfiguracją, rejestracją, wyborem mechanizmu działania czy wyglądu Twojego serwisu, autorzy służą Ci rzetelną wiedzą, wskazówkami i podpowiedziami. Oprócz tego wprowadzą Cię w kwestie związane z bezpieczeństwem w sieci, rolą moderatora i rozwiązywaniem problemów z użytkownikami.
* Społeczności internetowe
* Serwisy społecznościowe (historia, rodzaje, reklama)
* Regulacje prawne
* Wybór domeny i hostingu
* Niezbędne narzędzia (klient FTP, edytory CSS i tekstowe)
* Serwis społecznościowy a forum dyskusyjne
* Bezpieczeństwo serwisu
* Skrypty (PHPizabi, Elgg, Dolphin, Joomla!, BuddyPress, Joovili, SocialEngine i wiele innych)
* Online-Community-Building
* Skrypty do budowy serwisu wideo (ClipBucket Lite, Clipshare, ClipHouse i wiele innych)
* Rola moderatora
* Social shopping
Sprawdź, jak wiele satysfakcji daje własny serwis społecznościowy!
AutoCAD to program do komputerowego wspomagania projektowania, który od lat wyznacza standardy na rynku takich aplikacji. Z jego możliwości korzystają projektanci różnych branż, a ogromna liczba bibliotek, modułów i nakładek sprawia, że realizacja nawet najbardziej złożonych projektów przebiega szybko i sprawnie. Każda kolejna wersja AutoCAD-a jest bardziej rozbudowana. W wersji 2008 autorzy aplikacji zadbali o optymalizację znanych już użytkownikom narzędzi i zwiększenie produktywności pracy. Zmodernizowany interfejs użytkownika oraz nowe możliwości docenią nie tylko profesjonaliści, ale również ci, którzy stawiają pierwsze kroki w świecie komputerowego wspomagania projektowania.
Książka "AutoCAD 2008 i 2008 PL" to wyczerpujące omówienie najnowszej edycji tej aplikacji. Każdy użytkownik AutoCAD-a, niezależnie od stopnia zaawansowania, znajdzie w niej interesujące informacje. Czytając tę książkę, nauczysz się tworzyć i modyfikować rysunki, wymiarować je, korzystać z warstw, bloków i stylów oraz drukować projekty. Poznasz zasady modelowania bryłowego, tworzenia szablonów oraz rysowania w trybie aksonometrycznym. Każde z narzędzi dostępnych w aplikacji jest dokładnie omówione, a ilustrowane przykłady ułatwiają poznanie ich w praktyce.
* Interfejs użytkownika, menu i paski narzędzi
* Praca z dokumentami
* Układy współrzędnych
* Tworzenie podstawowych obiektów i definiowanie ich właściwości
* Napisy i tabelki
* Rysowanie precyzyjne
* Rysunek aksonometryczny
* Kreskowanie
* Naprawianie uszkodzonych rysunków
* Techniki wymiarowania, modyfikowanie wymiarów i style wymiarowe
* Modelowanie 3D i bryły ACIS
Poznaj najnowszą wersję narzędzia, które zrewolucjonizowało pracę projektantów na całym świecie.
Zobacz, jakie to proste — naucz się tworzyć bazy danych!
* Jak tworzyć formularze i raporty?
* Jak modyfikować strukturę tabel?
* Jak stosować mechanizmy wymiany danych?
Współczesny świat wymusza na przedsiębiorstwach gromadzenie oraz przetwarzanie ogromnej ilości informacji. To sprawia, że muszą one dysponować wydajnymi i sprawnymi bazami danych. Aby zbudować taki system zarządzania danymi, niezbędne są odpowiednie narzędzia — jednym z nich jest program MS Access. Ta aplikacja przede wszystkim pozwala na łatwą kontrolę poprawności tworzonych projektów oraz zapewnia integrację narzędzi służących do tworzenia struktury relacyjnej. Dba także o zgodność tych narzędzi ze standardem języka zapytań SQL, wykorzystywanym do tworzenia i modyfikowania baz danych oraz operowania na zgromadzonych w nich informacjach.
Książka „Bazy danych. Pierwsze starcie” stanowi doskonałe wprowadzenie w tematykę tworzenia baz danych. Zawiera wszystkie potrzebne informacje, podane w prosty i przejrzysty sposób. Ten podręcznik przyda się zarówno studentom kierunków informatycznych, jak i wszystkim tym, którzy chcą zdobyć wiedzę o nowoczesnych metodach budowania takich baz. Stąd dowiesz się m.in., jak wykorzystywać język zapytań SQL, w jaki sposób tworzyć tabele, formularze i raporty oraz stosować mechanizmy wymiany danych, a także na czym polega filtrowanie i sortowanie w zapytaniach. Zdobędziesz wiedzę i umiejętności wystarczające do samodzielnego zbudowania wydajnej bazy danych i sprawnego nią zarządzania.
* Projektowanie bazy danych — narzędzia wizualne
* Tworzenie formularzy i raportów
* Strukturalny język zapytań SQL w wersji MS JetSQL
* Składnia podstawowa
* Unia — koniunkcja zbiorów
* Grupowanie i funkcje agregujące
* Zastosowanie języka SQL z poziomu formularzy
* Mechanizmy wymiany danych
* Obiekty: DAO, RDO, ADO
* Zastosowanie mechanizmów wymiany danych przy tworzeniu aplikacji
Stwórz własną, niezawodną bazę danych!
Poznaj nowoczesne technologie zarządzania bazami danych
* Jak zainstalować i skonfigurować SQL Server 2008?
* W jaki sposób monitorować wydajność i bezpieczeństwo serwera bazy danych?
* Jak tworzyć oprogramowanie współpracujące z SQL Serverem?
System zarządzania bazami danych MS SQL Server zyskał sobie zasłużoną renomę wśród projektantów baz danych i programistów. Stabilna i wydajna platforma, dostępna w kilku edycjach, różniących się możliwościami i zastosowaniami, wykorzystywana jest w aplikacjach biznesowych, portalach internetowych i aplikacjach mobilnych. Jej najnowsza wersja, oznaczona symbolem 2008, to potężna platforma do zarządzania danymi, umożliwiająca nie tylko przechowywanie ich w tabelach, ale także przetwarzanie, analizowanie, udostępnianie i zabezpieczanie. Pozwala ona także na składowanie danych nierelacyjnych — obiektów binarnych i danych geograficznych.
Książka „Serwer SQL 2008. Administracja i programowanie” zawiera szczegółowe omówienie możliwości najnowszej wersji tej platformy bazodanowej. Zarówno administratorzy, jak i programiści znajdą w niej wiele przydatnych informacji. Opisano w niej poszczególne edycje SQL Servera 2008, sposób ich instalacji, konfiguracji i administrowania, techniki optymalizacji wydajności oraz zabezpieczania i analizowania danych. Dzięki niej dowiesz się, jakie nowe funkcje wprowadzono w wersji 2008, jak korzystać z języka T-SQL i przechowywać dane nierelacyjne. Przeczytasz także o integracji z platformą CLR oraz korzystaniu z technologii SOA.
* Instalacja SQL Servera 2008
* Administrowanie serwerem bazy danych
* Optymalizacja dostępności i wydajności
* Nowe funkcje SQL Servera 2008
* Monitorowania pracy serwera
* Zabezpieczanie danych
* Programowanie w T-SQL
* Nierelacyjne typy danych
* Korzystanie z dokumentów XML
* Praca z SQL Server Compact Edition
Wykorzystaj w praktyce możliwości najnowszej wersji platformy bazodanowej SQL Server.
Dowiedz się więcej o działaniu USB i poznaj metody programowania transmisji danych
* W jaki sposób odbywa się transfer danych?
* Jak odblokować urządzenia do transmisji?
* Na czym polega programowanie obiektowe transmisji USB?
USB (skrót od ang. Universal Serial Bus — uniwersalna magistrala szeregowa) to rodzaj bardzo praktycznego portu komunikacyjnego, dzięki któremu możliwe jest podłączanie do komputera wielu różnych urządzeń, takich jak mysz, kamera, aparat fotograficzny, telefon komórkowy, modem, skaner, przenośna pamięć. Podłączone w ten sposób urządzenia są od razu wykrywane i rozpoznawane przez system, dzięki czemu instalacja sterowników i konfiguracja sprzętu odbywają się zwykle automatycznie.
Książka „USB. Praktyczne programowanie z Windows API w C++” w zwięzły sposób przedstawia wszelkie zagadnienia, dotyczące użytkowania i programowania transmisji USB. Korzystając z tego podręcznika, poznasz nie tylko teoretyczne podstawy działania USB, ale także zdobędziesz praktyczne umiejętności w tym zakresie. Książka zawiera bowiem zarówno konkretne przykłady, jak i ćwiczenia do samodzielnego wykonania dla wszystkich, którzy chcą zyskać wiedzę na zaawansowanym poziomie. Dowiesz się między innymi, jakie są rodzaje transferów danych i transakcji USB, za co odpowiadają komponenty i jak wykorzystać wzorce projektowe. Zrozumiesz także metody projektowania obiektowego oraz implementacji oprogramowania sterującego łączem USB.
* Środowisko fizyczne i sygnałowe USB
* Klasy instalacji urządzeń
* Rejestr systemowy
* Transmisja danych
* Struktura systemu USB
* Detekcja i identyfikacja urządzeń
* Odczyt i zapis danych w formie raportu
* Programowanie obiektowe transmisji USB
* Wewnętrzne struktury danych
* Programy wielowątkowe
* Konwertery USB
Tu znajdziesz wszystko o działaniu USB i możliwościach jego wykorzystania!
Odkryj wspaniałe możliwości środowiska Visual Studio 2008 i twórz niezawodne aplikacje
* Jak optymalnie wykorzystać środowisko Visual Studio?
* Jak tworzyć wydajne aplikacje dla przedsiębiorstw?
* Jak wzbogacić środowisko programistyczne przy użyciu własnych dodatków?
Microsoft Visual Studio 2008 to nowoczesne środowisko programistyczne, które umożliwia bardziej precyzyjne i szybsze tworzenie niezawodnych aplikacji. W najnowszej wersji wprowadzono wiele poprawek w językach (takich jak zapytania w LINQ) oraz liczne nowości na platformie .NET. Usprawniono także dostępne narzędzia — na przykład w programie Visual Studio Team System, pozwalającym na skuteczną pracę zespołową. Wprowadzono w nim możliwości profilowania wydajności i udoskonalono system kompilacji grupowej. Wśród nowych funkcji pojawiły się kreatory do wiązania danych, inteligentne znaczniki oraz narzędzia do zarządzania projektami.
"Microsoft Visual Studio 2008. Księga eksperta" stanowi kompletne i szczegółowe omówienie tego wyjątkowego środowiska programistycznego. Z podręcznika dowiesz się, jak tworzyć dodatki, makra i kreatory oraz jak zbudować aplikacje oparte na formularzach Windows i platformie WPF. Poznasz produkty z rodziny Visual Studio Team System, które umożliwiają wydajną pracę w zespole. Nauczysz się korzystać z narzędzi programistycznych platformy .NET, pracować z bazami danych i zarządzać zmianami w kodzie źródłowym.
* Środowisko Visual Studio 2008-12-07 — rozwiązania i projekty
* Przeglądarki i eksploratory
* Tworzenie i wykorzystanie współużytkowanego kodu
* Korzystanie z narzędzi zwiększających produktywność
* Obiektowy model automatyzacji
* Tworzenie makr, kreatorów i dodatków
* Arkusze stylów
* Tworzenie aplikacji opartych na formularzach Windows
* Praca z bazami danych
* Dodawanie procesów do aplikacji
* Aplikacje biznesowe oparte na pakiecie Office
* Praca zespołowa i Visual Studio Team System
* Kontrolka kodu źródłowego
Wykorzystaj wiedzę ekspercką i zostań jeszcze bardziej profesjonalnym programistą!
1. Java. Efektywne
programowanie. Wydanie II
Autor: Joshua Bloch
T³umaczenie: Pawe³ Gonera
ISBN: 978-83-246-2084-5
Tytu³ orygina³u: Effective Java (2nd Edition)
Format: 158x235 , stron: 352
Poznaj specyfikê jêzyka Java i zostañ mistrzem programowania
• Jak korzystaæ z bibliotek jêzyka Java?
• Jak pisaæ funkcjonalny i klarowny kod?
• Jak stworzyæ profesjonalny i efektowny program?
Jêzyk Java jest jêzykiem obiektowym z dziedziczeniem jednobazowym. Wewn¹trz
ka¿dej metody korzysta on ze zorientowanego na instrukcje stylu kodowania.
Aby dobrze poznaæ jakikolwiek jêzyk, nale¿y nauczyæ siê pos³ugiwaæ jego regu³ami,
zasadami i sk³adni¹ — podobnie jest z jêzykiem programowania. Jeœli chcesz zyskaæ
mo¿liwoœæ efektywnego programowania w jêzyku Java, powinieneœ poznaæ struktury
danych, operacje i udogodnienia, oferowane przez biblioteki standardowe, a tak¿e
czêsto stosowane i efektywne sposoby tworzenia kodu. Ca³¹ potrzebn¹ Ci wiedzê
znajdziesz w³aœnie w tym podrêczniku.
W ksi¹¿ce „Java. Efektywne programowanie” w sposób zrozumia³y i klarowny
przedstawiono zasady opisuj¹ce mechanizmy u¿ywane w najlepszych technikach
programowania. Ten podrêcznik podpowie Ci, jak najbardziej racjonalnie korzystaæ
z jêzyka Java oraz jego podstawowych bibliotek. Dowiesz siê, jak stosowaæ wyj¹tki
przechwytywalne i wyj¹tki czasu wykonania, poznasz tak¿e zalety stosowania
statycznych klas sk³adowych. Opanujesz metody sprawdzania poprawnoœci
parametrów i projektowania sygnatur oraz wszelkie instrukcje, które pozwol¹ Ci
na wydajne i profesjonalne programowanie.
• Tworzenie i usuwanie obiektów
• Klasy i interfejsy
• Zapewnianie niezmiennoœci obiektu
• Projektowanie i dokumentowanie klas przeznaczonych do dziedziczenia
• Zalety stosowania statycznych klas sk³adowych
• Typy ogólne
• Typy wyliczeniowe i adnotacje
• Metody
• Programowanie
• Wykorzystanie ogólnie przyjêtych konwencji nazewnictwa
• Wyj¹tki
• Wspó³bie¿noœæ i serializacja
• Dokumentowanie bezpieczeñstwa dla w¹tków
Nie wystarczy samo poznanie jêzyka Java.
Trzeba wiedzieæ, jak z niego efektywnie korzystaæ!
2. Spis treści
Słowo wstępne .................................................................................. 11
Przedmowa ...................................................................................... 13
Podziękowania .................................................................................. 17
Rozdział 1. Wprowadzenie ............................................................... 21
Rozdział 2. Tworzenie i usuwanie obiektów ...................................... 25
Temat 1. Tworzenie statycznych metod factory
zamiast konstruktorów ............................................................... 25
Temat 2. Zastosowanie budowniczego
do obsługi wielu parametrów konstruktora ........................ 31
Temat 3. Wymuszanie właściwości singleton
za pomocą prywatnego konstruktora .............................. 37
Temat 4. Wykorzystanie konstruktora prywatnego
w celu uniemożliwienia utworzenia obiektu ....................... 39
Temat 5. Unikanie powielania obiektów .......................................... 40
Temat 6. Usuwanie niepotrzebnych referencji do obiektów ........... 44
Temat 7. Unikanie finalizatorów ...................................................... 47
Rozdział 3. Metody wspólne dla wszystkich obiektów ....................... 53
Temat 8. Zachowanie założeń w trakcie przedefiniowywania
metody equals ..................................................................... 53
Temat 9. Przedefiniowywanie metody hashCode wraz z equals ..... 65
Temat 10. Przedefiniowywanie metody toString ............................... 70
Temat 11. Rozsądne przedefiniowywanie metody clone ................... 73
Temat 12. Implementacja interfejsu Comparable ............................. 81
3. 8 SPIS TREŚCI
Rozdział 4. Klasy i interfejsy ............................................................ 87
Temat 13. Ograniczanie dostępności klas i ich składników .............. 87
Temat 14. Stosowanie metod akcesorów zamiast pól publicznych
w klasach publicznych ........................................................ 91
Temat 15. Zapewnianie niezmienności obiektu ................................. 93
Temat 16. Zastępowanie dziedziczenia kompozycją ........................ 101
Temat 17. Projektowanie i dokumentowanie klas przeznaczonych
do dziedziczenia ............................................................... 107
Temat 18. Stosowanie interfejsów zamiast klas abstrakcyjnych ..... 112
Temat 19. Wykorzystanie interfejsów jedynie
do definiowania typów ...........................................................117
Temat 20. Zastępowanie oznaczania klas hierarchią ....................... 119
Temat 21. Zastosowanie obiektów funkcyjnych
do reprezentowania strategii ........................................... 122
Temat 22. Zalety stosowania statycznych klas składowych ............. 125
Rozdział 5. Typy ogólne ................................................................ 129
Temat 23. Nie korzystaj z typów surowych w nowym kodzie ......... 129
Temat 24. Eliminowanie ostrzeżeń o braku kontroli ....................... 135
Temat 25. Korzystanie z list zamiast tablic ......................................... 137
Temat 26. Stosowanie typów ogólnych ............................................. 142
Temat 27. Stosowanie metod ogólnych ............................................ 146
Temat 28. Zastosowanie związanych szablonów
do zwiększania elastyczności API .................................... 151
Temat 29. Wykorzystanie heterogenicznych kontenerów
bezpiecznych dla typów .................................................... 158
Rozdział 6. Typy wyliczeniowe i adnotacje ..................................... 165
Temat 30. Użycie typów wyliczeniowych zamiast stałych int .......... 165
Temat 31. Użycie pól instancyjnych zamiast kolejności .................. 176
Temat 32. Użycie EnumSet zamiast pól bitowych ........................... 177
Temat 33. Użycie EnumMap zamiast indeksowania kolejnością .... 178
Temat 34. Emulowanie rozszerzalnych typów wyliczeniowych
za pomocą interfejsów ...................................................... 182
Temat 35. Korzystanie z adnotacji zamiast wzorców nazw ............. 186
Temat 36. Spójne użycie adnotacji Override .................................... 192
Temat 37. Użycie interfejsów znacznikowych
do definiowania typów ...........................................................195
Rozdział 7. Metody ....................................................................... 197
Temat 38. Sprawdzanie poprawności parametrów .......................... 197
Temat 39. Defensywne kopiowanie .................................................. 200
Temat 40. Projektowanie sygnatur metod ........................................ 204
Temat 41. Rozsądne korzystanie z przeciążania .............................. 206
4. SPIS TREŚCI 9
Temat 42. Rozsądne korzystanie z metod varargs ........................... 212
Temat 43. Zwracanie pustych tablic lub kolekcji
zamiast wartości null ..............................................................215
Temat 44. Tworzenie komentarzy dokumentujących
dla wszystkich udostępnianych elementów API ............. 217
Rozdział 8. Programowanie ........................................................... 225
Temat 45. Ograniczanie zasięgu zmiennych lokalnych ................... 225
Temat 46. Stosowanie pętli for-each
zamiast tradycyjnych pętli for ......................................... 228
Temat 47. Poznanie i wykorzystywanie bibliotek ............................ 231
Temat 48. Unikanie typów float i double,
gdy potrzebne są dokładne wyniki .................................. 234
Temat 49. Stosowanie typów prostych
zamiast opakowanych typów prostych ............................ 236
Temat 50. Unikanie typu String,
gdy istnieją bardziej odpowiednie typy ........................... 239
Temat 51. Problemy z wydajnością
przy łączeniu ciągów znaków ........................................... 242
Temat 52. Odwoływanie się do obiektów poprzez interfejsy .......... 243
Temat 53. Stosowanie interfejsów zamiast refleksyjności ............... 245
Temat 54. Rozważne wykorzystywanie metod natywnych .............. 248
Temat 55. Unikanie optymalizacji .................................................... 249
Temat 56. Wykorzystanie ogólnie przyjętych
konwencji nazewnictwa .................................................... 252
Rozdział 9. Wyjątki ........................................................................ 257
Temat 57. Wykorzystanie wyjątków
w sytuacjach nadzwyczajnych .......................................... 257
Temat 58. Stosowanie wyjątków przechwytywanych
i wyjątków czasu wykonania ............................................ 260
Temat 59. Unikanie niepotrzebnych
wyjątków przechwytywanych ........................................... 262
Temat 60. Wykorzystanie wyjątków standardowych ....................... 264
Temat 61. Zgłaszanie wyjątków właściwych dla abstrakcji .............. 266
Temat 62. Dokumentowanie wyjątków zgłaszanych
przez metodę ..................................................................... 268
Temat 63. Udostępnianie danych o błędzie ....................................... 270
Temat 64. Zachowanie atomowości w przypadku błędu ................. 272
Temat 65. Nie ignoruj wyjątków ....................................................... 274
5. 10 SPIS TREŚCI
Rozdział 10. Współbieżność ............................................................ 275
Temat 66. Synchronizacja dostępu
do wspólnych modyfikowalnych danych ........................ 275
Temat 67. Unikanie nadmiarowej synchronizacji ........................... 280
Temat 68. Stosowanie wykonawców i zadań zamiast wątków ......... 286
Temat 69. Stosowanie narzędzi współbieżności
zamiast wait i notify ......................................................... 288
Temat 70. Dokumentowanie bezpieczeństwa dla wątków ............... 293
Temat 71. Rozsądne korzystanie z późnej inicjalizacji .................... 296
Temat 72. Nie polegaj na harmonogramie wątków ......................... 300
Temat 73. Unikanie grup wątków ..................................................... 302
Rozdział 11. Serializacja .................................................................. 305
Temat 74. Rozsądne implementowanie interfejsu Serializable ....... 305
Temat 75. Wykorzystanie własnej postaci serializowanej ............... 310
Temat 76. Defensywne tworzenie metody readObject .................... 317
Temat 77. Stosowanie typów wyliczeniowych
zamiast readResolve do kontroli obiektów ..................... 323
Temat 78. Użycie pośrednika serializacji
zamiast serializowanych obiektów .................................. 327
Dodatek A Tematy odpowiadające pierwszemu wydaniu ............... 331
Dodatek B Zasoby ........................................................................ 335
Skorowidz ....................................................................................... 339
6. 9
Wyjątki
K orzystając z najlepszych cech wyjątków, można dzięki nim poprawić czytel-
ność programu, jego solidność i łatwość konserwacji. Użyte niewłaściwie będą
miały odwrotny efekt. W rozdziale tym zamieszczamy wskazówki, pomagające
efektywnie wykorzystywać wyjątki.
Temat 57. Wykorzystanie wyjątków
w sytuacjach nadzwyczajnych
Być może kiedyś spotkasz się z fragmentem kodu, który będzie wyglądał następująco:
// Nadużycie wyjątków. Nigdy tak nie rób!
try {
int i = 0 ;
while (true)
range[i++].climb();
} catch (ArrayIndexOutOfBoundsException e) {
}
Co robi ten fragment? Działanie to nie jest oczywiste na pierwszy rzut oka i jest
to wystarczający powód, aby odradzić stosowanie takiego stylu programowania
(temat 55.). Jest to bardzo zły sposób na przeglądanie tablicy. Pętla nieskończona
jest przerywana przez zgłoszenie, przechwycenie i zignorowanie wyjątku ArrayIndex
OutOfBoundsException, gdy program będzie próbował odwołać się do pierwszego
elementu spoza zakresu tablicy. Jest to koślawy odpowiednik standardowej metody
przeglądania tablicy, natychmiast rozpoznawany przez każdego programistę:
for (Mountain m : range)
m.climb();
7. 258 ROZDZIAŁ 9. WYJĄTKI
Skąd wziął się więc pomysł zastąpienia wypróbowanej metody przeglądania tablicy
metodą wykorzystującą wyjątki? Jest to nieudolna próba poprawy wydajności,
oparta o nieprawidłowe założenie, że maszyna wirtualna kontroluje dostęp do ele-
mentów spoza zakresu tablicy przy wszystkich odwołaniach, więc zwykły test za-
kończenia pętli — ukryty przez kompilator, ale nadal występujących w pętli for-each
— jest nadmiarowy i powinien być usunięty. Założenie to powoduje wystąpienie
trzech niekorzystnych zjawisk:
• Ponieważ wyjątki są zaprojektowane do obsługi sytuacji wyjątkowych,
implementacje JVM słabo optymalizują kod obsługi wyjątku.
Tworzenie, zgłaszanie i przechwytywanie wyjątków to operacje
stosunkowo kosztowne.
• Umieszczenie kodu w bloku try-catch wyklucza niektóre
optymalizacje, które nowoczesne maszyny wirtualne mogą zastosować.
• Standardowa metoda przeglądania elementów tablicy niekoniecznie
musi wykonywać nadmiarowe sprawdzenia — nowoczesne implementacje
JVM potrafią to zoptymalizować.
W rzeczywistości zaprezentowana metoda przeglądania tablicy z wykorzystaniem
wyjątku na niemal wszystkich implementacjach JVM jest o wiele wolniejsza, niż
metoda najczęściej wykorzystywana. Na moim komputerze kod, przeglądający
stuelementową tablicę metodą wykorzystującą wyjątki, wykonywał się dwa razy
dłużej niż fragment korzystający ze standardowej metody.
Metoda wykorzystująca wyjątki nie tylko zaciemnia kod i spowalnia program,
ale również nie gwarantuje poprawnej pracy. W przypadku wystąpienia całkowicie
innego błędu metoda ta może zawieść bez żadnego ostrzeżenia, maskując błąd, co
ogromnie skomplikuje proces uruchamiania programu. Załóżmy, że obliczenia wy-
konywane w pętli zawierają błąd przekroczenia zakresu całkowicie innej tablicy.
Jeżeli zostałaby wykorzystana standardowa metoda przeglądania tablicy, błąd ten
spowodowałby zgłoszenie wyjątku, co z kolei natychmiast zakończyłoby wątek wy-
generowaniem odpowiedniego komunikatu błędu. Jeżeli jednak zostanie użyta me-
toda z przechwytywaniem wyjątku, to wyjątek związany z błędem zostanie mylnie
zinterpretowany jako normalne zakończenie pętli.
Przykład ten ilustruje, że wyjątki, tak jak ich nazwa wskazuje, powinny być wyko-
rzystywane do obsługi sytuacji wyjątkowych — nie powinny być nigdy używane
do sterowania normalnym przebiegiem kodu programu. Mówiąc ogólniej, powi-
nieneś stosować standardowe, rozpoznawalne konstrukcje programowe zamiast
sprytnych, stosowanych jedynie w celu osiągnięcia lepszej wydajności. Nawet, gdy
zysk wydajności jest znaczny, może szybko zostać zniwelowany w kolejnych wersjach
szybko rozwijających się implementacji JVM. Pozostaną jednak kłopoty przy usu-
waniu subtelnych błędów, występujące w przypadku zastosowania sprytnych metod.
8. TEMAT 57. WYKORZYSTANIE WYJĄTKÓW W SYTUACJACH NADZWYCZAJNYCH 259
Zasada ta powinna być również stosowana przy projektowaniu API. Dobrze za-
projektowane API nie powinno wymuszać na klientach wykorzystania wyjątków
do sterowania zwykłym przebiegiem programu. Klasa z metodami „zależnymi od
stanu”, które są wywoływane jedynie w określonych, nieprzewidywalnych warunkach,
powinny posiadać zwykle oddzielne metody „testujące stan”, czyli sprawdzające,
czy należy wywołać pierwszą metodę. Na przykład, klasa Iterator posiada zależną
od stanu metodę next, która zwraca następny element wyliczenia oraz skojarzoną
z nią metodę hasNext, testującą stan. Pozwala to na skorzystanie ze standardowego
idiomu, służącego do przeglądania kolekcji w standardowych pętlach for (jak
również w pętlach for-each, w których metoda hasNext jest wykorzystywana
wewnętrznie):
for (Iterator<Foo> i = collection.iterator(); i.hasNext(); ) {
Foo foo = i.next();
// ...
}
Jeżeli klasa Iterator nie posiadałaby metody hasNext, klient zostałby zmuszony do
skorzystania z poniższej metody:
// Nie korzystaj z tej okropnej metody przeglądania kolekcji!
try {
Iterator<Foo> i = collection.iterator();
while (true) {
Foo foo = i.next();
// ...
}
} catch (NoSuchElementException e) {
}
Przedstawiony kod wygląda podobnie do przykładu rozpoczynającego ten temat.
Oprócz tego, że przykład jest rozwlekły, działa dużo wolniej niż standardowy oraz
może ukrywać błędy, pochodzące z innych części systemu.
Innym sposobem zapewnienia osobnej metody testującej stan jest zwracanie przez
metodę zależną od stanu specjalnej wartości, jak na przykład null, jeżeli obiekt jest
w nieprawidłowym stanie. Technika ta nie nadaje się dla klasy Iterator, ponieważ
wartość null jest prawidłową wartością zwracaną przez metodę next.
Warto wymienić kilka sugestii, dotyczących wyboru pomiędzy metodą testującą
stan i zwracaniem wartości specjalnej. Jeżeli do obiektu można się odwoływać
równolegle bez zewnętrznej synchronizacji lub jego stan zmienia się pod wpływem
zewnętrznych czynników, wykorzystanie specjalnej wartości może być kluczowe
dla prawidłowego działania, ponieważ obiekt może zmienić swój stan pomiędzy
wywołaniem metody testującej stan i odpowiadającej jej metody zależnej od stanu.
Jeżeli ważna jest wydajność, należy skorzystać ze zwracania wartości specjalnej
(jeżeli wykonanie osobnej metody testującej stan wiąże się z wykonaniem tych
9. 260 ROZDZIAŁ 9. WYJĄTKI
samych operacji, co w odpowiadającej jej metodzie zależnej od stanu). Jeżeli nie
zachodzą te przypadki, zalecane jest tworzenie metody testującej stan. Pozwala ona
osiągnąć lepszą czytelność kodu, a w przypadku jej niewłaściwego stosowania łatwiej
można odszukać i poprawić błąd.
Podsumujmy. Wyjątki są zaprojektowane do wykorzystania w sytuacjach wyjątko-
wych. Nie należy ich używać do zwykłej kontroli przepływu sterowania i nie należy
pisać API wymuszających takie działanie.
Temat 58.
Stosowanie wyjątków przechwytywanych
i wyjątków czasu wykonania
Język Java pozwala na stosowanie trzech rodzajów wyjątków: wyjątków przechwy-
tywanych, wyjątków czasu wykonania i błędów. Często pojawiają się wątpliwości,
dotyczące zastosowania odpowiedniego rodzaju wyjątku. Wybór nie zawsze jest
jednoznaczny, ale istnieją ogólne zasady, ułatwiające podjęcie decyzji.
Podstawową zasadą jest określenie, czy wyjątek jest przechwytywany czy nieprze-
chwytywany. Wyjątki przechwytywane należy stosować w przypadkach, w których
spodziewamy się, że wywołujący może przywrócić normalny stan. Zgłaszając
wyjątek przechwytywany, zmuszasz wywołującego do obsłużenia tego wyjątku
w klauzuli catch lub do jego propagacji na wyższy poziom. Każdy przechwytywany
wyjątek deklarowany przez metodę jest wskazówką dla użytkownika API, że w trakcie
wykonywania metody można spodziewać się, że taki będzie wynik wykonania danej
metody.
Przekazując przechwytywany wyjątek użytkownikowi API, projektant nakazuje
wykonanie operacji przywracających normalny stan systemu. Użytkownik może
zgodzić się na ten nakaz, przechwytując wyjątek, lub zignorować go, choć nie jest to
najlepszym pomysłem (temat 65.).
Istnieją dwa rodzaje wyjątków nieprzechwytywanych — wyjątki czasu wykonania
i błędy. Ich działanie jest identyczne — oba rodzaje nie mogą i zwykle nie powinny
być przechwytywane. Jeżeli program zgłasza wyjątek nieprzechwytywany lub błąd,
zwykle przywrócenie właściwego stanu systemu jest niemożliwe i kontynuowanie
działania programu może spowodować więcej złego niż dobrego. Jeżeli program
nie przechwyci takiego wyjątku, spowoduje to zakończenie bieżącego wątku z od-
powiednim komunikatem błędu.
10. TEMAT 58. STOSOWANIE WYJĄTKÓW PRZECHWYTYWANYCH I WYJĄTKÓW CZASU WYKONANIA 261
Do wskazywania błędów programistycznych należy używać wyjątków czasu wy-
konania. Większość wyjątków czasu wykonania wskazuje na naruszenia założeń.
Naruszenie założenia występuje, gdy klient API nie może dotrzymać założeń, wy-
mienionych w specyfikacji API. Dla przykładu, założenia dla dostępu do tablicy
określają, że indeks tablicy musi być liczbą od zera do wielkości tablicy minus jeden.
Wyjątek ArrayIndexOutOfBoundsException wskazuje na niedotrzymanie tego
założenia.
Mimo że specyfikacja języka Java nie wymusza tego, istnieje bardzo silna konwencja,
mówiąca, że błędy są zarezerwowane przez maszynę wirtualną do wskazywania
braku zasobów, naruszenia niezmienników lub innych błędów, powodujących
niemożliwość kontynuacji wykonania programu. Z powodu niemal całkowitej
akceptacji tej konwencji najlepiej nie tworzyć nowych podklas dla klasy Error.
Wszystkie nieprzechwytywane wyjątki definiowane przez Ciebie powinny dzie-
dziczyć po RuntimeException (bezpośrednio bądź pośrednio).
Możliwe jest zdefiniowanie wyjątku, który nie dziedziczy po klasie Exception, Run
TimeException lub Error. Specyfikacja języka nie zajmuje się bezpośrednio takimi
wyjątkami, ale niejawnie określa, że mają one identyczne działanie, jak zwykłe,
przechwytywane wyjątki (które dziedziczą po Exception, a nie RunTimeException).
Kiedy więc powinniśmy z nich skorzystać? Prawdopodobnie nigdy. Nie mają one
żadnych zalet w porównaniu ze zwykłymi przechwytywanymi wyjątkami i prawdo-
podobnie będą jedynie myliły użytkowników Twojego API.
Podsumujmy. Wyjątków przechwytywanych należy używać do obsługi przypadków,
w których można naprawić błąd, a wyjątków nieprzechwytywanych należy używać
do wykonania obsługi błędów programowych. Oczywiście sytuacja nie zawsze musi
być czarno-biała. Na przykład wyczerpanie się zasobów może być spowodowane
przez błąd programu, taki jak niepotrzebne przydzielenie zbyt dużej tablicy, albo
przez zwykły brak zasobów. Jeżeli brak zasobów jest spowodowany przez tym-
czasowy niedobór lub przez tymczasowo zwiększone potrzeby, operacja ma szansę
powodzenia. W gestii projektanta API leży decyzja, czy dana sytuacja braku zasobów
pozwala na przywrócenie normalnego stanu. Jeżeli uważasz, że sytuację da się na-
prawić, należy skorzystać z wyjątku przechwytywanego — jeżeli nie, wyjątku czasu
wykonania. Jeżeli nie jesteś pewien, czy możliwe jest przywrócenie normalnego
stanu, z powodów omówionych w temacie 59. lepiej skorzystać z wyjątku nie-
przechwytywanego.
Projektanci API często zapominają, że wyjątki są w pełni funkcjonalnymi obiektami,
w których mogą być definiowane normalne metody. Podstawowym zastosowaniem
takich metod jest dostarczenie kodu przechwytującego wyjątek i dodatkowych
informacji na temat zdarzenia, które spowodowało zgłoszenie wyjątku. W przy-
padku braku takich metod programiści muszą analizować ciąg zwracany przez
wyjątek w celu wyłuskania dodatkowych danych. Jest to bardzo zła praktyka
11. 262 ROZDZIAŁ 9. WYJĄTKI
(temat 10.). Klasy rzadko określają szczegóły ich reprezentacji jako ciąg znaków.
Reprezentacja ta może różnić się w różnych implementacjach i wersjach. Dlatego
kod analizujący ciąg reprezentujący wyjątek najprawdopodobniej będzie nieprze-
nośny i podatny na błędy.
Ponieważ wyjątki przechwytywane najczęściej wskazują sytuacje naprawialne, szcze-
gólnie ważne jest definiowanie w klasach wyjątków metod, które dostarczają da-
nych pomagających przywrócić prawidłowy stan. Na przykład, przechwytywany
wyjątek może być zgłaszany w sytuacji, gdy wykonana została próba zadzwonie-
nia z automatu telefonicznego bez wrzucenia odpowiedniej kwoty. Wyjątek ten
powinien zawierać metodę zwracającą brakującą kwotę, dzięki czemu niedobór
może być wyświetlony użytkownikowi telefonu.
Temat 59. Unikanie niepotrzebnych
wyjątków przechwytywanych
Przechwytywane wyjątki są niezwykle użytecznym mechanizmem języka Java.
W przeciwieństwie do zwracanych wartości wymuszają one na programiście zajęcie
się sytuacją wyjątkową, co niezmiernie zwiększa solidność aplikacji. Jednak nad-
używanie wyjątków może spowodować, że API będzie mało wygodne. Jeżeli metoda
zgłasza jeden lub więcej wyjątków, kod wywołujący ją musi obsługiwać te wyjątki
w jednym lub większej liczby bloków catch albo musi zadeklarować, że będzie
zgłaszał te wyjątki, co umożliwi ich propagację. Obie czynności powodują zwięk-
szone obciążenie programistów.
Obciążenie to jest uzasadnione, gdy nie można uniknąć sytuacji wyjątkowych przy
właściwym stosowaniu API oraz gdy programista wykorzystujący to API ma moż-
liwość przedsięwziąć sensowne akcje po wystąpieniu takiego wyjątku. W sytuacji,
gdy nie są spełnione oba te warunki, bardziej właściwe jest zastosowanie wyjątku
nieprzechwytywanego. Musimy odpowiedzieć sobie na pytanie, w jaki sposób pro-
gramista ma obsłużyć wyjątek. Czy jest to najlepsze, co może być wykonane?
} catch(TheCheckedException e) {
throw new AssertionError(); // Nie powinien się zdarzyć!
}
I drugi przypadek.
} catch (TheCheckedException e) {
e.printStackTrace(); // To już koniec.
System.exit(1);
}
12. TEMAT 59. UNIKANIE NIEPOTRZEBNYCH WYJĄTKÓW PRZECHWYTYWANYCH 263
Jeżeli programista nie może lepiej obsłużyć wyjątku, lepszy będzie wyjątek nie-
przechwytywany. Przykładem wyjątku, który nie spełnia tej zasady, jest CloneNot
SupportedException. Jest on zgłaszany przez metodę Object.clone, która powinna
być wywoływana jedynie przez obiekt implementujący interfejs Cloneable (temat 11.).
W praktyce blok catch nieomal zawsze ma charakter niepowodzenia asercji.
Przechwycenie tego wyjątku nie daje programiście żadnych dodatkowych moż-
liwości, wymaga jedynie dodatkowej pracy i komplikuje program.
Dodatkowo, obciążenie programisty przez obsługę wyjątku jest nieco większe, jeżeli
metoda zgłasza jeden wyjątek. Jeżeli zgłaszane jest więcej wyjątków, metoda musi
być umieszczona w bloku try, a obsługa poszczególnych wyjątków jest umieszczona
w kolejnych blokach catch. Jeżeli metoda zgłasza tylko jeden wyjątek, jest on odpo-
wiedzialny za umieszczenie wywołania tej metody w bloku try. W tej sytuacji opłaca
się pomyśleć o sposobach uniknięcia przechwytywania wyjątków.
Jedną z technik zmiany wyjątku przechwytywanego na nieprzechwytywany jest
podział metody na dwie części — pierwsza zwraca wartość boolean, wskazującą
na to, czy powinien być zgłoszony wyjątek. Stosując tę metodę powodujemy, że
poniższa sekwencja wywołań:
// Wywołanie ze sprawdzaniem wyjątków
try {
obj.action(args);
} catch (TheCheckedException e) {
// Obsługa sytuacji wyjątkowej
// ...
}
zmienia się na:
// Wywołanie z użyciem metody testującej stan i wyjątku nieprzechwytywanego
if (obj.actionPermitted(args)) {
obj.action(args);
} Else {
// Obsługa sytuacji wyjątkowej
// ...
}
Transformacja taka nie jest zawsze prawidłowa, ale tam, gdzie można ją zasto-
sować, może ona ułatwić używanie API. Choć druga sekwencja wywołań nie jest
ładniejsza od pierwszej, to jednak API jest bardziej elastyczne. W przypadkach,
gdy programista wie, że wywołanie na pewno się uda lub pozwala na zakończenie
programu w przypadku niepowodzenia, pokazana transformacja pozwala na zasto-
sowanie najprostszej sekwencji wywołań:
obj.action(args);
13. 264 ROZDZIAŁ 9. WYJĄTKI
Jeżeli podejrzewasz, że najprostsza sekwencja wywołania będzie powszechnie stoso-
wana, to taka modyfikacja API jest właściwa. Po takiej modyfikacji API będzie
nieomal identyczne, jak w przypadku zastosowania metody testującej stan, przed-
stawionej w temacie 57. i należy tu przestrzegać tych samych zasad. Jeżeli do obiektu
występują jednoczesne odwołania bez zewnętrznej synchronizacji lub jego stan
zmienia się pod wpływem czynników zewnętrznych, przedstawiona modyfikacja
jest nieprawidłowa, ponieważ stan obiektu może zmienić się pomiędzy wywołaniem
metody actionPermitted i action. Jeżeli metoda actionPermitted będzie musiała
powtórzyć operacje wykonywane w metodzie action, transformacja ta spowoduje
obniżenie wydajności systemu.
Temat 60.
Wykorzystanie wyjątków standardowych
Jednym z atrybutów najlepiej odróżniających ekspertów w dziedzinie programowa-
nia od mniej zaawansowanych programistów jest dbałość ekspertów o wysoki sto-
pień ponownego wykorzystania kodu. Wyjątki nie są tutaj wyjątkiem od zasady
powtórnego wykorzystania kodu. Biblioteki platformy Java zawierają podstawowy
zbiór wyjątków nieprzechwytywanych, który obejmuje większość sytuacji wyjątko-
wych spotykanych w API. Temat ten zawiera omówienie tych powszechnie wy-
korzystywanych wyjątków.
Ponowne wykorzystanie istniejących wyjątków niesie ze sobą wiele korzyści. Naj-
ważniejszą z nich jest ułatwienie nauki stosowania API, ponieważ korzysta ono
z dobrze ugruntowanych konwencji, z którymi programista jest już zaznajomiony.
Nie mniej ważną korzyścią jest czytelność programów korzystających z takiego API,
ponieważ kod nie jest zabałaganiony nieznanymi wyjątkami. Na koniec, mniej klas
wyjątków powoduje zmniejszenie ilości zużywanej pamięci i skraca czas łado-
wania klas.
Najczęściej wykorzystywanym wyjątkiem jest IllegalArgumentException. Najczę-
ściej jest on zgłaszany, gdy wywołujący przekaże argument o niewłaściwej wartości.
Na przykład, można skorzystać z tego wyjątku, jeżeli jako parametr reprezentujący
liczbę powtórzeń zostanie przekazana wartość ujemna.
Innym często stosowanym wyjątkiem jest IllegalStateException. Jest to wyjątek
zgłaszany, jeżeli w aktualnym stanie obiektu wywołanie jest nielegalne. Na przykład,
jeżeli wywołujący będzie próbował skorzystać z obiektu przed jego prawidłowym
zainicjowaniem.
14. TEMAT 60. WYKORZYSTANIE WYJĄTKÓW STANDARDOWYCH 265
Można uznać, że wszystkie błędne wywołania metod sprowadzają się do niepra-
widłowego argumentu i do niewłaściwego stanu obiektu, ale do sygnalizowania nie-
których rodzajów nieprawidłowych stanów i argumentów wykorzystywane są naj-
częściej specjalizowane wyjątki. Jeżeli wartością parametru będzie null w miejscu,
gdzie wartości null są niedozwolone, konwencja nakazuje zgłosić wyjątek NullPointer
Exception a nie IllegalArgumentException. Podobnie, jeżeli przekazana wartość
parametru oznaczającego indeks wykracza poza dozwolony zakres, należy zgłosić
wyjątek IndexOutOfBoundsException, a nie IllegalArgumentException.
Innym wyjątkiem ogólnego przeznaczenia, jaki powinniśmy znać, jest Concurrent
ModificationException. Wyjątek ten powinien być zgłaszany, jeżeli obiekt zapro-
jektowany do wykorzystywania przez jeden wątek lub korzystający z zewnętrznej
synchronizacji wykryje, że jest (lub był) równolegle modyfikowany.
Ostatnim wyjątkiem ogólnego przeznaczenia, jaki tu omówimy, jest Unsupported
OperationException. Wyjątek ten jest zgłaszany, gdy obiekt nie obsługuje wywo-
ływanej operacji. Jest on dosyć rzadko wykorzystywany, ponieważ większość obiek-
tów obsługuje wszystkie implementowane przez siebie metody. Wykorzystywany
jest w sytuacjach, gdy implementacja interfejsu nie posiada obsługi jakiejś opcjonal-
nej operacji definiowanej przez interfejs. Na przykład, implementacja interfejsu List,
przeznaczona tylko do dołączania elementów, zgłosi ten wyjątek, gdy ktoś będzie
próbował usunąć element.
W tabeli 7.1 przedstawione jest zestawienie często wykorzystywanych wyjątków.
Tabela 7.1. Często wykorzystywane wyjątki
Wyjątek Zastosowanie
IllegalArgumentException Nieprawidłowa wartość parametru
IllegalStateException Nieprawidłowy stan obiektu dla wywoływanej metody
NullPointerException Zabronione stosowanie wartości null w parametrze
IndexOutOfBoundsException Wartość indeksu poza zakresem
ConcurrentModificationException Wykryta równoległa modyfikacja stanu obiektu
w przypadku, gdy jest ona zabroniona
UnsupportedOperationException Obiekt nie obsługuje metody
Choć są to najczęściej wykorzystywane wyjątki w bibliotekach platformy Java, to
w przypadkach, gdy sytuacja upoważnia do użycia innego wyjątku, należy go zasto-
sować. Na przykład, w przypadku tworzenia obiektów matematycznych, takich jak
liczby zespolone lub macierze, bardziej właściwe będzie zastosowanie wyjątków
ArihtmeticException i NumberFormatException. Jeżeli wyjątek spełnia Twoje po-
trzeby — wykorzystaj go, jednak jedynie wtedy, gdy warunki, w których zgłaszasz
15. 266 ROZDZIAŁ 9. WYJĄTKI
ten wyjątek, są zgodne z warunkami opisanymi w jego dokumentacji. Wykorzystanie
wyjątków musi być uzasadnione semantyką, a nie jedynie nazwą. W przypadkach,
gdy chcesz uzupełnić wyjątek o dodatkowe informacje, możesz również dziedzi-
czyć po istniejących wyjątkach (temat 63.).
Musisz wiedzieć, że wybór właściwego wyjątku do wykorzystania nie jest czasami
jednoznaczny, a „Zastosowania” z tabeli 7.1 nie zawsze wzajemnie się wykluczają.
Pomyśl na przykład o przypadku obiektu reprezentującego talię kart. Załóżmy, że
mamy metodę wydającą karty, która jako argument posiada liczbę kart. Załóżmy,
że wywołujący tę metodę przekazał wartość parametru większą niż liczba kart
pozostałych w talii. Może być to zinterpretowane jako IllegalArgumentException
(wartość parametru jest zbyt duża) lub IllegalStateException (obiekt talia posiada
za mało kart do zrealizowania żądania). W tym przypadku wydaje się, że właściwy
będzie wyjątek IllegalArgumentException, ale nie ma tu żadnej sztywnej reguły.
Temat 61. Zgłaszanie
wyjątków właściwych dla abstrakcji
Niewłaściwe jest zgłaszanie przez metodę wyjątku, który nie ma widocznego związku
z zadaniem, jakie ta metoda wykonuje. Często się to zdarza, gdy metoda propaguje
wyjątek zgłoszony przez mechanizmy niskiego poziomu. Oprócz wprowadzania
zamieszania powoduje to zaśmiecenie API wyższej warstwy szczegółami implemen-
tacji warstwy niższej. Jeżeli w przyszłej wersji implementacja wyższej warstwy zosta-
nie zmieniona, zgłaszane wyjątki również mogą się zmienić, co może spowodować,
że programy klientów przestaną działać.
Aby uniknąć tego problemu, wyższe warstwy abstrakcji powinny przechwytywać
wyjątki z warstwy niższej i w ich miejsce zgłaszać wyjątki, które są odpowiednie
dla wyższej warstwy. Idiom ten, nazywany translacją wyjątków, wygląda następująco:
// Translacja wyjątków
try {
// Wykorzystanie operacji niższej warstwy
// ...
} catch (LowerLevelException e) {
throw new HigherLevelException(...);
}
Poniżej przedstawiamy przykład translacji wyjątków, zaczerpnięty z klasy Abstract
SequentialList, która jest szkieletową implementacją (temat 18.) interfejsu List.
W przykładzie tym wykorzystanie translacji wyjątków jest wymuszone przez specy-
fikację metody get z interfejsu List<E>.
16. TEMAT 61. ZGŁASZANIE WYJĄTKÓW WŁAŚCIWYCH DLA ABSTRAKCJI 267
/**
* Zwraca element z podanej pozycji w tej liście.
* @throws IndexOutOfBoundsException, jeżeli indeks jest poza zakresem
* (index < 0 || index >= size()).
*/
public E get(int index) {
ListIterator<E> i = listIterator(index);
try {
return i.next();
} catch(NoSuchElementException e) {
throw new IndexOutOfBoundsException("Indeks: " + index);
}
}
W przypadku, gdy wyjątki niższego poziomu mogą być przydatne w procesie
szukania przyczyny wyjątku, można zastosować odmianę translacji wyjątków,
nazywaną łączeniem wyjątków. W przypadku tego podejścia wyjątek niższego po-
ziomu (przyczyna) jest zapamiętywany przez wyjątek wyższego poziomu, który
zapewnia publiczną metodę (Throwable.getCause), umożliwiającą pobranie wyjątku
niższego poziomu.
// Łączenie wyjątków
try {
// Wykorzystanie operacji niższej warstwy
// ...
} catch (LowerLevelException cause) {
throw new HigherLevelException(cause);
}
Konstruktor wyjątku wyższego poziomu przekazuje przyczynę do konstruktora
klasy bazowej obsługującego łączenie, więc jest ostatecznie przekazywany do jed-
nego z konstruktorów Throwable obsługujących łączenie, takiego jak Throwable
(Throwable):
// Wyjątki z konstruktorem obsługującym łączenie
class HigherLevelException extends Exception {
HigherLevelException(Throwable cause) {
super(t);
}
}
Większość ze standardowych wyjątków posiada konstruktor obsługujący łączenie.
Dla wyjątków, które ich nie mają, można ustawić przyczynę przy użyciu metody
initCause z Throwable. Łączenie wyjątków nie tylko pozwala nam na programowy
dostęp do przyczyny (za pomocą getCause), ale również integruje zapis śladu przy-
czyny z wyjątkiem wyższego poziomu.
Ponieważ translacja wyjątków doskonale nadaje się do bezmyślnej propagacji
wyjątków między warstwami aplikacji, nie powinna być nadużywana. Tam, gdzie
jest to możliwe, najlepszą metodą obsługi wyjątków pochodzących z niższych warstw
17. 268 ROZDZIAŁ 9. WYJĄTKI
jest ich unikanie, przy upewnieniu się przed wywołaniem metody niższej warstwy,
że zostanie ona prawidłowo wykonana. Czasami można to zrealizować przez spraw-
dzenie poprawności argumentów metody wyższej warstwy przed ich przekazaniem
do metody niższej warstwy.
Jeżeli niemożliwe jest zabezpieczenie przed zgłaszaniem wyjątków z niższej warstwy,
kolejnym rozwiązaniem jest obejście tego wyjątku w wyższej warstwie, dzięki czemu
izoluje się metody wyższej warstwy od problemów, pochodzących z warstwy niższej.
W takich przypadkach właściwe jest zapisanie informacji o wystąpieniu wyjątku
przy wykorzystaniu mechanizmu rejestrującego, na przykład java.util.logging.
Pozwala to administratorowi prześledzić problem bez zakłócania pracy kodu klienta
i końcowego użytkownika.
Jeżeli zatem niemożliwe jest uniemożliwienie wyjątków z niższych warstw lub ich
obsługa, należy użyć tłumaczenia wyjątków, o ile metoda niższego poziomu gwa-
rantuje, że wszystkie jej wyjątki są propagowane do wyższego poziomu. Łączenie
zapewnia najlepsze cechy obu metod — pozwala na zgłaszanie odpowiedniego
wyjątku wyższego poziomu oraz przechwytywanie przyczyny w celu późniejszej
analizy awarii (temat 63.).
Temat 62. Dokumentowanie wyjątków
zgłaszanych przez metodę
Ważną częścią dokumentacji, wymaganą do właściwego wykorzystywania metod,
jest opis wyjątków zgłaszanych przez metodę. Dlatego niezwykle ważne jest poświę-
cenie pewnego czasu w celu jasnego udokumentowania wszystkich wyjątków zgła-
szanych przez metody.
Zawsze deklaruj (za pomocą znacznika Javadoc @throws) poszczególne przechwy-
tywane wyjątki i opisuj precyzyjnie warunki, w których są one zgłaszane. Nie
ułatwiaj sobie zadania pisząc, że metoda zgłasza wyjątek pewnej klasy bazowej,
która jest bazą dla wielu klas wyjątków. Jako ekstremalny przykład można przy-
toczyć deklarowanie, że metoda zgłasza wyjątek Exception lub, co gorsza, Throwable
— jest to niedopuszczalne. Oprócz tego, że deklaracja taka nie daje żadnych wska-
zówek programiście wykorzystującemu metodę, to jeszcze utrudnia wykorzystanie
tej metody, ponieważ zasłania wszystkie wyjątki, jakie mogą być zgłoszone w tym
samym kontekście.
Choć język nie wymaga deklarowania nieprzechwytywanych wyjątków, jakie może
zgłaszać metoda, warto udokumentować je tak samo dokładnie, jak wyjątki prze-
chwytywane. Wyjątki nieprzechwytywane z reguły reprezentują błędy programowe
(temat 58.) i zapoznanie programistów z nimi pomaga im unikać tych błędów.
18. TEMAT 62. DOKUMENTOWANIE WYJĄTKÓW ZGŁASZANYCH PRZEZ METODĘ 269
Dobrze opisana lista wyjątków nieprzechwytywanych, jakie mogą być zgłaszane
przez metodę, efektywnie opisuje warunki wstępne jej prawidłowego wykonania.
Niezmiernie ważne jest, aby każda dokumentacja metody zawierała warunki wstępne,
a dokumentowanie wyjątków nieprzechwytywanych jest najlepszym sposobem
spełnienia tego wymagania.
Szczególnie ważne jest udokumentowanie nieprzechwytywanych wyjątków, jakie
mogą zgłaszać metody zadeklarowane w interfejsie. Dokumentacja ta staje się
fragmentem ogólnych założeń interfejsu i pozwala na jednakowe działanie różnych
implementacji tego samego interfejsu.
Należy skorzystać ze znacznika Javadoc @throws do udokumentowania wszystkich
nieprzechwytywanych wyjątków zgłaszanych przez metodę, ale nie należy
umieszczać tych wyjątków w deklaracji metody po słowie kluczowym throws.
Ważne jest, aby programista korzystający z API wiedział, które wyjątki są prze-
chwytywane, a które nie, ponieważ jego działania różnią się w tych dwóch przy-
padkach. Dokumentacja generowana przez znacznik Javadoc @throws w przypadku
braku nagłówka metody wygenerowanego przez deklarację throws zapewnia silny
wizualny sygnał pomagający programiście odróżnić przechwytywane wyjątki od
nieprzechwytywanych.
Trzeba zauważyć, że dokumentowanie wszystkich nieprzechwytywanych wyjątków
zgłaszanych przez metodę jest sytuacją idealną, ale nie zawsze osiągalną w praktyce.
Gdy klasa jest modyfikowana, dodanie kolejnych nieprzechwytywanych wyjątków
nie jest naruszeniem zgodności źródłowej ani binarnej. Załóżmy, że klasa wywołuje
metodę z innej, niezależnie tworzonej klasy. Autorzy pierwszej klasy mogą dokładnie
udokumentować wszystkie nieprzechwytywane wyjątki zgłaszane w swojej klasie,
ale jeżeli druga klasa została zmodyfikowana i zgłasza nowe wyjątki, najprawdopo-
dobniej pierwsza klasa (niepodlegająca modyfikacji) dokona propagacji nowego
nieprzechwytywanego wyjątku, choć nie został on zadeklarowany.
Jeżeli wyjątek jest zgłaszany przez wiele metod klasy przy tych samych warun-
kach, dopuszczalne jest udokumentowanie takiego wyjątku w komentarzach do
klasy zamiast umieszczania go przy każdej metodzie. Przykładem takiego wyjątku
jest NullPointerException. Można w komentarzu dokumentującym klasę umieścić
zdanie podobne do: „wszystkie metody tej klasy zgłaszają wyjątek NullPointer
Exception, jeżeli do dowolnego parametru przekazana jest wartość null”.
Należy zatem dokumentować każdy wyjątek, który może być zgłaszany przez pisaną
metodę. Odnosi się to zarówno do przechwytywanych, jak i nieprzechwytywanych
wyjątków oraz zarówno do metod abstrakcyjnych, jak i konkretnych. Należy napisać
osobne klauzule throws dla każdego przechwytywanego wyjątku i nie pisać klauzul
throws dla wyjątków nieprzechwytywanych. Jeżeli nie udokumentujemy wyjątków
zgłaszanych przez naszą metodę, dla innych programistów będzie trudno używać
efektywnie naszych klas i interfejsów lub będzie to nawet niemożliwe.
19. 270 ROZDZIAŁ 9. WYJĄTKI
Temat 63. Udostępnianie danych o błędzie
Gdy program zostanie zatrzymany przez nieprzechwycony wyjątek, system au-
tomatycznie drukuje informacje ze stosu wyjątków. Stos ten zawiera reprezentację
wyjątku w postaci ciągu znaków — wynik metody toString. Dane te zwykle skła-
dają się z nazwy klasy, po której następują informacje szczegółowe. Często jest to jedyny
fragment informacji, jakie otrzyma programista lub serwis oprogramowania
w przypadku wystąpienia błędu w programie. Jeżeli trudno powtórzyć ten błąd,
bardzo trudne może być uzyskanie dodatkowych danych. Dlatego niezwykle ważne
jest, aby metoda toString dla wyjątku zwracała możliwie dużo informacji o przy-
czynie błędu. Inaczej mówiąc, ciąg reprezentujący wyjątek powinien umożliwiać
dalszą analizę błędu.
Aby odszukać błąd, ciąg reprezentujący wyjątek powinien zawierać wartości
wszystkich parametrów i pól „mających udział w przyczynie wyjątku”. Na
przykład, w przypadku wyjątku IndexOutOfBounds ciąg reprezentujący wyjątek
powinien zawierać wartość dolnego i górnego zakresu oraz wartość indeksu, który
nie zmieścił się w tych granicach. Informacje te niosą wiele informacji na temat
przyczyny błędu. Każda z tych wartości może być nieprawidłowa. Aktualna wartość
indeksu może być o jeden mniejsza od dolnego zakresu lub równa górnemu zakre-
sowi lub może być to wartość całkowicie spoza zakresu w jedną lub drugą stronę.
Dolna granica może być większa od górnej (poważne naruszenie niezmienników).
Każda z tych sytuacji wskazuje na inny problem i informacja o tym niezmiernie
ułatwia programiście poszukiwanie właściwego błędu.
Choć niezmiernie ważne jest dołączanie stosownych „twardych danych” do ciągu
reprezentującego wyjątek, zwykle nie warto jest dodawać zbyt wielu informacji. Zrzut
stosu przeznaczony jest do analizy kodu źródłowego i zazwyczaj zawiera dokładne
nazwy plików i numery wierszy, w których rozpoczynają się wszystkie metody
umieszczone na stosie. Długie opisy błędów są zwykle nadmiarowe — większość
danych może być zebrana na podstawie analizy kodu źródłowego.
Ciąg reprezentujący wyjątek nie powinien zawierać komunikatów błędów zro-
zumiałych dla użytkownika. W przeciwieństwie do komunikatów dla użytkow-
ników ciągi te są przeznaczone dla programistów lub serwisu przy analizie awarii.
Dlatego dołączone dane są ważniejsze niż czytelność komunikatu.
Jednym ze sposobów upewnienia się, że ciąg reprezentujący wyjątek zawiera od-
powiednie informacje pomagające odszukać błąd, jest wymaganie tych danych za-
miast ciągu reprezentującego wyjątek. Na podstawie podanych informacji komunikat
20. TEMAT 63. UDOSTĘPNIANIE DANYCH O BŁĘDZIE 271
może być generowany automatycznie. Na przykład, zamiast konstruktora z para-
metrem String, wyjątek IndexOutOfBoundsException mógłby mieć konstruktor,
wyglądający następująco:
/**
* Tworzy IndexOutOfBoundsException.
*
* @param lowerBound - najmniejsza dopuszczalna wartość indeksu.
* @param upperBound - największa dopuszczalna wartość indeksu plus jeden.
* @param index - aktualna wartość parametru.
*/
public IndexOutOfBoundException(int lowerBound, int upperBound,
int index) {
// Generowanie komunikatu opisującego błąd
super( "Dolny zakres: " + lowerBound +
", Górny zakres: " + upperBound +
", Indeks: " + index);
// Zapisanie informacji i błędzie dla programowego dostępu
this.lowerBound = lowerBound;
this.upperBound = upperBound;
this.index = index;
}
Niestety, biblioteki platformy Java nie korzystają z tego idiomu zbyt często, ale
polecamy gorąco jego stosowanie. Ułatwia to programiście odszukanie błędu
w przypadku zgłoszenia wyjątku, a właściwie trudno jest w takiej sytuacji nie znaleźć
błędu. W efekcie stosowania tego idiomu generowanie wysokiej klasy ciągu repre-
zentującego wyjątek jest przeniesione do klasy wyjątku, nie powodując nadmia-
rowego generowania takiego ciągu przez wszystkich programistów, korzystają-
cych z klasy.
W temacie 58. sugerowaliśmy, że właściwe jest udostępnienie metod w klasie wyjątku,
pozwalających na odczytanie danych zapamiętanych w czasie generowania wyjątku
(lowerBound, upperBound i index z powyższego przykładu). Metody takie mają większy
sens w przypadku wyjątków przechwytywanych niż w przypadku nieprzechwyty-
wanych, ponieważ w trakcie obsługi wyjątku przechwytywanego dane te mogą
zostać wykorzystane do przywrócenia normalnego działania. Rzadko zdarza się (choć
nie jest to niemożliwe), że programista będzie potrzebował dostępu do szczegółów
wyjątku nieprzechwytywanego. Nawet w przypadku wyjątków nieprzechwytywa-
nych jako ogólną zasadę można jednak zalecić tworzenie takich metod (temat 10.).
21. 272 ROZDZIAŁ 9. WYJĄTKI
Temat 64. Zachowanie atomowości
w przypadku błędu
Po zgłoszeniu wyjątku przez obiekt zwykle pożądane jest, aby obiekt cały czas był
w dobrze zdefiniowanym stanie, nawet w przypadku wystąpienia błędu w czasie
wykonywania operacji. Jest to szczególnie ważne w przypadku wyjątków przechwy-
tywanych, które wywołujący może obsłużyć. Nieudane wykonanie metody nie
powinno powodować zmiany stanu obiektu sprzed wywołania tej metody.
Metoda o tej własności nazywana jest atomową w przypadku błędu.
Istnieje kilka sposobów na osiągnięcie tego efektu. Najprostszym jest projektowanie
obiektów niezmiennych (temat 15.). Jeżeli obiekt jest niezmienny, atomowość
w przypadku błędu jest zachowana bez żadnych nakładów. Jeżeli wykonanie operacji
się nie powiedzie, może to spowodować, że nie zostanie utworzony wynikowy obiekt,
lecz nigdy nie spowoduje powstania nieustalonego stanu istniejącego obiektu, po-
nieważ stan każdego z obiektów jest ustalany w trakcie tworzenia i nie może być
później modyfikowany.
W przypadku metod operujących na obiektach modyfikowalnych najczęstszą me-
todą osiągnięcia atomowości w przypadku błędu jest sprawdzanie poprawności
parametrów przed wykonaniem operacji (temat 38.). Dzięki temu wyjątki są zgła-
szane przed rozpoczęciem modyfikacji obiektu. Dla przykładu przeanalizujmy me-
todę Stack.pop z tematu 6.
public Object pop() {
if (size == 0)
throw new EmptyStackException();
Object result = elements[--size];
elements[size] = null; // Usuwanie zbędnych referencji
return result;
}
Jeżeli usuniemy początkowe sprawdzanie rozmiaru stosu, metoda nadal będzie zgła-
szała wyjątek w przypadku próby pobrania elementu z pustego stosu. Jednak będzie
pozostawiała pole size w niespójnym (ujemnym) stanie, powodując, że wszystkie
kolejne wywołania metody zakończą się błędem. Dodatkowo, wyjątek zgłaszany
przez metodę pop może być niezgodny z abstrakcją (temat 61.).
Podobnym podejściem przy uzyskiwaniu atomowości w przypadku błędu jest
porządkowanie obliczeń w taki sposób, aby wszystkie fragmenty, w których mogą
wystąpić błędy, były wykonywane przed zmianą stanu obiektu. Podejście to jest
22. TEMAT 64. ZACHOWANIE ATOMOWOŚCI W PRZYPADKU BŁĘDU 273
naturalnym rozszerzeniem poprzedniego, gdy argumenty nie mogą być sprawdzone
bez wykonania fragmentów operacji. Na przykład, w przypadku TreeMap elementy
są sortowane według określonego porządku. Aby dodać element do TreeMap, ele-
ment ten musi mieć typ porównywalny przy użyciu porządkowania, wykorzystanego
w TreeMap. Próba dodania elementu niewłaściwego typu spowoduje zgłoszenie wy-
jątku ClassCastException w wyniku operacji wyszukiwania elementu w drzewie,
zanim drzewo zostanie w jakikolwiek sposób zmienione.
Trzecim, najrzadszym podejściem jest tworzenie kodu odtwarzającego, który wy-
krywa błędy w czasie operacji i powoduje wycofanie obiektu do stanu z przed rozpo-
częcia operacji. Podejście to jest najczęściej używane w przypadku trwałych struktur
danych.
Ostatnim podejściem przy uzyskiwaniu atomowości w przypadku błędu jest wy-
konywanie operacji na kopii obiektu i zamiana zawartości obiektu źródłowego
zawartością kopii po udanym zakończeniu operacji. Podejście to jest naturalne
w przypadku, gdy obliczenia na tymczasowych strukturach danych mogą być
przeprowadzone z dużą szybkością. Dla przykładu, metoda Collections.sort ko-
piuje wejściową listę do tablicy przed rozpoczęciem sortowania w celu zmniejszenia
kosztu dostępu do elementów w wewnętrznej pętli sortowania. Jest to zrobione
w celu poprawienia wydajności, ale dodatkowym zyskiem jest to, że w przypadku
wystąpienia błędu wejściowa lista będzie niezmieniona.
Choć atomowość w przypadku błędu jest korzystna, nie zawsze może być osiągnięta.
Na przykład, jeżeli dwa wątki próbują równolegle zmodyfikować obiekt bez właściwej
synchronizacji, może być on pozostawiony w niewłaściwym stanie. Dlatego nie-
właściwe może być założenie, że obiekt będzie nadawał się do użytku po prze-
chwyceniu wyjątku ConcurrentModificationException. W przypadku błędów
(w przeciwieństwie do wyjątków) nie jest możliwe odtworzenie stanu obiektu, więc
metody nie muszą próbować osiągnięcia atomowości w przypadku zgłoszenia błędu.
Nawet, gdy atomowość w przypadku błędu jest możliwa do osiągnięcia, nie zawsze
jest pożądana. W przypadku niektórych operacji będzie ona znacznie zwiększała
koszt i stopień skomplikowania kodu. Jednak zwracając uwagę na to zagadnienie,
przekonasz się, że najczęściej jest ona łatwa do osiągnięcia.
Jako zasadę należy przyjąć, że wyjątki będące częścią specyfikacji metody nie powinny
zmieniać stanu obiektu sprzed wywołania tej metody. Gdy zasada ta nie jest spełniona,
dokumentacja API powinna jasno wskazywać, w jakim stanie są pozostawiane
obiekty. Niestety, wiele istniejących dokumentacji API nie spełnia tego warunku.
23. 274 ROZDZIAŁ 9. WYJĄTKI
Temat 65. Nie ignoruj wyjątków
Uwaga ta może się wydawać oczywista, jednak jest tak często naruszana, że wymaga
ciągłego powtarzania. Gdy projektanci API deklarują, że metoda zgłasza wyjątek, chcą
przez to coś przekazać. Nie należy tego ignorować! Łatwo zignorować wyjątek,
umieszczając wywołanie metody wewnątrz instrukcji try z pustym blokiem catch:
// Pusty blok catch powoduje zignorowanie wyjątku - wysoce podejrzane!
try {
// ...
} catch (SomeException e) {
}
Pusty blok catch powoduje zignorowanie przeznaczenia wyjątków, którym jest
wymuszenie obsługi sytuacji wyjątkowej. Zignorowanie wyjątku jest analogiczne
do zignorowania alarmu przeciwpożarowego i jego wyłączanie, przez co nikt nie
będzie miał szansy na zaalarmowanie o prawdziwym zagrożeniu. Gdy zobaczysz
pusty blok catch, powinieneś natychmiast podjąć środki zaradcze. Blok catch powi-
nien zawierać co najmniej komentarz, wyjaśniający, dlaczego wyjątek ten jest
ignorowany.
Przykładem sytuacji, w której można zignorować wyjątek, jest renderowanie rysunku
do animacji. Jeżeli ekran jest uaktualniany w regularnych odstępach czasu, najlepszą
metodą obsługi nietrwałego błędu jest jego zignorowanie i poczekanie na następne
uaktualnienie ekranu.
Porada z tego tematu odnosi się zarówno do wyjątków przechwytywanych, jak i nie-
przechwytywanych. Ponieważ wyjątki reprezentują przewidywalne sytuacje wy-
jątkowe lub błędy w programie, ich zignorowanie spowoduje, że program będzie
kontynuował działanie bez żadnego komunikatu. Program ten może zatrzymać
się w dowolnym czasie w przyszłości w takim miejscu kodu, które nie jest w żaden
sposób związane ze źródłem problemu. Właściwa obsługa błędów może całkowicie
zapobiec awarii. Zwykłe pozostawienie nieprzechwytywanego wyjątku powoduje jego
propagację i zatrzymanie jego działania, zachowując dane potrzebne do odszukania
źródła błędu.