(Anlatılan uygulamalar Visual Studio 2005 && 2008 için denenmiştir..)

Template Nedir??

Template genel proje yapısını oluşturmak ve parametreleri onlarla ilişkilendirmek için en kolay yoldur. Yeni bir projeye başlanacağı ya da yeni bir item  projeye ekleneceği zaman, geliştiricilerin aynı kodları tekrar yazmak zorunda kalmamalarını sağlar, ki bu da üretimin artması sonucunu bize getirir.

Projeler yapılırken genelde proje partları, dosyaları yaratmak için, projelerin başlangıcına  yasal notlar yazmak için, oluşturma tarihlerini eklemek için, uygulama ilişkilendirmek ve daha bir sürü sebeple çok fazla vakit harcanır. Genel kullanımlı şablonlar hazırlayıp bunlar firma genelinde kullanıldığında ise önemli bir zaman tasarrufu elde edilmiş olur.

İki tür şablon vardır:

a. Project Template

Proje şablonları, yeni bir proje yaratılacağı ve solution’a ekleneceği zaman kullanılır.  Proje şablonu penceresi(aşağıdaki şekilde görüldüğü gibi),  yeni bir proje yaratılacağı zaman (File -> New -> Project  seçildiğinde)  ortaya çıkar. Pencere açıldığında, Visual Studio kurulu ve kişisel şablonları bilgisayardaki yollardan arar. Kurulu şablonlar için Kurulu şablonlar için %ProgramFiles%\ [MicrosoftVisualStudio8]\Common7\IDE\ProjectTemplates\, kişisel şablonlar için ise %UserProfile%\MyDocuments\Visual Studio 2005\Templates\ProjectTemplates\ yolu aranır. Bu kütükler altında bir sürü zip arşivi bulunur. Bu dosyalar çıkarılıp bizim projemize arşivle bağlantılı olarak eklenir.


b. Item Template

Item template’ler biri projeye yeni bir parça ekleyeceği zaman yaratılır. Dosyalar; bazı yasal notlar, isim alanları, yaratılma tarihleri eklenerek kişiselleştirilebilir. Proje şablonlarına benzer olarak; kurulu item’lar %ProgramFiles%\[MicrosoftVisualStudio8]\Common7\IDE\ItemTemplates\#1033\ kütüğü altında, kişisel item’lar ise %UserProfile%\MyDocuments\Visual Studio 2005\Templates\ItemTemplates\ kütüğü altında bulunur.

3.1.2. Visual Studio Kullanarak Template Oluşturma

Visual Studio kullanarak templatemizi hazırlamak için öncelikle bir proje açmamız gerekmektedir. Bunun için File -> New -> Project sırasıyla seçtiğimizde aşağıdaki pencere açılacaktır. Şekildeki gibi Visual C# ve Class Library seçeneğini seçip OK butonuna basıyoruz. Burada Class Library’nin seçilmesinin nedeni bu örnekte onun kullanılacak olmasıdır. Hangi tipte template oluşturacaksak onu seçebiliriz.

Açılan class’ımıza birkaç yorum satırı ekleyip ardından templatemizi export edebiliriz. Burada eklenecek ayrıntılar kullanıcının beklentilerine göre arttırılabilir.


Eğer istenirse Project -> $projectname$  Properties seçimi izlenerek projeye ek özellikler eklenebilir.

Template üzerinde istenen değişiklikler yapıldıktan sonra (yorum satırları, ekstra dosyalar(project template için) vs.) File -> Export Template seçenekleri izlendiğinde aşağıdaki pencere açılacaktır. Bu pencere ne tür bir şablon oluşturulmak istendiğinin belirlenmesi içindir. Bu örnekte project template oluşturuyoruz. Fakat item template oluşturulmak istenseydi devamında bizden hangi dosyayı template etmek istediğimizi ardından da hangi kütüphaneleri referans almak istediğimizi soracaktı. Devamında ise aynı devam edeceklerdi.

Next seçeneğiyle devam ettiğimizde aşağıdaki pencere açılacak. Aşağıdaki pencerede ilk seçenek, bize simge seçeneği sunmaktadır. İkinci seçenek, template için bir isim istemektedir. İsim olarak staj raporu için bir örnek oluştruduğum için TemplateStajRapor yazdım. Bir diğer seçenek ise bizden template için bir tanımlama yapmamızı istemektedir. Altında ise template’in oluşturulacağı konumu bizden istemektedir. ‘C:\Users\Elif\Documents\Visual Studio 2005\My Exported Templates\TemplateStajRapor.zip’ konumu template için olması gereken konumdur. Çünkü makinede kurulu olan değil sonradan oluşturulmuş bir şablon olacaktır. Finish butonunu tıkladığımızda template oluşturulmuş olacaktır ve ardından aşağıda bir sonra yer alan pencere açılacaktır.

Ardından TemplateStajRapor.zip’i tıkladığımızda aşağıdaki pencere açılır. Bu pencerede yer alan öğeler TemplateStajRapor.zip’in içeriğidir. MyTemplate.vstemplate template’i oluşturan dosyadır.

MyTemplate.vstemplate dosyasının içeriği ise aşağıdaki gibidir

vstemplate dosyasında içersinde yer alan tanımlamalar için aşağıda açıklama yapılmıştır.

Name : New Project ya da add new item kısmında çıkan template’in adını belirler.

Description : Template’yle gelen tanımlamayı içerir.

ProjectType : Item ya da Project tipi

ProjectSubType : Belli bir alt kategorinin altından gelen kategoriler. Seçime bağlıdır.

SortOrder : Template’lerin düzenlemesini içerir.

CreateNewFolder :  Kütüğün projenin desteklendiği anda oluşturulup oluşturulmadını gösterir.

DefaultName : Varsayılan olarak üretilen proje ismi

ProvideDefaultName : Proje ya da item’ın varsayılan adını ayarlar.

Icon : Template’i belirten simge dosyası.

EnableLocationBrowseButton : browse butonunun erişilebilir olup olmadığını gösterir.

Oluşturduğumuz template’i kullanarak yeni bir proje oluşturmak istediğimizde ise sonuç aşağıdaki gibi olacaktır.