Modern Backend Development

0

Jakie nowosci widzicie na horyzoncie albo co po latach bedzie w koncu mialo swoje 5 minut? Co jest popularne w startupach?

Wachlarz jest taki:

  • node.js
  • scala i akka / akka-http
  • golang
  • swift i vapor, perfect itp.
  • java i ewolucyjny rozwoj java ee 8, spring boot itp.
  • net core
  • php 7
  • python i flask
  • RoR
0

Ja osobiście powoli przyswajam sobie .net core, aczkolwiek jestem świadom tego, że pewnie się nie przyjmie.

0

swift na backendzie?
Nie wiem ;) bo mozna.
Sprawdz vapor i perfect framework, wygladaja ciekawie.

Z tego co widzialem swift jest calkiem szybki.

0

Ale nie jest w żaden sposób unikalny - wpisuje się w to samo pole co tworzenie backendu w rustcie - niby, można, ale z kompilowanych i tak Go ma lepszą zabawkę w postaci kanałów.

0

Nie wiem czy unikalnosc ma cos do rzeczy czy technologia stanie sie popularna czy nie ;)

1
Krwawy Mleczarz napisał(a):

Ja osobiście powoli przyswajam sobie .net core, aczkolwiek jestem świadom tego, że pewnie się nie przyjmie.

Ale co ma się nie przyjąć? Runtime? Wystarczy, że M$ dropnie support na zwykłego .NETa i się przyjmie w mgnieniu oka. :\

1

http://techstacks.io/
Ciekawa stronka / appka

Latwo mozna zobaczyc kto czego uzywa/l.

0

Wedlug powyzszego. Python wydaje sie krolem startupow ;) Dalej node.js czy RoR i zaczyna pojawiac sie tez Go.

A n pewnym etapie pojawia sie java czy scala.

0

Ja bym postawił na Python i Django, widzę w nich pisanych dużo startupów, oraz rozmaite czaty wideo. Łatwiej w Pythonie utrzymać kod niż w brzydkim JS/Node, no chyba że wspierane przyjemnym CoffeScript.

0
Mały Samiec napisał(a):

Ja bym postawił na Python i Django, widzę w nich pisanych dużo startupów, oraz rozmaite czaty wideo. Łatwiej w Pythonie utrzymać kod niż w brzydkim JS/Node, no chyba że wspierane przyjemnym CoffeScript.

Nie wiem czy powoli nie odchodzi się od Django. Wydawało mi się, że prędzej Flask.
A CoffeScript nie odszedł też do lamusa na rzecz Typescript / ES6 ?

1
Mały Samiec napisał(a):

Ja bym postawił na Python i Django, widzę w nich pisanych dużo startupów, oraz rozmaite czaty wideo. Łatwiej w Pythonie utrzymać kod niż w brzydkim JS/Node, no chyba że wspierane przyjemnym CoffeScript.

Kod w nowym ES6 jest tak samo zwięzły jak w pythonie

1

Elixir i phoenix. Czas developmentu dosyć porównywalny do RoR i DJango i jednocześnie lepsza skalowalność.

0

w CoffeeScript dzisiaj nie opłaca się pisać, bo obecny JavaScript (ES6 i wyżej) jest już bardziej ekspresywny niż CoffeesScript.

Po drugie to składnia CoffeeScript to porażka, pisząc w nim miałem ciągle błędy składniowe i musiałem ciągle się zastanawiać co dany kod robi bo składnia jest niejednoznaczna (jak ktoś chce to google: coffeescript ambiguous syntax, nie tylko ja tak myślę z tego co widzę).

Po trzecie tooling. Po co na własną prośbę się pozbywać narzędzi do JavaScriptu (ESLint choćby, wsparcie edytorów itp.) na rzecz CoffeeScripta, który ma słabiutkie wsparcie?
Jeśli już, to ludzie przechodzą na TypeScript, co według mnie jest głupią modą, ale i tak TS ma więcej sensu, bo jest przynajmniej sensowne wsparcie narzędzi, edytorów itp.

