Last Updated on November 12, 2021 by
Dalam bahasa Swift 4, Fungsi yang terkait dengan tipe tertentu disebut dengan Swift Method. Kalau pada bahasa Objective class atau kelas dipakai untuk mendefinisikan metode, sementara pada bahasa Swift 4, kelas berfungsi untuk memberikan fleksibilitas pengguna untuk memiliki metode untuk kelas, struktur, dan enumerasi.
Kali ini Codekey akan mengajak Anda untuk belajar swift, khususnya tentang Method atau metode pada bahasa pemrograman Swift. Ingin tahu lebih banyak tentang method dan cara membuat method pada bahasa pemrograman Swift, simak terus artikel ini sampai akhir.
Table of Contents
Definisi Swift Method
Sebelum mengetahui belajar swift lebih jauh, mari kita pahami dari definisi Swift Method. Metode Swift adalah seperangkat teknik untuk menganalisis sistem warisan yang kompleks, dan menentukan pekerjaan yang diperlukan untuk secara bertahap memodernisasi komponen kunci atau keseluruhan sistem. Metode Swift mempertimbangkan kedua sudut pandang ini, menggunakan latihan yang menggabungkan analisis non-teknis, top-down dan bottom-up.
Dalam bahasa Swift 4, instans Kelas, Struktur, dan Enumerasi diakses melalui instance method. Instance method menyediakan fungsionalitas sebagai berikut:
- Untuk mengakses dan memodifikasi properti instan
- fungsionalitas yang terkait dengan kebutuhan instance
- Metode instance bisa ditulis di dalam tanda kurung kurawal {} dan memiliki akses implisit ke metode dan properti dari instance type. Ketika instance spesifik dari tipe dipanggil, ia akan mendapatkan akses ke instance tertentu itu.
Syntax func funcname(Parameters) -> returntype { Statement1 Statement2 --- Statement N return parameters } Contoh Penerapan class calculations { let num1: Int let num2: Int let hasil: Int init(num1: Int, num2: Int) { self.num1 = num1 self.num2 = num2 hasil = num1 + num2 } func total(x: Int) -> Int { return hasil - x } func hasilAkhir() { print(" \(total(x: 5))") print(" \(total(x: 100))") } } let val = calculations(num1: 30, num2: 70) val.hasilAkhir()
Ketika menjalankan program ini maka akan menghasilkan hasil sebagai berikut.
95 0
Penghitungan kelas (class calculation) didefinisikan menjadi dua instance method
- init() diartikan sebagai method untuk menambahkan dua angka ‘num1’ dan ‘num2’ dan menyimpannya di dalam ‘hasil’
- total() digunakan untuk mengurangi ‘hasil’ dari melewati nilai ‘x’
Akhirnya, untuk mencetak metode perhitungan dengan nilai num1 dan num2 disebut. Metode instan diakses dengan ‘.’ sintaks titik.
Nama Parameter Lokal dan Eksternal
Swift 4 Functions menjelaskan deklarasi lokal dan global untuk variabelnya. Demikian pula, konvensi penamaan Swift 4 Methods juga mirip dengan Objective C. Namun, nama parameter lokal dan global punya karakteristik yang berbeda dari segi fungsi dan metode.
Dalam bahasa Swift versi 4, parameter pertama akan dipanggil dengan nama dengan preposisi sebagai ‘with’, ‘for’ dan ‘by’ sehingga memudahkan akses konvensi penamaan.
Swift 4 memberikan fleksibilitas dalam metode dengan mendeklarasikan nama parameter pertama sebagai nama parameter lokal dan nama parameter lainnya menjadi nama parameter global.
Pada metode Swift 4, parameter “no1” akan dideklarasikan sebagai Local Parameter Name (Nama Parameter Lokal). Sementara itu, ‘no2’ digunakan untuk deklarasi global dan diakses melalui program.
class contoh { var hasil: Int = 0 func incrementBy(x: Int, y: Int) { hasil = x / y print(hasil) } } let total = contoh() total.incrementBy(x: 42, y: 6) total.incrementBy(x: 81, y: 9) total.incrementBy(x: 150, y: 5) Ketika dijalankan maka hasilnya sebagai berikut: 7 9 30
Nama Parameter Eksternal dengan # dan _ Simbol
Walaupun, Swift 4 Methods memberikan “parameter name” pertama yang berfungsi untuk melakukan deklarasi lokal. Pengguna memiliki ketentuan untuk mengubah nama parameter dari deklarasi lokal ke global. Deklarasi lokal ke global dapat terjadi dengan membuat awalan simbol ‘#’ dengan menggunakan nama parameter pertama. Dengan demikian, parameter pertama di seluruh modul dapat diakses secara global.
Saat pengguna membutuhkan akses terhadap nama parameter berikutnya dengan nama eksternal, nama metode diganti dengan bantuan simbol ‘_’.
class contoh2 { var hasil: Int = 0 func incrementBy(x: Int, y: Int) { hasil = x * y print(hasil) } } let total = contoh2() total.incrementBy(x: 5, y: 7) total.incrementBy(x: 9, y: 2) total.incrementBy(x: 8, y: 4)
Ketika menjalankan program, maka kita akan mendapatkan hasil sebagai berikut:
35 18 32
Self Property dalam Methods
Methods dalam Swift punya “implicit property” yang dikenal sebagai ‘self’. Properti ini diperuntukkan kepada semua instance type yang ditentukan. Properti ‘Self’ digunakan untuk merujuk instance saat ini untuk metode yang ditentukan.
class contoh3 { let num1: Int let num2: Int let hasil: Int init(num1: Int, num2: Int) { self.num1 = num1 self.num2 = num2 hasil = num1 + num2 print("\(hasil)") } func total(x: Int) -> Int { return hasil - x } func hasilAkhir() { print("\(total(x: 13))") print("\(total(x: 42))") } } let val = contoh3(num1: 45, num2: 17) let val2 = contoh3(num1: 99, num2: 66) val.hasilAkhir() val2.hasilAkhir() Ketika dijalankan, maka hasil yang didapat adalah: 62 165 49 20 152 123
Memodifikasi Type Value dari Metode Instance
Dalam struktur bahasa Swift 4 dan enumerasi termasuk dalam tipe nilai yang tidak dapat diubah oleh metode instansnya. Namun, bahasa Swift 4 memberikan fleksibilitas untuk memodifikasi tipe nilai dengan perilaku ‘bermutasi’.
Mutasi akan membuat perubahan apa pun dalam metode instans dan akan kembali ke bentuk semula setelah eksekusi metode. Juga, dengan properti ‘self’ instance baru dibuat untuk fungsi implisitnya dan akan menggantikan metode yang ada setelah eksekusi
struct hitung { var panjang = 1 var lebar = 2 func hitung() -> Int { return panjang * lebar } mutating func scaleBy(x: Int) { panjang *= x lebar *= x print(panjang) print(lebar) } } var val = hitung(panjang: 4, lebar: 7) val.scaleBy(x: 2) val.scaleBy(x: 10) val.scaleBy(x: 15)
Ketika dijalankan maka akan menghasilkan :
8 14 80 140 1200 2100
Self Properti untuk Metode Mutasi
Metode bermutasi yang dikombinasikan dengan properti ‘self’ memberikan instance baru ke metode yang ditentukan.
struct hitung2 { var panjang = 1 var lebar = 2 func hitung2() -> Int { return panjang * lebar } mutating func scaleBy(x: Int) { self.panjang *= x self.lebar *= x print(panjang) print(lebar) } } var val = hitung2(panjang: 2, lebar: 9) val.scaleBy(x: 7)
Ketika dijalankan, maka Anda akan mendapat hasil :
14 63
Type Method
Ketika instance tertentu dari suatu metode dipanggil, instance tersebut akan disebut sebagai metode Instance; dan ketika metode memanggil jenis metode tertentu, itu disebut sebagai Type Method. Metode tipe untuk ‘kelas’ ditentukan oleh kata kunci ‘func’ dan metode tipe struktur dan enumerasi didefinisikan dengan kata kunci ‘statis’ sebelum kata kunci ‘func’.
Jika Anda ingin memanggil dan mengakses type method ini, maka Anda harus melakukannya dengan sintaks ‘.’ di mana alih-alih memanggil instance tertentu, seluruh metode dipanggil.
class hitung3 { class func abs(num: Int) -> Int { if num < 0 { return (-num) } else { return num } } } struct hit { static func abs(num: Int) -> Int { if num < 0 { return (-num) } else { return num } } } let val1 = hitung3.abs(num: -1) let val2 = hit.abs(num: 7) print(val1) print(val2)
Hasilnya :
1 7
Demikianlah penjelasan tentang Swift Method untuk belajar Swift. Penggunaan Swift Method tidak jauh berbeda dengan properti swift yaitu diperuntukan pada kelas, struktur, dan enumerasi. Jika Anda sudah memahami properties, maka tidak akan sulit belajar menggunakan method.
Ingin belajar swift atau bahasa pemrograman lainnya secara gratis? Kunjungi Codekey di https://codekey.id/. Codekey adalah media untuk Anda belajar bahasa pemrograman melalui tutorial, tips, dan trik yang diberikan oleh Codekey.
Jasa Pembuatan Aplikasi, Website dan Internet Marketing | PT APPKEY
PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.