481
Vývoj / Re:Zkušenosti s TypeScriptem
« kdy: 28. 03. 2020, 23:49:09 »Základní princip je, že s proměnnými pracuji abstraktně. V následujícím příkladu pracuji se třemi prvky, řádkem, elementem řádku a indexem. Proto používám tři tomu odpovídající proměnné.Kód: [Vybrat]>>> row = '1, 2, 3, 4, 5'
>>> row = row.split(',')
>>> row = [int(elm) for elm in row]
>>> for idx, elm in enumerate(row):
... row[idx] = idx * elm
...
>>> print(sum(row))
40
No a ted si predstav, ze ve staticky typovanem Rustu muzes psat neco jako:
Kód: [Vybrat]
fn main() {
let v = "Ahoj Douglasi";
println!("{:?}", v);
let v = 42;
println!("{:?}", v);
}
A vis, proc tomu tak je? Protoze "v" je jenom jmeno, ktere odkazuje na konkretni hodnotu. A kompilator rozumi kontextu - tedy tomu, ze kdyz dam kdykoli v prubehu dalsi "let v", ze jsem se rozhodl, ze uz to puvodni "v" pouzivat nebudu a tak ho "zastinim" uplne jinym "v". To neni nic "dynamickeho", jde o to, ze inteligentni kompilator tuhle situaci umi resit a netrva na tom, ze "v" je jednou provzdy &str.

