X

Monday, November 9, 2020

Berkenalan dengan Bahasa Pemrograman Scala


 

Tahukah kamu bahwa bahasa pemrograman yang ada di dunia berjumlah kurang lebih 700 bahasa (dikutip dari wikipedia.org), merupakan angka yang fantastis mengingat yang kita pelajari selama ini mungkin tidak lebih dari 10 bahasa pemrograman.

Maka dari itu jangan heran, ketika terjun di dunia kerja anda dihadapkan dengan bahasa pemrograman yang terdengar asing. Salah satu bahasa pemrograman yang mungkin asing bagi anda adalah Scala. Meskipun terdengar asing namun ternyata bahasa pemrograman ini sudah ada sejak tahun 2003.

Pengertian Scala

Scala merupakan bahasa pemrograman yang menggabungkan paradigma pemrograman yang berorientasi pada objek dengan fungsional. Bahasa pemrograman ini termasuk kedalam bahasa pemrograman berorientasi objek murni yang dalam arti bahwa setiap nilai adalah objek. Serta termasuk bahasa pemrograman fungsional yang artinya setiap fungsi adalah nilai.

Sama halnya seperti java, scala ditulis untuk dapat dijalankan pada JVM (Java Virtual Machine). Bahasa pemrograman lainnya yang dapat berjalan di JVM seperti Kotlin dan Ceylon. Semua bahasa ini dibuat dengan tujuan menyederhanakan atau membuat java yang lebih baik.

Meskipun di jalankan pada JVM, nyatanya Scala bukanlah perpanjangan dari Java. Ketika proses kompilasi (penyusunan) kode scala di terjemahkan kedalam bytecode Java dan berjalan di JVM.

Scala dapat digunakan dalam berbagai lingkungan, mulai dari script yang sederhana hingga sistem yang besar atau rumit sekalipun. Dalam dunia pemrograman ini disebut dengan istilah general purpose programming language.

Sejarah Scala

Scala dibuat dan dikembangkan oleh Martin Odersky, yaitu seorang ilmuan komputer Jerman sekaligus profesor metode pemrograman di École Polytechnique Fédérale de Lausanne di Swiss. Awalnya Martin Odersky merupakan pengembang dari compiler dan fitur Generic pada java.

Martin kemudian menemukan suatu kelemahan besar pada Java yaitu ketika Java digunakan pada lingkungan pemrograman konkuren, sintaks dari java harus diubah seluruhnya. Pemrograman konkuren merupakan proses atau beberapa proses yang berjalan secara bersamaan.

Scala kemudian mulai divisualisasikan oleh Martin Odersky dan timnya pada tahun 2001. Empat tahun berselang tepatnya di tahun 2004, scala diluncurkan ke public dan telah dimodifikasi untuk Net Framework.

Seperti kita ketahui scala bisa dikatakan sebagai peningkatan dari Java yang mana merupakan salah satu bahasa pemrograman paling populer di dunia. Java memiliki ekosistem yang sangat kaya, dengan banyaknya framework, library, hingga komunitas. Hal ini membuat usaha untuk meyakinkan programer beralih ke scala menjadi sangat berat. Sebagai solusi atas masalah tersebut, scala kemudian di rancang agar dapat berjalan di JVM, serta kode scala dapat dipanggil ke dalam Java, begitu pula sebaliknya.

Keunggulan Scala dibandingkan Java

1. Penulisan lebih singkat

Java termasuk kedalam bahasa pemrograman yang sederhana. Akan tetapi tingkat kesederhanaan itu terkadang di barengi dengan tingkat kerumitan yang tinggi. Pada Java untuk membuat sebuah program biasanya memerlukan baris kode yang panjang. Scala hadir dengan kode yang lebih pendek dan tidak bertele-tele. Contohnya bisa dilihat dibawah ini.

Menampilkan Hello World di Java

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}



Menampilkan Hello World di Scala

object HelloWorld {
    def main(args: Array[String]) {
        println("Hello World!")
    }
}



