25 parimat Scala intervjuu küsimust ja vastust (PDF)
Siin on Scala intervjuu küsimused ja vastused nii värskematele kui ka kogenumatele kandidaatidele oma unistuste töökoha saamiseks.
Scala intervjuu küsimused ja vastused värsketele
1) Selgitage, mis on Scala?
Scala on objektfunktsionaalne programmeerimis- ja skriptikeel üldiste tarkvararakenduste jaoks, mis on loodud lahenduste lühidalt väljendamiseks.
2) Mis on "Scala komplekt"? Millised on meetodid, mille kaudu tehtekogumeid väljendatakse?
Scala komplekt on sama tüüpi paariselementide kogum. Scala komplekt ei sisalda dubleerivaid elemente. Komplekte on kahte tüüpi, muutlikud ja muutumatud.
👉 Tasuta PDF-i allalaadimine: Scala intervjuu küsimused ja vastused >>
3) Mis on Scala kaart?
Scala kaart on võtme- või väärtuspaaride kogu. Selle võtme alusel saab hankida mis tahes väärtuse. Väärtused ei ole ainulaadsed, kuid võtmed on kaardil ainulaadsed.
4) Mis on Scala eelis?
Eeliseid Scala See on:
- Less veatundlik funktsionaalne stiil
- Kõrge hooldatavus ja tootlikkus
- Suur mastaapsus
- Kõrge testitavus
- Pakub samaaegse programmeerimise funktsioone
5) Mille poolest on Scala teistest programmeerimiskeeltest parem?
- Massiivid kasutavad tavalisi geneerilisi termineid, samas kui teistes keeltes on geneerilised terminid lisatud järelmõttena ja on täiesti eraldi, kuid kattuvad.ping massiivide käitumine.
- Scalal on muutumatu "val" kui esmaklassiline keelefunktsioon. Scala “val” on sarnane Java lõplikud muutujad. Sisu võib muutuda, kuid ülemine viide on muutumatu.
- Scala laseb väärtuse tagastamiseks sulgudes olevad sõnad „kui plokid”, „saagise tsüklid” ja „kood”. See on eelistatavam ja välistab vajaduse eraldi kolmepoolse operaatori järele.
- Singletonis on pigem üksikud objektid kui C++/Java/ C# klassikaline staatiline. See on puhtam lahendus
- Püsivad muutumatud kogud on vaikimisi ja standardteegi sisse ehitatud.
- Sellel on algtekstid ja lühike kood
- Sellel pole katlaplaadi koodi
6) Mis on Scala muutujad?
Väärtused ja muutujad on kaks kuju, mis tulevad Scalasse. Väärtuse muutuja on konstantne ja seda ei saa pärast määramist muuta. See on muutumatu, samas kui tavaline muutuja on teisest küljest muutuv ja saate väärtust muuta.
Kahte tüüpi muutujaid on
var myVar : Int=0;
val myVal: Int=1;
7) Mainige objekti ja klassi erinevust?
Klass on kirjelduse määratlus. See määratleb tüübi meetodite ja teiste tüüpide koostise järgi. Klass on objekti kavand. Kuigi objekt on üksik, klassi eksemplar, mis on ainulaadne. Anonüümne klass luuakse iga koodi objekti jaoks, see pärib mis tahes klassidest, mille olete deklareerinud objekti rakendamiseks.
8) Mis on scalas rekursioonisaba?
"Rekursioon" on funktsioon, mis kutsub ennast ise. Funktsioon, mis kutsub ennast, näiteks funktsioon 'A', kutsub funktsiooni 'B', mis kutsub funktsiooni 'C'. See on funktsionaalses programmeerimises sageli kasutatav tehnika. Saba rekursiivsuse jaoks peab funktsiooni tagasikutse olema viimane teostatav funktsioon.
9) Mis on scalas 'scala tunnus'?
Tunnikke kasutatakse toetatud meetodite signatuuriga määratud objektitüüpide määratlemiseks. Scala võimaldab osaliselt rakendada, kuid tunnustel ei pruugi olla konstruktori parameetreid. Tunnus koosneb meetodi ja välja määratlusest, neid klassidesse segades saab seda uuesti kasutada.
10) Millal saab omadusi kasutada?
Puuduvad konkreetsed reeglid, millal saate tunnuseid kasutada, kuid on olemas juhis, mida saate arvesse võtta.
- Kui käitumist ei kasutata uuesti, tehke sellest konkreetne klass. Igatahes pole see korduvkasutatav käitumine.
- Et pärida sellest sisse Java kood, kõhulihasedtract-klassi saab kasutada.
- Kui tõhusus on prioriteet, kalduge klassi kasutamisele
- Muutke see tunnuseks, kui seda saaks uuesti kasutada mitmes omavahel mitteseotud klassis. Klassihierarhia erinevates osades saab erinevatesse osadesse segada ainult tunnuseid.
- Saate kasutada kõhulihaseidtract-klass, kui soovite seda kompileeritud kujul levitada ja eeldate, et välised rühmad kirjutavad sellest pärivaid klasse.
Scala intervjuuküsimused kogenud inimestele
11) Mis on juhtumiklassid?
Juhtumiklassid pakuvad rekursiivset dekomponeerimismehhanismi mustri sobitamise kaudu, need on tavalised klassid, mis ekspordivad oma konstruktori parameetri. Juhtumiklasside konstruktoriparameetritele pääseb juurde otse ja neid käsitletakse avalike väärtustena.
12) Mis kasu on scalas korteežidest?
Scala korteežid ühendavad kokku kindla arvu üksusi, nii et neid saab tervikuna edasi anda. Korpus on muutumatu ja erinevalt massiivist või loendist võib sisaldada erinevat tüüpi objekte.
13) Mis on funktsiooni currying Scalas?
Currying on meetod, mille abil teisendatakse mitu argumenti kasutav funktsioon funktsiooniks, mis võtab ühe argumendi. Scala toetab paljusid samu tehnikaid nagu keel, näiteks Haskell ja LISP. Funktsionaalne karrimine on üks kõige vähem kasutatud ja valesti mõistetud.
14) Mis on Scala kaudsed parameetrid?
Kaudne parameeter on viis, mis võimaldab meetodi parameetreid "leida". See sarnaneb vaikeparameetritega, kuid sellel on vaikeväärtuse leidmiseks erinev mehhanism. Kaudne parameeter on meetodi või konstruktori parameeter, mis on märgitud kaudseks. See tähendab, et kui parameetri väärtust ei mainita, otsib kompilaator ulatuses määratletud "kaudset" väärtust.
15) Mis on Scala sulgemine?
Sulgemine on funktsioon, mille tagastusväärtus sõltub väljaspool funktsiooni deklareeritud muutujate väärtusest.
16) Mis on Monad Scalas?
Monaad on objekt, mis ümbritseb teist objekti. Te edastate Monadi miniprogrammid, st funktsioonid, et teostada alusobjekti andmetega manipuleerimist, selle asemel, et objektiga otse manipuleerida. Monad valib, kuidas programmi aluseks olevale objektile rakendada.
17) Mis on Scala anonüümne funktsioon?
Lähtekoodis nimetatakse anonüümseid funktsioone funktsiooniliteraalideks ja käitusajal muudetakse funktsiooniliteraalid objektideks, mida nimetatakse funktsiooniväärtusteks. Scala pakub anonüümsete funktsioonide määratlemiseks suhteliselt lihtsat süntaksit.
18) Selgitage "Scala kõrgema järgu" funktsioone?
Scala võimaldab määratleda kõrgema järgu funktsioone. Need on funktsioonid, mis võtavad parameetritena muid funktsioone või mille tulemuseks on funktsioon. Järgmises näites võtab funktsioon rakendus () teise funktsiooni 'f' ja väärtuse 'v' ning rakendab funktsiooni v.
Näide:
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() + "]"
Kui ülaltoodud kood on kompileeritud ja käivitatud, annab see järgmise tulemuse.
C:/>scalac Test.scala C:/>scala Test [10] C:/>
19) Mis vahe on varil ja väärtusel?
Scalas saate muutuja määratleda märksõnade a, val või var abil. Erinevus val ja var vahel on see, et var sarnaneb paljuski Java deklaratsiooniga, kuid val on vähe erinev. Me ei saa muuta viidet osutama teisele viitele, kui muutuja on deklareeritud kasutades val. Var märksõnade abil määratletud muutujad on muudetavad ja neid saab muuta mis tahes arv kordi.
20) Mis on scalas valikuvõimalused, mõned ja mitte ühtegi?
„Option” on Scala üldine tüüp, mis võib olla kas „mingi” üldine väärtus või mitte. 'Queue' kasutab seda sageli primitiivide tähistamiseks, mis võivad olla nullid.
21) Kuidas nimekirja lisada?
Scalas kasutage loendisse lisamiseks ":+” single value
var myList = List.empty[String]
myList :+= "a"
myList :+= "b"
myList :+= "c"
use++ for appending a list
var myList = List.empty[String]
myList ++= List("a", "b", "c")
22) Kuidas saate stringi vormindada?
Stringi vormindamiseks kasutage meetodit .format (), scalas saate kasutada
Val formatted= “%s %i”.format (mystring.myInt)
23) Miks scala eelistab muutumatust?
Scala eelistab disaini muutumatust ja paljudel juhtudel kasutab seda vaikimisi. Muutumatus võib aidata võrdõiguslikkuse küsimuste või samaaegsete programmide käsitlemisel.
24) Millised on nelja tüüpi scala identifikaatorid?
Neli tüüpi identifikaatoreid on
- Alfa-numbrilised identifikaatorid
- Operaidentifikaatorid
- Segatud identifikaatorid
- Literaalsed identifikaatorid
25) Millised on Scala literaalide erinevad tüübid?
Scalas on erinevat tüüpi literaalid
- Täisarvulised literaalid
- Ujukoma literaalid
- Boole'i literaalid
- Sümbolite literaalid
- Tähemärgiliteraalid
- Stringi literaalid
- Mitmerealised stringid
Need intervjuu küsimused aitavad ka teie viva (suuline)

