Golang atau Go language yang memiliki keunikan bagi pemula dibanding dengan bahasa pemrograman lainnya seperti Python, Java, dll, khususnya aturan-aturan sintaks dari Go ini. Pada akhirnya, jika teman-teman tidak teliti, maka kita akan menghabiskan waktu kita hanya untuk error yang termasuk minor/kecil ini.
Imports yang tidak perlu
Golang / Go memiliki aturan yang cukup ketat dibanding bahasa pemrograman lainnya, contohnya Python atau Java. Jika kita tidak akan menggunakan suatu Import yang sudah di-Import, maka jangan memasukkannya di kodingan teman-teman.
package main
import "fmt"
import "os" //import yang mubazir (di-Import tapi tidak digunakan) akan menghasilkan error saat di-Compile
func main() {
fmt.Println("Hello world")
}
Output:
: imported and not used: os
Solusi dari kode di atas adalah menghilangkan import "os", dan kita akan meng-compile kode tersebut tanpa error lagi.
Penggunaan Huruf KAPITAL/kecil yang sensitif
Hampir sama dengan beberapa bahasa pemrograman lainnya, seperti Python, Golang sangat memperhatikan penggunaan Huruf KAPITAL/kecil.
package main
import "fmt"
func main() {
fmt.println("Hello world")
}
Output:
: cannot refer to unexported name fmt.println : undefined: fmt.println
Perhatikan kode blok di atas, kita menggunakan fmt.println yang salah, seharusnya fmt.Println. Ini menunjukkan bahwa penggunaan huruf KAPITAL/kecil di bahasa pemrograman ini sangat perlu diperhatikan. Jadi, jika teman-teman telah mendeklarasikan sebuah variabel dengan nama bambang, maka pemanggilan variabel itu juga harus sama bambang, bukan Bambang, atau baMbang.
Pemisahan baris dengan titik-koma
Jika kamu sebelumnya sudah familiar dengan bahasa pemrograman seperti C/C++, Java, maka kamu pasti tahu penggunaan titik-koma di bahasa tersebut. Pada dasarnya, teman-teman tidak perlu menggunakan titik-koma ketika hanya satu statement di satu baris, tetapi ketika teman-teman menuliskan dua atau lebih statement di satu baris yang sama, maka perlu ditambahkan titik-koma diantara statement-statement tersebut.
Kita juga tidak bisa seenaknya menambahkan titik-koma tanpa mengikuti aturan dari bahasa Golang ini. Silahkan perhatikan contoh berikut,
package main
import "fmt";;
func main() {
fmt.Println("Hello world")
}
Seperti yang dapat teman-teman lihat di kode blok di atas, ada dua titik-koma pada bagian import "fmt";;. Titik-koma yang pertama mungkin dapat diterima, tapi titik-koma yang kedua akan menjadi sumber error berikut,
: empty top-level declaration
Sintaks dan hal lainnya
Compiler meminta kita mengikuti sintaks yang sudah diatur. Sebenarnya ada banyak contok sintaks error dari bahasa Golang ini, tapi hanya akan didaftarkan beberapa sintaks error.
package 'main' //ERROR - no quotes for the package name: package main
package "main" //ERROR - no quotes for the package: package main
package main.x //ERROR - packages names in go are just one expression. So either package main or package x.
package main/x //ERROR - packages names in go are just one expression. So either package main or package x.
import 'fmt' //ERROR - needs double quotes "fmt"
import fmt //ERROR - needs double quotes "fmt"
func main { } //ERROR - functions have to be followed by parantheses: func main() {}
func main() [] //ERROR - where curly braces are required, only those are allowed. They are used to contain blocks of code. func main() {}
func main() { fmt.Println('hello world') } //ERROR - use double quotes for strings: func main() { fmt.Println("hello world") }
Halo, guys, di blog saya hari ini saya akan menunjukkan bagaimana menginstall PS2 Emulator Android dan bermain game PS2 melalui emulator di smartphone android kamu.
Atau kamu dapat mencarinya di google dengan kata kunci “download ps2 games iso”. Ada banyak game yang bisa kamu download, seperti Tekken 5, God of War, Final Fantasy VII, dan lainnya.
Silahkan berikan Rating ke postingan ini, agar kami dapat memberikan yang terbaik bagi pengunjung. Kamu tinggal klik rating bintang di bawah ini, tanpa login. (2 votes, average: 5,00 out of 5) Loading...
Slo‑mo video support for 1080p at 120 fps or 240 fps*
Time‑lapse video with stabilization
Cinematic video stabilization (1080p and 720p)
Continuous autofocus video
Body and face detection- X Only!
Noise reduction
Take 8MP still photos while recording 4K video
Playback zoom
Video geotagging
Video formats recorded: HEVC and H.264
iPhone pertama yang mengusung FaceID[1]
Berikut adalah hal-hal yang perlu pembaca ketahui tentang fitur FaceID ini,
FaceID tidak direkomendasikan untuk dipakai oleh anak-anak di bawah umur 13 tahun. Hal ini dikarenakan Wajah Anak di usia tersebut akan berubah dalam jangka waktu yang tidak begitu lama.
FaceID tempat membutuhkan passcode, yang diperlukan setelah restart atau kegagalan 5 kali mencoba masuk dengan FaceID.
FaceID tidak berhasil dengan menggunakan foto atau topeng.
Data FaceID hanya disimpan dalam Chip khusus yang sangat aman, seperti halnya TouchID.
Kamera TrueDepth mengacak Scan nya, penangkapan citra, dan pola citra dot infrared setiap kali digunakan, untuk keamanan.
Aplikasi dan password apapun yang menggunakan TouchID akan secara otomatis mampu menambahkan Otorisasi FaceID.
Membayar dengan Apple Pay memerlukan double-click tombol samping sebelum menggunakan FaceID.
Apple tidak menggunakan data muka milikmu, kecuali kamu mendaftar untuk Diagnostik FaceID [2].
A11 Bionic Chipset
Benchmark iPhone X Benchmark iPhone X
Single-Core Score : 4225, Multi-core Score : 10486
Daftar tersebut juga mengatakan iPhone10,5 akan memiliki prosesor enam inti dan RAM 3GB. Itu berarti kita cenderung melihat baik iPhone X atau iPhone 8 Plus dalam tes ini. IPhone 8 seharusnya mengemas RAM 2GB saja.
Bagaimana score iPhone 7 Plus dalam tes yang sama? Ini mencapai 3500 single-core dan hampir mencapai 6000 dalam tes multi-core. Galaxy S8 / Catatan 8, sementara itu, dengan performa maksimal sekitar 2000 dalam kinerja single-core, meskipun naik ke 6800 dalam tes multi-core.
Jika Fusion A10 adalah kacang yang sulit dipecahkan untuk Qualcomm Snapdragon 835 dan chip Exynos 10nm milik Samsung, maka A11 akan menjadi mimpi buruk bagi Qualcomm dan semua pembuat perangkat Android di luar sana.
iPhone pertama yang mengusung True Tone Display
Fitur sensor iPad Pro, iPhone 8,dan iPhone X yang mengukur warna dan kecerahan cahaya ambient (cahaya Ambient berarti cahaya yang telah ada dalam suatu tempat, sebelum tambahan pencahayaan ditambahkan, contohnya : cahaya alami, cahaya outdoor). Tablet atau smartphone kemudian menggunakan informasi ini untuk menyesuaikan tampilannya. Ini pada dasarnya dapat memperbaiki titik putih dan penerangan berdasarkan pencahayaan lingkungan di sekitarmu untuk membuat jenis cahaya putih yang tepat di bawah sumber cahaya apapun.
Hal yang perlu diingat adalah bahwa sistem optic manusia terus-menerus membandingkan putih yang hampir putih hingga putih yang sempurna, warna putih yang “lebih baik” dapat mempengaruhi persepsi kontras dari apapun yang kita lihat, artinya titik putih yang disesuaikan harus lebih nyaman di mata kita. Ini juga berarti bahwa iPhone dan iPad Pro baru harus lebih mudah dibaca di bawah sinar matahari langsung, sehingga meningkatkan kegunaannya dengan sangat halus [3].
Berikut Adalah bagaimana Apple [4] menjelaskan tampilan True Tone/Retina ketika pertama kali diluncurkan [3] :
“The 9.7-inch iPad Pro features advanced display technologies, including a True Tone display, which uses new four-channel sensors to dynamically adjust the white balance of the display to match the light around you for a more natural and accurate, paper-white viewing experience. The advanced Retina display is 25 percent brighter and 40 percent less reflective than iPad Air 2, making content even easier to see indoors and out. It uses the same wider color gamut as the iMac with Retina 5K display, delivering 25 percent greater color saturation for more vivid colours. A custom timing controller, photo alignment and oxide TFT deliver incredible color, contrast, and clarity.”
“Pro iPad 9,7-inci menampilkan teknologi display canggih, termasuk tampilan True Tone, yang menggunakan sensor empat kanal baru untuk menyesuaikan secara dinamis keseimbangan putih layar agar sesuai dengan cahaya di sekitar Anda agar lebih alami dan akurat, layaknya pengalaman melihat kertas putih. Kemajuan tamppilan Retina adalah 25 persen lebih terang dan 40 persen kurang reflektif dari iPad Air 2, membuat konten lebih mudah dilihat di dalam dan di luar ruangan. Ini menggunakan gamut (kumpulan) warna yang lebih luas seperti tampilan iMac Retina 5K, menghasilkan 25 persen saturasi warna lebih besar untuk warna yang lebih hidup. Kontroler timing custom, alignment foto dan TFT oksida memberikan warna, kontras dan kejernihan yang luar biasa. ”
iPhone pertama yang mampu merekam video 4K 60FPS
iPhone pertama yang mampu merekam video slow motion hingga 240 FPS Full HD (1080p) dan 480FPS HD (720p)
Wireless Charging – Pengisian Daya tanpa kabel
Portrait Lighting
Mode Portrait Lighting Apple yang baru menggunakan kecerdasan buatan untuk menerapkan efek pencahayaan pada wajah subjek Anda..
Portrait Lighting on iPhone 8 Plus lets you create dramatic studio lighting effects in Portrait mode. Portrait Lighting pada iPhone 8 Plus memungkinkan Anda menciptakan efek pencahayaan studio yang dramatis dalam mode Portrait.
Berbagai pengaturan Portrait Lighting ditampilkan, termasuk Studio Light, Natural Light, Light Kontur, Stage Light, dan Stage Light Mono [5].
Ada 5 pengaturan Portrait Lighting:
Natural Light – membuat pencahayaan terlihat lebih lembut, kurang keras
Studio Light – menambahkan penyebaran cahaya yang lembut dan lembut ke subjek Anda
Light Kontur – menambahkan bayangan cantik untuk berkontur di wajah
Stage Light – latar belakang menjadi hitam
Stage Light Mono – sama seperti Stage Light, namun berwarna hitam dan putih
Lihat video berikut untuk melihat perbedaan efek-efek dari Portrait Lighting [6].
Animoji
Di iPhone X, pengguna bisa menciptakan emoji bergerak sesuai dengan ekspresi wajahnya.
Adapun software facial recognition yang digunakan Apple nantinya bisa mendeteksi gerakan wajah pengguna lebih detail, seperti gerakan alis, pipi, mengernyitkan dahi, membuka mata, menggerakan bibir dan dagu, dan masih banyak lagi.
Kamera ganda dengan dual-OIS
Tak seperti iPhone 8 Plus yang kamera gandanya horizontal, kamera ganda pada iPhone X dibuat vertikal. Sensornya berkualitas 12 megapiksel dengan filter warna baru, piksel lebih dalam, serta bukaan masing-masing f/1.8 dan f/2.4.
Kamera ganda ini sudah disematkan stabilisator alias OIS di masing-masing lensanya. Selengkapnya, kamera iPhone X Memiliki zoom low-light yang lebih baik, perekaman video lebih mumpuni, serta quad-LED True Tone flash untuk pembidikan di situasi gelap yang semakin natural.
Quad-LED True Tone Flash dengan Slow Sync
Kemampuan flash Quad-LED True Tone pada iPhone X mampu menciptakan efek pencahayaan yang bisa menerangkan objek di luar ruangan. Dengan begitu, objek yang dibidik bisa tampil lebih terang, dan terekspos dengan baik.
Quad-LED True Tone Flash menawarkan cahaya 50 persen lebih banyak, dan ada sensor berkedip untuk membantunya.
Quad-LED True Tone Flash iPhone benar-benar bagus saat kamera berkedip, namun Anda seharusnya tidak menggunakannya untuk mengambil foto sebenarnya, kecuali jika Anda menginginkan wajah yg bercahaya dan bermata merah dalam potretan Anda. Sebagai gantinya, Anda harus menggunakannya untuk aplikasi yang lebih bermanfaat.
TrueDepth di Kamera Depan
iPhone X juga menjadi iPhone pertama, yang kamera depannya mengusung teknologi TrueDepth. Kamera depannya memang masih 7MP, tetapi berkat teknologi TrueDepth, foto selfie pun tampil lebih artistik dengan efek bokeh.
iPhone pertama dengan prosesor berbasis Neural Engine
iPhone X adalah iPhone pertama yang dipersenjatai dengan prosesor Apple A11 Bionic. Ia merupakan prosesor yang berbasis Neural Engine, di mana mampu mengolah ‘otak’ iPhone X lebih pintar, cepat dan tangkas.
Fitur itu adalah “Neural Engine”, bagian dari prosesor A11 baru yang dikembangkan Apple untuk menyalakan iPhone X. Mesinnya memiliki sirkuit yang disetel untuk mempercepat perangkat lunak kecerdasan buatan tertentu, yang disebut jaringan syaraf tiruan, yang bagus dalam memproses gambar dan pidato.
Apple mengatakan Neural Engine akan memberi kekuatan pada algoritma yang mengenali wajah Anda untuk membuka kunci telepon dan mentransfer ekspresi wajah Anda ke emoji animasi. Ia juga mengatakan bahwa silikon baru tersebut dapat mengaktifkan “fitur lain” yang tidak ditentukan.
Pakar chip mengatakan mesin saraf bisa menjadi pusat masa depan iPhone saat Apple bergerak lebih dalam ke area seperti Augmented Reality dan Image Recognition, yang mengandalkan algoritma pembelajaran mesin. Mereka memprediksi bahwa Google, Samsung, dan perusahaan teknologi terdepan lainnya akan segera menciptakan Neural Engine mereka sendiri. Awal bulan ini, China Huawei mengumumkan chip mobile baru dengan unit pengolahan saraf khusus untuk mempercepat pembelajaran mesin.
Silahkan berikan Rating ke postingan ini, agar kami dapat memberikan yang terbaik bagi pengunjung. Kamu tinggal klik rating bintang di bawah ini, tanpa login.
(2 votes, average: 5,00 out of 5) Loading... (2 votes, average: 5,00 out of 5, rated)
1. Penyearah Setengah Gelombang + Filter Kapasitor
Sebuah pengganda tegangan adalah rangkaian penyearah khusus memproduksi output yang secara teoritis merupakan kali bilangan bulat puncak AC input, misalnya, 2, 3, atau 4 kali puncak AC input. Dengan demikian, kita mempunyai peluang untuk mendapatkan 200 VDC dari sumber Vpeak AC 100 menggunakan doubler, 400 VDC dari quadrupler. Setiap beban dalam rangkaian praktis akan menurunkan tegangan ini.
Sebuah aplikasi tegangan Doubler adalah catu daya DC yang mampu baik menggunakan 240 VAC atau 120 VAC sumber. Pasokan menggunakan switch yang dipilih jembatan gelombang penuh untuk menghasilkan sekitar 300 VDC dari 240 VAC sumber. 120 V posisi kabel saklar kembali jembatan sebagai Doubler memproduksi sekitar 300 VDC dari 120 VAC. Dalam kedua kasus, 300 VDC diproduksi. Ini adalah input ke regulator switching memproduksi tegangan rendah untuk menyalakan, katakanlah, komputer pribadi.
Setengah-gelombang Doubler tegangan pada Gambar di bawah ini (a) terdiri dari dua sirkuit: a clamper di (b) dan detektor puncak (setengah gelombang rectifier) pada Gambar sebelumnya, yang ditampilkan dalam bentuk dimodifikasi pada Gambar di bawah ini (c). C2 telah ditambahkan ke detektor puncak (penyearah setengah gelombang).
Method statis Thread.sleep( ) memaksa sebuah Thread untuk meninggalkan keadaan / operasi yang berjalan hingga durasi sleep-nya selesai. Thread.sleep(200) membuat sebuah Thread tertidur selama 200 milidetik.
Method sleep( ) memberikan sebuah Exception (InterruptedException – Exception yang diinterupsi) sehingga semua panggilan method sleep ( ) HArUS di “bungkus” dengan sebuah TRY/CATCH.
Kita dapat menggunakan method sleep () untuk membantu memastikan semua thread mendapatkan kesempatan untuk berjalan/beroperasi, meskipun tidak ada yang menjamin bahwa kapan sebuah thread bangun dan beroperasi pada akhir baris terakhir ia beropeasi. Mungkin saja, contohnya, langsung kembali ke depan. Pada kebanyakan kasus, ketepatan waktu pemanggilan method sleep ( ) adalah yang kita butuhkan untuk menjaga Thread kita saling bergantian dengan baik, tanpa error.
Kita dapat memberi nama sebuah Thread menggunakan method setName ( ). Semua thread memiliki nama secara default, tapi memberikan mereka sebuah nama eksplisit dapat membantu kita berada pada jalur thread-thread, khususnya jika kita men-debug nya dengan pernyataan print( ).
Kita dapat mempunnyai masalah serius dengan thread jika dua atau lebih thread mempunyai akses ke objek yang sama dalam tumpukan-objek.
Dua atau lebih thread mengakses objek yang sama dapat mengakibatkan kerusakan data jika salah satu thread, contohnya, meningalkan keadaan/operasi yang sedang dijalankannya sementara tetap pada pertengahan memanipulasi keadaan / operasi kritis sebuah objek.
Untuk membuat objek thread kita AMAN, tentukan pernyataan mana yang seharusnya diperlakukan sebagau satu proses atom. Dengan kata lain, tentukan method mana yang HARUS beroperasi hingga selesai sebelum thread lainnya mengekseskusi method yang sama pada objek yang sama.
Gunakan kata kunci synchronized untuk memodifikasi sebuah deklarasi method, ketika kita ingin untuk mencegah dua thread sekaligus mengeksekusi method itu.
Setiap objek memiliki sebuah gembok (lock), dengan sebuah kunci tunggal untuk gembok itu. Seringkali kita tidak peduli tentang gembok itu; gembok-gembok memiliki peran yang harus diperhatikan ketika sebuah objek memiliki method synchronized.
Ketika sebuah thread mencoba masuk ke method synchronized, thread HARUS memiliki kunci untuk objek itu (objek dari method). Jika kunci tidak tersedia (karena thread lain memegangnya), thread akan menunggu, hingga kunci tersedia.
Bahkan jika sebuah objek memiliki lebih dari satu method synchronized, tetap memiliki satu kunci saja. Sekali sebuah thread mengeksekusi sebuah method synchronized pada objek itu, tidak ada thread yang bisa mengeksekusi method synchronized pada objek yang sama. Pembatasan ini akan melindungi data kita dengan mensikronkan method yang ada dari pemanipulasian data.
Sebuah Thread (rangkaian) dengan sebuah huruf-kecil ‘t’ adalah sebuah thread yang terpisah dengan Eksekusi di Java Programming.
Setiap Thread pada Java memiliki Tumpukan panggilannya sendiri.
Sebuah Thread dengan sebuah bahasa-kapital ‘T’ adalah Class Thread pada java.lang. Sebuah objek Thread mewakili sebuah Thread yang diEksekusi.
Sebuah Thread membutuhkan pekerjaan untuk dilakukan. Pekerjaan Thread adalah sebuah contoh sesuatu yang mengimplementasikan Interface Runnable.
Sebuah Interface Runnable hanya memiliki sebuah method tunggal, run ( ). Ini adalah method yang akan diletakkan bawah dari panggilan tumpukan yang baru. Dengan kata lain, itu adalah method yang pertama kali dijalankan pada thread baru.
Untuk menjalankan sebuah Thread baru, kita butuh sebuah Runnable untuk melewati Constructor dari Thread.
Sebuah thread berada di dalam keadaan BARU ketika kita mempunyai sebuah objek Thread yang dipakai tapi belum dipanggil dengan method start ( ).
Ketika kita mulai sebuah thread (dengan memanggil Method Start ( ) dari Objek Thread), sebuah tumpukan baru akan dibuat, dengan run ( ) method dari Runnable yang berada di bawah tumpukan. Thread sekarang mulai dalam keadaan RUNNABLE, menunggu untuk dijalankan.
Sebuah thread mengatakan untuk menjadi RUNNING ketika Penjadwal Thread dari JVM telah memilihnya untuk menjadi thread yang sedang berjalan. Pada mesin berprosessor tunggal, hanya ada satu Thread yang sedang Berjalan.
Kadang sebuah Thread dapat dipindahkan dari keadaan RUNNING ke keadaan TERBLOK (TIdak Berjalan untuk Sementara). Sebuah Thread mungkin Terblok karena ia menunggu data dari sebuah stream (aliran data), atau karena ia telah tertidur, atau karena ia menunggu untuk penguncian Objek.
Penjadwalan Thread tidak menjamin untuk bekerja pada cara tertentu, jadi kita tidak dapat memastikan bahwa thread-thread akan bergiliran sesuai keinginan kita. Kita dapat membantu untuk mempengaruhi mengaktifkan pengambilan dengan mengkondisikan thread anda ke keadaan sleep pada waktu-waktu tertentu.
Aplikasi Client dan Server BerKomunikasi melalui Koneksi Soket (Socket Connection),
Sebuah Soket merupakan sebuah Koneksi antara dua Aplikasi yang dapat berjalan pada dua mesin fisik yang berbeda (Client dan Server),
Sebuah Client harus mengetahui Alamat IP (nama domain) dan nomor port TCP dari Aplikasi Server,
Sebuah Port TCP adalah angka unsigned 16-bit yang merupakan aplikasi khusus Server. Sejumlah TCP port mengizinkan sebuah Client yang berbeda untuk terhubung pada mesin Server yang sama tapi berkomunikasi pada aplikasi server yang berbeda. Cat. 1 mesin server dapat memiliki beberapa aplikasi server, hal itu ditentukan dengan jumlah port TCP yang berada pada status “mendengarkan” (listen).
Sejumlah Port TCP dari 0 hinga 1023 telah digunakan oleh servis yang sudah dikenal, cth. HTTP, FTP, SMTP, dll.
Sebuah Client terhubung ke Server menggunakan kode:
Socket s=new Socket(“127.0.0.1”, 4242);
Sekali terhubung, client dapat memperoleh Input dari server dan mengirim Output (Pesan) ke Server. Kode ini adalah Aliran Koneksi Level-Rendah (karena berbenruk bit-bit) : sock.getInputStream ( );
Untuk membaca data teks dari Server, kita memerlukan BufferedReader yang terhubung dengan InputStreamReader. InputStreamReader terhubung dengan Socket (Server sebagai Sumber Pesan).
InputStreamReader berperan sebagai “Jembatan” antara Bit-bit (Level Rendah) dari Socket (Server) ke bentuk karakter data (Level-Tinggi) di BufferedReader.
Untuk Menulis teks / data ke Server, hubungkan PrintWriter ke OutputStream dari Soket. Gunakan method print( ) atau println( ) untuk menulis (mengirim) teks ke Server (Soket).
Server menggunakan ServerSocket untuk MENUNGGU permintaan dari Client pada nomor port TCP tertentu.
Ketika ServerSocket mendapatkan permintaan (dari client), ia “menerima (accept)” permintaan itu, kemudian membuat sebuah koneksi Soket dengan Client tsb.