Swiftチュートリアル:Swiftを使用したiOS開発の開始



このSwiftチュートリアルでは、Swiftを使用したiOS開発の概要を説明し、Swiftのすべてのプログラミング概念についても理解します。

このSwiftチュートリアルブログでは、Swiftの基本的な概念のいくつかを紹介します。ただし、先に進む前に、「Swiftとは」と、システムにSwiftをインストールする方法について説明します。それでは、今から始めましょう!

Swiftチュートリアルに関するこのブログでは、次のトピックについて説明します。





Swiftチュートリアル:Swiftとは何ですか?

Swiftは、CとObjective-Cの最高のものを採用したプログラミング言語であり、AppleInc。によってiOS / OS X開発用に開発され、多くの既存のiOS6およびOSX10.8プラットフォームで実行されます。

Swiftチュートリアル: Swiftをインストールするにはどうすればいいですか?

Swiftを使用するには、PlaygroundでSwiftコーディングを実行するためのXcodeソフトウェアが必要です。Swiftに慣れたら、iOS / OSxアプリケーション開発にXcodeIDEを使用できます。



したがって、Apple Developer Webサイトにアカウントがあるとすると、次の場所にアクセスする必要があります。 Apple開発者向けにダウンロードしてください。

リンクに移動したら、利用可能なXcodeの最新バージョンを選択し、ディスクイメージの近くにあるリンクをクリックしてダウンロードします。

dmgファイルをダウンロードした後、ダブルクリックするだけでインストールできます。



よし!したがって、xCodeを入手したら、それをダブルクリックして開き、に移動します。 ファイル->新規 と選択します 遊び場 。次に、iOSを選択し、遊び場の名前を伝えます。それが終わったら、をクリックします 作成します。

XcodeIDE-Swiftチュートリアル-Edureka

図1: Xcode IDEでのプレイグラウンドの作成–Swiftチュートリアル

Rプログラミング言語を使用している企業

遊び場の準備ができたので、コーディングを始めましょう。

それでは、最初に基本的な構文から始めて、次にhelloworldプログラムを作成しましょう。

Swiftチュートリアル: 基本構文

  • トークン– トークンはいずれかのキーワードです 識別子、定数、文字列リテラル、または記号。
  • セミコロン– Swiftでは、コード内の各ステートメントの後にセミコロン()を入力する必要はありません。同じ行で複数のステートメントを使用する場合にのみ、セミコロンが区切り文字として使用されます。
  • キーワード– キーワードはコーディング言語の予約語であり、バッククォートでエスケープしない限り、定数や変数、またはその他の識別子名として使用することはできません(`&hellip`)。
  • リテラル– リテラルは主に、整数、浮動小数点数、または文字列型の値のソースコード表現です。したがって、リテラルは、整数リテラル、浮動リテラル、文字列リテラル、またはブールリテラルにすることができます。
  • コメント– コメントは、コンパイラがコンパイルされないテキストを無視するのに役立ちます。複数行コメントはで始まります / * で終了します * / 一方、単一行コメントは // コメントの冒頭に。
  • 識別子– Swiftは大文字と小文字を区別する言語であり、識別子内に@、$、%などの特殊文字を使用できません。識別子は、アルファベットAからZまたはaからzまたはアンダースコア_で始まり、その後にさらに文字、アンダースコア、および数字(0から9)が続きます。
  • 空白– Swiftでは空白を使用して、空白、タブ、改行文字、コメントを記述し、ステートメントの一部を別の部分から分離します。これは、コンパイラーがステートメント内の1つの要素が終了し、次の要素が開始する場所を識別するのに役立ちます。

HelloWorldプログラム

/ * HelloWorldプログラム* / import UIKit // iOSプレイグラウンド用のプログラムを作成しているため、UiKitをインポートする必要がありますvar myString = 'Hello World!' print(myString)// 2つのステートメントが一緒に使用されるためセミコロンを使用

出力

'こんにちは世界'

最初のプログラムを作成したので、変数とデータ型について詳しく理解しましょう。

業界レベルのプロジェクトで認定を受け、キャリアを迅速に追跡します

Swiftチュートリアル: 変数、データ型、型キャスト

変数

変数は、値を格納するために予約されたメモリ位置に他なりません。これは、変数を作成するときに、メモリにいくらかのスペースを予約することを意味します。

var a = 42 //変数の宣言vara:Int = 42 //データ型を指定して変数を宣言することもできます。 let b = 32 //定数の宣言print(varA)

データ型

他のプログラミング言語と同様に、swiftには組み込みのデータ型が用意されており、次の表で参照できます。

