Archive for » October, 2016 «

C# – Name, Bindings & Scopes

Hello, Welcome 🙂

Ini kelompok kami 🙂  jangan lupa kunjungi blog mereka juga.

Kelompok 9

Martandy : martandy.blog.binusian.org

Kevin Yulias : kevinyou.blog.binusian.org

Eric Khantino Sunardi : ricz97.blog.binusian.org

Gabriellyan Catheline Sanger : gcathelines.blog.binusian.org

 

Topik kedua yaitu “Name, Bindings & Scopes


Pada topik pertama sudah dibahas apa itu variabel, jadi langsung saja ke Penamaan Variabel

Ada 2 :

  1. Menggunakan Camel Notation, yaitu huruf kecil (lowercase) pada huruf depan masing2 kata. 
  2. Menggunakan Pascal Notation, yaitu huruf besar (Uppercase) pada huruf depan masing2 kata

Nah, pada topik pertama juga sudah dibahas mengenai Identifier, sekarang kita akan membahas lebih lengkap lagi tentang Apa & Aturan Identifier

Identifier adalah suatu pengenal atau pengidentifikasi yang kita deklarasikan.

Identifier dapat berupa: nama variabel, konstanta fungsi, kelas, template maupun namespace.

Untuk membuat nama identifier:

  1. Case Sensitive
  2. Nama identifier bisa terdiri dari satu atau beberapa karakter yang terdiri dari angka  (0 – 9), huruf (A – Z, a – z), dollar ($), garis-bawah/underscore(_).
  3. Penamaan identifier harus dimulai dengan huruf, underscore(_), atau karakter dollar ($). Tidak boleh dimulai dengan angka. Simbol-simbol operator seperti (*), (+), (/), (-) tidak boleh digunakan.
  4. Tidak boleh menggunakan spasi.
  5. Tidak diperbolehkan menggunakan Kata-kata keyword dalam bahasa pemrograman (misalnya: public, class, static, dsb).
  6. Panjang nama identifier tidak dibatasi.

Selanjutnya, kita akan membahas apa itu Binding

Binding adalah menyambungkan satu variabel/method dengan source data/file lain, agar mudah di akses, dan tidak perlu ketik ulang method lagi dll.

E.g. : Menghubungkan suatu variabel dengan data dari database, XML, dsb

Nah, ada 2 jenis binding

Early Binding/Static Binding

adalah event yang terjadi pada compile time. Compiler tau method apa yang harus di panggil saat compile time. Kelebihan Early Binding adalah efisiensi, lebih cepat, karena fungsi telah dipanggil saat compile time.

E.g. Method call biasa, method overloading

Late Binding/Dynamic Binding

adalah event yang terjadi pada saat aplikasi dijalankan / runtime. Compiler tidak tahu method/fungsi apa yang harus di panggil sampai dengan aplikasi sudah di jalankan atau pada saat runtime. Late binding memungkinkan kamu untuk membuat aplikasi yang merespon terhadap event yang terjadi ketika aplikasi itu berjalan. Kelebihan Dynamic Binding adalah fleksiblitas.

E.g. Method overriding.


Selanjutnya, sebelum membahas scope, kita akan membahas Instance Variable, Local Variable & Parameter

  • Menggunakan instance variable untuk menyimpan data ke dalam suatu objek.
  • Menggunakan sebuah parameter untuk  mengirimkan data ke dalam sebuah metode.
  • Menggunakan local variable sebagai penyimpanan data kerja sementara dalam sebuah metode.

Yang Perlu Diingat

*Variabel Instance

  • Dideklarasi di luar sebuah method
  • Biasanya private
  • Bisa diakses oleh semua method dalam class

*Variabel Local

  • Dideklarasi di dalam sebuah method
  • Tidak ada modifier visibilitas
  • Hanya bisa diakses di dalam method itu saja.

Lifetime of Variable

Adalah seberapa lama variabel itu tetap ada.

  • Variabel lokal dan parameter formal(variabel yang terdapat pada suatu method) ada selama berjalannya sebuah metode
  • Setiap kali kita memanggil/menggunakan method, formal paramater dan variabel local akan tampil dengan value awalnya/fresh.
  • Variabel instance akan ada selama sebuah objek itu ada.
  • Tetap ada sampai objeknya dipanggil kembali/garbage-collected.

Jadi, langsung saja ke Scope

Scope adalah ruang lingkup, Scope dari suatu variabel menentukan bagian apa dalam program anda yang dapat mengakses variabel tersebut.

Contoh :

class Contact
{
  public int age;

  public void F()
  {
     age = 18;
  }

  public void G()
  {
     int age;
     age = 21;
  }
}

Sebagai contoh, di dalam class Contact mempunyai field yang bernama age, field tersebut dapat diakses oleh seluruh anggota dalam class Contact tersebut, pada method G, scope nya overlap/ketimpa, karena ada variabel baru yang dideklarasi dengan nama yang sama,  jadi ketika anda memanggil age dalam fungsi G, anda sebenarnya sedang memanggil variabel yang dideklarasi dalam method G tersebut.


Block Scope

  • Kita bisa melakukan looping pada scope (nest scopes).
  • Variabel yang dideklarasikan di dalam sebuah statement dengan kurawal akan memiliki block scope.

Contoh :

int sum = 0;

for(int i = 1; i <= 10; i++){

Console.WriteLine(“This is number” + sum);

}

Console.WriteLine(“The sum is ” + sum);

Note :

sum : bisa diakses sebelum, selama dan setelah loop

i : hanya bisa diakses selama masih loop


