Redux е библиотека, която прилага архитектура, вдъхновена от източника на събития

Библиотеката Redux никога не е била вдъхновена от Event Sourcing, защото авторът вече ми каза, че не е познавал Event Sourcing, когато я е създал.

Той е вдъхновен от нещо (поток), което може или не може да се основава директно на източника на събития. Имайки предвид начина, по който стоят нещата, има доказателства, че никой от тях не е базиран на него (може би просто вдъхновен, както казвате, което не означава нищо).

Понякога тези неща заживяват свой собствен живот, надхвърлящ това, което авторът си е представял. Точно това се случи тук.

Мислите ли, че е добре да се абстрахира полезна информация в библиотеките, вместо да стоите на раменете на гиганти и да надграждате върху вече известни концепции по начин, по който библиотеките стават ненужни?

Мога да се обзаложа, че цялото това нещо просто ще еволюира обратно към Event Sourcing, поради липсата на по-добро определение.

… но с привкус на функционално програмиране

Какъв точно е обратът, който го подобрява спрямо Event Sourcing? Искате да кажете, че Event Sourcing не може да бъде функционален? Той използва команда и събития, което е фундаментално функционално, но може да бъде изразено и в други парадигми. Хубавото на говоренето на ниво архитектура е, че не е необходимо много решения да бъдат тясно свързани с парадигма, което само по себе си е предимство.

... но прилага по същество същия модел с малка адаптация: магазинът е наблюдаем.

Сравнявайки с Event Sourcing, доколкото разбирам, магазинът Redux е нещо средно между Event Store или View Projections, а редукторите са саги. Тъй като сте по-скоро в контекста на ngrx/store, каква е действителната полза от използването на магазина като наблюдаем в контекста на подобряването на „Redux архитектурата“?

Използването на наблюдаеми изглежда е просто заобиколно решение вместо просто повторно възпроизвеждане на Event Store за изграждане на View Projections (всяка операция е отделена една от друга).

Има някаква свързана „дискусия в хранилището на redux“, която може да бъде интересна.

Може би Дан Абрамов не е възнамерявал да вдъхнови промяна в начина, по който мислим за архитектурата на държавното управление, когато е изграждал библиотеката си, но точно това е направил, въпреки че много от нас са написали много реализации за източник на събития преди. Преди Redux никога не съм го правил с редуктори.

Когато новите разработчици навлязат в предния край, те също ще преминат през същия път. Има промяна в начина, по който хората мислят, сега е време да им посочим какво е в действителност.

Можете да се абонирате или да проверите fagnerbrack.com, пиша за софтуерни основи като това през цялото време.