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

Posted at : Sep/22/2016
788 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
cxdw
Input code above below (Case Sensitive) :

ABOUT ME

Rully Yulian MF
Rully Yulian Muhammad Firmansyah | Founder & IT Trainer Native Enterprise | MCT (2008-2019) | MVP (2009-2016) | Xamarin Certified Professional | MTA | MCAD | MCPD | MOS | Bandung, West Java, Indonesia.

[Read More...]

TOP DOWNLOAD

Mapping Hak Akses User Pada MenuStrip Sampai Control Button
downloaded 6982 times

Bagaimana caranya menginstal database ketika deploying sebuah aplikasi?
downloaded 4893 times

Simple Voice Engine Application With Sound Player Class...
downloaded 4045 times

Change Group,Sort Order, Filtering By Date in Crystal Reports
downloaded 3460 times

WinForms DataGrid Paging With SqlDataAdapter
downloaded 2881 times


LINKS

CERTIFICATIONS

Xamarin Certified
MOS 2007
MCT
MCPD
MCTS
MCAD.NET
ASP.NET Brainbench

NATIVE ENTERPRISE

Native Enterprise - IT Training

FOLLOW ME

Youtube  Facebook  Instagram  LinkedIn   Twitter

RSS


NATIVE ENTERPRISE NEWS

© Copyright 2006 - 2024   Rully Yulian MF   All rights reserved.