Lista książek:
  • Algorytmy, struktury danych i techniki programowania. Wydanie IV
  • Podstawowy podręcznik do nauki algorytmiki

    • Przystępne wprowadzenie do algorytmiki
    • Bez zbędnej teorii
    • Gotowe rozwiązania w C++

    Oto kolejne wydanie sprawdzonej i cenionej przez programistów, wykładowców oraz studentów książki, będącej podstawowym podręcznikiem do nauki algorytmiki. W pierwszej kolejności autor zapozna Cię z elementarnymi zagadnieniami z tej dziedziny oraz wyjaśni, skąd bierze się tak szybki postęp w tej dyscyplinie nauki. Podczas dalszej lektury poznasz takie pojęcia, jak rekurencja, analiza złożoności oraz algorytmy sortowania i przeszukiwania czy algorytmy numeryczne. Szybko opanujesz metody optymalizacji algorytmów, sposoby kodowania i kompresji danych oraz elementy algorytmiki grafów. Przedstawione w książce algorytmy zilustrowane zostały przykładowymi kodami źródłowymi w C++ , ułatwiającymi zrozumienie poznawanych zagadnień. Przejrzysta forma, praktyczne przykłady oraz przystępny język sprawiają, że książka ta pozwala szybko, a także bezboleśnie opanować zarówno algorytmy, jak i struktury danych oraz najlepsze techniki programowania.

    • Historia algorytmiki
    • Wykorzystanie rekurencji
    • Analiza złożoności algorytmów
    • Algorytmy sortowania
    • Algorytmy przeszukiwania
    • Przeszukiwanie tekstów
    • Struktury danych i ich implementacja
    • Optymalizacja algorytmów
    • Zaawansowane techniki programowania
    • Wykorzystanie grafów
    • Wprowadzenie do sztucznej inteligencji
    • Kodowanie i kompresja danych
    • Algorytmy numeryczne
    • Poradnik kompilacji i uruchamiania programów (GCC, DevC++, Microsoft Visual C++ Express Edition).

    Szybko i bezboleśnie opanuj wszystkie zagadnienia algorytmiki!



  • Algorytmy. Wydanie IV
  • Nie odkrywaj koła na nowo - sprawdź gotowe rozwiązania!

    • Jak oceniać wydajność algorytmów?
    • Jak wydajnie sortować elementy?
    • Jak kompresować dane?

    Algorytmy od zawsze porównywane były do przepisów kucharskich. Z celnością tego porównania trudno dyskutować, na pewno jednak przesolenie zupy ma zupełnie inne konsekwencje niż błędnie opracowany lub zaimplementowany algorytm. To właśnie algorytmy decydują o czasie wykonania skomplikowanych operacji przez programy komputerowe, a ich odpowiednia implementacja może niejednokrotnie decydować o sukcesie lub porażce projektu wartego fortunę.

    Dzięki tej książce masz szansę uniknąć typowych programistycznych błędów i porażek. Jej lektura zapozna Cię z najpopularniejszymi algorytmami, ich licznymi zaletami oraz słabymi stronami. Sprawdzisz, do czego można je zastosować, a w jakich miejscach lepiej zrezygnować z ich wykorzystania. Ponadto nauczysz się analizować działanie algorytmów, mierzyć ich wydajność oraz dobierać dane testowe. W książce zostały omówione klasyczne algorytmy sortowania, wyszukiwania, operacji na grafach oraz kompresji danych. Jej ogromnym atutem są przykładowe implementacje algorytmów w języku JAVA oraz to, że przedstawiony kod jest gotowy do natychmiastowego użycia! Pozycja ta jest obowiązkową lekturą dla każdego programisty, któremu zależy na najwyższej wydajności tworzonych rozwiązań.

    • Podstawowe pojęcia
    • Struktura programu w języku JAVA
    • Instrukcje, typy danych, wyrażenia w języku JAVA
    • Korzystanie z abstrakcyjnych typów danych
    • Stosy, kolejki
    • Analiza algorytmów
    • Algorytmy sortowania i wyszukiwania
    • Wykorzystanie grafów
    • Znajdowanie najkrótszej ścieżki
    • Operacja na łańcuchach znaków
    • Algorytmy kompresji danych

    Nie trać czasu i energii - korzystaj ze sprawdzonych rozwiązań!



  • Algorytmy i struktury danych
  • W niniejszej książce przedstawiono struktury danych i algorytmy stanowiące podstawę współczesnego programowania komputerów. Algorytmy są niczym przepis na rozwiązanie postawionego przed programistę problemu. Są one nierozerwalnie związane ze strukturami danych - listami, rekordami, tablicami, kolejkami, drzewami... podstawowymi elementami wiedzy każdego programisty.

    Książka obejmuje szeroki zakres materiału, a do jej lektury wystarczy znajomość dowolnego języka programowania strukturalnego (np. Pascala). Opis klasycznych algorytmów uzupełniono o algorytmy związane z zarządzaniem pamięcią operacyjną i pamięciami zewnętrznymi.

    Książka przedstawia algorytmy i struktury danych w kontekście rozwiązywania problemów za pomocą komputera. Z tematyką rozwiązywania problemów powiązano zagadnienie zliczania kroków oraz złożoności czasowej - wynika to z głębokiego przekonania autorów tej książki, iż wraz z pojawianiem się coraz szybszych komputerów, pojawiać się będą także coraz bardziej złożone problemy do rozwiązywania i - paradoksalnie - złożoność obliczeniowa używanych algorytmów zyskiwać będzie na znaczeniu.

    W książce omówiono m.in.:

    • Tradycyjne struktury danych: listy, kolejki, stosy
    • Drzewa i operacje na strukturach drzew
    • Typy danych oparte na zbiorach, słowniki i kolejki priorytetowe wraz ze sposobami ich implementacji
    • Grafy zorientowane i niezorientowane
    • Algorytmy sortowania i poszukiwania mediany
    • Asymptotyczne zachowanie się procedur rekurencyjnych
    • Techniki projektowania algorytmów: "dziel i rządź", wyszukiwanie lokalne i programowanie dynamiczne
    • Zarządzanie pamięcią, B-drzewa i struktury indeksowe
    Każdemu rozdziałowi towarzyszy zestaw ćwiczeń, o zróżnicowanym stopniu trudności, pomagających sprawdzić swoją wiedzę. "Algorytmy i struktury danych" to doskonały podręcznik dla studentów informatyki i pokrewnych kierunków, a także dla wszystkich zainteresowanych tą tematyką.



  • Analiza i projektowanie obiektowe
  • Książka wprowadza czytelnika w praktyczne zagadnienia obiektowej analizy i projektowania dużych systemów informatycznych. Oprócz podstaw technologii obiektowych, omawiane są nowoczesne metody budowy systemów.

    Szczególna uwagę poświęcono metodyce The SELECT Perspective, będącej obecnie jednym z wiodących standardów w rozwoju systemów korporacyjnych. Opisano cykl życia, wielowarstwową architekturę i techniki modelowania systemów.

    Cennym elementem książki jest rozbudowany przykład, pokazujący krok po kroku rozwój rzeczywistego systemu.



  • Analiza i projektowanie obiektowe. Rusz głową!
  • Współczesne systemy informatyczne mają niewiele wspólnego z tymi sprzed kilkunastu lat. Są skomplikowane, nafaszerowane wieloma technologiami, bywa też, że mają (zbyt) wielu autorów. Jak zapanować nad tym wszystkim? Jak projektować systemy szybko oraz bezbłędnie? Czujesz się zagubiony? Nic się nie martw! Po prostu...

    Otwórz swój umysł! Teraz dzięki nowatorskim metodom nauczania możesz błyskawicznie opanować wszystkie elementy projektowania obiektowego. Charakterystyczna dla serii "Rusz głową!" cecha to wymieszana w odpowiednich proporcjach wiedza, humor oraz wszystko wyjaśniające grafiki. Informacje zawarte w książce obejmują pełny zakres tematyki związanej z analizą i projektowaniem obiektowym. Tylko kilkaset stron dzieli Cię od opanowania metod zbierania wymagań, tworzenia przypadków użycia czy też projektowania diagramów klas. A to tylko początek - sprawdź spis treści i przekonaj się, jak szeroki materiał zawiera ta książka.

    Naprzód, głowo!

    Nikt ci tego nie potrafił wytłumaczyć? Wydaje Ci się, że to problem nie na Twoją głowę? Nie potrzebujesz elektrowstrząsów, żeby pobudzić swój mózg do aktywnego działania. Tylko żadnych gwałtownych gestów! Usiądź wygodnie, otwórz książkę, dopiero teraz się zacznie. Na początek - rusz głową!

    Precz z nudnymi wykładami i zakuwaniem bez zrozumienia!

    Nauka to znacznie więcej niż tylko czytanie suchego tekstu. Twój mózg jest niczym głodny rekin, cały czas prący naprzód w poszukiwaniu nowej, apetycznej przekąski.

    Jak karmimy Twój wygłodniały umysł?

    Używamy rysunków, bo obraz wart jest 1024 słów. Stosujemy powtórzenia, by zakodować na stałe dane w Twojej chłonnej głowie. Oddziałujemy na emocje, jesteśmy nieprzewidywalni, zaskakujący i zabawni. Stawiamy przed Tobą wyzwania i zadajemy pytania, które angażują Cię w proces studiowania przedstawianych zagadnień. Cały czas pobudzamy Twój umysł do aktywnego działania, zmuszamy go do posłuszeństwa... a za ciężką pracę nagrodzimy go smakowitym ciasteczkiem w postaci wiedzy - wisienka gratis!

    Rozgryź to sam!

    • Zasady i cele projektowania obiektowego
    • Metody zbierania wymagań
    • Przypadki użycia i ich analiza
    • Graficzna prezentacja systemu i zasad jego działania - diagramy UML
    • Wzorce projektowe - sprawy skomplikowane stają się proste, a proste jeszcze prostsze
    • Projektowanie architektury systemu
    • Testowanie

    Książka należy serii "Rusz głową!", która jest kontynuacją serii "Head First". Książki z tej serii zdobyły uznanie czytelników dzięki swemu unikalnemu i nowatorskiemu podejściu do przekazywania wiedzy. Sprawdź na półce, może znajdziesz obok inne książki z tej serii. Dzięki nim nawet najbardziej skomplikowane dziedziny wiedzy stają się przystępne, przyjazne i prostsze.



  • Analiza i projektowanie strukturalne. Wydanie II
  • Technologia CASE (Computer Aided System Engineering) jest obecnie powszechnie stosowana w analizie i projektowaniu systemów informatycznych. Trudno sobie wyobrazić pracę bez niej (szczególnie przy dużych projektach) na etapach:

    • analizy,
    • tworzenia projektu systemu,
    • a także samej implementacji.
    Niniejsza praca opisuje metodykę strukturalną, stosującą jako egzemplifikację klasyczną metodykę Yourdona (rozkład funkcjonalny), a także metodykę SSADM oraz (w zakresie modelowania danych) metodykę Martina.

    Wybrane zagadnienia:

    • Ogólne metody analizy systemowej
    • Rozkład funkcjonalny
    • Model funkcjonalny -- metoda przepływu danych
    • Modelowanie informacji (danych)
    • Podejście obiektowe
    • Diagramy modelowania metodyki strukturalnej
    • Bilansowanie modelu
    • Cykl projektowy
    • Studium możliwości (Feasibility Study)
    • Proces analizy
    • Analiza systemu obiegu dokumentów
    • Analiza systemu budowanego z gotowych komponentów
    Autor na podstawie swojego dziesięcioletniego doświadczenia w stosowaniu technologii CASE, odwołując się do własnych projektów, przedstawia możliwości i ograniczenia prezentowanej metodyki.



  • Analiza i projektowanie strukturalne. Wydanie III
  • Technologia CASE (Computer Aided System Engineering) jest obecnie od dziesięciu lat powszechnie stosowana w analizie i projektowaniu systemów informatycznych. Trudno sobie wyobrazić pracę bez niej (szczególnie przy dużych projektach) na etapie analizy, tworzenia projektu systemu czy jego implementacji.

    Techniki CASE umożliwiają wspomaganie:
    • analizy i projektowania bazy danych,
    • projektowania aplikacji
    • generacji kodu aplikacji
    • automatycznego tworzenia dokumentacji analizy i projektu
    • inżynierii odwrotnej (tworzenie modeli fizycznych i logicznych aplikacji na podstawie jej kodu i fizycznej bazy danych)
    Techniki strukturalne są w dalszym ciągu kluczowymi w projektowaniu aplikacji bazodanowych. Niniejsza książka opisuje te techniki, stosując jako egzemplifikację klasyczną metodykę Yourdona (rozkład funkcjonalny), a także metodykę SSADM oraz (w zakresie modelowania danych) metodykę Martina. Autor na podstawie swojego dziesięcioletniego doświadczenia w stosowaniu technologii CASE, odwołując się do projektów którymi kierował, przedstawia możliwości i ograniczenia prezentowanej metodyki. Na konkretnych przykładach autor uczy jak budować aplikacje na etapie analizy i projektu posługując się technikami strukturalnymi. Uzupełnieniem są załączone przykłady w formie zadań z rozwiązaniami.

    Zagadnienia omówione w książce obejmują zakres tematyczny:

    • Budowy logicznych modeli danych i funkcjonalnego systemu
    • Przekształcanie modeli logicznych w model fizyczny
    • Przekształcanie modelu funkcjonalnego w model aplikacji
    • Bilansowanie modeli
    • Analizy systemów obiegu dokumentów
    • Analizy systemów budowanych z gotowych komponentów
    • Analizy cykli różnych wytwórczych oprogramowania
    • Analizy i projektowania hurtowni danych



  • Architektura oprogramowania w praktyce. Wydanie II
  • Twórz doskonałe projekty architektoniczne oprogramowania!

    • Czym charakteryzuje się dobra architektura oprogramowania?
    • Jak przebiega proces jej projektowania?
    • Jak ją dokumentować?

    Współczesne systemy informatyczne to zaawansowane, skomplikowane mechanizmy, składające się z wielu współdziałających ze sobą komponentów. Ich wyodrębnienie, a także określenie sposobu komunikacji i interakcji między poszczególnymi elementami, jest nie lada wyzwaniem dla architektów. Od ich decyzji zależy, czy system uda się zrealizować, czy będzie on efektywny, stabilny i łatwy w utrzymaniu.

    Na szczęście istnieją metodologie, narzędzia oraz sposoby analizy efektów ułatwiające i porządkujące cały ten proces. W tej książce znajdziesz wszystko, o czym trzeba pamiętać przy projektowaniu oprogramowania. Poznasz sposoby projektowania z wykorzystaniem Metody Analizy Kompromisów w Architekturze (ATAM) oraz oceniania aspektów finansowych przy użyciu Metody Analizy Kosztów i Korzyści (CBAM). Autorzy przedstawią wiele studiów przypadków, które pozwolą Ci na zapoznanie się z rzeczywistymi problemami i ich rozwiązaniami. Ponadto nauczysz się stosować język UML do wizualnej reprezentacji architektury systemu oraz zobaczysz, jak przygotować dobrą dokumentację projektu. Książka ta sprawdzi się idealnie w rękach każdego architekta oprogramowania.

    • Proces wytwarzania oprogramowania a cykl biznesowy architektury
    • Wzorce architektury
    • Struktury i perspektywy architektury
    • Określenie i uzyskanie atrybutów jakościowych
    • Projektowanie architektury pod kątem wysokiej dostępności
    • Proces projektowania architektury
    • Dokumentowanie architektury oprogramowania
    • Język UML
    • Metody rekonstrukcji architektury i inżynierii odwrotnej
    • Metoda Analizy Kompromisów w Architekturze (ATAM)
    • Metoda Analizy Kosztów i Korzyści (CBAM)
    • Ponowne wykorzystanie elementów architektury
    • Dokumentowanie architektury

    Poznaj najlepsze metodologie projektowania architektury!



  • Oprogramowanie godne zaufania. Metodologia, techniki i narzędzia projektowania
  • Poznaj narzędzia, techniki oraz metodologię tworzenia niezawodnego oprogramowania

    • Jak przeprowadzić weryfikację, oceniać i konserwować oprogramowanie?
    • Jakie są finansowe aspekty tworzenia oprogramowania godnego zaufania?
    • Jak zarządzać portfelem technologii informatycznych?

    Jakość oprogramowania to wielowarstwowe zagadnienie. Spojrzenie na nią z kilku perspektyw jest kluczowe dla procesu tworzenia nowego produktu. Należy przy tym wziąć pod uwagę nie tylko opłacalność jego wytwarzania i konkurencyjność, ale także jawne i ukryte potrzeby naszych klientów oraz partnerów biznesowych. Stąd wynika potrzeba używania zintegrowanej technologii, pomagającej spełniać wszystkie te wymagania. Odpowiada na nią technologia projektowania oprogramowania godnego zaufania (ang. Designing for Trustworthy Software). Służy ona wczesnemu rozwiązywaniu problemów związanych z jakością tworzonego produktu, dzięki czemu zapobiega powstawaniu błędów implementacji. Siłą tej technologii jest także fakt, że wszelkie działania związane z jakością są podejmowane przed napisaniem każdego wiersza kodu.

    Ta książka pomoże w poprawie jakości wszystkim tym, którzy wdrażają rozwiązania wewnętrzne i zewnętrzne, prowadzą konsultacje i świadczą pomoc techniczną. Zawiera ona przełomowe rozwiązania dla specjalistów z dziedziny oprogramowania oraz jakości - od programistów po liderów projektu, od głównych architektów oprogramowania po klientów. Z tego podręcznika dowiesz się m.in., jak stosować najlepsze praktyki w dziedzinie kontrolowania jakości, organizacji szkoleń i zarządzania w wyjątkowym środowisku rozwoju oprogramowania.

    • Metodologia rozwoju oprogramowania
    • Miary jakości oprogramowania
    • Koszty jakości oprogramowania
    • Narzędzia i techniki projektowania oprogramowania godnego zaufania
    • Analityczny proces hierarchiczny
    • Złożoność, błędy i poka-yoke w procesach rozwoju oprogramowania
    • Ocena ryzyka oraz analiza przyczyn i skutków błędów (FEMA)
    • Technologie obiektowe i komponentowe
    • Techniki AHP, TRIZ, CoSQ i metoda Taguchiego
    • Integracja, wzbogacanie i konserwacja oprogramowania godnego zaufania
    • Wdrażania technologii DFTS
    • QFD dla projektów

    Twórz niezawodne oprogramowanie wysokiej jakości!



  • Debugowanie. Jak wyszukiwać i naprawiać błędy w kodzie oraz im zapobiegać
  • Mistrz debugowania w akcji!

    • Jak tworzyć oprogramowanie, które łatwo się debuguje?
    • Jak wykrywać potencjalne przyczyny problemów?
    • Jak ominąć pułapki czyhające na programistów?

    Zapewne niejednokrotnie podczas pracy przy komputerze musiałeś użerać się z wadliwymi aplikacjami. Doskonale wiesz, jak to jest, kiedy kolejne łatki usuwają stare błędy, równocześnie generując nowe, programiści zaś nie kwapią się do zmiany niewłaściwych założeń. A przecież jednym z najbardziej niedocenianych aspektów profesjonalnego programowania jest zdolność do rozpoznawania i usuwania błędów kryjących się w każdej większej partii stworzonego kodu. Jeśli tworzysz niebanalne aplikacje, najprawdopodobniej zajmiesz się ich debugowaniem chwilę po zakończeniu ich pisania. To zajęcie w zdecydowanie większym stopniu niż inne aspekty tworzenia oprogramowania jest działalnością intelektualną - ponieważ jego areną jest umysł programisty. Znajdowanie i wyjaśnianie przyczyn problemów powinno być pierwszą czynnością na drodze do ich zwalczania.

    Ta książka poświęcona jest właśnie arkanom sztuki debugowania. Jej lektura pozwoli Ci znacznie ograniczyć liczbę popełnianych błędów, a te, które się pojawią, będą łatwiejsze do wykrycia i usunięcia. Podręcznik wyjaśni Ci, jak pisać kod, który łatwo debugować, przeprowadzi Cię przez proces wykrywania błędów, ich reprodukcji, diagnozowania, aż do wprowadzania i wycofywania poprawek w oprogramowaniu. Poznaj empiryczną metodę wykrywania błędów. Dowiedz się, jak ważne jest zapewnienie sobie pewnych sposobów reprodukowania błędnych zachowań. Naucz się unikać pułapek czyhających zarówno na programistów, jak i testerów. Stosuj powszechnie używane narzędzia i metody zapewniające automatyczne wykrywanie potencjalnych przyczyn problemów, zanim jeszcze się one pojawią! Naucz się tworzyć samodebugujące oprogramowanie, które automatycznie informuje o swoim stanie, a także sprawdź, co możesz zrobić, aby szybko wykrywać sytuacje będące potencjalną przyczyną problemów.

    • Metoda empiryczna
    • Reprodukcja błędów
    • Diagnozowanie
    • Wyszukiwanie błędów
    • Wprowadzanie i wycofywanie poprawek
    • Testowanie
    • Przyczyny błędów
    • Oprogramowanie samodebugujące
    • Narzędzia wspomagające



  • Head First Software Development. Edycja polska (Rusz głową!)
  • Opanuj niezwykłą sztukę wytwarzania oprogramowania!

    • W jaki sposób zadowolić klienta?
    • Jak wygląda proces wytwarzania oprogramowania?
    • Jakie pułapki czekają na Ciebie?

    Proces wytwarzania oprogramowania -- już sam opis sugeruje trudności. I rzeczywiście -- jest to proces niezwykle złożony. Od samego początku trafiamy na kwestie takie, jak analiza potrzeb klienta i zebranie jego wymagań. Z każdym krokiem wszystko komplikuje się jeszcze bardziej... Konieczna jest implementacja poszczególnych wymagań klienta, testowanie tych rozwiązań, korekta znalezionych błędów. Na to wszystko nakłada się jeszcze konieczność tworzenia różnych wersji rozwiązań i zmienny nastrój klienta. Jak sobie z tym wszystkim poradzić? Jak bezboleśnie i skutecznie przejść przez cały ten proces?

    Tylko bez obaw! Oto podręcznik, który dzięki innowacyjnym metodom przekazywania wiedzy sprawi, że szybko zrozumiesz proces wytwarzania oprogramowania i nauczysz się gładko podążać jego wyboistą ścieżką. Autorzy książki "Head First Software Development. Edycja polska" -- Dan i Russ -- pokażą Ci, w jaki sposób zadowolić klienta i zebrać od niego wymagania oraz określić jego potrzeby. Dowiesz się, jak zapanować nad poszczególnymi wersjami Twojego projektu. Nauczysz się prowadzić testy i usuwać błędy. Zdobędziesz informacje dotyczące wytwarzania oprogramowania sterowanego testami, a na koniec zobaczysz, jak taki proces wygląda w rzeczywistości. Wszystkie te informacje przedstawione zostały na licznych ilustracjach, co wydatnie ułatwia przyswajanie wiedzy, dodatkowo przekazanej przystępnym i pełnym humoru językiem. Po lekturze tego podręcznika nawet laik będzie w stanie zarządzać takim procesem!

    • Zbieranie wymagań
    • Planowanie projektu
    • Kontrola wersji
    • Wytwarzanie sterowane testami
    • Testy integracyjne
    • Usuwanie błędów

    Tworzenie oprogramowania? Nic prostszego!!!



  • Kod doskonały. Jak tworzyć oprogramowanie pozbawione błędów. Wydanie II
  • Kultowy podręcznik tworzenia doskonałego oprogramowania!

    • Twórz wolny od błędów, najwyższej jakości kod
    • Utrzymuj stałą kontrolę nad złożonymi projektami
    • Wcześnie wykrywaj i rozwiązuj problemy
    • Sprawnie rozwijaj i poprawiaj oprogramowanie
    Steve McConnell wie więcej o budowie oprogramowania niż ktokolwiek inny; mamy ogromne szczęście, że zdecydował się podzielić swoim doświadczeniem oraz wiedzą w tej ważnej i oryginalnej książce.
    Alan Cooper,
    "ojciec" języka Visual Basic, autor książki About Face

    Zapewne każdy zgodzi się ze stwierdzeniem, że jeśli jakiś proces odpowiada za nawet 70% błędów w gotowym produkcie, z pewnością wymaga znaczącego usprawnienia... Czy masz jednak świadomość, że właśnie tyle problemów generuje samo wytwarzanie oprogramowania? Te błędy powodują nie tylko usterki w już gotowych programach, niespełniających oczekiwań klientów - odpowiadają także za znaczne opóźnienia przy realizacji zleconych projektów i nagminne przekraczanie zaplanowanego budżetu. Każdy ambitny programista staje zatem przed koniecznością zdobycia wiedzy o takich metodach pracy, które pozwolą szybciej i efektywniej realizować projekty, a przy tym zapewniać najwyższą jakość tworzonego kodu. W końcu na podstawie tych właśnie umiejętności oceniana jest także wartość danego programisty w zespole.

    Z tych właśnie powodów niniejsza książka, będąca przejrzystą kompilacją najlepszych technik programowania, zdobyła tak wielkie uznanie w środowisku zawodowców i studentów, osiągając miano podręcznika kultowego. Przed Tobą drugie, zaktualizowane wydanie słynnej publikacji, w której Steve McConnell przedstawia wszystkie aspekty budowy programów, takie jak jakość czy podejście do procesu wytwarzania. Autor rozwija tu tak istotne zagadnienia, jak przebieg budowy klasy, techniki pracy z danymi i strukturami sterującymi, debugowanie, refaktoryzowanie oraz metody i strategie optymalizacji. Znajdziesz tu dziesiątki list kontrolnych, pomocnych w ocenianiu architektury, jakości klas i procedur, nazw zmiennych czy struktur sterujących, a także ponad 500 przykładów dobrego i złego kodu. Dowiesz się, co było przyczyną wielu typowych problemów w przeszłości i jak ich dzisiaj unikać. Opisane metody pracy pomogą utrzymać kontrolę nad dużymi projektami oraz efektywnie rozwijać i modyfikować oprogramowanie w odpowiedzi na zmiany wymagań. Co ważne, można je skutecznie wykorzystywać niezależnie od stosowanego języka programowania!

    Dzięki tej książce nauczysz się skutecznie:

    • projektować z zachowaniem minimalnej złożoności;
    • praktycznie wykorzystywać metody pracy zespołowej;
    • programować defensywnie, by unikać błędów w kodzie i jak najszybciej je z niego usuwać;
    • wykorzystywać okazje do refaktoryzacji oraz rozwijania kodu i robić to w sposób bezpieczny;
    • korzystać z metod programowania dopasowanych do projektu;
    • szybko i efektywnie debugować;
    • wcześnie i we właściwy sposób rozwiązywać najważniejsze problemy z konstrukcją oprogramowania;
    • dbać o jakość kodu od pierwszego do ostatniego dnia projektu.

    Posiądź kluczowe umiejętności tworzenia najwyższej jakości oprogramowania!



  • Mikroformaty. Wprowadzenie
    • Poznaj wszystkie właściwości dwudziestu niezbędnych mikroformatów
    • Użyj mikroformatów do poprawy SEO
    • Skorzystaj z praktycznych przykładów semantycznego kodu

    Gdy możliwości mikroformatów wykorzystali twórcy takich witryn, jak Google, Yahoo!, Facebook czy Twitter, nastąpił przełom. Dotychczas niedocenianymi i rzadko używanymi wzorcami projektowymi zaczęli interesować się webmasterzy na całym świecie. W szybkim tempie rozwiązanie to znalazło zastosowanie w milionach witryn internetowych. Jak duży potencjał musi drzemać w mikroformatach, skoro stają się one coraz popularniejsze? Oparte na kodzie języka HTML i kaskadowych arkuszach stylów CSS mikroformaty służą do prostego opisywania treści publikowanych w internecie. Gwarantują nie tylko większą przejrzystość strony, ale przede wszystkim zapewniają jej optymalizację pod kątem wyszukiwarek i zwiększają komfort pracy użytkowników.

    Jeśli Tobie również zależy na tworzeniu nowoczesnych, ergonomicznych stron internetowych, poznaj możliwości, jakie daje zastosowanie mikroformatów. Pomoże Ci w tym ten kompletny podręcznik, który na podstawie praktycznych przykładów wprowadza w tajniki sprawnego korzystania z otwartych formatów danych. Zaznajomisz się z właściwościami i zasadami publikowania dwudziestu mikroformatów i ich szablonów. Odkryjesz przy tym korzyści wynikające z zastosowania semantyki i strukturyzacji danych, takie jak poprawa SEO, zwiększone możliwości publikowania treści czy bardziej precyzyjne wyniki wyszukiwania. Zapoznasz się ze wzorcami kodu znaczników POSH, które mogą stanowić dla Ciebie inspirację lub gotowe rozwiązania przy tworzeniu własnych witryn. Przeczytasz także o wielu narzędziach pomocniczych, które pozwolą oszczędzić Twój czas!

    • Mikroformaty - składnia, terminologia, specyfikacje
    • Definiowanie układów - XOXO
    • Definiowanie łączy - mikroformaty rel i rev
    • Definiowanie relacji - mikroformat XFN
    • Definiowanie zakładek - mikroformat xFolk
    • Definiowanie ludzi, organizacji i miejsc - mikroformat hCard
    • hCard - wyszukiwanie i optymalizacja dla wyszukiwarek internetowych
    • hCard - informacje kontaktowe na własnej stronie WWW lub blogu
    • Praktyczny kod znaczników dla organizacji i miejsc
    • Definiowanie wydarzeń - mikroformat hCalendar
    • Definiowanie życiorysów - mikroformat hResume
    • Definiowanie treści zespalanych - mikroformat hAtom
    • Definiowanie opinii - mikroformat hReview
    • Definiowanie nagrań audio - mikroformat hAudio
    • Definiowanie plików multimedialnych - mikroformat hMedia

    Poznaj możliwości i elastyczność mikroformatów, które docenili już twórcy Google...a, Yahoo! i Facebooka!



  • Mistrz programowania. Zwiększ efektywność i zrób karierę
  • Poznaj efektywne narzędzia oraz mistrzowskie techniki pracy!

    • Jak efektywnie zarządzać cyklem życia obiektów?
    • Jak upraszczać trudne zadania przy użyciu technik metaprogramowania?
    • Jak wykorzystać mądrość starożytnych filozofów w programowaniu?

    Każdy profesjonalista marzy o tym, aby w jak najkrótszym czasie zrobić i zarobić jak najwięcej - dotyczy to również programistów. Autor niniejszej książki, Neal Ford, wychodzi naprzeciw tym marzeniom i stawia tezę, że kluczem do sukcesu jest mistrzostwo w posługiwaniu się dostępnymi narzędziami... w połączeniu z określoną metodologią pracy, opartą na mądrości starożytnych myślicieli. Jak uzyskać tę wyrafinowaną efektywność i tworzyć wydajne programy, dowiesz się podręcznika, który trzymasz w rękach.

    Książka "Mistrz programowania. Zwiększ efektywność i zrób karierę" zawiera mnóstwo bezcennych porad, dotyczących korzystania z narzędzi zwiększających produktywność, które możesz zastosować natychmiast! Dowiesz się z niej, jak unikać najczęstszych pułapek oraz w jaki sposób pozbyć się czynników dekoncentrujących, zdążając w kierunku wydajnej i efektywnej pracy. Nauczysz się tworzyć kod o jednolitym poziomie abstrakcji, pisać testy przed napisaniem testowanego kodu, zarządzać cyklem życia obiektów i stosować techniki metaprogramowania. Dzięki temu podręcznikowi zdobędziesz potrzebną wiedzę i przyswoisz sobie najlepszą metodologię pracy - a to szybko doprowadzi Cię do mistrzostwa w Twoim zawodzie.

    • Tworzenie płyty startowej
    • Rejestrator makr
    • Makra klawiszowe
    • Wyszukiwanie zaawansowane
    • Widoki zakorzenione
    • Automatyzacja interakcji ze stronami WWW
    • Mapy danych
    • Projektowanie oparte na testowaniu
    • Generowanie metryk kodu
    • Metaprogramowanie

    Zostań najbardziej poszukiwanym i najlepiej opłacanym programistą!



  • Perełki programowania. Wydanie II
  • Perełka wśród książek o programowaniu!

    • Jak tworzyć algorytmy?
    • Jak oszacować i zmierzyć wydajność algorytmu?
    • Jak skompresować kod programu oraz dane?

    Każdy programista w swojej karierze spotyka się z ciekawymi i intrygującymi, a czasami skomplikowanymi problemami. Problemy te potrafią drażnić, pobudzać ciekawość i zmuszać do ciągłego zastanawiania się nad nimi przez wiele dni oraz tygodni o każdej porze dnia i nocy, aż nagle... eureka! Rozwiązanie pojawia się w głowie - najlepsze z możliwych, eleganckie, wydajne i proste. Właśnie takie rozwiązanie to perełka!

    "Perełki oprogramowania" są istną kopalnią tego typu skarbów. Znajdziesz tu dziesiątki ciekawych problemów i jeszcze ciekawszych rozwiązań. Autor omawia istotę algorytmów, sposoby na poprawę wydajności programu oraz najlepsze techniki sortowania czy kompresji danych. Twoją ciekawość wzbudzi z pewnością katalog, w którym być może znajdziesz optymalny algorytm, rozwiązujący trapiące Cię problemy. Książka ta jest wymieniana wśród najbardziej wpływowych w branży informatycznej. Przez lata zdobyła ogromną popularność, a zaktualizowana wersja z pewnością utrwali jej pozycję na rynku. Jeśli masz cokolwiek wspólnego z programowaniem, musisz ją mieć!

    • Określanie problemu
    • Algorytmy
    • Sposoby pisania poprawnych programów
    • Droga od pseudokodu do programu
    • Testowanie
    • Szacowanie i mierzenie wydajności programu
    • Techniki tworzenia algorytmów
    • Optymalizacja kodu
    • Kompresja kodu oraz danych
    • Szybkie sortowanie oraz wydajne wyszukiwanie
    • Kopce
    • Katalog algorytmów

    Najbardziej wpływowa książka w świecie informatyki w odnowionej, aktualnej wersji!



  • Pragmatyczny programista. Od czeladnika do mistrza
  • Od ambitnego do najlepszego -
    czyli jak stać się programistą wydajnym, dociekliwym i gotowym do wszelkich zawodowych wyzwań!

    • Poznaj najlepsze praktyki i najczęstsze pułapki procesu wytwarzania oprogramowania
    • Naucz się pisać elastyczny, dynamiczny i łatwy w dostosowywaniu kod
    • Opanuj sprawdzone techniki efektywnego testowania oprogramowania

    Twórcy rozmaitych narzędzi programistycznych nieustannie próbują nas przekonać o niewiarygodnych możliwościach swoich produktów, a specjaliści od metodyk obiecują, że to właśnie ich techniki zagwarantują nam największą wydajność. Każdy oczywiście twierdzi, że jego język programowania jest najlepszy... A jak wszyscy doskonale wiemy, w naszej pracy nie istnieją NAJLEPSZE rozwiązania - są tylko rozwiązania NAJLEPIEJ sprawdzające się w danym projekcie. Większy wpływ na efektywność naszej pracy ma więc doświadczenie oraz znajomość różnych, sprawdzonych praktyk wytwarzania oprogramowania. Zawodowcy, którym na sercu leży przede wszystkim jakość realizowanych projektów, są zwykle zgodni - nigdy nie wiążą swojej zawodowej kariery z jedną, konkretną technologią. To jedna z cech wyróżniających pragmatycznych programistów - produktywnych speców, którzy w pełni wykorzystują swój potencjał i szybko osiągają zawodowy sukces. A oto pierwsza książka, która w pełni odsłania system ich codziennej pracy!

    Nie ma znaczenia, czy jesteś wolnym strzelcem, członkiem wielkiego zespołu projektowego, czy konsultantem równocześnie współpracującym z wieloma klientami. Ta skoncentrowana na przekazywaniu praktycznej wiedzy publikacja pokaże Ci, jak efektywnie wykorzystywać swoje umiejętności i doświadczenie do sprawnej realizacji nawet najbardziej złożonych projektów. Podręcznik ilustruje najlepsze praktyki i najczęstsze pułapki wielu różnych aspektów wytwarzania oprogramowania. Znajdziesz w nim zarówno zagadnienia związane ze strategicznym planowaniem swojego zawodowego rozwoju, jak i techniki takiego projektowania architektury, aby przyszły kod był elastyczny, łatwy w dostosowywaniu do różnych okoliczności i przygotowany do wielokrotnego użytku.

    Z książki dowiesz się między innymi, jak:

    • unikać pułapki powielania wiedzy
    • pisać elastyczny, dynamiczny i łatwy w dostosowywaniu kod
    • unikać programowania przez koincydencję
    • zabezpieczać kod za pomocą kontraktów, asercji i wyjątków
    • gromadzić rzeczywiste wymagania
    • bezlitośnie i efektywnie testować oprogramowanie
    • zachwycać swoich użytkowników
    • budować zespoły pragmatycznych programistów
    • automatyzować pracę w celu zapewnienia większej precyzji


    Gdybym organizował teraz jakiś projekt, zrobiłbym wszystko, aby zatrudnić autorów tej książki. (...) A gdyby to się nie udało, szukałbym ludzi, którzy przynajmniej przeczytali ich książkę.
    Ward Cunningham,
    słynny amerykański programista, pionier w dziedzinie wzorców projektowych oraz programowania ekstremalnego



  • Jak pisać przenośny kod. Wstęp do programowania wieloplatformowego
  • Przenieś swoje programy na inne platformy systemowe

    • Poznaj techniki przenoszenia kodu
    • Stwórz uniwersalne interfejsy użytkownika
    • Uwzględnij różnice pomiędzy systemami operacyjnymi

    W branży informatycznej ogromny nacisk kładzie się na jak najszybsze ukończenie produktu dla konkretnej platformy. Jednak gdy produkt staje się popularny, a użytkownicy innych systemów operacyjnych oczekują od producenta wersji możliwej do uruchomienia na swoim sprzęcie, wiele firm staje przed poważnym problemem. Kod źródłowy tworzony z myślą o określonym systemie operacyjnym lub procesorze zawiera elementy bardzo trudne do "przełożenia" na inną platformę. Istnieją jednak techniki programowania, których zastosowanie zdecydowanie ułatwia późniejszą konwersję, a odpowiednie wykorzystanie nie przedłuża czasu przygotowania innej wersji aplikacji.

    Czytając książkę "Jak pisać przenośny kod. Wstęp do programowania wieloplatformowego", poznasz te techniki. Znajdziesz tu uniwersalne zasady tworzenia przenośnego oprogramowania. Dowiesz się, jak zaplanować nowy projekt tak, aby jego przeniesienie na inną platformę nie stanowiło problemu. Nauczysz się przerabiać istniejący kod i dostosowywać go do specyfiki innych platform. Poznasz sposoby unikania błędów wynikających z różnic pomiędzy platformami. Znajdziesz w tej książce także przykłady i wzorce, dzięki którym będziesz w stanie tak pisać kod, aby przeniesienie go na inną platformę odbywało się szybko i bez kłopotów.

    • Planowanie procesu przenoszenia kodu
    • Techniki wykorzystywane podczas przenoszenia kodu
    • Systemy kontroli plików źródłowych
    • Różnice pomiędzy procesorami
    • Preprocesory i kompilatory
    • Tworzenie interfejsów użytkownika
    • Implementacja operacji sieciowych
    • Korzystanie z bibliotek dynamicznych
    • Operacje na systemie plików
    • Lokalizacja aplikacji

    Stwórz uniwersalne programy.



  • Refaktoryzacja do wzorców projektowych
  • Zmodernizuj kod swoich aplikacji
    pod kątem stosowania wzorców projektowych

    • Dowiedz się, czym jest refaktoryzacja
    • Poznaj zasady stosowania wzorców projektowych
    • Wprowadź wzorce projektowe do kodu źródłowego aplikacji

    Refaktoryzacja to zmiana konstrukcji kodu bez modyfikowania jego działania. Najczęstszym powodem refaktoryzowania kodu jest konieczność jego "uporządkowania" lub usunięcia z niego funkcji niewykorzystywanych w projekcie. Często również stosuje się refaktoryzację, aby zmodernizować kod pod kątem zastosowania w nim wzorców projektowych. Wprowadzenie wzorców projektowych do kodu znacznie ułatwia jego późniejsze modyfikacje i ewentualne rozbudowy. Stosowanie technik programowania ekstremalnego nierozerwalnie wiąże ze sobą wzorce projektowe i refaktoryzację kodu.

    Książka "Refaktoryzacja do wzorców projektowych" opisuje teoretyczne i praktyczne zagadnienia związane z refaktoryzowaniem kodu pod kątem wzorców projektowych. Przedstawia opisy niskopoziomowych przekształceń, które umożliwiają programiście bezpieczną zmianę konstrukcji kodu prowadzącą do zaimplementowania bądź usunięcia określonych wzorców z programu. Zawiera również szczegółowy opis łączenia tych przekształceń w procesie refaktoryzacji oraz sposobów implementowania wzorców w kodzie. Każde z omówionych w książce przekształceń zostało zilustrowane praktycznymi przykładami.

    • Podstawowe zasady refaktoryzacji
    • Zasady stosowania wzorców projektowych
    • Najczęstsze powody wprowadzania wzorców do kodu
    • Implementowanie wzorców projektowych
    • Zmiany sposobów tworzenia obiektów
    • Upraszczanie i uogólnianie kodu

    Jeśli chcesz zmodernizować kod swoich aplikacji,
    w tej książce znajdziesz wszystkie informacje na ten temat.



  • Refaktoryzacja. Ulepszanie struktury istniejącego kodu
  • Pierwszy podręcznik tak gruntownie i przejrzyście wyjaśniający najlepsze praktyki oraz techniki refaktoryzacji!

    • Jak identyfikować błędy i problemy z istniejącym kodem?
    • Jak poprawiać spójność, czytelność i wydajność kodu?
    • Jak przekształcać kod bez ryzyka wprowadzania błędów?
    • Jak skutecznie wykorzystywać przekształcenia refaktoryzacyjne?

    Jak ryzykowne jest grzebanie w kodzie - wszyscy doskonale wiemy. Im głębiej sięgasz... tym więcej pojawia się nowych problemów i jeszcze więcej rzeczy wymaga zmian. A nieustanne "poprawianie" działającego kodu może w końcu doprowadzić do powstania trudno wykrywalnych, krytycznych błędów. Jednak co zrobić, jeśli "odziedziczymy" nieefektywny, trudny w utrzymaniu i rozszerzaniu program? Jak poprawić jego strukturalną spójność i wydajność? Wypracowywane latami przez najlepszych ekspertów techniki refaktoryzacji, czyli ulepszania projektu istniejącego kodu, są dziś sprawdzonymi rozwiązaniami, zapewniającymi jego trwałą czytelność i możliwość efektywnego rozwoju. Opracowane głównie na potrzeby frameworków, są obecnie narzędziem wykorzystywanym dla całego procesu produkcji oprogramowania. Jednak dla wielu programistów proces refaktoryzacji pozostaje wiedzą tajemną, bo jak dotąd żaden podręcznik nie przedstawił używanych przy tym technik w praktycznej, łatwej do wykorzystania formie. A przecież przeprowadzona błędnie lub w zbytnim pośpiechu refaktoryzacja zamiast ulepszenia kodu może kosztować nas dodatkowe dni lub całe tygodnie stresującej pracy nad programem.

    Oto podręcznik, w którym słynny mentor i programistyczny guru Martin Fowler wraz z kilkoma innymi znanymi programistami podejmują się pierwszego tak gruntownego i przejrzystego objaśnienia technik związanych ze skutecznym procesem refaktoryzacji. Książka ta przedstawia zasady i najlepsze praktyki refaktoryzacyjne oraz zawiera wskazówki na temat tego, kiedy i jak zacząć ingerować w kod. Znajdziesz tu wyczerpujący katalog siedemdziesięciu przekształceń refaktoryzacyjnych. Każdemu z nich towarzyszą wskazówki dotyczące możliwości wykorzystania, instrukcja opisująca kolejne kroki oraz przykład. Ten podręcznik pokaże Ci zatem, jak przekształcać kod w sposób kontrolowany i efektywny, jak refaktoryzować go bez wprowadzania błędów, konsekwentnie ulepszając jego strukturę, oraz jak skutecznie go testować. Choć przedstawione w książce przykłady zostały napisane w języku Java, idee te znajdą zastosowanie w każdym innym języku obiektowym. Ponadto w opisach części przekształceń dodano uwagi związane z ich stosowaniem w innych językach.

    W książce tej znajdziesz między innymi opis takich zagadnień, jak:

    • zasady refaktoryzacji
    • identyfikowanie błędów i problemów z kodem
    • testowanie
    • katalog przekształceń refaktoryzacyjnych
    • konstrukcja metod
    • przenoszenie składowych pomiędzy obiektami
    • organizacja danych
    • upraszczanie wyrażeń warunkowych i wywołań metod
    • praca z hierarchią dziedziczenia
    • duże przekształcenia
    • refaktoryzacja i reużywalność
    • narzędzia refaktoryzacyjne

    Poznaj sprawdzone techniki ulepszania istniejącego kodu!



  • Piękny kod. Tajemnice mistrzów programowania
  • Poznaj techniki pracy guru programowania!

    • Jak tworzyć czytelny i pozbawiony błędów kod?
    • W jaki sposób projektować architekturę systemów?
    • Jak zbudować uniwersalne interfejsy użytkownika?

    Wbrew pozorom programowanie to nie tylko nauka ścisła, to także sztuka! Trudna sztuka! Napisanie kodu poprawnie działającego czy kodu spełniającego oczekiwania użytkowników programu to niewątpliwie wyzwanie! Wymaga bowiem doskonałego zaplanowania architektury, skutecznej optymalizacji kodu źródłowego oraz umiejętności przewidywania potencjalnych problemów i ich odpowiednio wczesnej eliminacji. Właśnie w tej książce prawdziwi mistrzowie programowania podzielą się z Tobą swoimi doświadczeniami, przemyśleniami i spostrzeżeniami dotyczącymi tworzenia profesjonalnych rozwiązań. Znajdziesz tu wiele praktycznych porad dotyczących pisania kodu, rozwiązywania problemów programistycznych, projektowania architektury, tworzenia interfejsów użytkownika i pracy w zespole projektowym. Dowiesz się, kiedy należy postępować dokładnie według wskazań metodologii, a kiedy "pójście na skróty" może okazać się najlepszym rozwiązaniem. Poznasz sposób myślenia i zasady pracy najlepszych programistów świata, dzięki czemu użytkownikom Twoich aplikacji zapewnisz maksymalny komfort.

    • Korzystanie z wyrażeń regularnych
    • Dobór odpowiedniego poziomu abstrakcji
    • Ocena jakości kodu źródłowego
    • Testowanie
    • Techniki analizy składni
    • Zabezpieczanie komunikacji sieciowej
    • Dostosowywanie architektury systemu do architektury komputerów
    • Praca zespołowa
    • Projektowanie systemów w oparciu o komponenty OpenSource
    • Usuwanie błędów
    • Ułatwianie pracy osobom niepełnosprawnym

    Dołącz do grona mistrzów programowania!



  • Sztuka kodowania. Sekrety wielkich programistów
  • Zajrzyj bezkarnie programiście przez ramię!

    • Czym naprawdę jest programowanie?
    • Jak swoją przygodę rozpoczynali wielcy tej branży?
    • Czy istnieje bezbłędny program?

    Programiści to tajemnicze osoby, które potrafią zmusić komputery do wykonywania karkołomnych zadań, wymyślanych przez zwykłych użytkowników. Spędzają cały dzień przed komputerem, a ich świat to monitor, klawiatura i hektolitry kawy. Czy to prawda? Na to pytanie odpowiada książka, którą trzymasz w rękach. Dzięki niej spojrzysz na ten zawód z zupełnie innego punktu widzenia. Jej autor przeprowadza wywiady z najbardziej rozpoznawalnymi osobami z tej branży. Mówią one o swoich pierwszych krokach w świecie programowania, opowiadają, jak nauczyły się swojego pierwszego języka oraz jak widzą tę gałąź wiedzy w przyszłości.

    Czym naprawdę jest programowanie? Rzemiosłem, sztuką, a może nauką? Te pytania stawia autor we wprowadzeniu i ma nadzieję, że wypowiedzi jego gości choć trochę zbliżą go do znalezienia odpowiedzi. Ta unikalna książka pozwoli Ci poznać bliżej wybitne osoby, od lat związane z informatyką. Anegdoty, ciekawe opowieści, wiele przykładów to tylko niektóre z proponowanych przez nią atrakcji. Zagłębiając się w kolejne wypowiedzi, przekonasz się, jak często przypadek decyduje o sukcesie lub porażce.

    W trakcie lektury będziesz mieć okazję zapoznać się z wypowiedziami takich sław, jak:

    • Jamie Zawinski - wybitny programista Lisp, pracujący przy pierwszych wersjach przeglądarki Netscape
    • Brad Fitzpatrick - najmłodsza osoba w gronie, programista "od zawsze"
    • Douglas Crockford - starszy architekt JavaScript w Yahoo!; pomysłodawca formatu JSON
    • Brendan Eich - twórca języka JavaScript
    • Joshua Bloch - szef Java Architect w Google; w trakcie pracy w Sun Microsystem był kierownikiem zespołu projektującego i implementującego Java Collections Framework
    • Joe Armstrong - autor języka programowania Erlang
    • Simon Peyton Jones - rozpoczął projekt, którego efektem było powstanie języka Haskell
    • Peter Norvig - dyrektor działu badań w Google, wcześniej pracujący dla NASA
    • Guy Steele - znawca języków; Cobol, Fortran, PDP-10, Java, Haskell to tylko niektóre z jego repertuaru
    • Dan Ingalls - współtwórca języka Smalltalk
    • L. Peter Deutsch - programista od końca lat pięćdziesiątych; zaczynał w wieku jedenastu lat
    • Ken Thompson - współtwórca systemu UNIX
    • Fran Allen - przez czterdzieści pięć lat pracował dla firmy IBM; instruktor języka Fortran
    • Bernie Cosell - współautor oprogramowania wykorzystywanego w pierwszych węzłach sieci ARPANET
    • Donald Knuth - autor jedynego najprawdopodobniej bezbłędnego programu - TeX

    Poznaj tajemny świat programistów, hakerów i wybitnych specjalistów!



  • Wyrażenia regularne
  • Wyrażenia regularne to niezwykle skuteczny mechanizm przetwarzania tekstów i innych danych. Ci, którzy do tej pory nie zetknęli się z tym pojęciem, odkryją dzięki tej książce nowe, potężne narzędzia, pozwalające w pełni zapanować nad danymi. Prezentowana tu wiedza jest tak szczegółowa i obszerna, że nawet komputerowi weterani znajdą coś nowego dla siebie.

    Umiejętne stosowanie wyrażeń regularnych pozwala radykalnie uprościć przetwarzanie wszelkiego rodzaju informacji, poczynając od poczty elektronicznej, poprzez pliki dzienników aż do dokumentów tekstowych. Mechanizm ten odgrywa niezwykle ważną rolę w programowaniu skryptów CGI, często przetwarzających rozmaite dane tekstowe.

    Wyrażenia regularne nie funkcjonują samodzielnie. Oprócz doskonale wszystkim znanego programu grep, wchodzą one w skład takich narzędzi programisty, jak:

    • translatory języków skryptowych (m.in. Perl, Tcl, awk i Python),
    • edytory tekstów (Emacs, vi, Nisus Writer i inne),
    • środowiska programowania (m.in. Delphi i Visual C++)
    • inne wyspecjalizowane narzędzia (np. lex, Expert czy sed).
    Korzystanie z wyrażeń regularnych wymaga nie tylko wiedzy teoretycznej, ale również znajomości pewnych niuansów. Jeffrey Friedl konsekwentnie prowadzi nas przez kolejne etapy tworzenia konstrukcji, które dokładnie zrealizują wszystkie postawione przed nimi zadania.

    Wyrażenia regularne nie istnieją oczywiście same dla siebie. Na stronach książki przedstawiono liczne przykłady wykorzystujących je narzędzi, a także wiele praktycznych przykładów. Szczególnie dużo uwagi poświęcono językowi Perl, wyposażonemu w bogaty zestaw funkcji przeznaczonych specjalnie do obsługi wyrażeń regularnych.

    Zawarte w tej książce porady pozwolą Czytelnikom uniknąć wszelkich pułapek i skutecznie wykorzystać możliwości wyrażeń regularnych.

    "Książka była dla mnie tyleż przyjemna, co pouczająca, nawet w kwestiach związanych z Perlem"
    Tom Christiansen, współautor książki Perl. Programowanie



  • Wyrażenia regularne. Receptury
  • Poznaj i wykorzystaj możliwości regexpów w codziennej pracy!

    • Jak wyrażenia regularne mogą przyśpieszyć Twoją pracę?
    • Jak sprawdzić poprawność danych?
    • Jak wykorzystać wyrażenia regularne w pracy z plikami XML?

    Wyrażenie regularne (ang. regexp) to inaczej wzorzec, który określa zbiór dopasowanych łańcuchów znaków. Brzmi to prosto. Jednak przy pierwszym spotkaniu z wyrażeniami wcale tak nie jest. Zbiór znaków i symboli składający się na wyrażenie regularne w niczym nie przypomina rzeczy, którą chciałbyś się zająć. Wyrażenia regularne zawsze kojarzą się początkującemu użytkownikowi co najmniej z wiedzą tajemną, a często wręcz z magią. Warto im się jednak przyjrzeć, poznać je i polubić, a następnie wykorzystać możliwości, jakie w nich drzemią.

    Jedno jest pewne - te możliwości są spore. Autorzy błyskawicznie zaprzyjaźnią Cię z wyrażeniami regularnymi - książka należy bowiem do znanej serii Receptury, cechującej się tym, że proces nauki jest oparty na analizie rozwiązań prawdziwych problemów. Na samym początku zdobędziesz elementarną wiedzę dotyczącą różnych typów dopasowania oraz dowiesz się, jak unikać najczęstszych problemów. Na kolejnych stronach nauczysz się stosować wyrażenia regularne w różnych językach programowania oraz wykorzystywać je do kontroli poprawności danych i formatowania ciągów znaków. Ponadto dowiesz się, jak operować na słowach, wierszach, znakach specjalnych oraz liczbach. Osobny rozdział został poświęcony operacjom na adresach URL oraz ścieżkach dostępu. Dzięki tej książce szybko zgłębisz tajniki wyrażeń regularnych. Kolejny krok to wykorzystanie tej wiedzy w codziennej pracy!

    • Dopasowanie stałego tekstu
    • Dopasowanie znaków niedrukowanych
    • Dopasowania na początku i końcu wiersza
    • Wyrażenia regularne dla całych wyrazów
    • Wykorzystanie alternatywnych wyrażeń
    • Grupowanie dopasowań
    • Eliminowanie nawrotów
    • Sposoby komentowania wyrażeń
    • Wyrażenia regularne w językach programowania
    • Weryfikacja i formatowanie danych z wykorzystaniem wyrażeń regularnych
    • Dopasowanie kompletnego wiersza
    • Praca z liczbami
    • Operacje na adresach URL, ścieżkach i adresach internetowych
    • Wykorzystanie wyrażeń regularnych w pracy z plikami XML

    Sprawdź, jak wyrażenia regularne mogą przyśpieszyć Twoją pracę!



  • Wyrażenia regularne. Leksykon kieszonkowy. Wydanie II
  • Poznaj wyrażenia regularne, aby wykorzystać moc ich możliwości
    w najpopularniejszych językach programowania!

    • Chcesz poznać przepisy na wyrażenia regularne?
    • Chcesz wykorzystywać możliwości Unicode w języku Ruby, Java, Perl, PHP, Pyton, C oraz .NET?
    • Chcesz wiedzieć, jak stosować wyrażenia regularne zaimplementowane w różnych językach programowania?

    Wyrażenia regularne są narzędziem umożliwiającym analizę i modyfikowanie tekstu przez dopasowywanie wzorców. Są one łańcuchem znaków zawierającym kombinację normalnych znaków oraz specjalnych metaznaków i metasekwencji, a dopasowywanie wzorców polega na odszukaniu fragmentu łańcucha opisywanego przez wyrażenie regularne. Wyrażenia te znajdują zastosowanie przy sprawdzaniu wartości zmiennych, zmianie formatu, przeprowadzaniu złożonych operacji wyszukiwania oraz weryfikowaniu poprawności danych tekstowych.

    Książka "Wyrażenia regularne. Leksykon kieszonkowy" stanowi podręczny niezbędnik dla wszystkich piszących programy przetwarzające teksty. Oprócz zagadnień podstawowych, takich jak składnia wyrażeń regularnych oraz operacje, w których są wykorzystywane, leksykon zawiera inne niezwykle pomocne i bardziej zaawansowane informacje dotyczące na przykład narzędzi obsługi wyrażeń w języku Ruby oraz na serwerze WWW Apache. Czytając tę książkę, nie tylko zdobędziesz konkretną wiedzę, ale również niezbędne umiejętności praktyczne -- między innymi dowiesz się, jak wykorzystać znajomość wyrażeń regularnych we wszystkich środowiskach.

    • Metaznaki, tryby oraz konstrukcje
    • Reprezentacja i klasy znaków
    • Komentarze i modyfikatory trybów
    • Narzędzia obsługi wyrażeń regularnych w języku Ruby oraz na serwerze WWW Apache
    • Operatory wyrażeń regularnych w języku Perl 5.8
    • Obiekty i metody do obsługi wyrażeń regularnych w języku JavaScript
    • Funkcje obsługi wyrażeń regularnych w języku PHP i edytorze vi
    • Obiekty i funkcje wyrażeń regularnych w języku Pyton
    • Programy obsługiwane z wiersza poleceń

    Wyrażenia regularne to nieocenione narzędzia w pracy programisty
    -- nie możesz się bez nich obejść!



Księgarnia Ebookpoint

Księgarnia Onepress

Księgarnia Sensus

Księgarnia Septem