Dari kedua kode di atas kita dapat menyimpulkan bahwa untuk menampilkan tulisan "Hello World!" di java dituliskan dengan System.out.println("Hello World!"); sedangkan pada scala kita hanya perlu menuliskan println("Hello World!"). Ini membuat scala lebih ringkas daripada Java. Contoh lainnya dapat kita lihat ketika membuat Array, kodenya seperti dibawah.

ArrayList di Java

List list = new ArrayList();
list.add("1");
list.add("2");
list.add("3");

ArrayList di Scala

val list = List("1", "2", "3")

2. Lebih kuat dalam fungsionalitas

Scala dapat menyelesaikan masalah fungsional dengan lebih baik dibandingkan dengan java. Pemrograman fungsional mempunyai karakteristik yang penting yaitu "The absence of side effect" artinya bahwa pemrograman fungsional tidak dipengaruhi data yang ada di luar fungsi dan tidak mempengaruhi data diluar fungsi.

3. Menyelesaikan kueri dengan cara yang lebih aman

Scala mempunyai model aktor yang secara inheren lebih aman daripada data dan kata kunci Java yang dapat berubah pada model Thread (Tidak peduli seberapa bagus library yang didapat, java masih terhalang oleh bahasa).

Selain yang disebutkan di atas tentunya masih ada keunggulan lainnya yang dapat dirasakan setelah menggunakan Scala.

4. Scala lebih berorientasi objek

Scala memperlakukan semuanya sebagai turunan dari kelas dan itu adalah bahasa yang lebih berorientasi objek dibandingkan dengan java. Sedangkan java kurang berorientasi objek dibandingkan scala sebab adanya primitif dan statika.

Apa yang bisa saya buat dengan Scala ?

Pertanyaan yang perlu ditanyakan setelah mengetahui pengertian dari sebuah bahasa pemrograman adalah apa yang bisa saya buat dengan itu ? apa yang bisa saya buat dengan bahasa pemrograman itu ? apa yang bisa saya buat dengan bahasa pemrograman scala ?

Scala dapat digunakan untuk membangun aplikasi seperti :
  • Aplikasi Streaming data
  • Aplikasi android dan API
  • Aplikasi Desktop
  • Front dan Back ends aplikasi Web
  • Analisis big data dengan Apache Spark
  • Aplikasi pesan
  • Domain-specific language
  • Real-time data streaming menggunakan Spark Framework
Sumber : www.simplilearn.com

Siapa saja yang sudah menggunakan scala ?

Ada banyak faktor yang mempengaruhi suatu bahasa pemrograman dikenal, digunakan, sampai disukai. Salah satunya adalah hasil atau siapa saja yang sudah menggunakan bahasa pemrograman tersebut. Berikut beberapa aplikasi yang menggunakan Scala :

  • Apache Spark
  • Scalding
  • Apache kafka
  • Apache Samza
  • Finagle
  • Akka
  • Lichess

Sintaks dasar scala

Format Main

Format main disini adalah format awal sebelum kita melanjutkan untuk membuat kode seperti kodisi, perulangan dan lain sebagainya. Sebagai contoh disini kita ambil dari C++ dan Java dimana sebelum memulai membuat kode pertama harus di deklarasikan seperti dibawah :

C++

#include 

int main()
{
  //kode disini
}



Java

public class HelloWorld {
    public static void main(String[] args) {
        // tulis kode disini
    }
}



Sedangkan pada scala formatnya sebagai berikut : 


Scala


object HelloWorld {
    def main(args: Array[String]) {
   		// tulis kode disini
   }
}

Import Class

Import class adalah proses mengambil fungsi dari class lain yang sudah disediakan sebelumnya untuk dapat dijalankan pada program yang sedang di buat. Untuk mengimport class pada scala dapat dilakukan dengan memasukkan kode seperti contoh dibawah.

import Test.target.Test.Point // import class

object Demo {
   def main(args: Array[String]) {

   }
}

Perlu diperhatikan posisi import class pada scala selalu berada di atas sebelum struktur dibuka. Selain itu kode di awali dengan import dilanjutkan lokasi dan nama class. Cara import ini sama halnya seperti pada java.

Cara menampilkan tulisan

Untuk menampilkan tulisan pada program diguanakan perintah println("tulisan"). Contoh penggunaannya seperti berikut :


