What’s New in C# 6-Using Static Directive and String Interpolation

.NET Framework , Posted at : Sep/22/2016  
303 Views   0 Comments

Pada artikel kali ini kita akan membahas beberapa fitur baru di bahasa C# 6 yaitu penggunaan using static directive dan string interpolation. Artikel sebelumnya juga membahas beberapa fitur baru lainnya di C# 6 yang dapat dilihat di link berikut ini Auto Property Initializers dan Dictionaty Initializers. Tentunya masih terdapat beberapa fitur baru lainnya yang akan dibahas pada kesempatan artikel selanjutnya.

Using Static Directive

Untuk mengakses static member sebuah class atau member sebuah enumerasi di c# versi sebelumnya harus dilakukan dengan menuliskannya secara penuh dengan namespace atau nama class nya, contohnya seperti prosedur WriteLine yang terdapat didalam namespace System.Console, fungsi Sin yang terdapat di dalam System.Math, Red yang terdapat di dalam System.Console.Color. Dengan fitur baru maka hal tersebut tidak harus lagi dilakukan, sehingga penulisannya lebih singkat dan dapat lebih cepat dalam mengaksesnya.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using static System.Console;
using static System.Math;
using static System.ConsoleColor;

Perhatikan perbedaan penggunaan using diatas dimana beberapa namespace menggunakan tambahan directive static.

class UsingStaticDirective
{
    static public void TestUsingStatic()
    {
        var color1 = Yellow;
        ForegroundColor = color1;
        var sinResult = Sin(30.5);
        WriteLine(sinResult);
        ReadLine();
    }
}

Variabel color1 diisi dengan nilai dari member enumerasi System.Console.Color, dan variabel sinResult diisi dari member static class System.Math, sedangkan prosedur ReadLine dan WriteLine merupakan static member dari System.Console (tentunya kita sering menuliskannya dengan Console.WriteLine() di C# versi sebelumnya bukan?). Hasil testnya dapat dilihat pada gambar dibawah ini:

String Interpolation

Sering kali kita melakukan konkatenasi string dengan menggunakan prosedur String.Format dimana string-string literal yang akan di gabungkan dengan nilai yang diambil dari variabel ditempatkan dalam placeholder “{}”. Didalam placeholder tersebut dituliskan indeks-indeks yang nantinya nilai tersebut akan diganti dengan nilai dari variabel atau fungsi yang bersesuaian urutannya dengan indeks tersebut. Kadang kala terjadi kesalahan dalam penulisan indeksnya sehingga outputnya tidak sesuai dengan yang dimaksud. Dengan fitur baru berupa string interpolation kita tidak perlu lagi untuk menuliskan indeks yang ditempatkan didalam placeholder “{}”. Dan lebih jauh lagi dengan fitur tersebut juga dapat dituliskan sebuah ekspresi yang menghasilkan nilai sesuai dengan kondisi tertentu didalam string interpolasinya.

class OrderItem
{
    public string Item { get; set; }
    public int Qty { get; set; }
}

 

static void Main(string[] args)
{
    var order1 = new OrderItem { Item = "Item-1", Qty = 5 };
    var output = $"{order1.Item} with {order1.Qty} unit";
    WriteLine(output);
    output = $"{order1.Item} with {order1.Qty} unit{(order1.Qty > 1 ? "s" : "")}";
    WriteLine(output);
    ReadLine();
}

String interpolation dilakukan dengan menambahkan tanda “$” di awal sebuah string. Placeholder “{}” tetap digunakan, namun kali ini tidak lagi menggunakan indeks didalamnya. Dari kode diatas juga dapat dilihat bahwa ekspresi pun dapat dituliskan didalam string interpolation (perhatikan variabel output yang diubah nilainya).

Pada gambar diatas dapat kita lihat bahwa intellisense juga akan muncul pada saat pengetikan kode untuk mengakses variabel didalam string interpolasi tersebut. Hasilnya dapati dilihat pada gambar dibawah ini.

Selamat mencoba 


[Comments]

[Write your comment]
Name (required)
Email (required-will not published)
 
Comment

L902
Input code above below (Case Sensitive) :
About Me 
Rully Yulian MF
Rully Yulian Muhammad Firmansyah | Microsoft Certified Trainer | IT Trainer at Native Enterprise | IT Consultant | Software Developer | MCAD | MCPD | MOS | Bandung, West Java, Indonesia.
[Read More...]
Top Download 
Mapping Hak Akses User Pada MenuStrip Sampai Control Button : Downloaded 6083 times  
Bagaimana caranya menginstal database ketika deploying sebuah aplikasi? : Downloaded 4689 times  
Simple Voice Engine Application With Sound Player Class... : Downloaded 3554 times  
Change Group,Sort Order, Filtering By Date in Crystal Reports : Downloaded 3324 times  
WinForms DataGrid Paging With SqlDataAdapter : Downloaded 2706 times  
Links 
Certifications 
MOS 2007
MCT
MCPD
MCTS
MCAD.NET
ASP.NET Brainbench
Native Enterprise 
Follow Me 
Facebook   LinkedIn   Twitter
Syndication 
Hosted By 
Native Enterprise News 
© Copyright 2006-2016   Rully Yulian MF   All rights reserved.