Bevezetés a C célkitűzés interjúval kapcsolatos kérdésekbe és válaszokba

A C célkitűzés egy programozási nyelv, amelyet 1980-ban fejlesztettek ki. Általános célú objektum-orientált programozási nyelvként mondható el, amely hozzáadja a kisbeszélgetés stílusú üzenetküldést a C-programozáshoz. Ez elsősorban híres, mivel ez volt a fő nyelv, amelyet az Apple használt a macOS és iOS operációs rendszerek építéséhez. Később azt is kiválasztották a fő nyelvként, amelyet a NeXT-nek használni kellett. Az alábbiakban felsorolunk néhány kérdést, amelyek feltehetők egy C céllal készített interjú során.

Most, ha olyan munkát keres, amely a C célkitűzéssel kapcsolatos, akkor fel kell készülnie a 2019. évi C célkitűzés interjúkérdéseire. Igaz, hogy az interjúk különbözőek a munkakörök szerint. Itt elkészítettük a C célkitűzéssel kapcsolatos fontos interjúkérdéseket és válaszokat, amelyek segítenek abban, hogy sikerrel járjon az interjúban.

Ebben a 2019. évi C célkitűzés-interjú kérdéscikkben bemutatjuk a 10 legfontosabb és leggyakrabban feltett C célkitűzés-interjú kérdést. Ezeket a kérdéseket két részre osztják:

1. rész - C objektív interjúkérdések (alapvető)

Ez az első rész a C célkitűzéssel kapcsolatos alapvető kérdéseket és válaszokat tartalmazza

Q1. Hogyan kezeli a memóriát a C célkitűzésben?

Válasz:
A C célkitűzés memóriaelosztása dinamikusan történik. Ez azt jelenti, hogy a memória bármely program futási ideje alatt el van osztva. Használják, majd később felszabadítják, amikor már nincs rá szükség. Ez elősegíti a lehető legkevesebb memória felhasználását. A memória teljes életciklusában a tárgyak annyi memóriát vesznek fel, amennyire szükségük van, majd felszabadítják őket, amikor nincs rá szükség. A memória elosztásához a C célkitűzésben kétféle módszer lehetséges:

  1. Kézi visszatartás (MRR): Az ilyen típusú memóriakezelésben a memóriát kifejezetten kezeli, és minden objektum nyomon követi. A nyomkövetési referenciaszámláló modellt használja.
  2. Automatikus referenciaszámlálás (ARC): Itt a rendszer képes megfelelő memóriakezelési módszer hívásokat beilleszteni, amelyeket futási időnek hívnak.

A memóriakezelés két fő hátránya, hogy ha már túl szabadulnak fel, több rendszer összeomlik, és amikor nem szabadul fel, memóriaszivárgáshoz vezet, ami növeli az alkalmazás memóriaterületét.

Q2. Milyen tulajdonságokat deklarálnak a C célkitűzésben?

Válasz:
A C célkitűzésben minden felhasználható tulajdonság meghatározható úgy, hogy különféle példányváltozókat deklarál olyan getter és setter módszerek alkalmazásával, amelyek elősegítik a beágyazást. A tulajdonságoknak három szempont van. Ezek magukban foglalják a deklarációt, a végrehajtást és a hozzáférést. A tulajdonságok bármilyen osztályban, kategóriában és protokollban deklarálhatók a deklaratív szakaszban. Ennek szintaxisa a következő:

@property (attribútumok…) típus tulajdonságNév

Ezenkívül nem kötelező attribútumokat is tartalmaz. Az attribútumok a következők lehetnek:

  • Csak olvasható: Ez a tulajdonság csak olvasható és nem írható be. Ennek a fordítónak nincs beállítója.
  • Olvasás-írás: Ez a tulajdonság mind olvasást, mind írást lehetővé teszi. Az alapértelmezett mód csak olvasható.
  • Hozzárendelés: Ez az egyszerű hozzárendelés, amely felhasználható bármilyen beállító végrehajtására.
  • Megtartás: A megőrzést elküldik az ingatlanra, miután kiosztották.
  • Másolás: Mint megtartás, ezt a műveletet akkor is elvégezzük, amikor a tulajdonságot hozzárendeljük.

Most térjünk át a következő C célkitűzés interjúkérdéseire

Q3. Melyek a kategóriák jellemzői?

Válasz:
Egy kategória a következő jellemzőkkel rendelkezik: A kategóriát minden osztálynak be kell jelenteni, annak ellenére, hogy nincs eredeti forráskód a végrehajtáshoz. Az egy adott kategóriában meghatározott módszerek az összes példányhoz rendelkezésre állnak az osztályhoz, amelyhez valójában tartozik. Használható az eredeti osztály alosztályaiban, mint például az öröklés. A módszereknek, amelyek bármelyik kategóriát csatolják, nem szabad változni. Ha az eredeti osztály végrehajtja, akkor futás közben is használható.

Q4. Mi a visszatartási szám?