Łatwiej w Pythonie utrzymać kod niż w brzydkim JS/Node, no chyba że wspierane przyjemnym CoffeScript.

To jest złudne myślenie. Brak klamerek i średników nie polepsza "utrzymywalności" kodu.

1

Moim zdaniem Golang ma trochę szansy na trochę popularności.
Ma też taki trochę duck typing ale jest statycznie typowany.
I raczej trudno coś zepsuć, w dodatku to co napiszemy ma wydajność dość ok.
Jest też w miarę popularny z trendem rosnącym.

0

ES6 jest nadal bardziej rozwlekły od CoffeScript, więc nie wiem o czym Ty piszesz.

0

No nie wiem, używając w ES6 funkcji strzałkowych, restrukturingu, domyślnych parametrów, spread operatora, template strings mam chyba mniej więcej podobną zwięzłość co w CoffeeScript.

Chociaż pewnie gdyby nie CoffeeScript to nie wprowadzono by pewnych rzeczy do JSa.

1
Wielki Mleczarz napisał(a):

Moim zdaniem Golang ma trochę szansy na trochę popularności.
Ma też taki trochę duck typing ale jest statycznie typowany.
I raczej trudno coś zepsuć, w dodatku to co napiszemy ma wydajność dość ok.
Jest też w miarę popularny z trendem rosnącym.

lol no generics

0

Pomimo nienawiści do javascriptu to stawiałbym na node mocno.
Python i Django, jak wyżej wspomniano to przeżytek na ten moment. Może coś go znowu ruszy, przy python4 czy 5 - nie wiadomo.
Środowiska startupowe rządzą się swoimi prawami(hype).
Duże b2b będzie nadal w c# i Javie, c++, a na rusta bym ponownie spojrzał za 5 lat, czy wciąż żyje i napisano w nim coś innego niż hello world

0
Mały Orzeł napisał(a):

lol no generics

Nikt nie powiedzial, ze mialby bezposrednio np. Konkurowac z Java ale z powodzeniem moze zyc razem z nia. Do bardzo wielu zadan moze okazac sie wystarczajacy.

Na oficjalnej grupie slackowej siedzi okolo 12 tysiecy ludzi codziennie. To sporo.

0

Powodzenia rozwijania dużych aplikacji w tych pseudojęzykach :D Po 2-3latach katorgi z uśmiechem na ustach wrócicie na C# czy Javę.

0
Krzywy Terrorysta napisał(a):

Powodzenia rozwijania dużych aplikacji w tych pseudojęzykach :D Po 2-3latach katorgi z uśmiechem na ustach wrócicie na C# czy Javę.

Zależy co się robi. Jak ktoś się pcha z motyką na słońce to sam się prosi o kłopoty.

Taki Golang jest w Google, Facebooku, Intelu, Netflixie, Wikia, Allegro, Uber, Dropbox... Raczej jednak tam gdzie już mieli wcześniej jakiś duży backend.
I taki Golang pewnie jest uzupełnieniem stacka.

Czy można cały backend w tym zrobić ? Pewnie wszystko się da. Ale trzebaby się zastanowić nad tym kilka razy.

Tutaj budują głównie na Go:

0

A np. startupy mają to do siebie, że startuja w pythonie i ruby a pozniej przepisuja na np. jave.

0

@mały Orzeł
Twórca Pythona twierdził że wersja 4 nie powstanie, a na JS i Node też moda przeminie.
Co do Javy to kto pisze w niej małe startupy. Twitter został przepisany z Ruby na Scale nie na Jave. Ruby cały czas ma się dobrze a Python jeszcze lepiej, na uczelniach wśród naukowców, w przemyśle kosmicznym, w web(Django) i w wielu różnych kierunkach. Jest to język do wszystkiego, jak by Google tyle w niego zainwestowało czy inna firma co w JS, na pewno by był jeszcze szybszy. Przyspieszyło PHP 7 to i Python kiedyś przyspieszy, jest jeszcze spory potencjał w podrasowaniu jego interpretera.

