Sabtu, 14 Juli 2018

Pengertian NW.js , Xojo ,dan Haxe

        Sebelum menuju kepengertian dari judul diatas mari kita bahas dulu materi yang membahas tentang app tersebut yaitu "Pemrograman Visual atau Visual Programing". Seperti makna yang ditunjukan namanya Pemrograman Visual merupakan adalah bahasa pemrograman yang didalamnya terdapat simbol-simbol grafis dan terdapat teks yang memiliki arti sematik menggunakan ekspresi visual seperti grafik, gambar, dan ikon yang sistematis dan mengacu pada aktivitas untuk membuat program dalam dimensi.
        Dalam pengeksekusian kode programnya, pemrograman visual menggunakan konsep event-driven, yaitu pengeksekusian yang didasarkan atas kejadian tertentu. Setiap kejadian tersebut mempunyai kode program sendiri yang disimpan dalam sebuah fungsi. Berbeda dengan pemrograman terstruktur atau procedural yang mengeksekusi kode-kode programnya mulai dari awal sampai akhir program secara beruntun. berikut merupakan contoh-contoh tool app yang dapat kita gunakan untuk perograman visual seperti NW.js,Xojo ,dan Haxe.   

       1. NW.js   
          NW.js atau yang sebelumnya yang merupakan "node-webkit" adalah runtime app yang dibuat berdasarkan Chromium dan node.js .Dengan node-webkit juga kita dapat mebuat aplikasi dekstop yang menggunakan bahasa perograman  HTML dan JavaScript. Node_webkit juga membolehkan kita untuk memanggil moul-modul yang berada dalam Node.js langsung dari Document Object Model (DOM) juga dapa membuat cara baru untuk membuat aplikasi dekstop menggunakan teknologi web. Node_webkit mulai terkenal di dalam kalangan programer dan banyak aplikasi yang telah menggunakan node_webkit seperti Popcron, TweetDeck, Haroopad, Game Dev Tycoon dan masih banyak lainya. Setelah node-webkit bermigrasi dengan io.js dan engine JavaScript dari Google V8, maka nama node-webkit sudah tidak sesuai lagi sehingga .komunitas  node-webkit menentukan nama yang baru yaitu  "NW.js".

      2. Xojo 

          Xojo merupakan sebuah software yang ditemukan oleh  Geoff Perlman yang telah dibeli oleh CrossBasic yang dipasarkan oleh Andrew Barry. Xojojuga merupakan alat termudah untuk membuat aplikasi dekstop . Xojo terdiri dari kumpulan objek antarmuka pengguna grafis yang kaya, bahasa berorientasi obyek modern, debugger terpadu, dan kompiler multi-platform. Bangun antarmuka aplikasi Anda dengan menyeret dan menjatuhkan objek antarmuka ke jendela dan dialog aplikasi. Kami menawarkan berbagai panduan, video, dan sumber daya bermanfaat lainnya untuk membantu Anda memulai.

      3. Haxe 

           Haxe adalah toolkit open source yang didasarkan pada bahasa pemrograman tingkat tinggi yang diketik secara modern, pengolah silang yang canggih, pustaka standar lintas platform lengkap, dan cara untuk mengakses ke kemampuan asli masing-masing platform dimana dalam tools ini kita menggunakan bahasa perograman haxe yang diketik secara ketat yang digunakan oleh kompiler Haxe untuk menghasilkan kode asli lintas platform. Bahasa pemrograman Haxe mudah dipelajari jika Anda sudah akrab dengan Java, C ++, PHP, AS3 atau bahasa berorientasi objek serupa. Bahasa pemrograman Haxe telah dirancang khusus untuk menyesuaikan perilaku asli berbagai platform dan memungkinkan pengembangan lintas platform yang efisien. Haxe Compiler juga bertanggung jawab untuk menerjemahkan bahasa pemrograman Haxe ke platform target kode sumber asli atau biner. Setiap platform didukung secara native, tanpa overhead yang datang dari menjalankan mesin virtual. Haxe Compiler sangat efisien dan dapat mengkompilasi ribuan kelas dalam hitungan detik.
         


