OSGi (Dynamic Module System for Java), czyli standard implementujący model komponentów w języku Java
Po długim zastanawianiu się nad najlepszym rozwiązaniem problemu siadamy i piszemy testy i kod źródłowy klas, które będą działały zgodnie z naszymi wcześniejszymi ustaleniami. Wielokrotnie implementuje się metody, które wykonują dla nas czynności zgodne z wymaganiami klienta, jednak nie nadają się one do ponownego użycia. Wygląda znajomo? Czarne chmury nadchodzą wtedy, kiedy należy użyć tak przygotowane komponenty w innym, podobnym projekcie.
Wykorzystywanie narzędzia Google trucov
Artykuł omawia sposób badania pokrycia kodu testami jednostkowymi. Badanie takiego pokrycia upraszcza tworzenie dobrego zbioru testów. Wykorzystano narzędzie Google trucov oraz kompilator GNU C++. Zamieszczone przykłady pokazują typowe problemy, które musimy rozwiązać, tworząc zbiór testów jednostkowych.
Język D to rozwiązanie oceniane jako następca języków C oraz C++. Czy tak jest istotnie, postaramy się pokazać w tym artykule. Warto bowiem poznać kilka cech języka D, które, jak się wydaje, istotnie przemawiają na jego korzyść, a być może następny program warto będzie spróbować napisać w D.
Kolejna odsłona kursu „Wprowadzenie do języka C# i platformy .NET” skupia się na bardziej praktycznych aspektach obiektowości w języku C#.
Zagadnienie testowalności kodu jest kluczowe z punktu widzenia poprawności działania systemu, ale także satysfakcji klienta końcowego. Odpowiednia struktura aplikacji znacznie ułatwia automatyczne testowanie, zmniejszając ilość błędów i pozwalając na szybszą reakcję na zmianę wymagań.
Powłoka systemowa jest podstawowym narzędziem administratorów systemu Linux/UNIX. Programiści również często wykorzystują ją do ułatwiania sobie pracy. W niniejszym artykule zaprezentowane zostały ciekawe sposoby użycia powłoki bash do automatyzacji wybranych zadań. Na ich przykładzie autorzy pokazują garść przydatnych sztuczek oraz wyjaśniają nieco magii.
Internetowe startupy pojawiają się jak grzyby po deszczu. Część z nich jest innowacyjna, inne to kolejne kopie istniejących serwisów. Każdego dnia na świecie powstaje kilka tysięcy pomysłów na serwis internetowy, wiele z nich nigdy nie zostanie wykonanych. Powodów zwykle jest wiele, ale najczęstsze to długi czas realizacji projektu oraz związane z tym koszty finansowe. Jak w takim razie szybko i sprawnie sprawić, aby nasza idea ujrzała światło dzienne, a zarazem nie była zbyt kosztowna we wdrożeniu? Jednym z rozwiązań jest użycie frameworku Ruby On Rails.
Lekki, dynamiczny, czytelny oraz prosty w utrzymaniu kod, dzięki któremu stworzysz szablony stron i aplikacji internetowych napędzane danymi JSON? Tak, to możliwe! Pożegnaj chaos oraz linijki zbędnego kodu. Powitaj semantykę i harmonię.
Na przestrzeni ostatnich lat serwisy www, a także sposób ich implementacji uległy dużym zmianom. Udostępnienie użytkownikom ogromnych zestawów funkcjonalności czy przetwarzanie coraz większej ilości danych stawia przez developerami i architektami zupełnie nowe wyzwania. Tworzone rozwiązania powinny się skalować wraz ze stopniowym przyrostem użytkowników, zaczynając od pojedynczych serwerów, a na replikowanych pomiędzy osobnymi data-centers klastrach kończąc.
Wyrażenia regularne są tak popularnym mechanizmem, że obecnie wchodzą w skład bibliotek standardowych wszystkich szanujących się języków programowania. Zainteresowałem się kiedyś, w jaki sposób wewnętrznie realizowane jest dopasowywanie tekstu do wzorca, i okazało się, że stoi za tym bardzo ciekawy aparat matematyczny.
Temat wymagań w Agile jest tematem dosyć drażliwym w szczególności dla testerów przyzwyczajonych do tradycyjnych wymagań i przewidywania z góry, jak co będzie wyglądało oraz działało. Wymaga się od systemu, żeby coś robił, opisując to w formie „System powinien ”, ale system często nie chce słuchać, a pod koniec projektu nie wiadomo, co jest źródłem wymagań. To, co zostało zapisane, a może to, jak system teraz działa? Kto pamięta, jaka została podjęta decyzja i dlaczego?
Część V: Kompendium testowania aplikacji opartej o DDD – problemy, strategie, taktyki i techniki
W jaki sposób zapewnić jakość systemu? Czy pokrycie 80% kodu testami jest wystarczające? A może wystarczy 20%, ale „zainwestowane” racjonalnie. Czy praca z Javą lub .NET musi być mozolna z uwagi na redeploy? Na wszystkie te pytania odpowiemy w przedostatniej części naszej serii.
Podstawą do opracowania dopasowanego do organizacji procesu wytwarzania oprogramowania są odpowiednio dobrane dobre praktyki, metody zarządzania oraz efektywne narzędzia wspierające. Wybór ich stanowi wyzwanie i poważny problem dla wielu organizacji. Jeżeli popatrzymy na środowiska, w których obecnie rozwijane jest oprogramowanie, to możemy stwierdzić, że zwykle zespoły analityków, programistów i testerów nie komunikują się ze sobą w sposób efektywny, co negatywnie wpływa na wydajność pracy, koszty i jakość finalnego produktu.
Niezbędnik wiedzy technicznej dla kierowników projektów programistycznych
Zapraszamy do drugiej części artykułu skierowanego do kierowników projektu, którzy w swojej współpracy z programistami często napotykają na przeszkody. W artykule przedstawimy pozostałe zagadnienia, których znajomość może okazać się niezmiernie pomocna w przyszłości. Ukazane zostaną również przykładowe rodzaje nieporozumień oraz słownik, charakterystycznych dla programistów, wyrażeń i pojęć.