Basic Swift

[Part 1] Mengenal Sedikit Tentang Swift

Belajar tentang dasar-dasar Swift

Abdhi
Abdhilabs

--

Pernahkah kalian mendengar tentang Swift atau pernah menemukannya di tengah jalan? jalan di Dunia Maya yah :). Atau mungkin kalian sempat bertanya-tanya, apa sih itu Swift? Denger-denger si doi bahasa pemrograman, tapi buat bikin apa?

Nah, di tulisan kali ini, aku mau share pengetahuanku mengenai si Swift ini nih. Yap si doi merupakan bahasa pemrograman, doi di ciptakan untuk membuat produk si Apple. Selengkapnya yuk scroll ke bawah.

Overview

Swift

Menurut dokumentasinya,

Swift is a powerful and intuitive programming language for macOS, iOS, watchOS, tvOS and beyond. Writing Swift code is interactive and fun, the syntax is concise yet expressive, and Swift includes modern features developers love. Swift code is safe by design, yet also produces software that runs lightning-fast.

Nah itu tuh pengertian Swift dari sumbernya, tapi intinya Swift merupakan bahasa pemrograman yang di kembangkan langsung oleh Apple Inc, yang mana untuk membuat sebuah produk nya si Apple, yaitu ada iOS, iPadOS, macOS, watchOS dan tvOS.

Paham kan sampai sini?

Mungkin sekarang yang menjadi pertanyaannya adalah

Gimana caranya kita bikin aplikasi iOS? atau pake aplikasi apaan sih untuk bikin produknya si Apple itu?

Untuk membuat aplikasi produk Apple, kita harus menggunakan sebuah IDE yang namanya Xcode. Nah Xcode sendiri hanya bisa berjalan pada macOS saja, jadi kalian mau tidak mau harus memiliki sebuah Macbook dulu. :)

Eits, tapi jangan khawatir, bagi kalian yang mau belajar bahasa pemrograman Swift, kalian bisa coba buka situs web https://glot.io/ untuk memulai belajar bahasa pemrograman Swift ini. Glot.io memiliki banyak fitur untuk mengetahui berbagai bahasa pemrograman yang ada saat ini, salah satunya yaitu Swift.

Sample Code

Di sini aku akan beri contoh-contoh sample code dasar mengenai :
- Simple Values
- Control Flow
- Functions and Closures
- Objects and Classes

Simple Values

Gunakan let untuk membuat sebuah constant dan var untuk membuat sebuah variabel.

var name = "Riza"
name = "Abdhi"
let name = "Abdhi"

Contoh memasukkan nilai pada strings :

let firstName = "Riza"
let lastName = "Abdhi"
print("My Name is \(firstName) \(lastName). You can call me \(lastName).")
Result : My Name is Riza Abdhi. You can call me Abdhi.

Contoh array :

let fruit = ["Avocado", "Apple", "Orange"]
print("I want to drink some juice of \(fruit[0]).")
Result : I want to drink some juice of Avocado.

Control Flow

Gunakan if dan switch untuk membuat conditions dan gunakan for-in , while, and repeat-while untuk membuat looping atau perulangan.

let listPrice = [1000, 2000, 1500, 2500, 500]
var mustBuy = 0
for price in listPrice{
if price < 2000 {
mustBuy += 1
} else{
mustBuy += 0
}
}
print("I must buy \(mustBuy) pieces.")
Result : I must buy 3 pieces.

Kalian bisa gunakan if dan let secara bersamaan apabila kalian memiliki sebuah value yang hanya optional, contoh :

var optionalTopping: String? = "Oreo"
var order = "Coffee without topping"
if let name = optionalTopping {
order = "Coffee with \(name) topping"
}
print(order)
Result : Coffee with Oreo topping
Try to make optionalTopping become nil, what happened after that?

Cara lain untuk meng-handle sebuah nilai optional sebagai berikut :

let juice: String? = nil
let
defaultDrink: String = "Water"
let iWantToDrink = "I want to drink \(juice ?? defaultDrink)"
print(iWantToDrink)
Result : I want to drink Water

Berikut contoh penggunaan switch :

let language = "Swift"
switch language {
case "Kotlin":
print("I want to make app with this language.")
case "Javascript", "PHP":
print("Sounds like language for make website.")
case let x where x.hasSuffix("Swift"):
print("What is \(x), is that language?")
default:
print("Mmm, i was looking for an easy programming language to understand.")
}
Result : What is Swift, is that language?

Functions and Closures

Gunakan func untuk mendeklarasikan sebuah Function, contohnya :

func order(food: String, drink: String) -> String {
return "I want to order \(food) and \(drink)"
}
print(order(food: "Fried Rice", drink: "Water"))
Result : I want to order Fried Rice and Water

Secara default, function menggunakan nama parameter sebagai label untuk argument nya. Nah, kalian bisa tuh custom label nya dengan cara seperti berikut ini :

func order(_ food: String, wantDrink drink: String) -> String {
return "I want to order \(food) and \(drink)"
}
print(order("Fried Rice", wantDrink: "Water"))

Hasilnya tetap sama seperti contoh sebelumnya, hanya saja terdapat perbedaan pada label nya. CMIIW

Di bawah ini merupakan contoh dari sebuah closure tanpa nama dengan mengelilingi code dengan braces {} .

var numbers = [5, 10, 20]
var value = numbers.map({ (number: Int) -> Int in
let result = 3 * number
return result
})
print(value)
Result : [15, 30, 60]

Berikut code yang lebih ringkasnya dari contoh di atas :

var numbers = [5, 10, 20]
let
mapped = numbers.map({ number in 3 * number})
print(mapped)

Objects and Classes

Gunakanlah class diikuti dengan nama class untuk membuat sebuah class baru. Contohnya sebagai berikut :

class Home {
var furniture = ""
func insideHome() -> String {
return "Inside my home, i have \(furniture)."
}
}
var home = Home()
home.furniture = "table, chairs, tv, etc"
print(home.insideHome())
Result : Inside my home, i have table, chairs, tv, etc.

Okay, sampai di sini dulu.
In the next article, aku akan bahas lebih lanjut mengenai hal berikut ini :

  • Enumerations and Structures
  • Protocols and Extensions
  • Error Handling
  • Generics

Thanks for reading, if there is anything improvement or correction, leave in the comment. :)

Follow me on Medium and Github.

References Link

--

--