Istnieje kilka ram sieci dla Haskell jak Happstack , Snap i jesod i prawdopodobnie kilka.
Na jakie aspekty różnią się od siebie? Na przykład:
- funkcje (np. tylko serwer lub skrypty klienta, łatwa obsługa różnych rodzajów baz danych)
- dojrzałości (np stabilność jakości dokumentacja)
- skalowalność (np wydajność, poręczne abstrakcji)
- Główne cele
Jakie są też przykłady witryn / aplikacji internetowych wykorzystujących te frameworki?
Wielkie dzięki.
Odpowiedzi:
Mogę mówić tylko w imieniu Yesod, ponieważ do tej pory próbowałem tylko Snap i Yesod, ale szybko utknąłem w Yesod.
Głównym powodem Yesod jest prawdopodobnie to, że dostarcza kompletne środowisko z rosnącą liczbą funkcji, takich jak
Moim zdaniem wielką siłą Yesod jest kompilacja jego dynamicznej zawartości, np. Stron HTML. Witryna z szablonami jest analizowana za pomocą szablonu Haskell i przekształcana w strukturę danych Haskell. Dlatego szablon nie jest analizowany za każdym razem, gdy użytkownik go wywołuje. Moim zdaniem jest to duża przewaga prędkości w porównaniu z PHP, a także Snapem, który korzysta z nieskompilowanych szablonów, a także bardzo pomaga w skalowalności.
Według twórcy Yesod już wkrótce zbliża się do wersji 1.0, a niektóre strony już na nim działają. Myślę, że głównym celem Yesod jest dostarczenie bezpiecznej dla użytkownika, kompletnej struktury aplikacji internetowych, która zaspokoi wszystkie Twoje potrzeby, a następnie niektóre.
Ponadto Yesod integruje się z interfejsem WAI i doskonale współpracuje z czystą osnową serwera Haskell.
źródło