SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
Budowanie UI - problemy
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Budowanie UI - problemy wyzwania
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Budowanie UI - problemy wyzwania
■ spójność komponentów
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Budowanie UI - problemy wyzwania
■ spójność komponentów
■ mnogość zdarzeń
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Budowanie UI - problemy wyzwania
■ spójność komponentów
■ mnogość zdarzeń
■ debugowanie
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Budowanie UI - problemy wyzwania
■ spójność komponentów
■ mnogość zdarzeń
■ debugowanie
■ testowanie
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Spójność komponentów
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Spójność komponentów
■ niezależne komponenty
■ każdy musi sobie pobrać dane do wyświetlania
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Spójność komponentów: globalny stan
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Mnogość zdarzeń
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Mnogość zdarzeń
■ działania użytkownika
■ rezultaty asynchronicznych akcji
■ zdarzenia z zewnątrz
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Mnogość zdarzeń: mody kowanie stanu nie wprost
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Mnogość zdarzeń: mody kowanie stanu nie wprost
reduce(currentState, action) -> newState
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Mnogość zdarzeń: mody kowanie stanu nie wprost
reduce(currentState, action) -> newState
reduce( ● , □ ) → ■
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Mnogość zdarzeń: mody kowanie stanu nie wprost
reduce(currentState, action) -> newState
reduce( ● , □ ) → ■
reduce( ● , 🖌) → ●
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Mnogość zdarzeń: kolejkowanie akcji
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Debugowanie
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Debugowanie
■ jeden punkt wejścia
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Debugowanie
■ jeden kierunek przepływu danych
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Debugowanie
■ brak efektów ubocznych (seria transformacji stanu)
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Testowanie
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Testowanie
■ oddzielenie logiki od samego wyświetlania
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Testowanie
■ możliwość testowania logiki jednostkowo
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Testowanie
■ testowanie wyświetlania w separacji
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Dodatkowe zalety
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Dodatkowe zalety
■ wzorzec projektowy wysokiego poziomu
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Dodatkowe zalety
■ wzorzec projektowy wysokiego poziomu
■ łatwość wprowadzania zmian w UI
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Dodatkowe zalety
■ wzorzec projektowy wysokiego poziomu
■ łatwość wprowadzania zmian w UI
■ skalowalność
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Dodatkowe zalety
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Co dalej?
■ dokumentacja Facebooka:
https://facebook.github.io/flux/
■ gotowe implementacje:
■ Flux ;-)
■ FlexDotNet
■ FlexJava
■ Do It Yourself
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
Sebastian Kremiec
Flux — architektura aplikacji dla budowania UI
[FDD 2017] Sebastian Kremiec - Flux — architektura aplikacji dla budowania UI

Contenu connexe

Similaire à [FDD 2017] Sebastian Kremiec - Flux — architektura aplikacji dla budowania UI

Similaire à [FDD 2017] Sebastian Kremiec - Flux — architektura aplikacji dla budowania UI (6)

Migracja I Integracja Bazy
Migracja I Integracja BazyMigracja I Integracja Bazy
Migracja I Integracja Bazy
 
Wydajny frontend 2023
Wydajny frontend 2023Wydajny frontend 2023
Wydajny frontend 2023
 
Szybkie tworzenie aplikacji na iPhone i Android - Netcamp #16
Szybkie tworzenie aplikacji na iPhone i Android - Netcamp #16Szybkie tworzenie aplikacji na iPhone i Android - Netcamp #16
Szybkie tworzenie aplikacji na iPhone i Android - Netcamp #16
 
Jak poprawić Core Web Vitals w aplikacji Next.js
Jak poprawić Core Web Vitals w aplikacji Next.jsJak poprawić Core Web Vitals w aplikacji Next.js
Jak poprawić Core Web Vitals w aplikacji Next.js
 
Activiti - BPMN 2.0 nadchodzi
Activiti - BPMN 2.0 nadchodziActiviti - BPMN 2.0 nadchodzi
Activiti - BPMN 2.0 nadchodzi
 
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
 

Plus de Future Processing

Plus de Future Processing (20)

DPTO_Inżynieria oprogramowania to proces uczenia się.pdf
DPTO_Inżynieria oprogramowania to proces uczenia się.pdfDPTO_Inżynieria oprogramowania to proces uczenia się.pdf
DPTO_Inżynieria oprogramowania to proces uczenia się.pdf
 
DPTO_QA w świecie wartości biznesowych.pdf
DPTO_QA w świecie wartości biznesowych.pdfDPTO_QA w świecie wartości biznesowych.pdf
DPTO_QA w świecie wartości biznesowych.pdf
 
DPTO_Hello_Clean_Architekture.pdf
DPTO_Hello_Clean_Architekture.pdfDPTO_Hello_Clean_Architekture.pdf
DPTO_Hello_Clean_Architekture.pdf
 
[Quality Meetup #20] Michał Górski - Continuous Deployment w chmurze
[Quality Meetup #20] Michał Górski - Continuous Deployment w chmurze[Quality Meetup #20] Michał Górski - Continuous Deployment w chmurze
[Quality Meetup #20] Michał Górski - Continuous Deployment w chmurze
 
[Quality Meetup #20] Dorota Tadych - Hyperion - wystarczy jeden shake
[Quality Meetup #20] Dorota Tadych - Hyperion - wystarczy jeden shake[Quality Meetup #20] Dorota Tadych - Hyperion - wystarczy jeden shake
[Quality Meetup #20] Dorota Tadych - Hyperion - wystarczy jeden shake
 
[Quality Meetup #19] Magdalena Drechsler-Nowak - Tester w pułapce myślenia
[Quality Meetup #19] Magdalena Drechsler-Nowak - Tester w pułapce myślenia[Quality Meetup #19] Magdalena Drechsler-Nowak - Tester w pułapce myślenia
[Quality Meetup #19] Magdalena Drechsler-Nowak - Tester w pułapce myślenia
 
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
 
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
 
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
 
[FDD 2018] Lech Kalinowski - Prywatny Blockchain
[FDD 2018] Lech Kalinowski - Prywatny Blockchain[FDD 2018] Lech Kalinowski - Prywatny Blockchain
[FDD 2018] Lech Kalinowski - Prywatny Blockchain
 
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
 
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
 
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
 
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
 
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
 
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
 
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
 
[QE 2018] Marek Puchalski – Web Application Security Test Automation
[QE 2018] Marek Puchalski – Web Application Security Test Automation[QE 2018] Marek Puchalski – Web Application Security Test Automation
[QE 2018] Marek Puchalski – Web Application Security Test Automation
 
[QE 2018] Rob Lambert – How to Thrive as a Software Tester
[QE 2018] Rob Lambert – How to Thrive as a Software Tester[QE 2018] Rob Lambert – How to Thrive as a Software Tester
[QE 2018] Rob Lambert – How to Thrive as a Software Tester
 
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
 

[FDD 2017] Sebastian Kremiec - Flux — architektura aplikacji dla budowania UI