YouTube

Got a YouTube account?

New: enable viewer-created translations and captions on your YouTube channel!

Indonesian subtitles

← Cola Wars 1 - Solution

Get Embed Code
13 Languages

Showing Revision 1 created 10/12/2015 by sp4.

  1. Hal pertama yang saya tanya
  2. yaitu apakah udacicolaVotes termasuk
    variabel lokal atau global.
  3. Dan harusnya sudah Anda tentukan
    kalau dia termasuk variabel lokal.
  4. Nah, untuk memahaminya Anda perlu menuju
    tempat dimana variabel dinyatakan
  5. yaitu di sini, dan sudah dinyatakan
    karena tipe data ada di sini.
  6. Dan dinyatakan di dalam sebuah
    metode, yang bearti di dalam
  7. kurung kurawal ini atau apakah
    ini dinyatakan di luar metode?
  8. Sekarang, jika ini dinyatakan
    dalam sebuah metode,
  9. maka artinya ini adalah
    variabel lokal dan
  10. kita bisa lihat jelas kalau ini
    dinyatakan di dalam sebuah metode.
  11. Jadi ini merupakan sebuah lokal variabel.
  12. Nah, apa artinya?
  13. Kita juga harus tanya
    pada diri kita,
  14. jika saya menyatakan sesuatu sebagai
    variabel lokal, haruskah saya punya?
  15. Mari kita bahas.
  16. Ini adalah ponsel kita.
  17. Dan kita telah membahas
    tentang udacicola, jadi
  18. marilah hanya fokus pada saat kita
    mengeklik tombol udacicola.
  19. Saat kita mengeklik tombol ini,
    metode ini memulai.
  20. Ini mengatur nilai udacicola ke nol, lalu
    menambah satu untuk udacicolaVotes,
  21. yang bernilai nol.
  22. jadi udacicolaVotes menjadi satu.
  23. Karena udacicolaVotes adalah
    variabel lokal, pada akhir metode ini,
  24. dia akan mati atau dihapus.
  25. Penyebab udacicolaVotes hancur atau
    menghilang pada akhir metode ini adalah
  26. karena variabel lokal
    menyebabkan beberapa masalah.
  27. Jadi, kenapa ini
    bermasalah?
  28. Jika Anda pikir kalau tiga
    orang berbeda melakukan vote untuk
  29. udacicola dengan cara mengeklik tombol,
    maka nilai udacicolaVvotes menjadi tiga.
  30. Yang sebenarnya terjadi adalah saat
    pertama kali Anda mengeklik tombol,
  31. udacicola menjadi nol.
  32. Ditambah satu, menjadi satu.
  33. Dan kemudian terbuang.
  34. Tidak ada lagi.
  35. Kali kedua seseorang
    mengeklik udacicolaVotes,
  36. maka udacicolaVotes
    mengulang dari awal lagi.
  37. Ini dinyatakan kembali.
  38. Ingat, kali pertama dia terbuang.
  39. Dia harus dibuat kembali.
  40. Dan ketika dibuat kembali,
    dia diatur ke nol.
  41. Sekarang kita tambahkan satu lagi,
    tapi ingat nilainya adalah nol.
  42. Jadi udacicolaVotes masih tetap satu,
    walaupun tombolnya di klik dua kali.
  43. Hal sama terjadi juga saat
    mengeklik yang ketiga kalinya,
  44. masih tetap satu dan akan terbuang
    kembali pada akhir metode ini.
  45. Itu adalah masalah pertama.
  46. Tidak akan benar-benar menyimpan nilai
    antara tombol klik.
  47. Mengenai jumlah orang yang telah
    memberi vote untuk udacicola.
  48. Masalah lain ada di bawah ini,
    kode ini akan membuat masalah.
  49. Dan alasannya, ingat yang pernah
    saya katakan kalau udacicolaVotes
  50. seperti hidup atau bisa dibilang kalau
    jangkauannya dimulai di sini.
  51. Lalu, di akhir metode voteudacicola ini.
  52. Menjadi sampah, tidak ada lagi.
  53. Yang berarti saat saya turun kesini,
    udacicolaVotes tidak ada.
  54. Secara teknis, variabel ini
    di luar jangkauan.
  55. Jangkauannya ada di sini, dinyatakan
    di sini dan berakhir pula di sini.
  56. Tapi, kita sedang mencobanya di sini.
    Dan tidak bisa digunakan.
  57. Memiliki udacicolaVotes sebagai lokal
    bukanlah keputusan yang tepat.
  58. Dan saya rangkum dalam dua poin.
  59. Ini tidak menyimpan vote antara
    tombol klik dan tidak berada dalam
  60. jangkauan metode show me votes.
  61. Jadi, ini benar-benar
    akan membuat kesalahan.
  62. Jadi ini tidak akan dikumpulkan.
  63. Oke, ayo lihat variabel lainnya
    dalam program ini.