Swift - ไวยากรณ์พื้นฐาน

เราได้เห็นส่วนหนึ่งของโปรแกรม Swift 4 ในขณะที่ตั้งค่าสภาพแวดล้อม มาเริ่มกันใหม่กับสิ่งต่อไปนี้Hello, World! โปรแกรมที่สร้างขึ้นสำหรับ OS X playground ซึ่งรวมถึง import Cocoa ดังแสดงด้านล่าง -

/* My first program in Swift 4 */
var myString = "Hello, World!"

print(myString)

หากคุณสร้างโปรแกรมเดียวกันสำหรับสนามเด็กเล่น iOS ก็จะรวมถึง import UIKit และโปรแกรมจะมีลักษณะดังนี้ -

import UIKit
var myString = "Hello, World!"
print(myString)

เมื่อเรารันโปรแกรมข้างต้นโดยใช้สนามเด็กเล่นที่เหมาะสมเราจะได้ผลลัพธ์ดังต่อไปนี้ -

Hello, World!

ตอนนี้ให้เราดูโครงสร้างพื้นฐานของโปรแกรม Swift 4 เพื่อให้คุณเข้าใจโครงสร้างพื้นฐานของภาษาโปรแกรม Swift 4 ได้อย่างง่ายดาย

นำเข้าใน Swift 4

คุณสามารถใช้ไฟล์ importคำสั่งเพื่อนำเข้าเฟรมเวิร์ก Objective-C (หรือไลบรารี C) ลงในโปรแกรม Swift 4 ของคุณโดยตรง ตัวอย่างเช่นข้างต้นimport cocoa คำสั่งทำให้ไลบรารี Cocoa, API และรันไทม์ทั้งหมดที่สร้างเลเยอร์การพัฒนาสำหรับ OS X ทั้งหมดพร้อมใช้งานใน Swift 4

Cocoa ถูกนำไปใช้ใน Objective-C ซึ่งเป็นส่วนเหนือของ C ดังนั้นจึงง่ายต่อการผสม C และแม้แต่ C ++ ในแอปพลิเคชัน Swift 4 ของคุณ

โทเค็นใน Swift 4

โปรแกรม Swift 4 ประกอบด้วยโทเค็นต่างๆและโทเค็นเป็นทั้งคีย์เวิร์ดตัวระบุค่าคงที่สตริงลิเทอรัลหรือสัญลักษณ์ ตัวอย่างเช่นคำสั่ง Swift 4 ต่อไปนี้ประกอบด้วยโทเค็นสามรายการ -

print("test!")
The individual tokens are:
print("test!")

ความคิดเห็น

ความคิดเห็นเป็นเหมือนการช่วยเหลือข้อความในโปรแกรม Swift 4 ของคุณ คอมไพเลอร์จะถูกละเว้น ความคิดเห็นหลายบรรทัดเริ่มต้นด้วย / * และสิ้นสุดด้วยอักขระ * / ดังที่แสดงด้านล่าง -

/* My first program in Swift 4 */

ความคิดเห็นหลายบรรทัดสามารถซ้อนอยู่ใน Swift 4 ต่อไปนี้เป็นความคิดเห็นที่ถูกต้องใน Swift 4 -

/* My first program in Swift 4 is Hello, World!
/* Where as second program is Hello, Swift 4! */ */

ความคิดเห็นบรรทัดเดียวเขียนโดยใช้ // ที่จุดเริ่มต้นของความคิดเห็น

// My first program in Swift 4

อัฒภาค

Swift 4 ไม่ต้องการให้คุณพิมพ์อัฒภาค (;) หลังแต่ละคำสั่งในรหัสของคุณแม้ว่าจะเป็นทางเลือกก็ตาม และถ้าคุณใช้อัฒภาคคอมไพเลอร์จะไม่บ่นเกี่ยวกับเรื่องนี้

อย่างไรก็ตามหากคุณใช้หลายคำสั่งในบรรทัดเดียวกันจำเป็นต้องใช้อัฒภาคเป็นตัวคั่นมิฉะนั้นคอมไพเลอร์จะเพิ่มข้อผิดพลาดทางไวยากรณ์ คุณสามารถเขียนสวัสดีชาวโลก! โปรแกรมดังนี้ -

/* My first program in Swift 4 */
var myString = "Hello, World!"; print(myString)

ตัวระบุ

ตัวระบุ Swift 4 คือชื่อที่ใช้เพื่อระบุตัวแปรฟังก์ชันหรือรายการที่กำหนดโดยผู้ใช้อื่น ๆ ตัวระบุเริ่มต้นด้วยตัวอักษร A ถึง Z หรือ a ถึง z หรือขีดล่าง _ ตามด้วยตัวอักษรศูนย์หรือมากกว่าขีดล่างและตัวเลข (0 ถึง 9)

Swift 4 ไม่อนุญาตให้ใช้อักขระพิเศษเช่น @, $ และ% ภายในตัวระบุ Swift 4 คือcase sensitiveภาษาโปรแกรม ดังนั้นกำลังคนและกำลังคนจึงเป็นตัวบ่งชี้สองตัวที่แตกต่างกันใน Swift 4 นี่คือตัวอย่างบางส่วนของตัวระบุที่ยอมรับได้ -

Azad        zara   abc   move_name   a_123
myname50    _temp  j     a23b9       retVal