Sabtu, 03 Desember 2016




Void hapus
void hapus()
{

    int no, hasil=0;;
    cout<<"CARI NO : ";
    cin>>no;
    in.open("inti.txt", ios::binary);
    out.open("hapus.txt", ios::out | ios::binary);

    while (in.read((char*)&toko, sizeof(toko)))
    {
        if (toko.getno() != no)
            all.write((char*)&toko, sizeof(toko));
        else
            hasil=1;
    }
    in.close();
    out.close();
    remove("inti.txt");
    rename("cadangan.txt", "inti.txt");
    if(hasil==1)
        cout<<"BARANG NO "<<no<<" DIHAPUS!"<<endl;
    else
    {
        cout<<"BARANG NO  "<<no<<" BELUM DIMASUKAN!"<<endl;
    }
    system("cls");
    auditing();
}
Pada Void Hapus kita akan memfariasikan mencari dan hapus

    in.open("inti.txt", ios::binary);
    out.open("hapus.txt", ios::out | ios::binary);

    while (in.read((char*)&toko, sizeof(toko)))
    {
        if (toko.getno() != no)
            all.write((char*)&toko, sizeof(toko));
        else
            hasil=1;
    }
    in.close();
    out.close();
    remove("inti.txt");
    rename("cadangan.txt", "inti.txt");

   
in.open("inti.txt", ios::binary);/out.open("hapus.txt", ios::out | ios::binary); yang artinya ifstream buka data inti,txt dan mengeluarkannya dengan dari bilangan binary ke bilangan biasa setelah itu ofstream buka data ke hapus.txt ios mengeluarkan dengan mengubahnya ke bilangan binary
    while (in.read((char*)&toko, sizeof(toko)))
    {
        if (toko.getno() != no)
            all.write((char*)&toko, sizeof(toko));
        else
            hasil=1;
    }
Lalu di baca dan di cocokan statement yang anda cari jika ada maka
    in.close();
    out.close();
    remove("inti.txt");
    rename("cadangan.txt", "inti.txt");
ifstream dan ofstream tutup lalu dipindahkan dari inti.txt ke cadangan .txt yang berarti selama ini kita tidak menghapus data melainkan hanya memindahkan datanya saja ke file yang lain


CARA MEMASUKAN DAN MELIHAT DATA





Void auditing
void auditing()
{

    int a,b,c,e,g,x,i,j,k,hasil=0,norr,no;
    char h,brg;


    fungsi();
    system("COLOR 04");
    setcolor (2);
    gotoxy(72,16);
    cout<<"     1. MASUKIN HARGA    "<<endl;
    gotoxy(72,17);
    cout<<"     2. LIHAT HARGA      "<<endl;
    gotoxy(72,18);
    cout<<"          [   ]          "<<endl;
    setcolor(6);
    gotoxy(72,15);
    cout<<"========================="<<endl;
    gotoxy(72,19);
    cout<<"========================="<<endl;
    gotoxy(84,18);
    cin>>g;


    if (g == 1)
    {

        system ("cls");
cd:
        toko.input();
        out.open("inti.txt", ios::binary | ios::app);
        out.write((char*) &toko, sizeof (toko));
        out.close();
        cout<<"APAKAH ANDA AKAN MEMASUKAN DATA BARU LAGI? [Y /N] :  ";
        cin>>h;

        if (h == 'Y' || h == 'y')
        {

            goto cd;
        }
        else
        {
            system("cls");
            layar2();
        }

    }

    else
    {
j:
        system ("cls");
        in.open("inti.txt", ios::binary);
        while(in.read( (char*)&toko, sizeof(toko)))
    {
        toko.output();
    }
        in.close();
        cout<<endl;
        cout<<"APAKAH ANDA AKAN MENCARI DATA BARU LAGI? [Y /N] :     "<<endl;
        cin>>h;
        if (h == 'Y' || h == 'y')
        {
            goto j;
        }
        else
        {
            system("cls");
            layar2();
        }

    }
}
               