タイプ 典型的なビット幅 典型的な範囲
Int8 1バイト– 127〜127
UInt8 1バイト0から255
Int32 4バイト-2147483648から2147483647
UInt32 4バイト0から4294967295
Int64 8バイト-9223372036854775808から9223372036854775807
UInt64 8バイト0から18446744073709551615
浮く 4バイト1.2E-38から3.4E + 38(〜6桁)
ダブル 8バイト2.3E-308〜1.7E + 308(〜15桁)

さて、ここで興味深い事実をお話ししましょう。

Swiftでは、変数を宣言するときに、必ずしもデータ型を定義する必要はありません。

したがって、変数を宣言するとします var b = 'こんにちは' 、その後、Swiftは自動的にそれを理解します bストリング 指定した入力に基づいて、変数を入力します。

型キャスト

これで、型変換や型キャストを実行することもできます。

たとえば、整数値を浮動小数点値に、またはその逆に変換できます。

元を検討してください以下に十分:

let a:Int = 5679 // 2つの定数を宣言するletb:Float = 2.9999 // FloatをIntに変換するprint(“この数値はInt now(Int(b))”)// IntをFloatに変換するprint(“ This番号は現在Floatです(Float(a))」)

出力:

この番号はIntnow2です この番号は現在5679.0のフロートです

Swiftチュートリアル: 演算子

演算子は、オペランドの値を操作できる構造です。式7+ 3 = 10について考えてみます。ここで、7と3はオペランドであり、+は演算子と呼ばれます。Swiftは、次のタイプの演算子をサポートしています。

図2: Swiftのさまざまな演算子–Swiftチュートリアル

さて、ここでは詳しく説明しませんが、Swiftでの簡単な操作をいくつか紹介します。以下の例を検討してください。

print( '5 + 3 =(5 + 3)')//加算print( '5-3 =(5-3)')//減算print( '5 * 3 =(5 * 3)')//乗算print( '5/3 =(5/3)')//除算print( '5%3 =(5%3)')//モジュラス

出力:

5 + 3 = 8 5-3 = 2 5 * 3 = 15 5/3 = 1 5%3 = 2.3 

よし!さて、皆さんは基本的な演算子を知っているので、条件文から始めましょう。

Swiftチュートリアル: 条件文

条件付きステートメントは、ある条件が真の場合にステートメントまたはステートメントのグループを実行するために使用されます。つまり、3つの条件文があります– もし、 If-Else そして スイッチ ステートメント。

それでは、今からIfステートメントから始めましょう。

Ifステートメント

ifステートメントは、単純なifステートメントまたはネストされたifステートメントのいずれかです。

だから、シンプル 場合 ステートメントは、特定のステートメントまたはステートメントのブロックを実行するかどうかを決定する最も単純な意思決定ステートメントです。

図3: If条件付きステートメントのフローチャート–Swiftチュートリアル

以下の例を考えてみましょう。

var x:Int = 10 if x<20 { print('x is less than 20') } print('Value of variable x is (x)') 

出力:

xが20未満変数xの値が10

ネストされている場合

さて、 ネストされている場合 ifステートメントまたはifステートメント内のif-elseステートメントです。

図4: ネストされた場合の条件付きステートメントのフローチャート–Swiftチュートリアル

以下の例を考えてみましょう。

var x:Int = 100 var y:Int = 200 if x == 100 {print( '最初の条件が満たされている')if y == 200 {print( '2番目の条件も満たされている')}} print( '変数xは(x) ')print('変数yの値は(y) ')

出力:

最初の条件が満たされている 2番目の条件が満たされている 変数xの値は100です 変数yの値は200です

If-Elseステートメント

if-elseステートメントは条件をテストし、条件がfalseの場合、「else」ステートメントが実行されます。

図5: Ifのフローチャート–その他の条件文–Swiftチュートリアル

以下の例を検討してください。

var x:Int = 10 if x<20 { print('x is less than 20') } else { print('x is not less than 20')} print('Value of variable x is (x)') 

出力:

xが20未満

If-else..if-else(If-elseラダー)

今、あなたはまた持つことができます if-else はしご。したがって、If-else-ifラダーを使用すると、ユーザーはループ内で多くのif elseステートメントを使用でき、条件の1つが当てはまる場合、残りのループはバイパスされます。

図6: Ifのフローチャート– Else Ladder条件文–Swiftチュートリアル

以下の例を検討してください。

var x:Int = 100 var y:Int = 200 if xy {/ *条件がtrueの場合、次を出力します* / print( 'x is great than y')} else {/ *条件がfalseの場合、次を出力します* / print( 'x is equal to y')} print( '変数xおよびyの値は:(x)および(y)')

出力:

xがyより小さい変数xおよびyの値は次のとおりです:100および200

S 魔女

switchステートメントは、コードのさまざまな部分に対して条件を実行する簡単な方法を提供します。

図7: スイッチの条件文のフローチャート–Swiftチュートリアル

以下の例を検討してください。

var a = 20 switch index {case 10:print( 'indexの値は10')fallthrough case 15,20:print( 'indexの値は15または20')fallthrough case 30:print( 'indexの値は30 ')デフォルト:print('デフォルトケース ')}

出力:

インデックスの値は15または20のいずれかです インデックスの値は30です

ここで、出力を観察すると、条件が満たされた後でも、次のステートメントも出力されます。これは、ステートメントを使用しているためです フォールスルー 。したがって、使用しない場合 フォールスルー ステートメント、その後、プログラムはから出てきます スイッチ 一致するcaseステートメントを実行した後のステートメント。

独自のiOSアプリの構築に興味がありますか?

それでは、反復ループに移りましょう。

Swiftチュートリアル: 反復ループ

一般に、ステートメントは順番に実行されます。関数の最初のステートメントが最初に実行され、次に2番目のステートメントが実行されます。コードのブロックを数回実行する必要がある場合があります。

ループステートメントを使用すると、ステートメントまたはステートメントのグループを複数回実行できます。したがって、反復ループは主に For-In一方 そして 一方を行います ループ。

For-Inループ

for-inループは、数値の範囲、配列内の項目、文字列内の文字など、項目のコレクションを反復処理します。

図8: For-Inループのフローチャート–Swiftチュートリアル

以下の例を検討してください。

for i in 1 ... 3 {print( 'Hello world!and Value of i is(i)')}

出力:

こんにちは世界! iの値は1です こんにちは世界!そして、iの値は2 Hello world! iの値は3です

Whileループ

Swiftプログラミング言語のwhileループステートメントは、指定された条件が真である限り、ターゲットステートメントを繰り返し実行します。

図9: Whileループのフローチャート–Swiftチュートリアル

以下の例を検討してください。

var current:Int = 0 //変数を初期化しますvarfinal:Int = 3 let Completed = true while(current<= final) // condition { //play game if Completed { print('You have passed the level (current)') current = current + 1 //statement to be executed if the condition is satisfied } } print('The while loop ends') //Statement executed after the loop ends 

出力:

レベル0に合格しました レベル1に合格しました レベル2に合格しました レベル3に合格しました whileループが終了します

Do-while / Repeat while Loop

ループの上部でループ状態をテストするforループとwhileループとは異なり、repeat…whileループはループの下部でその状態をチェックします。

図10: Do-Whileループのフローチャート–Swiftチュートリアル

以下の例を検討してください。

var val = 5 repeat {print( 'Value is(val)')val = val + 1} while index<10 

出力:

値は5です 値は6です 値は7です 値は8です 値は9です

よし、みんな!これでループは終わりです。次に、配列とタプルにすばやくジャンプしましょう。

Swiftチュートリアル: アレイとタプル

配列

配列は、要素のリストを含むデータ構造です。これらの要素はすべて、整数や文字列など、同じデータ型です。だから、あなたがあなたの友人の名前を保存したい場合を考えてみてください。次のようにプログラムを書くことができます:

var friends:Array = ['Akash'、 'Sanjana'、 'Avinash'、 'Swatee']

append()メソッドを使用して、配列に新しい要素を追加することもできます。以下の例を参照してください。

friends.append( 'Aayushi')print(friends)

出力:

Akash Sanjana Avinash Swatee Aayushi

タプル

タプルは、複数の値を1つの複合値にグループ化するために使用されます。以下の例を検討してください。

var failure404 =(404、 'ゲートウェイが見つかりません')print( 'コードは(failure404.0)')print( 'エラーの定義は(failure404.1)')var failure404 =(failureCode:404、説明: 「ゲートウェイが見つかりません」)print(failure404.faliureCode)// 404を出力します。

出力

コードは404です エラーの定義は、ゲートウェイが見つかりません 404

さて、皆さんは配列を理解したので、セットと辞書を使い始める時が来ました。

iOS開発で認定を受けたいですか?

Swiftチュートリアル: セットと辞書

セット

セットは、配列のような明確な順序を持たずに、同じタイプの個別の値を格納するために使用されます。したがって、重複する値がないことを確認したい場合、または要素の順序が問題にならない場合は、配列の代わりにセットを使用できます。
セットは、すべての項目(要素)を中括弧[]内にコンマで区切って配置することによって作成されます。以下の例を検討してください。

