Roslyn CTP Scripting; Elveda Batch Dosyaları

    Microsoft “Roslyn” CTP’yi sizlere duyururken karşımıza keşfedilecek pek çok yenilik olduğundan bahsetmiştim. Makale serisi ile bu yenilikleri sizlerle paylaşırken bir önceki makalemde sizlere Roslyn CTP ile birlikte gelen scripting desteğinden bahsetmiştim; artık İki-üç satırlık basit bir kod parçacığı ile uygulamalarımıza script desteği ekleyebiliyoruz. Yaratıcı bir hayal gücünüz varsa script desteği ile oldukça güzel uygulamalar ortaya çıkartabilirsiniz.

   Madem bir C# uygulamasında script çalıştırabiliyoruz, neden basit bir konsol uygulaması yaparak parametre olarak verilen script dosyasını çalıştırmıyoruz?! Bu sayede MS-DOS batch dosyalarının kısıtlarından kurtularak isteğimiz işi otomatikleştirmemiz mümkün olacaktır. Gerçi alternatif olarak elimizde güçlü bir PowerShell olacak; fakat bir yazılımcı olarak C# scripting ile her zaman için kendimi daha konforlu hissedeceğim kesin. Üstelik renklendirme, IntelliSense  tooltip’ler ve derleyici desteğiyle birlikte kendimi daha da güçlü hissedeceğim;

Roslyn C# scripti ile birlikte renklendirme, IntelliSense, tooltip'ler ve derleyici desteği ile kendinizi daha da güçlü hissedeceksiniz

   Örnek vermek gerekirse bir klasör altındaki tüm cs dosyaları içerisinden içerisinde “Enterprisecoding.com” geçmeyen dosyaları listelemek istiyorsam aşağıdaki bir kaç satırlık C# scripti işimi görecektir;

using System;
using System.IO;
using System.Linq;

var arananDosyalar = Directory.GetFiles(Environment.CurrentDirectory, "*.cs", SearchOption.AllDirectories)
                     .Where(dosya => !File.ReadAllText(dosya).Contains("Enterprisecoding.com"));

Console.WriteLine("İçerisinde 'Enterprisecoding.com' geçmeyen dosyalar : ");
Console.WriteLine("======================================================");
Console.WriteLine(string.Join(Environment.NewLine, arananDosyalar));

   Şanslıyız ki Roslyn geliştiricileri de bizimle aynı fikirde olacak ki CTP ile birlikte bahsettiğim gibi script çalıştırabileceğimiz bir console uygulaması da gelmekte : rcsi.exe . C:\Program Files (x86)\Microsoft Codename Roslyn CTP\Binaries klasörü altında bulabileceğiniz bu uygulamayı yukarıdaki script’i çalıştırmak için şu şekilde kullanabilirsiniz;

Örnek bir C# script'inin rsci ile çalıştırılması

.

   rcsi uygulamasının parametrelerine göz atacak olursanız işinize yarayacak pek çok şey bulabilirsiniz. Örnek vermek gerekirse;

  • /define : Roslyn’in koşullu derleme gerçekleştirmesini sağlar. Bu sayede genel geçer bir script oluşturup duruma göre belirli bir kısmının çalışmasını/çalışmamasını sağlayabilirsiniz.
  • /using : scriptlerinizde kullanmak üzere genel namespace’leri belirtebilirsiniz.

Fatih Boy

Ankara'da yaşayan Fatih, bir kamu kurumunda danışman olarak çalışmaktadır. ALM süreçleri, kurumsal veri yolu sistemleri, kurumsal altyapı ve yazılım geliştirme konularında destek vermektedir. Boş zamanlarında açık kaynak kodlu projeler geliştirmeyi ve bilgisini yazdığı makalelerle paylaşmayı seven Fatih, aynı zamanda Visual C# ve Visual Studio teknolojileri konusundan Microsoft tarafından altı yıl üst üste MVP (En Değerli Profesyonel) ödülüne layık görülmüştür. İş hayatı boyunca masaüstü uygulamaları, web teknolojileri, akıllı istemciler gibi konularda Asp.Net, Php, C#, Java programlama dilleri ve MySql, MsSql ve Oracle gibi veritabanı yönetim yazılımları ile çalışmıştır. İngilizce ve Türkçe olarak yayınlanan makalelerini gerek İngilizce bloğunda, gerekse de Türkçe bloğunda bulabileceğiniz gibi web sitesinden de açık kaynak kodlu geliştirdiği yazılımlarına ulaşabilirsiniz. vCard - Twitter - Facebook - Google+

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir