Top 50 Must-Wëssen Programming Interview Froen & Äntwerten

Dir sicht déi Top Programméierungsfroen an Äntwerten fir Iech ze hëllefen en Interview z'erreechen? Hei sinn déi Top 50.

Softwarefirmen sinn ëmmer op der Sich no gudde Programméierungstalent, mat Telefon an Online Interviewen, déi dacks Äert Schicksal an e puer Minutten entscheeden.

E gudde Programméierer muss sou villsäiteg wéi méiglech sinn - vu Systemverständnis bis allgemeng Programméierung, verschidde Konzepter, an Technologien, souwéi aktuell ze sinn.

Déi folgend ass eng Lëscht vun 50 Top Programméierungsinterview Froen an hir Äntwert. Si werfen e Liicht op déi ofwiesslungsräich Konzepter, déi all Ufänger muss wëssen, fir ze exceléieren.

Inhaltsverzeechnes verstoppen

1. Wat ass Computerprogramméiere?

Computerprogramméiere ass de Prozess fir logesch Prozesser ze kodéieren fir vun engem Computer auszeféieren. Dëst gëtt erreecht andeems Dir eng Computersprooch benotzt déi déi néideg Instruktiounen enthält.

De Prozess kann weider an Design, Kodéierung, Debugging an Aktualiséierung opgedeelt ginn.

2. Wat ass Debugging?

Debugging ass de Prozess fir Feeler an der Softwarequell vun engem Computerprogramm z'entdecken an ze eliminéieren. Et gi vill Methoden fir dëst ze maachen, awer déi meescht Entwécklungsëmfeld kommen mat engem integréierten Debugger fir d'Saache méi einfach ze maachen.

3. Wat ass e Compiler?

E Compiler ass e Softwareprogramm deen de schrëftleche Programm hëlt an en a Maschinncode verwandelt deen e Computer kann verstoen.

En typesche Compiler Package besteet awer aus engem Pre-Prozessor, dem Haaptcompiler deen d'Computersprooch an d'Versammlungscode verwandelt, an engem Assembler.

4. Wat ass e Pre-Prozessor?

E Pre-Prozessor ass e Programm deen de schrëftleche Computercode analyséiert fir seng Ofhängegkeeten ze fannen an zefridden ze stellen, sou wéi néideg Bibliothéiken.

Nodeems de Pre-Prozessor sécher ass datt alles, och d'Ausféierungsëmfeld, an der Rei ass, kann e Compiler dann de Code an d'Versammlungscode konvertéieren.

5. Wat ass en Assembler?

En Assembler ass e Programm deen den niddregsten Niveau vum mënschlech liesbare Computercode genannt Assemblée Sprooch hëlt an en an de Maschinncode verwandelt mat deem e Computer ka schaffen.

Assemblée Sprooch gëtt typesch vun engem Compiler erausginn, obwuel een och direkt ka codéieren. En Versammlungsprogramm kéint Code enthalen wéi:

MOV AH, 02H

mä wann Dir et zu Maschinn Code kompiléieren, Dir kritt nëmmen Nullen an eent (zB. 0110011110101010).

6. Wéi leeft e Programm aus?

Als éischt lued de Betribssystem de spezifizéierte Programm vun der Festplacklagerung an de Systemspeicher (RAM) an erlaabt et dann auszeféieren andeems d'CPU dirigéiert seng Ausféierung vun der éischter Erënnerungsadress vum Programm weiderzeféieren. D'CPU fiert all Kommando aus, deen se gesäit, bewegt dann op déi nächst, widderhëlt dës Prozedur dacks Millioune Mol pro Sekonn.

32-bëssen CPUs ausféieren 32-bëssen (4-Byte, duebel-Wuert) Uweisungen op engem goen, iwwerdeems 64-bëssen CPUs ausféieren 64-bëssen (8-Byte, quad-Wuert) Uweisungen op engem goen. Dës Instruktioune sinn an der CPU gebaut an et ass den Assembler deen de Programméierungscode an d'binär Zuelen ëmdréit, déi déi gebierteg CPU Kommando Adressen representéieren.

