Preuzmite PDF
1) Objasnite što je Scala?
Scala je objektno-funkcionalni programski i skriptni jezik za općenite softverske aplikacije dizajnirane da sažeto izraze rješenja.
2) Što je 'Scala set'? Koje su metode kojima se izražavaju skupovi operacija?
Scala set je skup uparenih elemenata iste vrste. Skup Scala ne sadrži nikakve ponovljene elemente. Postoje dvije vrste skupova, promjenjivi i nepromjenjivi.
3) Što je 'Scala karta'?
Scala karta je zbirka parova ključeva ili vrijednosti. Na temelju njegovog ključa može se dobiti bilo koja vrijednost. Vrijednosti nisu jedinstvene, ali ključevi su jedinstveni na mapi.
4) Koja je prednost Scale?
- Funkcionalni stil s manje pogrešaka
- Visoka održivost i produktivnost
- Visoka skalabilnost
- Visoka provjerljivost
- Pruža značajke istodobnog programiranja
5) Na koji je način Scala bolja od drugog programskog jezika?
- Nizovi koriste uobičajene generičke, dok su u drugom jeziku generički lijepljeni kao dodatna zamisao i potpuno su odvojeni, ali se preklapaju u ponašanju s nizovima.
- Scala ima nepromjenjivi "val" kao prvorazrednu jezičnu značajku. "Val" skale sličan je konačnim varijablama Java. Sadržaj može mutirati, ali gornja referenca je nepromjenjiva.
- Scala omogućuje da "if блоки", "petlje za prinos" i "kôd" u zagradama vrate vrijednost. Poželjnije je i uklanja potrebu za odvojenim trostrukim operatorom.
- Singleton ima singleton objekte, a ne C ++ / Java / C # classic static. To je čistije rješenje
- Trajne nepromjenjive zbirke zadane su i ugrađene u standardnu knjižnicu.
- Ima izvorne korijene i sažet kôd
- Nema šifru ploče kotla
6) Koje su Scala varijable?
Vrijednosti i varijable dva su oblika koja dolaze u Scali. Varijabla vrijednosti je konstantna i ne može se mijenjati jednom dodijeljena. Nepromjenjiva je, dok je s druge strane redovita varijabla promjenjiva i možete promijeniti vrijednost.
Dvije su vrste varijabli
var myVar: Int = 0;
val myVal: Int = 1;
7) Spomenuti razliku između predmeta i klase?
Razred je definicija opisa. Ona definira vrstu u smislu metoda i sastava drugih vrsta. Klasa je nacrt predmeta. Dok je objekt jedinstveni, primjer klase koja je jedinstvena. Anonimna klasa kreira se za svaki objekt u kodu, nasljeđuje iz bilo koje klase koju ste proglasili objektom za implementaciju.
8) Što je rekurzijski rep u skali?
'Rekurzija' je funkcija koja sebe naziva. Funkcija koja sebe naziva, na primjer, funkcija 'A' poziva funkciju 'B', koja naziva funkciju 'C'. To je tehnika koja se često koristi u funkcionalnom programiranju. Da bi rep bio rekurzivan, poziv natrag na funkciju mora biti zadnja izvršena funkcija.
9) Što je 'skala osobina' u skali?
'Osobine' se koriste za definiranje vrsta objekata specificiranih potpisom podržanih metoda. Scala omogućuje djelomičnu implementaciju, ali osobine možda nemaju parametre konstruktora. Osobina se sastoji od definicije metode i polja, miješanjem u razrede može se ponovno upotrijebiti.
10) Kada možete koristiti osobine?
Ne postoji određeno pravilo kada možete koristiti osobine, ali postoji smjernica koju možete uzeti u obzir.
- Ako se ponašanje neće ponovno upotrijebiti, neka to bude konkretna klasa. U svakom slučaju to nije ponašanje za višekratnu upotrebu.
- Da bi se iz njega naslijedilo u Java kodu, može se koristiti apstraktna klasa.
- Ako je učinkovitost prioritet, onda se priklonite korištenju klase
- Neka to bude osobina ako se može ponovno koristiti u više i nepovezanih klasa. U različitim dijelovima hijerarhije razreda samo se osobine mogu miješati u različite dijelove.
- Možete koristiti apstraktnu klasu ako je želite distribuirati u kompiliranom obliku i očekujete da će vanjske grupe napisati klase koje je nasljeđuju iz nje.
11) Što su razredi predmeta?
Klase slučaja pružaju rekurzivni mehanizam razgradnje putem podudaranja uzoraka, to su redovne klase koje izvoze svoj parametar konstruktora. Parametrima konstruktora klasa slučajeva može se pristupiti izravno i tretiraju se kao javne vrijednosti.
12) Kakva je korist od korijena u skali?
Torbe Scala kombiniraju fiksni broj predmeta zajedno, tako da ih se može proslijediti u cjelini. Korpa je nepromjenjiva i može sadržavati objekte različitih vrsta, za razliku od niza ili popisa.
13) Što je kariranje funkcija u Scali?
Currying je tehnika transformiranja funkcije koja uzima više argumenata u funkciju koja uzima jedan argument Mnoge iste tehnike kao jezik poput Haskella i LISP-a podržavaju Scala. Funkcija currying jedna je od najmanje korištenih i neshvaćenih.
14) Koji su implicitni parametri u Scali?
Implicitni parametar je način koji omogućuje "pronalaženje" parametara metode. Sličan je zadanim parametrima, ali ima drugačiji mehanizam za pronalaženje "zadane" vrijednosti. Implicitni parametar je parametar metode ili konstruktora koji je označen kao implicitni. To znači da ako se vrijednost parametra ne spominje, onda će prevodilac tražiti "implicitnu" vrijednost definiranu unutar opsega.
15) Što je zatvaranje u Scali?
Zatvaranje je funkcija čija povratna vrijednost ovisi o vrijednosti varijabli deklariranih izvan funkcije.
16) Što je Monada u Skali?
Monada je objekt koji obavija drugi objekt. Prolazite kroz Monadine mini programe, tj. Funkcije, da biste izvršili manipulaciju podacima temeljnog objekta, umjesto da izravno manipulirate objektom. Monad odabire kako primijeniti program na temeljni objekt.
17) Što je Scala anonimna funkcija?
U izvornom kodu anonimne funkcije nazivaju se 'funkcijski literali', a u vrijeme izvođenja, funkcijski se literali instanciraju u objekte koji se nazivaju funkcijske vrijednosti. Scala pruža relativno laku sintaksu za definiranje anonimnih funkcija.
18) Objasniti funkcije 'Scala višeg reda'?
Scala omogućuje definiranje funkcija višeg reda. To su funkcije koje uzimaju druge funkcije kao parametre ili čiji je rezultat funkcija. U sljedećem primjeru funkcija apply () uzima drugu funkciju 'f' i vrijednost 'v' te primjenjuje funkciju na v.
Primjer:
object Test {def main(args: Array[String]) {println( apply( layout, 10) )}def apply(f: Int => String, v: Int) = f(v)def layout[A](x: A) = "[" + x.toString() + "]"Kada se gornji kod kompilira i izvrši, on daje sljedeći rezultat.
C:/>scalac Test.scalaC:/>scala Test[10]C:/>
19) Koja je razlika između var i vrijednosti?
U skali varijablu možete definirati pomoću ključnih riječi a, val ili var. Razlika između val i var je u tome što je var sličan Java deklaraciji, ali val se malo razlikuje. Ne možemo promijeniti referencu tako da upućuje na drugu referencu, nakon što se varijabla deklarira pomoću val. Varijabla definirana pomoću ključnih riječi var je promjenjiva i može se mijenjati bilo koji broj puta.
20) Koje su opcije, neke a nijedna u skali?
'Opcija' je Scala generički tip koji može biti "neka" generička vrijednost ili nikakva. 'Red čekanja' često ga koristi za predstavljanje primitiva koji mogu biti null.
21) Kako se mogu dodati na popis?
U skali za dodavanje na popis koristite "
:+” single value
var myList = List.empty[String]myList :+= "a"myList :+= "b"myList :+= "c"use++ for appending a listvar myList = List.empty[String]myList ++= List("a", "b", "c")
22) Kako možete oblikovati niz?
Da biste formatirali niz, upotrijebite metodu .format () u skali koju možete koristiti
Val formatiran = "% s% i" .format (mystring.myInt)
23) Zašto skala preferira nepromjenjivost?
Scala preferira nepromjenjivost u dizajnu i u mnogim je slučajevima koristi kao zadanu. Nepromjenjivost može pomoći kada se bave pitanjima jednakosti ili istodobnim programima.
24) Koje su četiri vrste identifikatora skale?
Četiri vrste identifikatora su
- Alfa numerički identifikatori
- Identifikatori operatora
- Mješoviti identifikatori
- Doslovni identifikatori
25) Koje su različite vrste skala literala?
Različite vrste doslovnih riječi u skali su
- Cjelobrojni literali
- Književnost s pomičnim zarezom
- Booleovi literali
- Doslovni simboli
- Karakterni literali
- String literale
- Višeredne žice