Современная программная инженерия. Использовать

Товар

3 128  ₽
Современная программная инженерия. Использовать

Доставка

  • Почта России

    от 990 ₽

  • Курьерская доставка EMS

    от 1290 ₽

Характеристики

Артикул
16161544078
Состояние
Новый
Język publikacji
polski
Tytuł
Nowoczesna inżynieria oprogramowania. Stosowanie skutecznych technik szybszego rozwoju oprogramowania wyższej jakości
Autor
David Farley
Nośnik
książka papierowa
Okładka
miękka
Rok wydania
2023
Wydawnictwo
Helion
Liczba stron
224
Numer wydania
1
Szerokość produktu
16 cm
Wysokość produktu
23 cm

Описание

Nowoczesna inżynieria oprogramowania. Stosowanie

Nowoczesna inżynieria oprogramowania. Stosowanie skutecznych technik szybszego rozwoju oprogramowania wyższej jakości

David Farley

Inżynieria oprogramowania polega na stosowaniu empirycznego podejścia do szukania wydajnych i ekonomicznie uzasadnionych rozwiązań podczas tworzenia oprogramowania. Dziedzina ta ma na celu organizowanie optymalnego procesu tworzenia aplikacji ? od koncepcji, poprzez kodowanie, wdrażanie, utrzymywanie, po wycofywanie. Uzyskanie biegłości w tym obszarze nie jest łatwe: rozwój oprogramowania wymaga zrozumienia filozofii inżynierii i stosowania określonych zasad.

Tę książkę docenią programiści, menedżerowie, inżynierowie i liderzy techniczni. Znajdziesz w niej cenne informacje o filozofii inżynierii oprogramowania, jak również o postępach w sposobie myślenia na jej temat. Na tej bazie oparto zestaw zasad ułatwiających skuteczne radzenie sobie z dwoma podstawowymi procesami inżynierii oprogramowania: uczenia się i eksploracji oraz radzenia sobie ze złożonością. W ten sposób dowiesz się, jak usprawnić wszystkie aspekty swojej pracy, a także jak stosować sprawdzone podejścia prowadzące do sukcesu z uwzględnieniem uwarunkowań ekonomicznych. Dzięki tej przełomowej publikacji nauczysz się technik rozwiązywania problemów z wykorzystaniem zarówno obecnych, jak i przyszłych technologii. W efekcie będziesz szybciej tworzyć lepsze oprogramowanie, i to w bardziej przyjemny i satysfakcjonujący sposób.

Poznaj i stosuj zasady nowoczesnej inżynierii oprogramowania:

  • określaj jasne cele i sensownie wybieraj narzędzia
  • organizuj pracę i systemy tak, aby móc oceniać ciągłe postępy
  • zachowuj kontrolę nawet po zwiększeniu złożoności systemu
  • utrzymuj dyscyplinę z zachowaniem właściwej elastyczności
  • ucz się z historii i doświadczenia
  • naucz się oceniać nowe idee rozwoju oprogramowania

Przekonaj się, jak dzisiaj najlepsi praktycy projektują oprogramowanie!

Spis treści:

Spis treści

Przedmowa

Wstęp

Podziękowania

O autorze

Część I. Czym jest inżynieria oprogramowania?

  • Rozdział 1. Wprowadzenie

    Inżynieria - praktyczne zastosowanie nauki

    Czym jest inżynieria oprogramowania?

    Przywracanie "inżynierii" w "inżynierii oprogramowania"

    Jak robić postępy?

    Narodziny inżynierii oprogramowania

    Zmiana paradygmatu

    Podsumowanie

  • Rozdział 2. Czym jest inżynieria?

    To nie produkcja jest naszym problemem

    Inżynieria projektowa zamiast inżynierii produkcyjnej

    Robocza definicja inżynierii

    Inżynieria != kod

    Dlaczego inżynieria jest ważna?

    Ograniczenia rzemiosła

    Precyzja i skalowalność

    Radzenie sobie ze złożonością

    Powtarzalność i precyzja pomiarów

    Inżynieria, kreatywność i rzemiosło

    Dlaczego to, co robimy, nie jest inżynierią oprogramowania

    Kompromisy

    Iluzja postępu

    Droga od rzemiosła do inżynierii

    Rzemiosło to za mało

    Czas na zmianę perspektywy?

    Podsumowanie

  • Rozdział 3. Podstawy podejścia inżynieryjnego

    Branża zmian?

    Znaczenie pomiarów

    Wprowadzanie stabilności i wydajności

    Podstawy inżynierii oprogramowania

    Eksperci od uczenia się

    Eksperci od radzenia sobie ze złożonością

    Podsumowanie