object HelloWorld {
    def main(args: Array[String]) {
        println("Tulisan")
    }
}

Tipe data

Ada beberapa jenis tipe data pada scala yang dibedakan dari nama dan kegunaanya. Berikut beberapa type data tersebut :

  • Boolean - berisi true atau false
  • Byte - tipe data angka dengan ukuran 8 bit. Mulai dari -128 hingga 127
  • Short - tipe data angka dengan ukuran 16 bit. Mulai dari -32768 hingga 32767
  • Char - berisi single karakter, huruf, dan angka
  • Int - berisi angka
  • Long - tipe data bilangan bulat dengan ukuran 16 bit. Range -922337209 hingga 922337209
  • Float - berisi pecahan angka atau desimal
  • Double - tipe data angka dengan ukuran 8 bit dan 64 bit.
  • String - berisi karakter, huruf, atau angka
Berikut contoh penulisan sekaligus penggunaan type data pada program Scala :

object Test 
{ 
def main(args: Array[String])  
{ 
    var a: Boolean = true
    var b: Byte = 126
    var c: Float = 2.45673f 
    var d: Int = 3
    var e: Short = 45
    var f: Double = 2.93846523
    var g: Char = 'A'
    if (a == true)  
    { 
    println("boolean : true") 
    } 
    println("byte:" + b) 
    println("float:" + c) 
    println("integer:" + d) 
    println("short:" + e) 
    println("double:" + f) 
    println("char:" + g) 
} 
} 

If else (Kondisi)

Kondisi merupakan salah satu hal penting yang harus dipelajari dalam pemrograman sebab akan banyak dipakai ketika membuat sebuah program. Berikut contoh penggunaan if else pada scala :


object Contoh {
   def main(args: Array[String]) {
      var x = 10;

      if( x <= 20 ){
         println("Nilai lebih kecil atau sama dengan 20");
      }else{
      	println("Nilai lebih kecil dari 20");
  	  }
   }
}

Perulangan

Perulangan atau bahasa ingrisnya Looping digunakan untuk mengulang fungsi atau kondisi tertentu beberapa kali sesuai dengan yang ditentukan. Untuk melakukan proses perulangan ini bisa mengginakan perintah for.Berikut contoh penggunaan looping pada sacala :


object Contoh {
def main(args: Array[String]) {
var a = 0;

// perulangan menampilkan tulisan
for( a <- 1 to 10){
println( "Isi dari a = " + a );
}
}
}

Membuat Komentar

Seperti halnya kebanyakan bahasa pemrograman lainnya Scala juga menggunakan tanda // untuk membuat komentar satu baris. Sedangkan untuk beberapa baris digunakan tanda /* di awal baris kemudian ditutup dengan */ di akhir baris. Contoh penggunaan komentar seperti berikut :


object HelloWorld {
    def main(args: Array[String]) {
   		// komentar satu baris
   }
}



object HelloWorld {
def main(args: Array[String]) {
/*Komentar
beberapa
baris*/
}
}

Itulah beberapa informasi yang perlu anda ketahui seputar bahasa pemrogramab scala. Lanjut ke postingan Cara Install Scala di Windows. 

 

Referensi :
https://medium.com/pujanggateknologi/berkenalan-dengan-scala-dd6452596fa6
https://blog.nolimit.id/2020/01/28/pengenalan-scala-untuk-big-data/
https://medium.com/skyshidigital/berkenalan-dengan-scala-82cd450dc43a
https://bertzzie.com/post/2/scala-sebuah-java-yang-lebih-baik
https://www.lightbend.com/blog/eight-hot-technologies-that-were-built-in-scala

Wednesday, November 4, 2020

Jenis-jenis Hosting Serta Perbedaannya

Pada postingan sebelumnya tentang Mengenal Apa itu Hosting dan Penyedia Hosting kita telah mengetahui apa itu hosting.

Sekarang yang perlu kita tahu adalah jenis-jenis hosting serta perbedaannya satu sama lain.

Hosting ini terbagi menjadi beberapa jenis yaitu shared hosting, VPS (Virtual Private Server) hosting, Cloud Hosting, Dedicated Server Hosting.