letevenNumber:Set = [2,4,6,8,12]

さて、ユニオン、交差、減算などのセット操作も実行できることをお伝えします。

連合: AとBの和集合は、両方のセットのすべての要素のセットです。結合は、を使用して実行されます 。連合() 方法。

プロジェクト管理における調達とは

交差点: AとBの共通部分は、両方のセットに共通する要素のセットです。交差点は、 。交差点() 方法。

減算: AとBの違い(A – B)は、Aだけにあり、Bにはない要素のセットです。同様に、B – Aは要素のセットです。つまり、Bにはありますが、Aにはありません。以下のコードを参照してください。

letevenNumber:Set = [10,12,14,16,18,20] let oddNumber:Set = [5,7,9,11,13,15] let primeNumber:Set = [2,3,5,7、 13,17,19] oddNumber.union(evenNumber).sorted()oddNumber.intersection(evenNumber).sorted()oddNumber.subtracting(primeNumber).sorted()

出力:

[5、7、9、10、11、12、13、14、15、16、18、20] [] [9、11、15]

辞書

ディクショナリは、同じタイプの値の順序付けられていないリストを格納するために使用され、Swiftではディクショナリに間違ったタイプを入力することはできません。以下の例を考えてみましょう。

var exampleDict:[Int:String] = [1: 'One'、2: 'Two'、3: 'Three'] //辞書の作成varaccessval = exampleDict [1] //辞書の値へのアクセスprint( 'キーの値= 1 is(accessVal ')print('キーの値= 2 is(exampleDict [2]) ')print('キーの値= 3 is(exampleDict [3]) ')

出力:

key = 1の値はOptional( 'One')です key = 2の値はOptional( 'Two')です key = 3の値はOptional( 'Three')です

Swiftチュートリアル: 機能

関数は基本的に、特定のタスクを実行するために一緒に編成されたステートメントのセットです。関数の呼び出し、パラメーター付き/なしの関数、戻り値付き/なしの関数、関数タイプ、およびネストされた関数を使用できます。関数を定義して呼び出す方法を理解するには、以下の例を参照してください。以下の例を検討してください。

