Przyszłość tworzenia aplikacji

0

Natknąłem się na taki post Przyszłość programowania - app desktop vs app web o tym że web lepszy od desktopa
web ma tą zaletę że nie trzeba

  • nic ściągać
    -nic aktualizować
    -odpali się na każdym systemem z wyszukiwarką
    moc obliczeniowa co prawda nie powala ale nikt nie robi symulacji na nim.

ale czy to przyszłość? Chciałbym waszej opini ja wam przedstawię plusy fluttera.

ale od jakiś 3 miechów uczę się fluttera który jest frameworkiem od googla
jego zalety to
-jest na większość systemów tworząc jedną aplikację tworzy się tak naprawdę wersję webową android ios i wiele innych (ktoś powie, że z aplikacji webowych można za pomocą jakiś nażędzi zrobić aplikacje desktopowe ale trzeba się z tym bawić we flutterze wpisuje się 2 linijki w cmd i już się kompiluje z marszu na jakiś system)
-jest szybki itd

  • wszystko robi się w jednym języku nie licząc jakiś zapytań sql czasem. Nie obchodzi cię css html php js itd.
  • ma się wyj*** na internet(jak nie ma komunikacji poza sieć ale wewnętrznie w sieci można za pomocą udp i socketów )
    o ile się nie mylę aplikacje z google play itd same się aktualizuję więc ten problem to już chyba nie problem.
3
  1. Jak coś jest do wszystkiego to jest do niczego ;)
  2. To nic nowego, takich frameworków na mobile zawsze było kilka i mimo to nie zrobiły wielkiej kariery. Prawda jest taka, ze im bardziej złożona aplikacja tym większa potrzeba używania natywnego API platformy.
  3. Aplikacja webowa generalnie ma z góry określony ekosystem więc argument że działa na różnych systemach nie ma sensu.
0

@Shalom: To google więc wiesz skupili się na android i fuchsia:)

0

co prawda większe aplikacje składają się z rozszerzeń . Jedne są na androida inne na ios inne na web więc to nie jest też tak pięknie że na wszystkie i trzeba szukać zamienników rozszerzeń

4

To google

I co z tego? Google jest znany z wymyślania i ubijania projektów ;) Jutro mogą uznać ze jednak z tego rezygnują. Jeszcze raz: to serio nie jest nic nowego. react, ionic, phonegap, xamarin, cordova... Jest tego cała masa, ale mają cechę wspólną: nadają się do prostych apek i z reguły do niczego więcej.

No i to jest zupełnie inny segment niz aplikacje webowe.

2

Flutter flutterem, ale każdy kogo obchodzi wydajność apki na telefonie i tak robi w native, więc trzeba sie naumieć dodatkowo developmentu na androida/ios

1

ale czy to przyszłość? Chciałbym waszej opini ja wam przedstawię plusy fluttera.

Przyszłością raczej nie będzie jedno konkretne rozwiązanie, tylko obstawiam, że przyszłość będzie wyglądać tak jak teraz - czyli, że są różne opcje i niektórzy używają tego, inni czego innego. Jedna technologia ma zalety A, B, C, D ale ma wady X, Y, Z, których to wad nie ma jakaś inna technologia.

I wybór niekoniecznie musi być czysto technologiczny, bo np. jedna technologia jest bardziej popularna (więc to zaleta sama w sobie, bo popularność -> większy ekosystem / wsparcie społeczności / łatwiej znaleźć programistę itp.). Z kolei jakaś inna technologia może nie być zła, ale ktoś, kto decyduje o wyborze technologii, jej nie lubi (albo odwrotnie - jest fanem danej technologii).

Więc - przyszłością są różne technologie i wątpię, żeby jedna technologia zdominowała rynek (chyba, że ktoś jej pomoże - jak Steve Jobs pomógł HTML5 wygrać z Flashem).

ale od jakiś 3 miechów uczę się fluttera który jest frameworkiem od googla
jego zalety to

No właśnie. A jakie ma wady? Nie znam fluttera, ale jak ktoś mi próbuje coś sprzedać w samych superlatywach, to albo jest fanem/twórcą danej technologii (i ma skrzywiony pogląd) albo dopiero zaczyna w niej pracować (i jeszcze nie poznał jej wad). Dla mnie bardziej przekonująca jest lista plusów i minusów danej technologii :)

wszystko robi się w jednym języku nie licząc jakiś zapytań sql czasem. Nie obchodzi cię css html php js itd.

Dobra, w sumie napisałeś (mimowolnie) wadę. wszystko robi się w jednym języku - czyli w domyśle: trzeba się uczyć nowego języka, zamiast używać języków, które się już zna.

1

ten język jest podobny do javy . i kotlina to dart

Są wady jak np to że to jest nowe i teraz w wyniku błędu w środowisku android studio w nowej wersji są pewne błędy kompatybilności że framework tak jakby nie widzi środowiska. Wadą jest też to że jak ktoś chce tworzyć na androida i ios to musi umieć skonfigurować niektóre pliki android i ios jak info.plist manifesty i gradle

