YouTube

Got a YouTube account?

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

Indonesian subtitles

← 03-13 Container_Performance

03-13 Container_Performance

Get Embed Code
13 Languages

Showing Revision 2 created 01/03/2016 by QA_SP_12_IND.

  1. Kita telah membahas bagaimana kode Anda
    dapat menjadi pelan karena jenis
  2. perangkat keras yang berjalan di bawahnya,
  3. ingat semua masalah
    pencabangan floating point?
  4. Baik, kebanyakan itu bukan masalah untuk
    perangkat keras saat ini.
  5. Ada beberapa masalah yang masih
    perlu Anda khawatirkan, yaitu
  6. performa sederhana pada
    bahasa yang Anda gunakan.
  7. Ambil algoritme dasar
    seperti penyortiran.
  8. Sekarang ada banyak
    cara untuk menyortir,
  9. dan beberapa di antaranya lebih baik,
    tergantung kondisinya.
  10. Misalnya, quicksort biasanya
  11. lebih cepat dari bubble sort, kecuali Anda
    memiliki di bawah seribu
  12. atau mencari objek
    di daftar sortiran yang besar.
  13. Biasanya, cara terbaik untuk melakukannya
    adalah dengan pencarian biner.
  14. Namun, yang sangat berbeda adalah mencari
    objek di susunan yang tidak disortir.
  15. Sekarang, daripada membandingkan nilai
    setiap objek yang Anda cari,
  16. Anda dapat menggunakan fungsi hash
    untuk segera menemukannya.
  17. Ini semua adalah kanon dasar ilmu
    komputer modern dan struktur data.
  18. Untungnya, bahasa modern seperti
    Java menyuplai kontainer dan
  19. algoritme ini atas nama Anda, sehingga
    tidak perlu menulis ulang fungsi
  20. Murmur 3 Hash atau quicksort
    lagi dan lagi.
  21. Tapi, saya mengungkapkan sesuatu di sini.
  22. Di seluruh tahun pemrograman saya,
  23. satu masalah yang terus
    mengganggu performa proyek
  24. yang harus dilakukan dengan performa objek
    kontainer dengan bahasa ini.
  25. Maksud saya, itu luar biasa bukan?
  26. Java menyediakan penerapan
    kelas vektor yang mana
  27. Anda dapat menekan, memindahkan, menambah,
    dan menghapus objek yang cocok, namun
  28. agar menjadi fleksibel, harus menggunakan
    struktur daftar bertautan secara
  29. mendasar, yang memiliki
    karakteristik performa yang unik.
  30. Selama Anda hanya beroperasi
    di depan daftar, maka akan sangat cepat
  31. Tapi, jika Anda ingin menyisipkan atau
  32. menghapus di tempat lain, maka akan
    menghasilkan waktu kemungkinan terburuk.
  33. Intinya, hanya karena
    sistem mendasar menyediakan
  34. kontainer ini, bukan berarti
    akan berperforma tinggi
  35. tergantung bagaimana program Anda
    akan benar-benar menggunakannya.
  36. James Sutherland menerbitkan serangkaian
    patokan dasar untuk performa
  37. struktur data tertentu yang disediakan
    oleh kerangka kerja Java dan
  38. ada perbedaan antara
    kinerja dan fungsi
  39. yang harus kita sadari.
  40. Misalnya, dia
    menemukan bahwa performa Hashtable
  41. sekitar 22% lebih cepat
    daripada performa HashMap,
  42. tergantung bagaimana Anda
    menggunakan kontainer itu sendiri.
  43. Intinya seperti ini.
  44. Sudahkan Anda memprofilkan kelas
    yang Anda gunakan di kode?
  45. Apakah Anda yakin mereka menggunakan
    kontainer tercepat mutlak untuk
  46. hal yang benar-benar dikerjakan kode Anda?
  47. Mmm, ya, itu pendapat saya.
  48. Tapi, kabar baiknya Anda bisa memperoleh
    visibilitas performa kontainer
  49. ini dengan beberapa MPI
    profil praktis di Android.
  50. Jadi, mari kita lihat apakah kode Chris
    valid untuk pemeriksaan kami.