7. Definéieren a Subrutin

Eng Subroutine ass eng Sequenz vun Instruktiounen an engem Programm deen zu all Moment opgeruff an ausgefouert ka ginn. An anere Wierder, eng Subroutine kann eng Funktioun, eng Method oder eng Prozedur sinn, déi benotzt gëtt fir spezifesch Aufgaben ëmzesetzen, sou wéi eng E-Mail schécken, eng Datei opmaachen oder eng Login-Säit brute-forcéieren.

8. Definéieren Maschinn Code

Maschinncode ass eng Sequenz vu binären Zuelen déi Ausféierungsinstruktioune vun engem spezifesche Mikroprozessor a seng assoziéiert Erënnerungsadressen hält.

Maschinncode gëtt traditionell vun engem Assembler erausginn dee fir déi speziell Famill vu Mikroprozessoren entworf ass.

9. Erklären Kompiléiert vs Interpretéiert Sproochen

Eng kompiléiert Computersprooch muss a Maschinncode ëmgewandelt ginn ier se op engem Computer ausgefouert gëtt, während eng interpretéiert Sprooch keng virdru Kompiléierung brauch.

Wann Dir en interpretéierte Programm ausféiert, gëtt et als éischt vun engem Dolmetscher veraarbecht, deen et dann kompiléiert an ausféiert. Dës extra Schrëtt maachen interpretéiert Sprooche wéi Python méi lues wéi kompiléiert Sprooche wéi C.

10. Wat ass eng Loop?

Eng Loop ass eng Codestruktur déi spezifesch Aussoe ka widderhuelen bis e spezifizéierte Critère erreecht gëtt. Dëse Critère kann eng fix Zuel vu Wiederholungen enthalen oder d'Ännerung vun enger definéierter Variabel.

11. Lëscht populär Zorte vu Loops

Verschidde Computersproochen interpretéieren Loops op verschidde Manéieren. Populär C-Famill Loop Typen enthalen awer:

  1. Während () Loop - et erlaabt d'Ausféierung vu spezifesche Code, soulaang wéi e Boolean während () Konditioun erfëllt ass.
    Zum Beispill while(2>1){print(“yahoo!”)};.
  2. Fir (;;) Loop - enthält dräi Ausdréck (Initialiséierung; Evaluatioun; update) déi d'Konditioune definéieren fir ze testen, souwéi eng flexibel Method fir d'Zuel ze erhéijen. Et wäert och Code op d'mannst eemol ausféieren.
  3. Maacht{} Während() Loop - Dës Zort Loop féiert d' maachen {} Code op d'mannst eemol virun Bestëmmung ob der während () Zoustand ass nach ëmmer richteg.

12. Erkläert Iteration vs Recursioun

Eng Iteratioun ass d'Benotzung vun enger Loop fir déiselwecht Code Schrëtt auszeféieren, wärend Rekursioun de Prozess vun enger Funktioun ass, déi sech ëmmer erëm nennt. De Problem mat Rekursioun ass awer datt Dir nëmmen op eng gewëssen Déift kënnt bis Dir an Erënnerungsprobleemer leeft.

13. Erklären d'Aarbechtsplazen vun Break a weider an enger Loop

A briechen Ausso endet d'Ausféierung vun enger Loop a fiert de Rescht vum Computercode aus. A weider Ausso, op der anerer Säit, setzt d'Loop vun Ufank un.

14. Wat ass OOP?

OOP steet fir Object Oriented Programming an et ass e Programméierungsparadigma dat Software Design ëm Daten an Objeten implementéiert, anstatt ronderëm Funktiounen oder Prozeduren.

15. Wat ass prozedural Programméierung?

