Wątek przeniesiony 2020-03-12 14:01 z Edukacja przez cerrato.

Kotlin czy Dart?

Odpowiedz Nowy wątek
2020-03-12 13:13

Rejestracja: 1 miesiąc temu

Ostatnio: 1 tydzień temu

0

Witam zastanawiam się który z tych języków jest bardziej przyszłościowy.
Kotlin - natywne aplikacje na Androida
czy może Dart + Flutter i wtedy aplikacje hybrydowe.
Na chłopski rozum, wszystko przemawia za nauką Darta i do tego Flutter.
Po co tworzyć dwa różne kody na IOS i Androida jak da się to zrobić za pomocą jednego.

Jak myślicie, co jest bardziej przyszłościowe?

Pozostało 580 znaków

2020-03-12 13:16

Rejestracja: 4 lata temu

Ostatnio: 1 godzina temu

Lokalizacja: Piwnica

3

To już bez znaczenia...


Mógłbyś trochę bardziej rozwinąć swoją myśl? - lukano bajajakadza 2020-03-12 13:21
Podbijam, czyżby orali androida? - KamilAdam 2020-03-12 13:26
Orają gatunek ludzki... - szweszwe 2020-03-12 13:30
Chyba nie ma drugiego takiego użytkownika tego forum, co by dawał tak bezużyteczne rady:) Nawet mnie ci się udało przebić. - Tomek Pycia 2020-03-12 13:35
Wszystko już bez znaczenia. Trup ściele się gęsto. Ludzie wyginą i tak. - Meini 2020-03-26 20:49

Pozostało 580 znaków

2020-03-12 13:26

Rejestracja: 1 rok temu

Ostatnio: 2 minuty temu

Lokalizacja: Silesia

3
  • Patrząc ogólnie to Kotlin jest bardziej przyszłościowy bo można w nim pisać nie tylko aplikacje na androida
  • Patrząc szczególnie, tylko na androida, to nie mam pojęcia

Twój post jest niezrozumiały. A w Kotlinie w praktyce można pisać tylko na Androida - Meini 2020-03-26 20:51
Rozumim że byles wszędzie i sprawdziłeś? W Kotlinie nawet wtyczki do gradle pisałem . Nie rozumiem kto mialby zabraniać pisać np wplikacje webowe w Kotlinie - KamilAdam 2020-03-26 23:11
@Meini nie można w Kotlinie napisać serwisu webowego? - Aventus 2020-03-26 23:24
Każdy projekt pisany w java można napisać w kotlinie, serwisy również. Java przy kotlinie wygląda słabo - xxx_xx_x 11 minut temu

Pozostało 580 znaków

2020-03-12 13:34

Rejestracja: 1 rok temu

Ostatnio: 2 minuty temu

6

Ja bym za bardzo nie wybiegał w przyszłość, tylko zobaczył, co teraz jest bardziej przydatne. W przyszłości wszystko może się odwrócić i nauka nowej technologi to jakieś 2 miesiące, żeby coś sensownego pisać. Ja bym teraz raczej szedł w Kotlina, ale kto to wie, co będzie za rok. Ja już dawno przestałem się uczyć "na zapas" gdyż parę razy życie mnie zaskoczyło i okazało się, że moja nauka była bezużyteczna a czas stracony. I już Heraklit z Efezu wiedział, że jedyną stałą rzeczą w życiu jest zmiana.

Pozostało 580 znaków

2020-03-12 14:28

Rejestracja: 6 lat temu

Ostatnio: 2 godziny temu

1

Warto jedynie zaznaczyć, że Kotlin to nie jest przyszłość. To teraźniejszość. Google zaleca pisanie w nim, a nie w Javie. Wiele zespołów native apps pisze w Kotlinie. Dart i Flutter to jedna wielka niewiadoma...

Pokaż pozostałe 14 komentarzy
Tylko zauważ, że z 80% jak nie więcej użytkowników telefonów to ludzie z bardzo niską świadomością tego, co jest w środku. Pójdą do salonu GSM, kupią telefon za złotówkę w promocji i nie będą mieli pojęcia, czy to Android, Fuchsia czy cokolwiek innego. Może ikonki będą wyglądac inaczej, ale tak naprawdę to co wersja Androida wygląd i układ tez się zmienia, więc nie zauważą, czy to inna wersja andka, czy inny system. - cerrato 2020-03-27 11:51
Masz rację - grski 2020-03-27 12:41
Google prawdopodobnie czeka z Fuchsją na upowszechnianie Fluttera. Zresztą, Flutter nie jest jeszcze dokończony. Z chwilą, gdy Flutter osiągnie wszystkie zakładane funkcjonalności i stanie się popularny, będzie można bezboleśnie zamienić Androida na Fuchsję. Gdy będzie na rynku już dużo aplikacji we Flutterze, Fuchsja już na starcie będzie mieć wielką bazę aplikacji i wielu programistów. Czym się kończy wydawanie systemu bez tego, było widać na przykładzie Windows Phone. G nie ma powodu spieszyć się z Fuchsją. - Meini 2020-03-29 16:59
@meini - święte słowa. +1. W pełni się zgadzam z tym, że na razie Flutter zdobywa rynek i przygotowuje grunt dla czegoś nowego, ale raczej jest to perspektywa przynajmniej kilku najbliższych lat. - cerrato 2020-03-29 21:58
Google raczej nie zarżnie kotlina na rzecz fluttera, nie po to inwestowali tyle kasy w kotlina. To będzie raczej zawsze alternatywa miedzy tymi dwoma - xxx_xx_x 4 minuty temu

