Swift 面接の質問と回答トップ 15
ここでは、新人だけでなく経験豊富な Swift 開発者候補者が夢の仕事に就くための Swift 面接の質問と回答を紹介します。
1) Swift プログラミング言語とは何ですか?
Swift は、iOS および OS X 用のアプリケーションを作成するためのプログラミング言語およびシステムです。これは、Cocoa および Cocoa Touch 用の革新的なプログラミング言語です。
無料 PDF ダウンロード: iOS Swift インタビューの質問と回答
2) Swift 言語で変数を定義する方法を説明してください。
変数と定数は使用する前に宣言する必要があります。 定数は let キーワードで宣言し、変数は var キーワードで宣言します。 変数と辞書はどちらも括弧を使用して記述されます。 たとえば、Var Guru99 = 「これは Guru99 です」 ksomeconstant = 30 とします。
3)「?」の意味は何ですか? 迅速に?
疑問符が宣言されている場合、プロパティはオプションになります。 プロパティが値を保持しない場合、「?」 実行時エラーの回避に役立ちます。
4) Swift プログラミングの特徴について言及してください。
- 安全でないコードのクラス全体を排除します
- 変数は使用前に常に初期化されます
- 配列と整数のオーバーフローがチェックされる
- メモリは自動的に管理される
- 条件付きプログラミングで「if」ステートメントを使用する代わりに、Swift には「switch」関数があります
5) Swift と「Objective-C」言語の違いについて言及してください。
「C」言語と「Swift」言語の違いは次のとおりです。
スウィフト | オブジェクティブC |
---|---|
Swift では、変数と定数は使用前に宣言されます。 | 目的 C では、変数を NSString として宣言し、定数を int として宣言する必要があります。 |
定数には「let」キーワードを使用し、変数には「var」キーワードを使用する必要があります。 | オブジェクト C では、変数は「」として宣言され、定数は「」として宣言されます。 |
コードをセミコロンで終了する必要はありません | コードはセミコロンで終わります |
Swift では文字列の連結が簡単で、定数、リテラル、変数、式の組み合わせから新しい文字列を作成できます。 | 目的 C では、変更する文字列として NSMutableString と NSString のどちらかを選択する必要があります。 |
Swift では、Objective C のような個別のインターフェイスを作成する必要はありません。単一のファイル (.swift) でクラスを定義できます。 | クラスの場合は、クラス用に個別のインターフェイス (.h) ファイルと実装 (.m) ファイルを作成します。 |
Swift を使用すると、クラス、構造体、または列挙型でメソッドを定義できます。 | 目的はこれを許可しません |
Swift では、「 +=」演算子を使用して項目を追加します | CではNSMutableのaddObject:メソッドを使用します。 配列 新しい項目を配列に追加するには |
6) Swift にはどのような種類の整数があるかについて言及してください。
Swift は、符号なし整数と符号付き整数を 8、16、32、および 64 ビット形式で提供します。 C と同様に、これらの整数は命名規則に従います。 たとえば、符号なし整数は UInt8 型で示され、32 ビット符号付き整数は Int32 型で示されます。
7) Swift の浮動小数点数とは何ですか、また浮動小数点数の種類は何ですか?
浮動小数点数は、3.25169 や -238.21 などの小数部分を含む数値です。 浮動小数点型は、整数型よりも広範囲の値を表すことができます。 符号付き浮動小数点数が XNUMX つあります
- ダブル: 64 ビット浮動小数点数を表し、浮動小数点値が非常に大きい必要がある場合に使用されます。
- 浮く: 32 ビット浮動小数点数を表し、浮動小数点値が 64 ビット精度を必要としない場合に使用されます。
8) Swift で複数行のコメントをどのように書くことができるのか説明してください。
複数行のコメントは、スラッシュの後にアスタリスク (/*) を続けて記述し、アスタリスクの後にスラッシュ (*/) を続けて終了することができます。
9) de-initializer とは何ですか?また、それは Swift でどのように記述されますか?
初期化解除子は、クラス インスタンスの割り当てが解除される直前に宣言されます。 deinitializer は deinit キーワードを使用して作成します。 De-initializer は括弧なしで記述され、パラメーターを受け取りません。 と書かれています
deinit { // perform the deinitialization }
10) Swift で利用できるコレクションの種類について言及してください。
Swift では、コレクション型には Array と Dictionary の XNUMX 種類があります。
- アレイ: 単一タイプの配列または複数のタイプの配列を作成できます。 スウィフトは通常前者を好みます
単一型の配列の例は次のとおりです。
Var cardName : [String] = [ "Robert" , "Lisa" , "Kevin"] // Swift can infer [String] so we can also write it as: Var cardNames = [ "Robert", "Lisa", "Kevin"] // inferred as [String]
配列を追加するには、添字 println(CardNames[0]) を使用する必要があります。
- 辞書: 他のプログラミング言語のハッシュ テーブルに似ています。 ディクショナリを使用すると、キーと値のペアを保存し、キーを提供して値にアクセスできます。
var cards = [ "Robert": 22, "Lisa" : 24, and "Kevin": 26]
11) Swift で使用される制御転送ステートメントは何ですか?
Swift で使用される制御転送ステートメントには次のものがあります。
- 続ける
- ブレーク
- フォールスルー
- 返品
12) オプションのチェーンとは何ですか?
オプションのチェーンは、プロパティをクエリして呼び出すプロセスです。 複数のクエリをチェーンすることができ、チェーン内のリンクが nil の場合、チェーン全体が失敗します。
13) Swift では基本クラスはどのように定義されていますか?
Swift では、クラスは基本クラスから継承されず、スーパークラスを指定せずに定義したクラスは自動的に基本クラスになります。
14) Lazy ストアド プロパティとは何か、またそれがいつ役立つかを説明してください。
遅延保存プロパティは、最初に使用されるまで初期値が計算されないプロパティに使用されます。 宣言の前に遅延修飾子を記述することで、遅延ストアド プロパティを宣言できます。 遅延プロパティは、プロパティの初期値が値が不明な外部要因に依存する場合に役立ちます。
15) Swift の Switch の特徴について言及してください。
- あらゆる種類のデータをサポートし、同期だけでなく同等性のチェックも行います。
- switch でケースが一致した場合、プログラムは switch ケースから存在し、次のケースのチェックを続行しません。 したがって、ケースの最後にあるスイッチを明示的にブレイクアウトする必要はありません
- switch ステートメントは網羅的である必要があります。つまり、変数の可能な値をすべてカバーする必要があります。
- switch ステートメントにはフォールスルーがないため、break は必要ありません。
これらの面接の質問は、あなたの活力(口頭)にも役立ちます
「Swift は、iOS および OS X で Web アプリケーションを作成するためのプログラミング言語およびシステムです。」
まあ、あなたはおそらく何トンもの人々のインタビューを台無しにしました。 よくやった。
エラーが修正されました! 気づかせてくれてありがとう
switch ステートメントに「フォールスルー」はありませんか?
フォールスルーが利用可能です
はい、利用可能です
質問 #3 – それは Swift の導入方法ではありません。 SwiftはAppleのサイトにアップロードすることで展開されます。 全体のプロセスがあります。 JAR や Tomcat とは関係ありません。
エラーが修正されました!
さらに、Swift には実際に if ステートメントがあります。 それは if ステートメントの代わりに switch ステートメントではありません。 それはそれらに加えてです。
暗黙的なフォールスルーがないのは事実ですが、この動作を明示的にプログラムすることは可能です。
「目的 C では、変数を NSString として宣言し、定数を int として宣言する必要があります」 この行は何を意味しますか
ありがとう、相棒。
答えを確認してください。 iOS に関連していないものはほとんどありません
UI のインタビューの質問を投稿していただけますか。 前もって感謝します
この行は何を意味しますか:- オブジェクティブ C では、変数は「」として宣言され、定数は「」として宣言されます。
メッセージヘッダーの「ステータス:削除可能」は何を意味しますか
Swift と「Objective-C」言語の違いについて言及してください。
「C」言語と「Swift」言語の違いは次のとおりです。
CとSwiftではなく、Objective-CとSwiftを区別しているのか、答えを明確にする必要があります。
明日面接があるのですが、これは面接を突破するのに役立ちますか? それとも他のページもフォローする必要がありますか? 必要ならいくつか提案してください