Ale mi się już nie chce uczyć tych wszystkich języków to jest męczące. Więc pomyślałem o wszystkim w jednym. Robię trochę tak jak z programowaniem mikrokontrolerów (hobbystycznie pÓÓÓÓki co). Wybrałem arduino ide(to są środowiska determinujące dany język) nie jakieś atmel studio do avr albo jakieś stm32cube do stm32 bo po pierwsze w arduino ide mogę zarówno robić na avr i stm32 w jednym języku . Może trochę kod jest mniej zoptymalizowany ale to tak jak z assemblerem niektórzy twierdzą że jest dużo szybszy od c++ ale to boyło 30 lat temu teraz kompilatory są tak wydajne, że większość assemblerowców napisze tak samo zoptymalizowany kod jak w c++. Albo nawet gorzej.

W ogóle to do tej pory nie rozumiem po co tyle języków programowania. Przecież wystarczyło by może ze 3. Jeden ogólny drugi do baz danych a trzeci do szybkich algortmów. We wszystkich rozchodzi się o to samo. To tylko kolejne warstwy abstrakcji nad językiem maszynowym którego pierwszą warstwą abstrakcji był assembler.

0

Co do arduino to zobacz sobie plugin platformio do VSC bo Arduino IDE to podobno bardzo kiepski jest. (u mnie nawet sie nie dalo uzywac bo nie byl kompatybilny z themem systemowym i nic nie bylo widac - tyle moge o nim powiedziec ;) )

W ogóle to do tej pory nie rozumiem po co tyle języków programowania. Przecież wystarczyło by może ze 3. Jeden ogólny drugi do baz danych a trzeci do szybkich algortmów. We wszystkich rozchodzi się o to samo. To tylko kolejne warstwy abstrakcji nad językiem maszynowym którego pierwszą warstwą abstrakcji był assembler.

Z takim podejsciem zastrzymalibysmy sie w erze Cobola, Fortrana i co tam jeszcze bylo trzeciego :) (moze Lisp)

0

a zobaczę
No wydaje się spoko. Pisze się dosłownie tak jak w tym na arduino ide. Nawet sposób instalacji podobny (bardzo) do rozszerzeń z arduino no ale największą zaletą jest to że tło jest czarne i oczy się nie męczą jak z tym arduino.

3

Wybrałem arduino ide(to są środowiska determinujące dany język) nie jakieś atmel studio do avr albo jakieś stm32cube do stm32 bo po pierwsze w arduino ide mogę zarówno robić na avr i stm32 w jednym języku

W języku i tak możesz robić (np. C), ale Arduino daje ci pewną wspólną warstwę abstrakcji, co jest miłe. Jako platforma Arduino ma sporo wad, na szczęście wraz z arduino-cli trochę może zostanie naprawione.

We Flutterze pobawiłem się przez ostatnie dwa miesiące i muszę przyznać, że całkiem mi się podoba. Czy to będzie całkowita przyszłość? Raczej nie. Ma swoje wady (i nie tylko to, że producentem jest Google).

W ogóle to do tej pory nie rozumiem po co tyle języków programowania. Przecież wystarczyło by może ze 3. Jeden ogólny drugi do baz danych a trzeci do szybkich algortmów. We wszystkich rozchodzi się o to samo. To tylko kolejne warstwy abstrakcji nad językiem maszynowym którego pierwszą warstwą abstrakcji był assembler.

xkcd: standards

1

Przyszłość jest jedna - jeszcze więcej RAMu, cykli procesora i telemetrii przy rehaszowaniu starych idei co by usprawiedliwić (i przykryć) ageism w polityce HR. Cała reszta to PR.

A co do Fluttera - lepiej ucz się SDLa. Ta sama idea, napisany w uniwersalnym C (+ bindingi do normalnych języków) i przede wszystkim sprawdzony w boju.

0

Ceglane mosty, domy i samoloty!

0

@loza_wykletych: @filemonczyk:

loza_wykletych napisał(a):

Przyszłość jest jedna - jeszcze więcej RAMu, cykli procesora i telemetrii przy rehaszowaniu starych idei co by usprawiedliwić (i przykryć) ageism w polityce HR. Cała reszta to PR.
ja nic z tego nie rozumiem

no ale to jest smutne, że w części zawodów ludzie starsi swój wiek nadrabiają doświadczeniem a w pewnym wieku czas zaczyna odbierać to co kiedyś dał i coraz ciężej się uczyć a w programowaniu doświadczenie nie uratuje bo doświadczenie 40 letnie jest tyle samo warte co 3 letnie.

2

w programowaniu doświadczenie nie uratuje bo doświadczenie 40 letnie jest tyle samo warte co 3 letnie.

To nie takie proste. Technologie się zmieniają i wciąż się trzeba uczyć, ale pewne koncepcje, pomysły - zostają. Dodatkowo masz doświadczenie z samego prowadzenia/uczestniczenia w projektach (wiesz jak bardzo rzeczy się zepsują, wiesz jak planować, wiesz jak estymować itp.) albo wiesz o rzeczach z konkretnej domeny problemu (np. masz doświadczenie w branży.. nie wiem - kosmicznej). Po pewnym czasie fakt, że piszesz we Flutterze czy innym JavaScripcie nie ma tak wielkiego znaczenia - doświadczony programista jest w stanie dość łatwo przerzucić się na inne narzędzie - nie będzie w nim od razu ekspertem, ale da radę.