Prozedurale Programméierung ass e Programméierungsparadigma dat Computercode ronderëm d'Sequenzen oder Schrëtt vun Instruktiounen organiséiert fir auszeféieren. Wéi den Numm et scho seet, ass et eng Top-Down Approche déi de Code vun der initialer Phase vun Eventer ufänkt a mam erwaarten Enn vun Eventer ophält.

16. Erklären funktionell programméiere

Funktionell Programméierung ass e Computerprogramméierungsparadigma deen d'Softwareentwécklung ugeet andeems se sequentiell Funktiounen applizéieren déi weder den Zoustand nach Daten vun geliwwerten Argumenter mutéieren.

D'Zil ass méi robust Programmer ze kreéieren déi erwaart Resultater ouni onerwaart Nebenwirkungen produzéieren.

17. Erklären Héich-Niveau Sprooch

Eng Héichniveau Programméierungssprooch ass eng Computersprooch déi méi zum mënschleche Verständnis appelléiert wéi un d'Spezifizitéiten oder d'Natur vum Computer.

Héich-Niveau Programméierungssprooche wéi C a Python sinn einfach ze verstoen, während eng Low-Level Assemblée Sprooch ka ganz konfus fir Éischt-Timer sinn.

18. Lëscht Populär Niddereg-Level Sproochen

Et ginn nëmmen zwou niddereg-Niveau programméiere Sproochen: Assemblée a Maschinn Code.

19. Definéieren eng SQL Sprëtz Attack

Eng SQL Injektioun Attack ass e Prozess fir SQL Aussoen an Input Felder wéi Benotzernumm oder Adress Inputen anzeginn, an der Hoffnung datt en Entwéckler d'Inputen net richteg desinizeiert huet wärend der Programméierung. A wann et erfollegräich ass, esou en Attack erméiglecht den Ugräifer den Admin Zougang zum Server ze kréien.

20. Wat ass eng Tabell an SQL?

Eng Tabell an SQL bezitt sech op eng Sammlung vun Daten déi a Kolonnen a Reihen gruppéiert sinn. All Kolonn huet e markanten Datetyp an Dir kënnt verschidde Tabellen an enger eenzeger Datebank hunn. Dir kënnt och méi wéi een Dësch gläichzäiteg ufroen.

Dir erstellt en Dësch mat:

CREATE TABLE table_name (column1 datatype, column2 datatype, column3 datatype, …);

21. Erkläert den Ënnerscheed tëscht engem Objet an enger Klass

En Objet ass eng Instanz vun enger Klass, während eng Klass e Blueprint ass, aus deem en Objet erstallt gëtt. En Objet kann Staaten an Eegeschaften hunn, wéi Faarf, Héicht, Gewiicht, Geschwindegkeet, asw.

Dës Eegeschafte mussen op d'mannst definéiert oder initialiséiert ginn mat Standardwäerter.

22. Wéi vill Bits maachen ee Megabyte?

Et gi 8,000,000 Bits an 1 Megabyte well ee Byte 8 Bits ass an ee Mega ass 106.

23. Definéieren A Float Data Typ

E Float ass en Datentyp deen eng Zuel mat Dezimalfraktiounen duerstellt. Et gëtt a Situatiounen benotzt wou e méi héije Präzisiounsniveau gebraucht gëtt wéi dat wat Standard ganz Zuelen ubidden. E Beispill vun engem Float ass:

0.013 

or 

25.932

24. Wat steet den HexaDecimal 0xFF fir?

0xFF steet fir Dezimal 255 oder Binär 11111111. 0x steet fir Base16 oder Hexadezimal Notatioun, déi vun 1 bis 9 leeft an dann weider mat A bis F fir 15 ze representéieren. Also, 0xF ass Dezimal 15, während 0xFF Dezimal 255 ass.

25. Numm Zorte vu Feeler an programméiere

Et ginn 3 Haaptarten vu Feeler an engem Computerprogramm, si sinn:

  1. Syntax Feeler
  2. Logesche Feeler
  3. Runtime Feeler

26. Wat ass e Syntax Feeler?

