Přejít k navigační liště

Zdroják » Zprávičky » Google Dart přichází

Google Dart přichází

Zprávičky Různé

Nálepky:

Google představil Dart, jazyk, který by měl přiblížit programování pro webový frontend znalostem programátorů, odchovaných C++/Javou. Přináší třídy, rozhraní, knihovny, typové anotace a další věci obvyklé v OOP jazycích, a svým zápisem připomíná C-like jazyky. Hello world s použitím třídy lze zapsat takto:

class HelloDartTest {
  static testMain() {
    print("Hello, Darter!");
  }
}
main() {
  HelloDartTest.testMain();
}

Překladač Dart může z tohoto kódu vytvořit JavaScriptovou reprezentaci, nebo jej může spouštět na serverovém VM.

Pokud tento kód přeložíte do JS bez dalších optimalizací, zjistíte, že výsledkem je 17259 řádků JS kódu. (Při snaze tento kód minifikovat pomocí online JS nástrojů se prohlížeč Firefox 7.0.1 po několika sekundách poroučel s hlášením o pádu – pozn.red.)

Zajímavá diskuse probíhá pod odkázaným příkladem – jednak se dozvíte, jak správně provést následné optimalizace a eliminace mrtvého kódu (výše uvedený překlad obsahuje velké množství knihovního kódu, který nebude použit), a pokud po ránu hledáte spíš rozptýlení, naleznete řadu obrázků a komentářů, které více či méně vtipně glosují číslovku 17259 („Achievment unlocked – 17259 lines Hello World“ či „Představte si, co by Dart dokázal ve 34528 řádcích? – Napsal by Hello World dvakrát!“)

Komentáře

Odebírat
Upozornit na
guest
9 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
Zobrazit všechny komentáře
vlkoII

Je celkom zaujimave si prejst tie riadky okom. Samozrejme ze ten hello world je na riadku 17192, vsetko ostatne je dart framework nad js, presne v style „JavaScript is Assembly Language for the Web“ http://www.hanselman.com/blog/JavaScriptIsAssemblyLanguageForTheWebSematicMarkupIsDeadCleanVsMachinecodedHTML.aspx

Asi si na to budeme musiet zvyknut, aj ked samozrejme mohol base kod google oddelit do separatnej js kniznice a zminimalizovat ho, ale who cares?

nikdo

To je trochu nadstřelené, řekl bych. Schválně jsem si to teď zkusil. HelloWorld v C: zdroják 93 B, výsledná binárka 7131 B (bez optimalizací).

Martin Putniorz

Bohužel to výkonu moc nepomůže http://jsperf.com/dart-hello-world-test-with-optimize/9

vlkoII

Napadlo by ma prirovnanie, ze film v rozliseni 240×160 pixlov ma neporovnatelne mensiu velkost ako film vo full HD a aj tak si vacsina ludi vyberie tu druhu variantu, len neviem nakolko sa to k teme dart vs js vs real pc jazyky hodi.

Ja len dufam, ze webarchive tu moc nezafunguje, lebo nase deti v buducnosti pozerajuc 4k video sa budu sa budu z debaty o raw zdrojaku s velkostou 550k (tolko ma ten sample v skutocnosti velkost) asi riadne uchechtavat.:)

Ladislav Thon

Dart je dynamicky typovaný. Typové anotace se používají pro kontrolu (checker, devel mode) a při kompilaci do JavaScriptu (a pochopitelně jsou skvělé pro vytváření dalších nástrojů), ale jedním ze základním principů je, že jejich odstranění nemá žádný vliv na sémantiku.

PH

Konečně jazyk (po ObjC), který s typy zachází rozumně.

Jak Reddit migroval svou funkcionalitu komentářů z Pythonu do Go

Různé
Komentáře: 0
Reddit modernizuje jednu ze svých nejdůležitějších částí infrastruktury: systém komentářů, který denně obsluhuje miliony uživatelů. Původní Pythonový monolit přestával vyhovovat nárokům na výkon a škálování, a proto se tým rozhodl přepsat celý backend komentářů do Go. Migrace probíhala postupně, s paralelním během staré a nové služby, aby nedošlo k narušení uživatelské zkušenosti. Inženýři zavedli detailní porovnávání odpovědí, izolované databáze a robustní monitoring, což umožnilo bezpečné testování na živém provozu. Celý proces ukazuje, jak lze zásadní infrastrukturní změny provést bez výpadků a s důrazem na konzistenci dat.