ในการใช้คำสงวนเป็นตัวระบุคุณจะต้องใส่ backtick (`) ก่อนและหลัง ตัวอย่างเช่น,class ไม่ใช่ตัวระบุที่ถูกต้อง แต่เป็น "class`ถูกต้อง

คำหลัก

คำหลักต่อไปนี้สงวนไว้ใน Swift 4 คำสงวนเหล่านี้ไม่สามารถใช้เป็นค่าคงที่หรือตัวแปรหรือชื่อตัวระบุอื่น ๆ ได้เว้นแต่จะมีการใช้เครื่องหมายย้อนกลับ -

คำหลักที่ใช้ในการประกาศ

คลาส deinit Enum ส่วนขยาย
Func นำเข้า ในนั้น ภายใน
ปล่อย ตัวดำเนินการ เอกชน มาตรการ
สาธารณะ คงที่ โครงสร้าง ตัวห้อย
ตัวพิมพ์ หลากหลาย

คำหลักที่ใช้ในงบ

หยุดพัก กรณี ดำเนินการต่อ ค่าเริ่มต้น
ทำ อื่น เจ๊ง สำหรับ
ถ้า ใน กลับ สวิตซ์
ที่ไหน ในขณะที่

คำหลักที่ใช้ในนิพจน์และประเภท

เช่น dynamicType เท็จ คือ
ศูนย์ ตนเอง ตนเอง สุดยอด
จริง _คอลัมน์_ _ไฟล์_ _FUNCTION_
_ไลน์_

คำหลักที่ใช้ในบริบทเฉพาะ

การเชื่อมโยง ความสะดวก ไดนามิก didSet
สุดท้าย ได้รับ infix inout
ขี้เกียจ ซ้าย การกลายพันธุ์ ไม่มี
ไม่เปลี่ยนรูป ไม่จำเป็น แทนที่ postfix
ลำดับความสำคัญ คำนำหน้า มาตรการ จำเป็น
ขวา ชุด ประเภท ไม่เป็นที่รู้จัก
อ่อนแอ willSet

ช่องว่าง

บรรทัดที่มีเฉพาะช่องว่างอาจมีความคิดเห็นเรียกว่าบรรทัดว่างและคอมไพเลอร์ Swift 4 จะละเว้นมันโดยสิ้นเชิง

Whitespace เป็นคำที่ใช้ใน Swift 4 เพื่ออธิบายช่องว่างแท็บอักขระขึ้นบรรทัดใหม่และความคิดเห็น ช่องว่างแยกส่วนหนึ่งของคำสั่งออกจากอีกส่วนหนึ่งและเปิดใช้งานคอมไพเลอร์เพื่อระบุตำแหน่งที่องค์ประกอบหนึ่งในคำสั่งเช่น int สิ้นสุดลงและองค์ประกอบถัดไปเริ่มต้น ดังนั้นในข้อความต่อไปนี้ -

var age

ต้องมีอักขระช่องว่างอย่างน้อยหนึ่งอักขระ (โดยปกติคือช่องว่าง) ระหว่าง var และ ageเพื่อให้คอมไพเลอร์สามารถแยกแยะได้ ในทางกลับกันในข้อความต่อไปนี้ -

int fruit = apples + oranges   //get the total fruits

ไม่จำเป็นต้องใช้อักขระเว้นวรรคระหว่างผลไม้และ = หรือระหว่าง = และแอปเปิ้ลแม้ว่าคุณจะมีอิสระที่จะรวมอักขระบางตัวเพื่อให้อ่านง่ายขึ้น

ช่องว่างทั้งสองด้านของตัวดำเนินการควรเท่ากันเช่น

int fruit = apples +oranges    //is a wrong statement
int fruit = apples + oranges   //is a Correct statement

ตัวอักษร

ลิเทอรัลคือการแสดงซอร์สโค้ดของค่าของจำนวนเต็มจำนวนทศนิยมหรือประเภทสตริง ต่อไปนี้เป็นตัวอย่างของตัวอักษร -

92               // Integer literal
4.24159          // Floating-point literal
"Hello, World!"  // String literal

การพิมพ์ใน Swift

ในการพิมพ์อะไรก็ได้อย่างรวดเร็วเรามีคีย์เวิร์ด "พิมพ์"

พิมพ์มีคุณสมบัติที่แตกต่างกันสามประการ

Items - รายการที่จะพิมพ์

Separator - คั่นระหว่างรายการ

Terminator - ค่าที่บรรทัดควรสิ้นสุดเรามาดูตัวอย่างและไวยากรณ์ที่เหมือนกัน

print("Items to print", separator: "Value " , terminator: "Value")
// E.g. of print statement.

print("Value one")
// prints "Value one \n" Adds, \n as terminator and " " as separator by
default.

print("Value one","Value two", separator: " Next Value" , terminator: " End")
//prints "Value one Next Value Value two End"

ในคำสั่งการพิมพ์ครั้งแรกของโค้ดด้านบนจะเพิ่ม \ n ฟีดขึ้นบรรทัดใหม่เป็นตัวยุติตามค่าเริ่มต้นโดยที่ในคำสั่งพิมพ์ที่สองเราได้กำหนดให้ "End" เป็นเทอร์มิเนเตอร์ดังนั้นจึงจะพิมพ์ "End" แทน \ n

เราสามารถให้ตัวคั่นและเทอร์มิเนเตอร์ที่กำหนดเองได้ตามความต้องการ