Portál AbcLinuxu, 1. května 2025 10:43
Možná o tom nevíte, ale předchozí příklady imperativní styl programování.
Já nevědět, co to znamenat mít.
Díky, ale stále mi chyběl příklad, jak použít scalu jako script a jak se vlastně předávají parametry. Takže například takto:
#!/bin/sh
exec scala -savecompiled "$0" "$@"
!#
object Parser {
def main(args: Array[String]) {
for (s <- args) {
println("> " + s);
}
}
}
Parser.main(args.toArray)
... při prvním spuštění to není nic moc, ale díky přepínači -savecompiled se někde vytvoří soubor .class a příští spuštění je již "rychlé". Samozřejmě, že na jednoduché scripty bude možná rychlejší scriptování třeba i bashi, ale pokud script dělá složité operace, tak už překlad do bytecode bude znát. Subjektivně: mě to přijde dostatečně rychlé.
Na tomto způsobu je hlavně fajn, že je vše v jednom spustitelném souboru, a uživatel třeba ani neví, že se uvnitř spouští scala/java.
ps: porovnání rychlosti java/scala/groovy v jednom umělém příkladu (zde se porovnává běh nikoliv pouze start)
příklad prvního a druhého (dalšího) spuštění scriptu
$ time ./4.scala
real 0m1.766s
user 0m0.252s
sys 0m0.040s
$ time ./4.scala
real 0m0.271s
user 0m0.196s
sys 0m0.036s
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.