Tutorial 2 tentang Menulis Fungsi Kustom untuk Board Intel® Galileo

Dokumentasi

Instal & Pengaturan

000006605

18/03/2022

Hingga titik ini, kami telah menulis kode kami di dalam fungsi pengaturan dan loop. Ini baik-baik saja. Tetapi bagaimana jika program Anda memiliki banyak logika yang kompleks? Bagaimana Anda mengatur kode Anda?

Ada seni untuk pemrograman dan dimulai dengan mengetahui di mana memasukkan kode Anda.

Coding kadang-kadang bisa berantakan. Jika Anda pernah membaca kode sumber terbuka apa pun, Anda mungkin mengalami beberapa kode yang:

  • kurangnya komentar: termasuk komentar membantu Anda dan siapa pun yang membacanya memahami apa yang sedang terjadi
  • logika tidak terorganisir: mengatur kode Anda menjadi potongan logis membantu debugging dan pemeliharaan kode
  • nama yang menyesatkan: nama variabel dan fungsi harus menjelaskan dengan benar apa yang ingin mereka lakukan
  • kecerdasan melebihi kejelasan: kode harus mudah dibaca; coba untuk tidak samar dalam hal yang ingin Anda capai

 

Program dalam bahasa apa pun dapat ditulis dan diorganisir namun programmer terlihat cocok. Ini baik-baik saja jika Anda satu-satunya yang membaca kode Anda. Namun, jika Anda bekerja di tim, penting untuk memberikan beberapa panduan yang diikuti semua orang. Suatu hari, kode yang Anda tulis harus diperbarui dan dibaca oleh orang lain. Menulis kode yang terorganisir dan mempraktikkan praktik pengkodean umum akan membantu Anda dan rekan teknisi Anda menulis kode yang indah.

Untuk tips tentang meningkatkan gaya coding Anda, lihat panduan gaya kode C++ Google.

Ada dua jenis fungsi:

  • Menjalankan instruksi dan tidak mengembalikan nilai (ketik void)
  • Menjalankan instruksi dan mengembalikan nilai (jenis termasuk int, float, double)

Lihat selengkapnya di bagian Tipe Data pada halaman referensi Arduino.

Jenis fungsi

Type void:
void sayHello(){
Serial.println("Hello!");
}

Type integer:
int theAnswerToTheUltimateQuestionOfLifeTheUniverseAndEverything(){
return 42;
}

We can assign the value of functions that return something to variables:
int myAnswer = theAnswerToTheUltimateQuestionOfLifeTheUniverseAndEverything();

Katakanlah bahwa kami ingin membuat fungsi sedikit lebih berguna. Kita dapat menggunakan parameter fungsi untuk meneruskan data unik yang akan berdampak pada hasil fungsi. Misalnya:
int add(int x, int y){
return x + y;
}

Kami akan memanggil fungsi ini, melewati parameter kustom seperti ini:
int numbersAdded = add(2, 2); // The variable numbersAdded is equal to 4

Ada berbagai cara yang dapat Anda gunakan untuk menulis fungsi. Semuanya tergantung pada apa yang Anda inginkan. Tempat yang baik untuk mulai menulis fungsi kustom adalah menentukan tanda tangan fungsi.

Tanda Tangan Fungsi
Sebelum menulis kode fungsi, sebaiknya tentukan apa yang ingin Anda capai.

  • Apakah akan mengembalikan nilai?
  • Berapa banyak parameter yang akan dikirimkan ke parameter tersebut (jika ada)?
  • Apa tujuan fungsinya?

Mari kita berpura-pura menulis program yang mengeluarkan pesan khusus ke monitor serial. Pesan ini akan mengomentari cuaca (yang dapat berdasarkan sensor suhu, misalnya).

Anda belum tahu seperti apa sebenarnya kode di dalam fungsi tersebut, tetapi Anda tahu apa yang ingin Anda lakukan:

  • Ambil dua parameter kustom untuk menggabungkan (atau menggabungkan) bersama-sama
  • Ambil nomor jenis Double yang akan ditambahkan ke pesan
  • Tidak mengembalikan nilai
  • Keluaran monitor serial akan tercetak "30 derajat di luar."

Tanda tangan kami bisa terlihat seperti ini:
myMessage void (String msg1, String msg2, double deg){}

Memanggil fungsi akan terlihat seperti:
Derajat di sini akan menjadi variabel yang telah ditentukan sebelumnya berdasarkan pembacaan sensor suhu.
myMessage("Ini adalah", derajat, "di luar");

Tantangan
Bagaimana Anda menulis kode untuk menyelesaikan tugas fungsi ini?