0

Na oko przyszłość to interfejsy bardziej przyjazne człowiekowi:

  • Alexy i inne asystenty, komunikacja za pomocą głosu
  • Wearables typu Apple Watch które mierzą tętno, ciśnienie i h*** wie co tam jeszcze. Już teraz Apple Watch ostrzega jak siedzisz bez ruchu ponad 1h przed kompem :P Generalnie tego typu urządzenia zastąpią zapewne trenerów osobistych, będą nie tylko pomocą w dbaniu o formę ale również o zdrowie.

Klawiatura i ekran staną się przeżytkami których używa tylko niewielka część społeczeństwa (programiści), "normalni" ludzie będą się komunikować z maszynami za pomocą głosu.

Ekrany nawet te LCD to zabierające miejsce na biurku rupiecie. W przyszłości będziemy mieli urządzenia w stylu google glass które wyświetlą ci przed oczami obraz jaki chcesz, gdzie chcesz i w jakiej odległości chcesz. Przyjazne oczom i super przenośne. Zapewne co bardziej techniczni będą instalować adblockery, będą również VR apki pomagające w parkour czy jeździe na deskorolce lub innym cudzie. Znając naturę ludzką będą też pewnie inne apki np. dorabiające wąsy szefu itp.

Sporo aplikacji będzie pisana poprzez naukę (tak jak robią to dzieci). Programiści będą przypominać mix data-science i AI-dev'a, programowanie będzie polegać na stworzeniu odpowiedniego zbioru uczącego oraz zapewnieniu odpowiedniego marginesu błędu.

OK trochę się zapędziłem, ale tak może wyglądać przyszłość za 50 lat...

A teraz wracając na ziemię: świat idzie w mobile. Cokolwiek co dobrze działa na smartphone ma szansę na sukces. Osobiście obstawiam aplikacje-strony www bazujące na WASM'ie. Ale apki natywne też powinny się trzymać nieźle - zwłaszcza że niektóre elementy korporacyjne (Apple) będą przeciwne obchodzeniu ich sklepów z niezwykle wysoką marżą.

0
0xmarcin napisał(a):
  • Alexy i inne asystenty, komunikacja za pomocą głosu
  • Wearables typu Apple Watch które mierzą tętno, ciśnienie i h*** wie co tam jeszcze. Już teraz Apple Watch ostrzega jak siedzisz bez ruchu ponad 1h przed kompem :P Generalnie tego typu urządzenia zastąpią zapewne trenerów osobistych, będą nie tylko pomocą w dbaniu o formę ale również o zdrowie.

A co do zastępowania zawodów przez maszyny. To ja się w ogóle zastanawiam jak to jest. Trąbią że kasjerzy zostaną zastąpieni przez maszyny (w niektórych tesco tak jest )ale jakoś tego nie realizują(najprostsza czynność do zastąpienia). Chyba za 30 lat. Pomijając fakt, że gdzieś czytałem, że chyba ze 30% zawodów jest bezsensownych i coraz bardziej się z tym zgadzam.

0
kamil kowalski napisał(a):

Może trochę kod jest mniej zoptymalizowany ale to tak jak z assemblerem niektórzy twierdzą że jest dużo szybszy od c++ ale to boyło 30 lat temu teraz kompilatory są tak wydajne, że większość assemblerowców napisze tak samo zoptymalizowany kod jak w c++. Albo nawet gorzej.

Czesc mojej pracy to pisanie na androida w neonie. Ostatnio nie 30 lat temu ale kilka godzin temu. I nie zauwazylem zeby jakikolwiek kompilator chocby zblizyl sie wydajnoscia, mimo ze maja mnostwo optymalizacji o ktorych zapewny nigdy nie slyszalem. Gdybym zamiast tego pisal w jakiejs zabawce do wszystkiego to rezultat by byl tak zalosny ze bym musial szukac innej pracy.

0
Ktos napisał(a):

To nie takie proste. Technologie się zmieniają i wciąż się trzeba uczyć, ale pewne koncepcje, pomysły - zostają. Dodatkowo masz doświadczenie z samego prowadzenia/uczestniczenia w projektach (wiesz jak bardzo rzeczy się zepsują, wiesz jak planować, wiesz jak estymować itp.) albo wiesz o rzeczach z konkretnej domeny problemu (np. masz doświadczenie w branży.. nie wiem - kosmicznej).

Technologie w sensie? Frameworki? Języki?

Po pewnym czasie fakt, że piszesz we Flutterze czy innym JavaScripcie nie ma tak wielkiego znaczenia - doświadczony programista jest w stanie dość łatwo przerzucić się na inne narzędzie - nie będzie w nim od razu ekspertem, ale da radę.

Bo nie ma. Ale fakt że możesz z łatwością usprawiedliwić zmieniającymi się trendami redukcję działów maskując przy tym kryterium wiekowe przed związkami zawodowymi czy społeczeństwem jak najbardziej ma. I do tego piłem.

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