E Syntaxfehler geschitt wann et eng Ofwäichung vun der dacks strikter Syntax vu Programméierungssproochen ass. Et kéint resultéieren aus der einfacher Mëssplazéierung vu Buschtawen op déi falsch Parameteren, déi op eng Funktioun weiderginn. Déi meescht Compiler enthalen d'Quellcode Linnnummer wou de Feeler geschitt ass.

27. Wat ass e logesche Feeler?

E Logikfehler ass e Feeler deen aus der Aart a Weis wéi e Programm funktionnéiert. Also, wärend de Programm flawless ausféiere kann, ass et net säin Zweck z'erreechen. Logesch Feeler kënnen op vill Manéiere geschéien a vu ville Grënn verursaacht ginn.

28. Wat ass e Runtime Feeler?

E Runtime Feeler ass e Computerprogrammfehler dee während der Ausféierung vum Programm geschitt a wéinst onerwaarten Ëmstänn. Also, wärend de Programm flawless funktionnéiert, zum Beispill, Erënnerungs- an Netzwierkprobleemer kënnen de Programm falsch behuelen.

29. Erklären Staark vs schwaach-Typ Sproochen

Eng staark getippten Sprooch ass strikt iwwer seng verschidden Datentypen a wéi Dir se konvertéiere kënnt, während eng schwaach getippte Sprooch manner Restriktiounen op Datentypen an hir Definitioune setzt.

Vill schwaach getippten Sprooche konvertéieren Datentypen automatesch, wärend staark getippten Sproochen dacks explizit Konversioune erfuerderen.

30. Wat ass MVC Architektur?

MVC bezitt sech op Model-View-Controller an ass e Softwareentwécklungsmuster fir User Interfaces. Et trennt d'Programmlogik an 3 Deeler.

d' Modell Deel geréiert der Basisdaten Logik vun den Objeten an Fro, iwwerdeems de Vue geréiert d'Affichage vun Informatioun un de Benotzer, an de Controller geréiert de Flux vun Daten tëscht de Meenungen an de Modeller. MVC Design gëtt dacks mat objektorientéierter Programméierung benotzt.

31. Definéieren an Algorithmus

En Algorithmus ass eng Sequenz vu Prozeduren entwéckelt fir e spezifesche Problem ze léisen. Dës Prozedure ginn normalerweis a méi kleng Schrëtt opgedeelt an de Computer mécht se all Kéier genau esou.

Algorithmus Beispiller enthalen Gesiichtserkennung, Google Sich, de Wee wéi Dir Är Schong verbënnt, Kodéierung oder Verschlësselungsdaten, a sou weider.

32. Wat ass Maschinn Léieren?

Machine Learning oder ML ass eng Sektioun vu kënschtlecher Intelligenz déi sech fokusséiert fir Systemer ze hëllefen Musteren z'identifizéieren an eleng Entscheedungen ze treffen duerch de Konsum vun Daten.

Dëst verbessert dann hir Leeschtung oder Effizienz. Maschinn Léiersystemer kënne iwwerwaacht ginn, net iwwerwaacht, a Verstäerkungsbaséiert.

33. Wat sinn Regelméisseg Ausdréck?

E reguläre Ausdrock oder Regex ass eng String déi benotzt gëtt fir Sichmuster an Textdokumenter ze definéieren. Verschidde Programméierungssproochen implementéieren reegelméisseg Ausdréck oder benotze populär Regex-Bibliothéiken. E Beispill Regex fir all Zeechen an engem Text ze passen ass:

(.*)

wärend déi folgend nëmmen mp3 Dateien entspriechen:

.+\.(mp3)$

34. Wat mécht de Modulus (%) Bedreiwer?

De Modulusoperateur % hëlt zwee Operanden an trennt den éischten Operand mat der zweeter. Et gëtt dann de Rescht vun der Operatioun als Resultat zréck.

Et gëtt dacks benotzt fir komesch an gläich Zuelen ze testen andeems Dir all ganz Zuel mat 2 deelt, wou en 0 Resultat eng Eech Zuel bedeit an 1 eng komesch Zuel bedeit.