Apa pentingnya mengetahui jenis-jesnis hosting ?

Dengan mengetahui jenis-jenis hosting dan perbedaannya developer web akan tahu jenis hosting mana yang sesuai dengan kebutuhan websitenya. Contolah anda membangun website menggunakan Django kemudian anda membeli shared hosting yang belum tentu mendukung website Django. Tentu anda akan mengalami kerugian.

Contoh lain anda memiliki website sederhana hanya memerlukan bandwith dan tafict yang kecil. Dengan membeli VPS atau bahkan Dedicated Server Hosting tentunya akan boros biaya, yang mana notabenenya shared Hosting lebih murah dan sudah sesuai untuk website anda.

1. Shared Hosting

Shared hosting merupakan jenis hosting yang paling banyak digunakan, dan biasanya digunakan para pemula dalam dunia hosting.

Seperti namanya yang berarti berbagi hosting, dimana pengguna hosting akan berbagi hosting dengan pengguna lain. Hal ini membuat kecepatan hosting satu dengan yang lain saling bergantung.

Sebagai gambaran apabila salah satu website di akses oleh banyak orang maka kecepatan website lain akan menurun. Oleh karena itu shared hosting tidak direkomendasikan untuk website dengan trafik tinggi.

Ketika anda membeli shared hosting yang anda beli hanya berupa kapasitas penyimpanan. Dimana penyedia layanan juga biasanya sudah memasangkan Cpanel yang membantu anda mengatur hosting. Kebanyakan shared hosting hanya tersedia untuk website yang dibangun menggunakan PHP.

Jenis hosting ini memiliki biaya yang lebih murah di bandingkan jenis hosting lainnya. Untuk konfigurasi juga tidak terlalu sulit.

2. VPS (Virtual Private Server) Hosting

VPS atau Virtual Private Server adalah jenis hosting dimana pengguna dapat memilih kapasitas memory, jenis penyimpanan (harddisk atau ssd), kapasitas hardisk/SSD, serta Jenis Sistem Operasi yang akan digunakan sebagai web server.

Sistem operasi disini tidak mencakup semua sistem operasi, hanya beberapa sistem operasi yang disediakan oleh penyedia layanan. Biasanya seperti Debian, Ubuntu, CentOS, Fedora, serta Suse.

Meskipun sistem VPS juga membuat anda harus berbagi server dengan pengguna lain akan tetapi kecepatan website anda tidak akan dipengaruhi oleh pengguna lain. Karena pengguna mendapatkan alokasi memory dan ruang masing-masing. Hal ini membuat VPS sangat cocok untuk website dengan trafik tinggi.

Kelebihan lain dari VPS hosting anda akan mendapatkan akses root ke hosting anda sehingga anda bebas menginstall atau menguninstall aplikasi.

Jika anda adalah developer website non PHP contohnya Node Js, Ruby on Rails, atau bahkan Django. Anda mungkin bertanya-tanya bagaimana cara mengonlinekan website tersebut.

VPS hosting adalah salah satu jawabannya, dengan VPS anda bisa menginstall aplikasi apapun kedalam server selama sistem operasi mendukung aplikasi tersebut. Contohnya anda bisa menginstall Node Js, Python, Ruby dan lain sebagainya.

3. Cloud Hosting

Cloud Hosting merupakan jenis hosting yang cocok untuk website dengan trafict tinggi seperti toko online atau portal berita. Jenis hosting ini akan menyebar website yang kamu upload ke beberapa server sehingga apabila server satu mengalami error atau masalah, website masih dapat diakses menggunakan server lain.

Dengan kata lain Cloud Hosting menggabungkan beberapa server yang berjalan layaknya satu server dengan maksud untuk menjaga performa. Hosting ini menggunakan teknologi yang bernama "cluster" yaitu teknologi untuk menggabungkan beberapa resource server secara terpusat.

Keuntungan lainnya, cloud hosting tidak dibagi dengan pengguna lain karena sudah dedicated. Sehingga banyak tidaknya trafict website anda tidak akan menjadi masalah bagi penyedia layanan hosting.

4. Dedicated Server Hosting