Część II. Optymalizacja z myślą o uczeniu się

  • Rozdział 4. Praca w modelu iteracyjnym

    Praktyczne zalety podejścia iteracyjnego

    Podejście iteracyjne jako strategia projektowania defensywnego

    Pokusa tworzenia planu

    Praktyczne aspekty podejścia iteracyjnego

    Podsumowanie

  • Rozdział 5. Informacje zwrotne

    Praktyczny przykład ilustrujący znaczenie informacji zwrotnych

    Informacje zwrotne w czasie pisania kodu

    Informacje zwrotne na etapie integracji

    Informacje zwrotne na etapie projektowania

    Informacje zwrotne w architekturze

    Preferuj szybkie informacje zwrotne

    Informacje zwrotne w kontekście projektu produktu

    Informacje zwrotne w organizacji i kulturze

    Podsumowanie

  • Rozdział 6. Podejście przyrostowe

    Znaczenie modułowości

    Podejście przyrostowe w organizacjach

    Narzędzia ułatwiające przyrostową pracę

    Ograniczanie zakresu wpływu zmian

    Projektowanie przyrostowe

    Podsumowanie

  • Rozdział 7. Podejście empiryczne

    Zakorzenienie w rzeczywistości

    Oddzielenie podejścia empirycznego od eksperymentów

    "Znam ten błąd!"

    Unikanie oszukiwania samego siebie

    Wymyślanie rzeczywistości pasującej do argumentów

    Kierowanie się rzeczywistością

    Podsumowanie

  • Rozdział 8. Nastawienie na eksperymentowanie

    Czym jest "nastawienie na eksperymentowanie"?

    Informacje zwrotne

    Hipotezy

    Pomiary

    Kontrolowanie zmiennych

    Zautomatyzowane testy jako eksperymenty

    Zapewnianie kontekstu dla wyników testów przeprowadzanych w ramach eksperymentów

    Zakres eksperymentów

    Podsumowanie

Część III. Optymalizowanie z myślą o radzeniu sobie ze złożonością

  • Rozdział 9. Modułowość

    Cechy charakterystyczne modułowości

    Niedocenianie znaczenia dobrego projektu

    Znaczenie testowalności

    Projektowanie z myślą o łatwości testowania poprawia modułowość

    Usługi i modułowość

    Łatwość wdrażania a modułowość

    Modułowość w różnych skalach

    Modułowość w systemach ludzkich

    Podsumowanie

  • Rozdział 10. Spójność

    Modułowość i spójność - podstawy projektowania

    Prosty przykład niskiej spójności

    Kontekst ma znaczenie

    Wysoce wydajne oprogramowanie

    Związki z powiązaniami

    Zapewnianie wysokiej spójności za pomocą programowania sterowanego testami

    Jak uzyskać spójne oprogramowanie?

    Koszty niskiej spójności

    Spójność w systemach ludzkich

    Podsumowanie

  • Rozdział 11. Podział zadań

    Wstrzykiwanie zależności

    Oddzielanie złożoności zasadniczej od złożoności przypadkowej

    Znaczenie podejścia DDD

    Testowalność

    Porty i adaptery

    Kiedy stosować wzorzec porty i adaptery?

    Czym jest API?

    Stosowanie programowania sterowanego testami do wprowadzania podziału zadań

    Podsumowanie

  • Rozdział 12. Ukrywanie informacji i abstrakcja

    Abstrakcja lub ukrywanie informacji

    Co jest powodem powstawania "wielkiej błotnej bryły"?

    Problemy organizacyjne i kulturowe

    Problemy techniczne i problemy projektowe

    Obawy przed "nadinżynierią"

    Tworzenie bardziej abstrakcyjnego kodu za pomocą testów

    Wartość abstrakcji

    "Dziurawe" abstrakcje

    Wybór odpowiednich abstrakcji

    Abstrakcje z dziedziny problemu

    Wyodrębnianie złożoności przypadkowej za pomocą abstrakcji

    Izolowanie zewnętrznych systemów i zewnętrznego kodu

    Zawsze preferuj ukrywanie informacji

    Podsumowanie

  • Rozdział 13. Radzenie sobie z powiązaniami

    Koszty powiązań

    Skalowanie

    Mikrousługi

    Wyeliminowanie powiązań może prowadzić do większej ilości kodu

    Luźne powiązanie nie jest jedynym, które ma znaczenie

    Preferuj luźne powiązania

    W czym powiązania różnią się od podziału zadań?

    Zasada DRY jest zbyt uproszczona

    Asynchroniczność jako narzędzie do uzyskiwania luźnych powiązań

    Projektowanie z myślą o luźnych powiązaniach

    Luźne powiązania w systemach ludzkich

    Podsumowanie

Część IV. Narzędzia ułatwiające inżynierię w branży oprogramowania

  • Rozdział 14. Narzędzia w dziedzinie inżynierii

    Czym jest rozwój oprogramowania?

    Testowalność jako narzędzie

    Punkty pomiaru

    Problemy z osiąganiem testowalności

    Jak zwiększyć testowalność?

    Łatwość wdrażania

    Szybkość

    Kontrolowanie zmiennych

    Ciągłe dostarczanie

    Ogólne narzędzia wspomagające inżynierię

    Podsumowanie

  • Rozdział 15. Współczesny inżynier oprogramowania

    Inżynieria jako proces ludzki

    Organizacje dokonujące przełomu w świecie cyfrowym

    Skutki a mechanizmy

    Trwałe i uniwersalne

    Podstawy inżynierii

    Podsumowanie

Гарантии

  • Гарантии

    Мы работаем по договору оферты и предоставляем все необходимые документы.

  • Лёгкий возврат

    Если товар не подошёл или не соответсвует описанию, мы поможем вернуть его.

  • Безопасная оплата

    Банковской картой, электронными деньгами, наличными в офисе или на расчётный счёт.

Отзывы о товаре

Рейтинг товара 4.8 / 5

5 отзывов

Russian English Polish