35. Erklären Prozess Forking

Forking kënnt aus dem Forschett() Funktioun an Unix- a Linux Systemer déi vun engem lafende Prozess benotzt kënne ginn fir eng Kopie vu sech selwer ze kreéieren. Also, Prozessforking ass d'Duplikatioun vun engem Prozess fir zwee ähnlech a gläichzäiteg ausféierende Prozesser ze kreéieren.

Eng zousätzlech Aart vu Forking bezitt sech op de Quellcode vun engem Open-Source-Projet ze huelen an e ganz neie Programm dovunner ze kreéieren.

36. Erklären Thread Spawning

Thread Spawning ass de Prozess fir en neie CPU thread ze kreéieren fir e Prozess ze lafen. Spawning gëtt dacks vu Computerintensiv Programmer benotzt fir d'Multi-Threading Fäegkeeten vun engem Prozessor ze profitéieren a säin Erfolleg hänkt vun der CPU of op där se leeft, wéivill Cores et huet a wéivill Threads pro Kär et bitt.

37. Wat maachen Reservéiert Wierder Mengen?

Reservéiert Wierder si Begrëffer déi Dir net erlaabt als Identifizéierer an enger Programméierungssprooch ze benotzen. Dëst beinhalt Funktiounen, Variabelen a Labels. Si sinn reservéiert well se scho definéiert goufen a spezifesch Bedeitungen hunn.

38. Lëscht populär Reservéiert Wierder

Verschidde Sprooche hu verschidde reservéiert Wierder baséiert op hirer Syntax. Hei sinn déi populärste reservéiert Wierder am Programméiere:

  1. IF
  2. Richteg
  3. Falsch
  4. WIESSEL
  5. ELSER
  6. FALL
  7. BOOLEAN
  8. RETURN
  9. Funktioun
  10. BREAK
  11. GÉI OP

39. Wat ass e String?

Eng String ass eng Sequenz vun Zeechen, dacks an enger Array gehal a benotzt fir Textdaten ze definéieren. Déi populärste String ass "Hallo Welt".

40. Wat ass eng Variabel?

Eng Variabel ass all Wäert dee sech während der Ausféierung vun engem Programm änneren kann. Eng Variabel ka vun all Datentyp sinn, dorënner Strings an ganz Zuelen. Zum Beispill gëtt e Programm initialiséiert wéi hei ënnen:

int a = 0;

int b = 1;

dann während der Ausféierung ginn Ännerungen gemaach:

b = a+b; //b huet variéiert

41. Wat ass e Konstant?

Eng Konstante ass eng Variabel déi net erwaart gëtt während der Ausféierung vum Programm z'änneren. E gutt Beispill ass d'Vitesse vum Liicht oder Toun. Verschidde Programméierungssprooche loossen Iech Konstanten op verschidde Weeër definéieren. Zum Beispill, am C:

const float middle_c = 261.62; // Mëttelschlëssel c op engem Piano ass 261.6255 Hz

42. Definéieren eng Array

En Array ass eng Zort Variabel déi benotzt gëtt fir verschidde Wäerter gläichzäiteg ze späicheren. Vill Sproochen erlaben Iech nëmmen Wäerter vun ähnlechen Datentypen ze späicheren, während aner Sproochen Arrays mat verschiddenen Typen handhaben kënnen. Dir kënnt och multi-zweedimensional Arrays hunn, déi Arrays vun Arrays sinn a kënne knaschteg ginn.

Eng Array an mql4 ze definéieren ass einfach mat:

String TextArray[100]; // eng Rei vun honnert Saiten

43. Wat ass Funktioun Iwwerlaascht?