Terakhir dalam daftar ini ada Dedicated Server Hosting. Jenis hosting yang satu ini hampir sama dengan VPS bedanya jika VPS anda masih bisa satu server dengan pengguna lain, dengan Dedicated Server Hosting anda bisa menyewa satu server sekaligus. Bisa dikatakan Dedicated Server Hosting ini adalah layanan Server premium, dan biasanya ditujukan untuk perusahaan besar.

Dengan menggunakan Dedicated Server Hosting pengguna bisa lebih fokus dengan konten bisnisnya dibandingkan me-manage server hosting itu sendiri. Hal ini karena manage server virtualnya sudah dilakukan oleh provider atau penyedia hosting.



Itulah beberapa jenis hosting dan pengertiannya. Semoga membantu dalam menentukan hosting yang untuk website anda.

Thursday, October 15, 2020

Membuat Alert Dialog di Android Studio

Pernahkah anda menggunakan sebuah aplikasi dimana pada saat tertentu aplikasi memunculkan popup atau alert berisi informasi. Alert ini biasanya digunakan untuk memberikan informasi penting sebelum melakukan aksi tertentu.

Pada postingan kali ini kita akan membuat sebuah alert dialog. Tampilan nantinya akan tampak seperti gambar berikut :




Langkah-langkah membuat alert dialog di android studio

1. Buat project baru. 2. Tambahkan kode berikut pada MainActivity.java

public class MainActivity extends AppCompatActivity {

    private Button button;
    private Context context;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        button = findViewById(R.id.button);
        context = this;
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                AlertDialog.Builder builder = new AlertDialog.Builder(context);
                builder.setTitle("Alert Dialog")
                        .setMessage("Membuat Alert dialog")
                        .setPositiveButton("Oke", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                Toast.makeText(MainActivity.this, "Tombol oke di klik", Toast.LENGTH_SHORT).show();

                            }
                        })
                        .setNegativeButton("Batal", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                Toast.makeText(context, "Batal diklik", Toast.LENGTH_SHORT).show();
                            }
                        })
                ;
                AlertDialog dialog = builder.create();
                dialog.show();
            }
        });
    }
}


3. Edit activity_main.xml seperti berikut:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
tools:context=".MainActivity">

<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</RelativeLayout>
4. Aplikasi siap dijalankan

Sunday, September 20, 2020

Mengenal Apa itu Hosting dan Penyedia Hosting

Sebenarnya Apa itu hosting ?

Hosting merupakan lokasi atau media yang digunakan untuk menyimpan data baik itu folder, ataupun file-file website seperti video, audio, html, CSS, dan lain sebagainya. 

Bila di umpamakan Hosting ini seperti lahan atau lokasi tempat kita membangun rumah dan domain sebagai alamatnya. Website sendiri bisa kita umpamakan sebagai rumah yang telah dibangun.

Apakah penting memiliki hosting ?

Penting tidaknya tergantung kebutuhan anda apakah anda membuat website untuk dijalankan secara offline atau online.

Jika website anda di tujukan untuk online maka anda wajib memiliki hosting. Sebab hosting akan menyimpan website anda secara online sehingga dapat di akses kapan saja dan dimana saja asalkan ada akses internet.

Dimana saya bisa mendapatkan hosting ?

Anda bisa membuat hosting sendiri hanya saja ini memerlukan keahlian atau pengetahuan tentang jaringan, dan tentunya dana yang lebih banyak. 

Sebagai alternatif anda bisa membeli hosting melalui jasa penyedia hosting. Berikut beberapa jasa penyedia hosting :

1. Niagahoster.co.id
2. Rumahweb.com
3. Hostinger.co.id
4. Idwebhost.com
5. Exabytes.co.id

Selain yang sudah disebutkan di atas, masih banyak lagi penyedia hosting yang bisa anda cari di google dengan kata kunci penyedia hosting.

7 Software Web Server yang Paling Sering Digunakan Programer

Software Web server merupakan sebuah aplikasi perangkat lunak yang berfungsi untuk menerima dan merespon permintaan atau request dari web browser. Contohnya user mengakses url website di browser yaitu "http://localhost/home" maka web server bertugas menerjemahkan url ini dan memberikan respon sesuai dengan yang di akses entah itu brupa menampilkan halaman web atau sebagainya.