Válasz:
Ez az interjú során feltett alapvető C célkitűzés kérdése. A tulajdonosi politikát referenciaszámlálással hajtják végre. Ezt a visszatartási számot a visszatartási módszer után veszik figyelembe. Minden objektumnak van visszatartási száma, és amikor egy objektum létrehozásra kerül, akkor az alapértelmezett visszatartási száma 1. Ha ezt az újonnan létrehozott objektumot visszatartó üzenetként küldik el, akkor a számot 1-rel növelik. Ez a szám 1-rel csökken, amikor egy objektumot a kiadási üzenet. Az is csökken, ha egy objektumnak automatikus kioldási üzenetet küld a jelenlegi automatikus kioldási készlet végén. Az objektum felszabadul és üzlethelyzetbe kerül, ha a visszatartási szám 0-ra csökken.

Q5. Mikor használjuk az NSArray-t és az NSMvableArray-t?

Válasz:
Az NSArray használata akkor javasolt, ha a tömb adatai nem változnak. Erre példa lehet egy olyan társasági név, amely ritkán változik meg, így az NS Array használható úgy, hogy senki sem manipulálja azt.

NSMvable tömb: Az NS tömbtől eltérően ezt a tömböt akkor használják, amikor a tömb adatai megváltoznak. Itt tekinthetünk egy olyan funkcióra mutató példát, amelynek értékei a tömbnek átadódnak függvényként, és ez a függvény hozzáfűz bizonyos elemeket a tömbbe. Ebben az időben az NSMvable tömb használható.

2. rész - C objektív interjúkérdések (haladó)

Vessen egy pillantást a C célkitűzéssel kapcsolatos speciális interjúkérdésekre.

Q6. Használható-e az ARC és a nem-ARC kód együtt egy projektben?

Válasz:
Igen, egy projekt mind ARC, mind nem ARC kódot használhat. Amikor egy projekt nem ARC-kódokat választ, akkor a –fobj-ív-fordító jelzője van beállítva. Ezt az ARC-t bizonyos osztályoknál le lehet tiltani a –fno-objc-arc használatával.
Ezt a teljes folyamatot az Xcode → Projekt → Összeállítási fázis → Források összeállítása → dupla kattintással végezheti el az osztályban, és állítsa be a –fno-objc-ívet.

Q7. Milyen módszereket használ az NSURL kapcsolat?

Válasz:
Az NSURL kapcsolatban használható módszerek a következőek:

  • Egy kapcsolat, amely megkapta a választ
  • Olyan kapcsolat, amely adatokat fogad
  • Egy kapcsolat hibával hibás
  • Egy kapcsolat, amely befejeződött a betöltéskor

Most térjünk át a következő C célkitűzés interjúkérdéseire

Q8. Mi a C célkitűzés protokollja?

Válasz:
Azt mondják, hogy egy protokoll olyan nyelvi szolgáltatás, amely több öröklést biztosít egy nyelven, amely egyetlen örökséggel rendelkezik. A C cél elsősorban két protokollt támogat:

A hivatalos protokollokat fordító protokolloknak, az informális protokollokat ad-hoc protokolloknak is nevezik.

Q9. A kapa működik-e az C célkitűzésben?

Válasz:
Ez egy interjúban a legjobban feltett C célkitűzés kérdése. Az üzenetküldésnek csak akkor kell megtörténnie, amíg egy módszer nem kerül megvalósításra a C célkitűzésben. Az objc_msgSend () hívásüzenet-funkciót akkor hívják meg, amikor a fordító átalakítja az üzenet kifejezést. Ez a funkció kapcsolódik a vevőhöz, és a módszer nevét említi az üzenet.

Q10. Mi az atomi és nem atomi a C célkitűzésben, és melyik tekinthető alapértelmezettnek?

Válasz:
Ezzel a módszerrel határozhatók meg azok a hozzáférési módszerek, amelyek nem atomi. Ez biztosítja, hogy a jelenleg futó folyamatot a CPU befejezze, mielőtt bármilyen más folyamat elérné a változót. Nem atomi azok a változók, amelyek nem atomi. Ezek gyorsabbak, de nem biztonságosak a menethez.

Ajánlott cikkek

Ez útmutatóként szolgál a C célkitűzéssel kapcsolatos interjúkérdések és válaszok listájához, így a jelölt könnyen meg tudja oldani ezeket a C célkitűzéssel kapcsolatos interjúkérdéseket. Itt, ebben a bejegyzésben megvizsgáltuk a C célkitűzés interjúval kapcsolatos legfontosabb kérdéseket, amelyeket gyakran kérdeznek az interjúk során. A következő cikkeket is megnézheti további információkért -

  1. Mikroszolgáltatások interjúval kapcsolatos kérdések és válaszok
  2. A kiberbiztonsági interjú kérdéseire adott válaszok
  3. A 10 legfontosabb adatszerkezettel kapcsolatos interjúkérdések és válaszok
  4. PowerShell interjúkérdések - TopMost
  5. Teljes útmutató a Python objektumához, példával