Funktioun Iwwerlaaschtung ass eng Method déi en Entwéckler erlaabt verschidde Funktiounen ze definéieren déi de selwechten Numm deelen awer verschidde Funktionalitéiten hunn. Dëst gëtt erreecht andeems Dir déi verschidde Funktiounsversioune mat verschiddenen Argumenter erstallt. De Compiler weess dann wéi eng Funktioun néideg ass duerch d'Art an d'Zuel vun den Argumenter geliwwert.

44. Definéieren a Call By Referenz

En Uruff duerch Referenz ass eng Method fir d'Erënnerungsadress vun Argumenter un eng Funktioun weiderzeginn, am Géigesaz zu der Standardmethod fir eng Kopie vum Wäert vum Argument weiderzeginn. D'Zil vu Referenzruffen ass datt d'Argument direkt vun der Funktioun geännert gëtt.

45. Erklären Arithmetesch Betreiber

Dëst si speziell Zeechen, déi funktionnéieren fir arithmetesch Operatiounen an enger Programméiersprooch auszeféieren. Arithmetesch Betreiber enthalen:

  1. D'Zousätzlech oder Unär Plus (+)
  2. Subtraktioun oder Unär Minus (-)
  3. Multiplikatioun (*)
  4. Divisioun (/)
  5. Modulus (%).

46. Erklären Logesch Bedreiwer

Logesch Bedreiwer si Wierder oder Symboler déi benotzt gi fir Operatiounen auszeféieren baséiert op bedingungsloser Logik. Déi meescht Sproochen hunn just 3 logesch Betreiber:

  1. AN (&& an C, C++, JavaScript)
  2. OR (|| an C, C++, JavaScript)
  3. NET (! an C, C++, JavaScript)

47. Logesch 1 AN 0 =?

Eng logesch 1 AN 0 Operatioun gëtt Iech falsch well den zweeten Operand 0 ass an Dir braucht béid Operander vun AN Operatioun fir 1 oder TRUE ze sinn fir e positiven Output ze kréien.

48. Logesch NET 1 =?

Eng logesch NOT 1 Operatioun gëtt Iech falsch well den NET Bedreiwer alles negéiert wat Dir et gitt, dat heescht datt et 1 an 0 an 0 an 1 gëtt. Also, wann Dir en 1 oder TRUE Operand gëtt, gëtt et 0 oder FALSE.

49. Logesch 1 NAND 1 =?

Eng logesch 1 NAND 1 Operatioun wäert produzéieren falsch well béid Operanden TRUE sinn an den NAND Bedreiwer negéiert ëmmer zwee ähnlech Inputen fir e Géigendeel Output ze produzéieren.

Also, wann d'Operatioun war 0 NAND 0, dann wier den Ausgang 1 oder TRUE.

50. Logesch 1 XOR 1 =?

Eng logesch 1 XOR 1 Operatioun wäert produzéieren falsch well wärend eng normal ODER Operatioun TRUE op entweder oder béid Inputen produzéiert, déi TRUE sinn, produzéiert eng XOR (Exklusiv ODER) Operatioun nëmmen TRUE wann nëmmen een Input an net deen aneren TRUE ass.

Conclusioun

Mir sinn um Enn vun dëser Lëscht vun den Top 50 Must-Wëssen Programméierungsinterview Froen an hir Äntwerten erreecht. A wéi Dir gesitt, ass d'Welt vum Programméiere grouss awer spannend.

Keng zwee Interviewe sinn déiselwecht. Also, wärend dës Lëscht Iech an déi richteg Thema Richtungen weist, sollt Dir och probéieren e bessert Verständnis vun all Thema ze kréien.

Nnamdi Okeke

Nnamdi Okeke

Den Nnamdi Okeke ass e Computer-Enthusiast dee gär eng breet Palette vu Bicher liest. Hien huet eng Preferenz fir Linux iwwer Windows / Mac a benotzt
Ubuntu zënter seng fréi Deeg. Dir kënnt him op twitter fänken via bongotrax

Artikelen: 299

Kritt Technesch Saachen

Tech Trends, Startup Trends, Bewäertungen, Online Akommes, Web Tools a Marketing eemol oder zweemol am Mount