Wpis z mikrobloga

Rethinking the Web API framework

github projektu

Od jakiegoś roku szukałem sensownej alternatywy dla django. Wróżę wielki sukces. Po nowym roku chcę to sprawdzić w realnym projekcie. Podoba mi się zamysł. ORM agnostic web framework, Dependency injection z uzyciem type annotations to jest bajka. Każdy kto używa pytesta, powinien decenić. Do tego dorzucamy od siebie service objecty i jest mamy wspanialy projekt. Zen Of Python, Zen of Web Framework.

Co sądzicie mirki?


#python #programowanie
Skalpel_ - Rethinking the Web API framework 

github projektu

Od jakiegoś roku s...
  • 30
@Skalpel_: I jeszcze jedno dobierając technologię do projektu trzeba się liczyć z tym, że ktoś na 90% przejmie po tobie projekt albo będzie równocześnie go z tobą rozwijał. Jak wybierzesz coś popularnego to wprowadzenie będzie dużo szybsze (bo jest duża szansa, że kandydat miał z tym wcześniej do czynienia), a jak wybierz jakiś egzotyczny stack to wiadomo będzie to wszystko dłużej trwało bo minie sporo czasu zanim ktoś będzie się płynnie
@alex-fortune: Pomieszałeś pojęcia z różnych języków. Adnotacje Javove nie mają nic wspólnego z adnotacjami typów w Pythonie. Bliżej im do dekoratorów (czyli to, co pokazałeś na przykładzie)

adnotacje typów to coś w stylu:

def some_function(arg1: str, arg2: CustomClass) -> OtherClass:
@Skalpel_: dla mnie osobiście smart api framework to byłby taki w którym api się samo generuje. widać kulawą implementację tej idei w drf - viewsety i routery ale to nie jest jeszcze to.

W ogóle cała koncepcja API jest do dupy - jest kompletnie nieelastyczna i trzebyvt było ją #!$%@?ć. Programy powinny same się uczyć komunikacji ze sobą, to byłaby prawdziwa rewolucja
I pracowałeś bez doctrine czy robiłeś osobne modele do persystencji? Model domenowy i potem zapis do bazy przez np PDO?


@masterix: Roznie bywalo - generalnie, mój ulubiony sposób to emisja zdarzeń domenowych i mapowanie zdarzeń domenowych na zmianę persystencji - tutaj sposób dowolny, albo query via PDO, albo zmiany na obiekcie ORMowym ( zaznaczam - osobnym od modelu domenowego )

Pomieszałeś pojęcia z różnych języków. Adnotacje Javove nie mają nic wspólnego
Ale ja nie mówię o typach, tylko stricte o annotacjach w ujęciu takim jakim przedstawiłeś - pseudo-dekoratory. Takowe istnieją w pythonie ( wyżej wspomniany @annotate ) jak i w Javie ( na czele z @Inject, @ComponentScan i innymi "bajerami" )


@alex-fortune: Oczywiście, że istnieją. Ale to o czym pisał OP, czyli DI oparte o adnotacje typów opierają się właśnie na tym (czyli na adnotacjach typów) a nie na dekoratorach. Dlatego
Oczywiście, że istnieją. Ale to o czym pisał OP, czyli DI oparte o adnotacje typów opierają się właśnie na tym (czyli na adnotacjach typów) a nie na dekoratorach. Dlatego przykład, który podałeś, ma się nijak do tego, o czym pisał OP.


@dog_meat: Może ja źlę pamiętam, ale czy czasami aby nie zrobić autowire nie należy walnąć annotacji @Inject? :)
Oczywiście, są też kontenery, które analizują sygnatury konstruktorów i na tej