Pada era sekarang terdapat berbagai macam aplikasi web server yang bisa digunakan. Namun dari banyaknya itu ada beberapa software yang paling sering digunakan. Berikut beberapa Software Web Server yang Sering Digunakan Programer.



1. XAMPP

XAMPP merupakan gabungan dari beberapa aplikasi yang dijadikan satu dan dapat dijalankan secara lengkap. X = Cross Platform, A = Apache, M = Mysql/MariaDB, P = Php, P = Perl. Aplikasi ini menjadi web server yang paling sering di gunakan di Indonesia terutama bagi pemula dalam dunia web. Aplikasi ini berada di bawah lisensi publik umum atau GNU yang artinya aplikasi ini bersifat gratis dan terbuka untuk public.



2. Apache HTTP Web Server

Apache HTTP Web Server merupakan salah satu web server yang paling populer saat ini. Apache diluncurkan pertama kali pada tahun 1995 dan dikelola oleh Apache Software Foundation. Apache HTTP Web Server bersifat open source yang artinya gratis digunakan oleh public. Selain itu software ini memiliki kemudahan konfigurasi dan tidak sulit bagi pemula.



3. Nginx

Nginx merupakan Web Server baru yang mulai diperkenalkan pada bulan Oktober 2004. Meskipun tergolong baru Nginx nyatanya mampu menarik perhatian para developer yang menjadikannya salah satu aplikasi Web Server paling populer. Salah satu keunggulan Nginx dibandingkan aplikasi serupa lainnya adalah kemampuannya dalam menangani jumlah koneksi yang banyak. Nginx sangat cocok digunakan untuk website yang membutuhkan trafik yang tinggi.



4. LAMP

LAMP merupakan singkatan dari Linux, Apache, Mysql, PHP/Perl/Python. LAMP adalah paket perangkat lunak bebas yang digunakan untuk menjalankan aplikasi secara lengkap. Oleh karena aplikasi ini terdapat Apache jadi LAMP juga bisa digunakan sebagai software Web Server. Sesuai dengan namanya LAMP ini dikhususkan untuk sistem operasi Linux.



5. WAMP

Berbeda dengan LAMP yang dikhususkan untuk Linux, WAMP dikhususkan untuk sistem operasi Windows. WAMP merupakan singkatan dari Windows, Apache, MySQL, PHP. Sama halnya seperti LAMP, WAMP ditujukan untuk menjalankan aplikasi secara lengkap.



6. AMPPS

AMPPS merupakan singkatan dari Apache, Mysql, MongoDB, PHP, Perl, Python dan Softaculous auto-installer. Aplikasi web server ini dibuat oleh Softaculous Ltd dan dapat di install pada sistem operasi Windows, Linux, dan MacOS.



7. IIS

IIS atau Internet Information Server merupakan web server yang digunakan oleh sistem operasi Windows. Software ini memiliki kegunaan utama sebagai pendukung protokol TCP/IP yang berjalan dalam lapisan aplikasi (aplication layer). Layanan yang diberikan seperti FTP, FTPS, SMTP, NNTP, dan HTTP/HTTPS.



Monday, September 14, 2020

Membuat Aplikasi Text to Speach di Android Studio


 

Aplikasi Text to Speach merupakan aplikasi yang mampu mengubah sebuah text menjadi suara. Jika kamu pernah menggunakan google assistensi maka kamu sudah pernah menggunakan fitur Text to Speach ini.

Aplikasi Text to Speach ini bisa anda buat menggunakan Android Studio, cara pembuatannya juga sangat mudah sebab di dalam Android Studio sudah terdapat library atau class untuk membuat fitur ini.

Hal pertama yang harus anda lakukan adalah membuat project baru. Untuk yang baru belajar baca cara membuat project baru disini. Jika sudah silahkan lanjut dengan mengedit dua file utama bawah ini :

1. MainActivity.java


Keterangan
Pada kode int res = mTTS.setLanguage(Locale.ENGLISH); anda bisa menggantinya menggunakan suara atau logat dari negara lain.