func Employee(empname:String)-> String {//関数の定義returnempname} print(Employee(empname: 'Sayantini'))//関数の呼び出しprint(Employee(empname: 'Kislay'))

出力:

サヤンティーニ Kislay

それでは、ブログの次のセクション、つまりクロージャと構造に移りましょう。

Swiftチュートリアル: 閉鎖と構造

閉鎖

クロージャは一般的にすべての人を混乱させますが、ブロックとして編成された関数のように、単なる自己完結型のコードです。それらは匿名にすることができますが、関数には関数名が必要です。以下の例を考えてみましょう。

let name = {print( 'Welcome to Swift Closures')} name()

出力:

クロージャへようこそ

構造

Swiftは、構造として構造を利用するコーディングプラットフォームブロックに柔軟な構築を提供します。これらの構造を利用することで、コンストラクトのメソッドとプロパティを一度定義できます。以下の例を考えてみましょう。
struct employeeDetails {//構造体の定義varname = 'Bob' var id = 11021 varphonenumber = 9876543210} let details = employeeDetails()//構造体とプロパティへのアクセスprint( 'Name of employee is(details.name)')print ( '従業員のIDは(details.id)')print( '従業員の電話番号は(details.phonenumber)')

出力:

従業員の名前はボブです 従業員のIDは11021です 従業員の電話番号は9876543210です

さて、皆さんは構造を理解したので、クラスと継承について理解しましょう。

Swiftチュートリアル: クラスと継承

クラス

Swiftのクラスは、基本的に柔軟な構造の構成要素です。したがって、定数、変数、および関数と同様に、ユーザーはクラスのプロパティとメソッドを定義できます。

class DetailsS​​truct {//クラスの定義varid:Int init(id:Int){self.id = id}}クラスstudentDetails {var id = 125612} let studentid = studentDetails()print( 'Student id is(studentid.id ) ')

出力:

学生IDは125612です

継承

継承は、既存のクラスから新しいクラスを作成するプロセスです。派生クラス 継承します 基本クラスのすべての機能と、独自の機能を追加することもできます。

クラスはさらに次のように分類できます サブクラス そして スーパークラス

サブクラス: クラスが別のクラスからプロパティ、メソッド、および関数を継承する場合、そのクラスはサブクラスと呼ばれます。

スーパークラス :他のクラスがそれ自体から継承できるようにするためのプロパティ、メソッド、および関数を含むクラスは、スーパークラスと呼ばれます。以下の例を考えてみましょう。

class EmployeeDetails {var id:Int var number:Int init(detail1:Int、detail2:Int){id = detail1 number = detail2} func print(){print( '従業員IDは:(id)、従業員の電話番号は: (number) ')}} class display:EmployeeDetails {init(){super.init(detail1:94567、detail2:9876543210)// superキーワードは、スーパークラスからパラメーターとメソッドを呼び出すために使用されます}} let employeeinformation = display( )employeeinformation.print()

出力:

従業員IDは94567、従業員の電話番号は9876543210

さて、皆さんはSwiftの主要な概念についてのアイデアを持っています。それでは、プロトコル、拡張機能、ジェネリックス、列挙型などの拡張トピックの学習を始めましょう。

Swiftチュートリアル: プロトコル

プロトコルは、メソッド、プロパティ、およびその他の要件機能のための他の言語のインターフェイスのようなものです。 以下の例を検討してください。
プロトコルFly {var flies:Bool {get set} func flyable(milesCovered:Double)-> String} class Vehicle:Fly {var flies:Bool = false var name:String = 'デフォルト名' func flyable(milesCovered:Double)- >文字列{if(self.flies){return '(self.name)flies(milesCovered)miles'} else {return '(self.name)cannot fly'}}} var BMWX1 = Vehicle()BMWX1.name = ' BMW X1'BMWX1.flies = false print(BMWX1.flyable(34))
出力:
BMWX1は飛べない

Swiftチュートリアル: 拡張機能

拡張機能は基本的に、既存のクラス、構造、または列挙型の機能を追加するために使用されます。拡張機能を使用すると、計算プロパティと計算型プロパティを追加したり、新しいネストされた型を定義して使用したり、インスタンスと型のメソッドを定義したり、新しい初期化子を提供したり、添え字を定義したり、既存の型をプロトコルに準拠させたりできます。

以下の例を検討してください。

extension Int {var add:Int {returnself + 10} varsubtract:Int {returnself- 34} var multiply:Int {returnself * 5} var split:Int {returnself / 5}} letaddition = 3.add print( '値加算後は(加算) ')let減算= 120.subtract print('減算後の値は(減算) ')let乗算= 25.multiply print('値は乗算中です(乗算) ')let除算= 55 .divide print( '除算後の値は(division)')let mix = 10.add + 34.subtract print( '計算された値は(mix)')

出力:

加算後の値は13です 減算後の値は86です 乗算する値は125です 除算後の値は11です。計算された値は20です。

Swiftチュートリアル: ジェネリック

ジェネリック型は、柔軟で再利用可能な関数と型を作成するために使用されます。したがって、基本的にはジェネリックを使用して重複を回避できます。以下の例を検討してください。

func swap(x:inout T、y:inout T){let temp = xx = yy = temp} var str1 = 'Hello' var str2 = 'Edureka' print( 'Before Swapping String values are:(str1)and(str2 ) ')swap(x:&str1、y:&str2)print('文字列値を交換した後:(str1)および(str2) ')var num1 = 1996 var num2 = 1865 print(' Int値を交換する前:(num1 )および(num2) ')swap(x:&num1、y:&num2)print(' Int値を交換した後:(num1)および(num2) ')

出力:

文字列値を交換する前は、HelloとEdurekaです。 文字列値を交換した後は、EdurekaとHelloです。 文字列値を交換する前は、1996年と1865年です。 文字列を交換した後の値は次のとおりです:1865および1996

Swiftチュートリアル: 列挙

簡単に言うと、列挙型は、関連する値のセットで構成されるユーザー定義のデータ型です。キーワード 列挙型 列挙型データ型を定義するために使用されます。以下の例を検討してください。

enum Color:Int {case blue case green case red case yellow init(){self = .red} func getDetails()-> String {switch(self){case .blue:return'Color is blue 'case .green:return '色は緑' case .red:return '色は赤' case .yellow:return '色は黄色'デフォルト:return '色が見つかりません'}}} var ChooseColor = Color print(chooseColor.rawValue)var favColor = Color .green print(favColor.rawValue)if(favColor == Color.green){print( 'お気に入りの色は緑')} print(favColor.getDetails())

出力:

2 1 好きな色は緑です 

このSwiftチュートリアルを楽しんでいただけたでしょうか。 Swiftの基本をすべてカバーしたので、今すぐ練習を開始できます。

Swiftとそのさまざまなアプリケーションに関する詳細な知識を得るには、次のことができます。 24時間年中無休のサポートと生涯アクセスを備えたライブオンライントレーニング用。

業界レベルの専門家から学ぶ

質問がありますか? 「コメントセクションでそれらに言及してください Swiftチュートリアル 」と返信します。