0

Niewazne czy to java, scala czy c#. Przepisują na cos statycznie typowanego.

0

Wiem, że np. platforma https://futuramo.com/apps jest napisana cała w Go. Także nie tylko fejsy, google, allegry i ubery ;)

0

ten up wydajności w PHP7 jest naprawdę 50%, a myślałem że to tyko marketing jednak ZEND się postarał, tylko to niepełnosprawne typowanie wartości i sporo bibliotek z PHP5 w PHP7 mam bugi... także na środowisko produkcyjnedalej ryzykowne w użyciu

0

Jakbym miał teraz pisać coś od nowa, to myślę, że wybrałbym Javę 8 i Spring Boota.
Jak chcemy pisać "zwykłą aplikację" webową, to spokojnie damy radę. Jeżeli chcemy bawić się w mikroserwisy, to możemy użyć Hystrixa, Zipkina, Eureki, etc. Ponadto, Spring Boot uprościł początkowy setup do minimum, dzięki czemu możemy postawić nową aplikację tak szybko, jak w tych wszystkich php-ach, ruby, etc. Nie musimy tego nawet wrzucać na serwer, bo mamy w gratisie embedded server. Dodatkowo, mamy silnie typowany język, porządne build systemy, dobre biblioteki do testów, porządne IDE, dużo bibliotek wspierających development, sporo artykułów, dobra dokumentacja frameworków, duże community. Jak ktoś bardzo chce, to może sobie też pisać w Scali, Kotlinie albo czymś jeszcze bardziej wymyślnym korzystając jednocześnie z ww. narzędzi, bo jest wiele języków działających na JVM.

Podsumowując, ww. stack jest chyba najsolidniejszym z obecnie istniejących przy zachowaniu sporej elastyczności i pewnej dozy "hipsterstwa".
Node.js i Go, itp. są spoko i do pewnych zastosowań pewnie będą lepsze, niż Java, ale każdej z tych technologii czegoś brakuje w porównaniu ze świeżym stackiem javowym.

Polecam też poczytać ten artykuł: http://blog.paralleluniverse.co/2014/05/01/modern-java/ wraz z pozostałymi częściami. Założę się, że większość programistów Java nie słyszała o tym, co tam jest opisane, a sporo tych rozwiązań jest naprawdę dobrych lub chociaż ciekawych.

1

@wiciu
Spring Boot jest spoko, poza tym, że nie lubie springowych controllerow i resttemplatów ;) Ale też nie jest to aż tak świeże.
Nie jest to jednak takie świeże i ma za sobą balast wielu lat developmentu i kompatybilności wstecznej.

Zresztą Spring nie próżnuje i pojawia się Spring 5 czy Spring Reactor, który jest osobnym projektem. Bo stary Spring ma np. braki jeśli chodzi o np. throughput.
Do czegoś małego zresztą taki Spring wydaje się zbyt duży. Poza tym jesteś uwięziony w tym stacku i nie zawsze łatwo pożenić to z czymś innym.
Spring/Netflix OSS wydaje się trochę coupled stackiem.
Ale obecnie również możesz zbudować coś np. ze spring boot i ratpack. Tylko nie wiem czy zawsze będzie sens.
No i potrafi zeżreć trochę ramu. Oraz w mojej ocenie łatwo tam coś zepsuć.
Na obecne czasy uruchamia się to też jednak za wolno. Skoro Go, Node.js czy Ratpack uruchamia się natychmiast to Spring też powinien.

Na pewno nie jest tak jak większość hejterów javy myśli. Java może być nowoczesna, ale wielu siedzi z myślami w przeszłości.

0

A w których językach do Backendu, nie trzeba się paprać z HTML5, CSS, JavaScript? Z tego co piszą tu ludzie, programista PHP, Ruby, Java musi znać do Backendu te trzy technologie co wymieniłem. Jedynie może Python i Java/Android nie wymaga znajomości i pisanie w HTML5 oraz spółce Frontendu?

1 użytkowników online, w tym zalogowanych: 0, gości: 1