Funkcja reduce w JavaScript

Funkcja reduce w JavaScript

Wykorzystanie funkcji wyższego rzędu, takich jak map(), czy filter(), jest w JavaScript powszechne, jednak podczas refactoringów niezwykle rzadko zdarza mi się natknąć na funkcję reduce(). Prawdopodobnie natłok pracy i napięte terminy źle wpływają na kreatywność i popychają programistów utartymi, dobrze znanymi ścieżkami. Można się oczywiście bez reduce() obejść i zrobić wszystko proceduralnie za pomocą pętli. Lepiej jednak odchudzić kod o mechanizm zarządzania pętlą, czym zajmie się funkcja, a samemu skupić się na rozwiązaniu problemu.

Czytaj dalej Funkcja reduce w JavaScript

Trzeci parametr addEventListener w Java Script

Logo Java Script

Metoda addEventListener przyjmuje trzy parametry. Pierwszy to typ zdarzenia, jakie ma być nasłuchiwane. Drugi to funkcja, która zostanie wykonana w momencie wywołania zdarzenia. Jest jeszcze trzeci parametr, który początkującym adeptom Java Script często sprawia problemy. Jest nim useCapture. Nie jest zbyt często używany i w większości przypadków można go pominąć, co skutkuje ustawieniem domyślnej wartości false, jednak warto wiedzieć jak on wpływa na działanie tak popularnej metody jak addEventListener.

 

Czytaj dalej Trzeci parametr addEventListener w Java Script

Narzędzie do ćwiczenia Metody Ścieżki Krytycznej (Critical Path Method)

Narzędzie do ćwiczenia Metody Ścieżki Krytycznej (Critical Path Method)

Zarządzanie harmonogramem realizacji projektu jest nieodzownym elementem pracy każdego kierownika projektu. W zależności od przyjętej metodyki i specyfiki samego projektu, jako środka do osiągnięcia celu, wykorzystywane są różne metody i narzędzia do harmonogramowania.

Stosowana już w latach 50-tych ubiegłego stulecia, Metoda Ścieżki Krytycznej (Critical Path Method), jest jedną z najpopularniejszych dzięki swojej prostocie i efektywności. Przy relatywnie niskich nakładach pracy, pozwala pozyskać kluczowe dla projektu informacje o terminach jego realizacji.

Każda, nawet z pozoru prosta metoda, może wydawać się skomplikowana przy pierwszym podejściu. Dokładny opis wykorzystania CPM można znaleźć zarówno w obszernej literaturze, jak i w zasobach Internetu. Jednak tylko w teorii praktyka nie różni się od teorii. Do dobrego zrozumienia sieci zależności w projekcie i wyznaczania ścieżki krytycznej niezbędne jest poznanie empiryczne.

Wychodząc naprzeciw osobom chcącym zrozumieć i poznać praktyczne aspekty metody CPM, co jest niezbędne przy wielu certyfikacjach, a przede wszystkim do sprawnej realizacji projektów, przygotowałem aplikację, która pozwala na ćwiczenie tej metody na przykładowym diagramie. Jest ona dostępna pod adresem www.opencpm.org cpm.kawalec.eu. Możliwość wielokrotnego generowania danych, oraz sprawdzania poprawności rozwiązań, pozwolą na zdobycie wprawy w wyznaczaniu ścieżki krytycznej. W śród opcji konfiguracyjnych jest możliwość zdefiniowania typów relacji jakie mają być uwzględnione w diagramie, dzięki czemu można dostosować stopień trudności do swoich preferencji.

Do poprawnego działania aplikacja wymaga przeglądarki obsługującej Canvas, oraz włączenia obsługi Java Script. Bieżąca konfiguracja użytkownika zapisywana jest w localStorage przeglądarki, dzięki czemu zapamiętywane są ostatnie ustawienia użytkownika. Aplikację udostępniam na licencji GNU GPL v.3,m a kody udostępnię na moim koncie na GitHub.