Dalam void Auditing disini kita menggunakan 2 fungsi yaitu memasukan data dan melihat data

A.Memasukan data

system ("cls");
cd:
        toko.input();
        out.open("inti.txt", ios::binary | ios::app);
        out.write((char*) &toko, sizeof (toko));
        out.close();

toko.input(); berarti kita memanggili fungsi input yang ada pada class 1 atau inti setelah itu out.open("inti.txt", ios::binary | ios::app); out.open berarti ofstream membuka data dengan fungsi pengeluaran pada data inti.txt lalu data tersebut di proses dengan ios:: binary yang berarti memasukan data dan nanti mengubahnya menjadi bilangan binary pada inti.txt lalu ios::app yang merupakan funsi apabila sudah ada data pada file inti.txt maka secara otomatis dia akan mencetaknya setelah data tersebut sehingga data yang sebelumnya kita masukan tidak tertindih atau terhapus.Lalu out.write((char*) &toko, sizeof (toko)); ofstream membaca data yang dimasukan lalu out.close(); ofstream tutup data.

B.Melihat Data

in.open("inti.txt", ios::binary);
        while(in.read( (char*)&toko, sizeof(toko)))
    {
        toko.output();
    }
        in.close();

in.open("inti.txt", ios::binary);in.open berarti ifstream membuka data dengan fungsi pemasukan  pada data inti.txt lalu data tersebut di proses dengan ios:: binary yang berarti memasukan data dan nanti mengubahnya menjadi bilangan binary pada inti.txt.Lalu        while(in.read( (char*)&toko, sizeof(toko)))ifstream membaca data yang dimasukan lalu in.close(); ifstream tutup data.




Minggu, 27 November 2016

POINTER


POINTER
#include <iostream>
using namespace std;
int main()
{
int nomor[3], *alamat;
    nomor [0]= 10;
    nomor [1]= 20;
    nomor [2]= 30;
    alamat =&nomor[0];
    cout<<"NILAI "<<*alamat<<" ada di alamat memori "<<alamat<<endl;
    cout<<"NILAI "<<*(alamat+1)<< " ada di alamat memori "<<alamat +1<<endl;
    cout<<"NILAI "<<*(alamat+2)<<" ada di alamat memori "<<alamat +2<<endl;


}






Pada program ini kita akan menggunakan yang namanya pointer  .POINTER  merupakan salah satu bentuk  variable yang nilainya adalah address dari variable lain.atau secara mudahnya POINTER merupakan sebuah variable yang penyimpan variable lain dan variable target adalah variable yang terletak pada adrees yang di simpan atau is variable yang dituju.Dan dalam program ini kita akan menggunakan pointer juga array
int nomor[3], *alamat;
    nomor [0]= 10;
    nomor [1]= 20;
    nomor [2]= 30;


Jadi program di atas menandakan bahwasanya program tersebut menggunakan yang array dengan menggunakan variable nomor yang mempunyai 3 nilai yaitu [0=10],[1=20].dan [2=30] dengan menggunkan pointer alamat.
   alamat =&nomor[0];
 cout<<"NILAI "<<*alamat<<" ada di alamat memori "<<alamat<<endl;
 cout<<"NILAI "<<*(alamat+1)<< " ada di alamat memori "<<alamat +1<<endl;
 cout<<"NILAI "<<*(alamat+2)<<" ada di alamat memori "<<alamat +2<<endl;




Lalu alamat=alamat  dari memory array no 0 [alamat =&nomor[0];]
Lalu niai (*alamat ) atau isi dari alamat array 0 karena jika pointer tanpa di ikuti dengan anggka hanya alamat yang netral berarti itu merupakan alamat dari array o yang beralamat dari alamat lalu selanjutanya cara kerjanya hamper sama tapi hanya saja terdapat penjumlahan dalam pointear sehingga menjadi pointer+1 atau array 1 dan selanjutnya