Sekian & Thanks

Tunggu update selanjutnya 🙂

C# – Syntax & Semantics

Hello, Welcome 🙂

Berhubung ada tugas PLC <Programming Language Concept>

Maka setiap minggu, akan saya update mengenai C# sesuai topik.


 

Ini kelompok kami 🙂 jangan lupa kunjungi blog mereka juga.

Kelompok 9

Martandy : martandy.blog.binusian.org

Kevin Yulias : kevinyou.blog.binusian.org

Eric Khantino Sunardi : ricz97.blog.binusian.org

Gabriellyan Catheline Sanger : gcathelines.blog.binusian.org

 

Nah, kami memilih bahasa C#

Topik pertama yaitu “Describing Syntax and Semantics


 

c#

Mengapa C# ?

  • Dapat digunakan untuk aplikasi :
  1. Web-based application
  2. Mobile application
  • Modern

Fitur Exception handling, garbage collection,dll

  • Object Oriented

Encapsultaion, Inherinace, Polymorphism

  • Modular

Ditulis dengan pembagian class dan metode-metode


 

Jadi, apa itu Syntax dan Semantics? Langsung saja

 

SYNTAX

Kumpulan aturan yang mendefinisikan suatu bentuk bahasa.

Contoh:

Sintaks kalimat dalam bahasa Indonesia: [Subjek] + [Predikat] + [dll]]

 

Saya makan [✓]

Saya nasi [X]

Saya makan nasi [✓]

 

Sintaks dalam C#:

Fungsi diawali dengan “_”

 

SEMANTICS

Menjelaskan arti dari program

 

Contoh:

Saya makan nasi [Sintaks ✓ Semantik ✓]

Saya minum nasi [Sintaks ✓ Semantik X ]

 

A=(A+B)*(C-D)

Perkalian dari hasil penjumlahan A+B dan C-D adalah A


 

Berikutnya yaitu mengenai sintaks dasar dalam C#

STRUKTUR PROGRAM & SINTAKS DASAR

  • Setiap awal program C# harus menggunakan

using System;

  • Kode prog diawali dengan mendeklarasikan nama Class atau Namespace.
  • Seluruh aplikasi dibuka dengan tanda “{” dan ditutup dengan tanda “}”.
  • Aplikasi C# dibangun oleh satu atau beberapa fungsi yang diletakkan dalam sebuah Class.
  • Nama suatu fungsi harus diawali dengan huruf atau garis bawah (“_”), yang kemudian bisa diikuti oleh huruf, angka atau garis bawah.
  • Nama diakhiri dengan tanda kurung “()”.
  • Penamaan fungsi tidak boleh mengandung spasi.
  • Suatu fungsi harus diawali dengan “{” dan diakiri dengan “}”.
  • Nama fungsi utama yang digunakan dalam bahasa C# adalah “main”.
  • Setiap fungsi memiliki sifat fungsi, seperti public dan static.
  • Dalam sebuah fungsi, berisikan sekumpulan perintah, dimana perintah satu dengan yang lainnya akan dipisah atau diakhiri dengan tanda “;”.

Nah, berikutnya pembahasan mengenai variable dan konstanta

Variabel

Suatu pengenal yang digunakan untuk menyimpan suatu nilai.

  • Nilai dalam variabel dapat berubah-ubah selama proses pada program masih berlangsung.
  • Sebelum variabel digunakan, harus dideklarasikan terlebih dahulu, dengan format penulisan :

<data type><variable name>;

Contoh :

string kata;      string namaPelanggan = “Fandi”;

int angka;        int jumlahSemuaBarang;

 

Konstanta

Suatu nilai yang tidak berubah selama proses berlangsung.

  • Hanya satu definisi.
  • Sebelum konstanta digunakan, harus dideklarasikan terlebih dahulu,

dengan format penulisan :

const <data type> <const name>;

Contoh :

const double PI = 3.142;

const string nama = “Adinda”;


Selanjutnya mengenai Identifier

Identifier (Aturan Penamaan)

– Variable

Menggunakan Camel Notation, yaitu huruf kecil (lowercase) pada huruf depan masing2 kata.

– Methods

Menggunakan Pascal Notation, yaitu huruf besar (Uppercase) pada huruf depan masing2 kata

– Class

Dapat menggunakan karakter Huruf, Angka, atau Garis bawah. Dengan ketentuan tidak boleh diawali dengan ‘Angka’ atau Spasi.


Yang terakhir yaitu Access Modifier

Ada 3, yaitu :

  1. Public

type yang menggunakan access modifier ini membuat type tersebut bisa diakses tanpa pembatasan apapun

  1. Protected

type yang menggunakan access modifier ini membuat type tersebut hanya bisa diakses dari type yang bersangkutan dan turunan dari type yang bersangkutan.

  1. Private

Private merupakan access modifier yang paling secure. semua type yang dilabeli access modifier private membuat type tersebut tidak dapat diakses dari luar type yang bersangkutan.

Method adalah sekumpulan pernyataan yang akan dijalankan ketika dipanggil.


Contoh penulisan syntax dan semantics yang benar pada C#

 

using System;

public class Program

{

public static void Main(string[] args)

{

Console.WriteLine(“Hello, world!”);

 

for (int i = 0; i <= 5; i++) {

Console.WriteLine(“I love Programming”);

}

 

Console.WriteLine(AddTwoNumbers(2,3));

}

 

public static int AddTwoNumbers(int number1, int number2) {

return number1 + number2;

}

}


 

Sekian & Thanks..

Tunggu update selanjutnya 🙂