2. activity_main.xml

Kode mTTS.speak(c, TextToSpeech.QUEUE_FLUSH, null); inilah yang melakukan aksi mengubah text menjadi suara, ketika button di klik.

3. Jalankan aplikasi

Silahkan jalankan aplikasi dan tes dengan memasukkan kata atau kalimat kemudian tekan button jika berhasil maka akan terdengar suara dari kata yang di masukkan. Perlu di ingat bahwa tidak semua perangkat mendukung fitur ini.

Sunday, September 13, 2020

Cara Membuat Menu Auto Fixed Ketika di Scroll | WEB


 

Auto Fixed disini biasanya banyak di terapkan pada web-website yang ingin memiliki tampilan atau design web yang lebih menarik. Jadi simpelnya ketika kita melakukan scroll ke bawah menu yang tadinya posisinya tetap akan berubah menjadi fixed di atas atau di bagian tertentu yang sudah di tentukan.

Untuk membuat tampilan website anda seperti ini sangatlah mudah anda bisa memanfaatkan fitur javascript. Sebagai contoh disini kita akan membuatnya dengan tampilan html sederhana seperti berikut :
 


 

Ketika anda melakukan aksi scroll maka tampilan akan menjadi seperti berikut :




Kode cara Membuat Menu Auto Fixed Ketika di Scroll


<!DOCTYPE html>
<html>
<head>
<title>Coding Rakitan</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<style type="text/css">
body{
height: 2000px;margin: 0px;padding: 0px;
}.bl{
height: 200px;
}
.menu{
height: 50px;
background: #001b6a;
width: 100%;
}.fx{
top: 0px;
position: fixed;
}.d-flex{
display: flex;
height: 100%;
}.menu a{
margin-right: 20px;
margin-bottom: auto;
margin-top: auto;
color: white;
font-family: sans-serif;
}.m-auto{
margin: auto;
}h1{
font-size: 83px;
font-family: sans-serif;
}
</style>
</head>
<body >
<div class="bl">
<div class="d-flex">
<h1 class="m-auto">Coding Rakitan</h1>
</div>
</div>
<div class="menu" id="menu">
<div class="d-flex">
<a>Menu 1</a>
<a>Menu 2</a>
<a>Menu 3</a>
<a>Menu 4</a>
</div>
</div>
<br>
<div class="d-flex">

<img class="m-auto" style="margin-top: 0px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhKb401NNIMCTN4hLJY6sYbJ9doTZPWRvMrwj-KEsU6xJ1FurpHhGqjfj48_K3-VQehloD6MGwOd-7z-e4DuJlz-ijqigIQpIBqQdFzEVZJn0dKk81dyLR7tYSL2xvsi9US_iRtB-w7Ir1/s2518/Screenshot_2020-09-13+CODING+RAKITAN+INSPIRASI+CODING+TERUPDATE+android+studio+laravel+php.png" style="width: 700px;">
</div>
</body>
<script type="text/javascript">
$(function(){

var menu = $('#menu');
pos = menu.offset();

$(window).scroll(function(){
if($(this).scrollTop() > pos.top+menu.height()){
menu.addClass('fx');
} else if($(this).scrollTop() <= pos.top ){
menu.removeClass('fx');
}
});

});
</script>
</html>
Kode yang perlu anda perhatikan ada pada :

<script type="text/javascript">
$(function(){

var menu = $('#menu');
pos = menu.offset();

$(window).scroll(function(){
if($(this).scrollTop() > pos.top+menu.height()){
menu.addClass('fx');
} else if($(this).scrollTop() <= pos.top ){
menu.removeClass('fx');
}
});

});
</script>
Dimana pada kode javascript di atas menginstruksikan ketika terjadi scroll kebawah dan nilai over dari scroll ini lebih besar dari over menu maka tambahkan class fx pada menu, yang mana menu fx ini akan membuat position menjadi fixed dan berada di atas atau top 0px. Sedangkan bila kebalikannya bila terjadi scroll ke atas dan nilainya lebih kecil atau sama dengan menu over maka hapus kembali class fx yang membuat menu kembali seperti semula.