Pozostało 580 znaków

2020-03-27 10:12
Moderator Kariera

Rejestracja: 2 lata temu

Ostatnio: 1 minuta temu

Lokalizacja: Poznań

1

Nie rozumiem, o co Wam chodzi z tym wybieganiem w przyszłość. OK, za pewien czas (być może) wejdzie Fuchsia i Android zostanie zaorany. Teoretycznie (stan na chwilę obecną, jak będzie docelowo to się okaże) Flutter ma być natywnym narzędziem do pisania dla tego nowego systemu. Dlatego - patrząc przyszłościowo, nauka Fluttera i Darta jest dobrym pomysłem.

ALE

we Flutterze można już obecnie pisać pełnowartościowe aplikacje na Androida oraz to paskudztwo z jabłkiem. Dlatego pisząc o teraźniejszości i Kotlinie proszę nie pomijać tego, że Flutter jest najbardziej teraźniejszy, wiele firm dokonuje migracji na niego i nie z powodu możliwego nadejścia Fuchsia, tylko pod kątem bieżących projektów.


Naczelny forumowy hejter Apple

That game of life is hard to play, I'm gonna lose it anyway
The losing card I'll someday lay, So this is all I have to say
Zaraz przyjdzie @Meini i powie ze to i tak nie ważne, bo wszyscy umrzemy. - Tomek Pycia 2020-03-27 10:21

Pozostało 580 znaków

2020-03-29 15:41

Rejestracja: 3 miesiące temu

Ostatnio: 1 dzień temu

0

Wszystko jedno który.


Pozostało 580 znaków

2020-03-29 22:10

Rejestracja: 6 lat temu

Ostatnio: 16 godzin temu

1

@cerrato: Jeśli chodzi o Flutter, brak wsparcie dla 3D i pisanie masy kodu by stworzyć nawet najprostszą aplikację. Ja bym rzucił monetą, który język się uczyć i zabrał się za Kotlina

Pozostało 580 znaków

2020-03-29 22:19
Moderator Kariera

Rejestracja: 2 lata temu

Ostatnio: 1 minuta temu

Lokalizacja: Poznań

0

Ale jak nie robisz gier czy innych multimedialno-rozrywkowych rzeczy, to brak 3D nie przeszkadza w niczym. Apka dla handlowca, katalog części albo komunikator bez problemu pójdzie na Flutterze. Do prostych wizualizacji 3D są dostępne silniki, ale gry na nich nie zrobisz, bo bazują one na samym CPU, nie potrafią korzystać z GPU. Niemniej do pokazani jakiegoś prostego modelu 3D czy niezbyt skomplikowanej animacji to powinno wystarczyć.

Poza tym Flutter na razie się wgryza na rynek, za pewien czas, gdy zdobędzie popularność, wsparcie 3D będzie koniecznością. Zresztą sami o tym piszą na swojej stronie - https://flutter.dev/docs/resources/faq

Today we don’t support for 3D via OpenGL ES or similar. We have long-term plans to expose an optimized 3D API, but right now we’re focused on 2D.


Naczelny forumowy hejter Apple

That game of life is hard to play, I'm gonna lose it anyway
The losing card I'll someday lay, So this is all I have to say
Pokaż pozostałe 5 komentarzy
Brzmi ciekawie. Ale w sumie to od razu mi się nasuwa analogia do WinApi i kolejki komunikatów, która prowadzi nasłuch komunikatów wpadających do aplikacji, a potem "rozdziela" zadania elementom składowym okna. Dobrze kojarzę, czy to jednak działa inaczej? - cerrato 2020-03-30 11:07
BloC działa tak, że wrappujesz kontrolkę albo okno i w ten sposób dane spływają. Bloków możesz mieć wiele i możesz różnie je skonfigurować, np podpinać kilka widżetów lub tylko jeden, jest jeszcze więcej niuansów i możliwości. Tutaj np dość przystępnie jest to wyjaśnione na przykładzie prawdziwej aplikacji: https://www.raywenderlich.com[...]started-with-the-bloc-pattern - Meini 2020-03-30 11:17
Dzięki za link, w wolnej chwili obczaję :) - cerrato 2020-03-30 11:18
To raczej dla zrozumienia zasady, bo w prawdziwych aplikacjach korzystałbym np z tego: https://bloclibrary.dev/#/flutterbloccoreconcepts no ale wiele jest możliwości - Meini 2020-03-30 11:33
BlocBuilder is very similar to StreamBuilder but has a more simple API to reduce the amount of boilerplate code needed - już mi się podoba :D - cerrato 2020-03-30 11:39

Pozostało 580 znaków

2020-03-30 08:51

Rejestracja: 6 miesięcy temu

Ostatnio: 1 godzina temu

1
Dregorio napisał(a):

@cerrato: Jeśli chodzi o Flutter, brak wsparcie dla 3D i pisanie masy kodu by stworzyć nawet najprostszą aplikację. Ja bym rzucił monetą, który język się uczyć i zabrał się za Kotlina

Nie jest to prawda. Jest odwrotnie, to natywne api Androida wymusza pisanie rozwlekłego kodu w wielu klasach i plikach xml. Prosty przykład:

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatefulWidget {
  @override
  State<StatefulWidget> createState() {
    return _MyAppState();
  }
}

class _MyAppState extends State<MyApp> {
  List<String> _products = ['Laptop'];
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData(primarySwatch: Colors.deepPurple),
      home: Scaffold(
        appBar: AppBar(title: Text('Long List App')),
        body: Column(children: [
          Container(
              margin: EdgeInsets.all(10.0),
              child: RaisedButton(
                  color: Theme.of(context).primaryColor,
                  splashColor: Colors.blueGrey,
                  textColor: Colors.white,
                  onPressed: () {
                    setState(() {
                      _products.add('Macbook');
                    });
                  },
                  child: Text('Add Laptops'))),
          Column(
              children: _products
                  .map((element) => Card(
                        child: Column(
                          children: <Widget>[
                            Image.asset('assets/macbook.jpg'),
                            Text(element,
                                style: TextStyle(color: Colors.deepPurple))
                          ],
                        ),
                      ))
                  .toList()),
        ]),
      ),
    );
  }
}

Efekt działania programu:
title

To jest już CAŁY potrzebny kod. Lista z niestandardowymi itemami, załadowana dawnymi z przykładowej kolekcji. Napisz teraz to samo w Kotlinie i niech to będzie krótsze i bardziej zwięzłe.

Jeszcze zabawniej się zrobi, jak dodamy tu jakieś rzeczy, które mają wykonywać się asynchronicznie. Albo jakieś niestandardowe kontrolki, np niech obrazek będzie przycięty do kształtu okręgu. To Kotlin daje trochę lukru składniowego w porównaniu z Javą, ale dalej to jest rozwlekłe api Androida

edytowany 3x, ostatnio: cerrato, 2020-03-30 10:16
Pewnie, a teraz zrób to bardziej customowalne. Takiej apki nie oddasz klientowi XD - Dregorio 2020-03-30 08:56
A co to znaczy "bardziej customowalne". Aaa no tak, trzeba by tu wepchnąć Daggera. Bo wszędzie trzeba 😛 na potrzeby tego przykładu, zrób tak samo niecustomowalne, ale mniej rozwlekłe. Bo Kotlin mniej rozwlekły jest - Meini 2020-03-30 08:58
Nie, to jest przykład z tutoriala, nigdy na produkcji nie zobaczysz takiego kodu. Widziałem kod produkcyjny jednego i 2. Sorry, ale Java/Kotlin dla mnie wygrywa jesli chodzi o czytelność i zwięzłość - Dregorio 2020-03-30 09:02
Może i dla ciebie wygrywa, szkoda tylko że nie uzasadniłeś dlaczego. A może to jest tak, że przyzwyczajenia biorą górę. Daj bardziej zwięzły, analogiczny przykład w Kotlinie. Też tylko przykład, a nie kod produkcyjnej aplikacji - Meini 2020-03-30 09:04
Mam ci wklejać kod produkcyjny? Jak wrzucisz przykład z tutoriala to wszystko wyglada super. Ty nie dałeś też argumentu, a na pewno nie jest nim ten kod. Jak dla mnie możesz nawet gołą dupą na śniegu siedzieć jak tylko tak lubisz, wolny kraj - Dregorio 2020-03-30 09:06
Nie, pokaż na przykładzie, gdzie jest lepsza custinizacja i zwięzłość. Uzasadnij swoje zdanie, bo tak to można dyskutować bez końca. To, co ja tu podałem też można poukładać inaczej, w przypadku Androida natywnego to nie Kotlin jest problemem (bo to dobry język), a syfiaste api natywnego Androida, nawet lukier składniowy Kotlina wszystkiemu nie zaradzi - Meini 2020-03-30 09:08

Pozostało 580 znaków

Odpowiedz

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