-

Nuget Nedir, Nasıl Eklenir?

Nuget; ücretsiz, açık kaynak, third party programlar ya da dll leri projemize eklemek için tasarlanmış bir paket yöneticisidir. Nuget teknolojisi hayatımıza Visual Studio 2010 ile girdi, Visual Studio 2012’den sonraki versiyonlarda default olarak yüklü gelir. Microsoft’un yayınlamış olduğu nuget paketleri indirip kullanabiliyor olmamızın yanında kendi nuget paketimizi oluşturup kullanıma açabiliriz, yazının devamında, örnek bir nuget paket oluşturup nasıl yayınlanabileceğini anlatıyor olacağım.

Visual Studio’da nuget kurulu değilse Tools->Extensions and Updates’den girerek aşağıdaki gibi kurulumu yapılabilir. Yukarıda da belirttiğim gibi Visual Studio 2012’den sonrasında Nuget kurulu gelir.

blog1

blog2

Çalıştığımız projeye ihtiyacımız dahilinde nuget paketi yükleyebiliriz. Solution ya da projeye sağ tıklayıp “Manage Nuget Package” dedikten sonra açılan yönetim ekranından istediğimiz paketi aşağıdaki resimlerde olduğu gibi ekleyebiliriz, örnek olması açısından Asp.net SignalR paketini projeye ekledim.

blog3

blog4

Alternatif olarak Package Manager Console’dan komutlar yazarak nuget paketler yükleyebilirsiniz.

blog5

Eklediğimiz paketi aşağıdaki gibi kontrol edebiliriz;
blog6

References bölümünden eklediğimiz paketin dll’ini görebiliriz;
blog7

Kendi Nuget Paketimizi Ekleme

Nuget, paket yönetimi teknolojisinden genel olarak  bahsettikten sonra kendi paketimizi nasıl oluşturup yayınlarız ona bakalım;

Kendi Nuget paketimizi oluşturmak için Nuget Package Explore’a ihtiyacımız olur. Buradan indirebilirsiniz. Hızlı kurumlumdan sonra uygulamayı açıp kendi nuget paketimizi oluşturmaya başlayabiliriz. “Package Contents” alanına “add existing file” deyip varolan dll’i nuget paketimize ekleyebiliriz. Örnek olması açısından herhangi bir dll’i pakete ekliyorum.

blog8

Paket ile ilgili bilgileri aşağıdaki gibi doldurup masaüstünde bir yere .nupkg uzantısı ile kaydediyoruz;

blog9

Nuget.org’a üye olup giriş yaptıktan sonra, “Upload Package” sekmesinden masaüstüne kaydettiğimiz .nupkg dosyasını yüklüyoruz. Eğer paket adını değiştirmeden yüklerseniz aşağıdaki gibi hata alırsınız, ben aldım ordan biliyorum  :)

blog10Kaydedilen nuget paketi yüklenip “Upload” denir.

blog11

Yükeleme işlemi tamamlandıktan sonra aşağıdaki gibi paket bilgilerini görebiliriz.  Böylece kendi nuget paketimizi yayınlamış olduk.

blog12

 

Yayınlamış olduğumuz paketi projede kullanmak için  Package Manger Console’da “Install-Package DeryaNugetPackage” komutu çalıştırılır, komut başarı ile çalışırsa projemize nuget paketi yüklemiş oluruz.

blog13

Nuget paketin eklendiğini aşağıdaki gibi kontrol edebiliriz;

blog14

Eğer şirket işi uygulamalar için kullandığınız, oluşturduğunuz paketleri dışarı açmak istemezseniz kendi repository’nizi oluşturup belirlediğiniz alana ya da lokale nuget paketleri publish ederek kullanabilirsiniz…

Runtime Error-Giderilmesi

Projenizi çalıştırdığınız herhangi bir zamanda çalışan proje ile beraber böyle bir hata alırsanız ne yapmalısınız?
Sadece proje derlerken değil bilgisayar açık olduğu başka zamanlarda da “ok” dediğiniz halde karşınıza tekrar tekrar gelebilir.
İşte “Runtime Error” :)))

Hatanın nedeni daha önce kurulu olan c++lar ile diğerlerinin çakışmasıdır,eskisini silmek sizi bu hatadan kurtaracaktır.

Denetim Masası=>Programlar=>Program Ekle/Kaldır=>

Seçili olanı kaldırmanız yeterli olacaktır,tabi diğer eskileri de kaldırmanız tavsiye olunur:)
DERYA GÜNDÜZ

Microsoft Yaz Okulu Sona Ererken Bana Kalanlar…..

18 Ağustos 12 Temmuz tarihleri arasında Tobb Etü’degerçekleşen Microsoft Yaz Okulu eğitimlerimiz  sona erdi. İlerikisenelerde yaz okuluna katılmak isteyen arkadaşlar için faydalı olabileceğinidüşündüğüm bir yazı olsun istiyorum.Nasıl başvurdum,ne gibi şartlararanıyor,eğitim boyunca neler yaptık,hangi eğitimleri aldık gibi sorularıncevaplarını bulabileceğiniz bir yazı olacak.
Nasıl Başvuru Yapılır ve Aranan Şartlar?
Nisan ayında  msakademik.com sitesinde Microsoft yaz okuluiçin başvuruların alındığı duyuruldu.Başvuruyu internet üzerinden yaptım,birform doldurdum.Formda bildiğim programa dilleri,yaptığım projeler,katıldığımeğitim ve seminerler,klüp-dernek etkinliklerim,organizasyonlarım,akademikreferanslarım,not ortalamam gibi bilgiler soruldu.Bence  seçerkenbaktıkları en kritik şeyler de bu saydıklarım.
Genelde her üniversiteden 1 ya da 2 kişiseçmişlerdi.Eğitimler İstanbul,Ankara ve İzmir olmak üzere 3 yerdegerçekleşti,genelde okunan şehire en yakın merkezlere göre şehir eşleşmesiyapılıyor.Bizim gruptaEskişehir OsmanGazi Üniv.,Hacettepe Üniv.,Çankaya Üniv.,Katü  ,Ankara Üniv.,
Tobb Etü Üniv.,Anadolu Üniv.,Selçuk Üniv.,Erciyes Üniv.,Fatih Üniv.,Bilkent Üniv.‘den arkadaşlar vardı(bunlar hatırlayabiklerim).
Eğitimler boyunca her 2-3 günde bir farklı bir eğitmengelip,farklı konularda eğitimler verdi.
Eğitmenlerimiz ve Eğitimlerimiz:
·         Daron Yöndem-Silverlight
·         Mahmut Temur-Sql
·         Pavel Slavov-Windows Azure
·         Sertay Halka-C#
·         Burak Batur-SharePoint
·         Engin Polat-Xna Game Studio
·         Ekin Özçiçekçiler-Windows Phone 7.1
Eğitim son haftasında da 
  • Buğra Karabey,Ulusal Teknoloji Politikaları Yöneticisi,Bulut Bilişim konusunda ve 
  • Umut Erkal,İmagine Cup’da dünyada ilk 6 ya giren ekip üyesi,Kinect Programlama ve Embedded Programlama ile ilgili seminer verdi.
ve Proje yapmamızı istediler.Ben de Windows Phoneuygulaması olarak Birim Çevirmece yaptım.Yaptığım uygulamada Bilgisayarbirimleri ve uzunluk ölçüleri birbirine çevirilebiliyor.
Laboratuarın çok sıcak olması ve bazı aksaklıklardışında eğitim verimli geçti,eksiklerimin ne kadar çok olduğunu(zatenöğrendikçe daha çok eksik olduğunu anlarsın hep zaten) gördüm.Yani çoookçalışmam gerek çooook:)))Sektör engin bir derya misali…..
Hiç bilmediğim teknolojiler konusunda en azından aşinaoldum,değerli hocalar tanıdım ve güzel arkadaşlar edindim.ÖrneğinSilverlight,XNA,Windows Phone,Azure ve SharePoint konusunda hemen  hiçbilgim yoktu,şuan ne oldukları,neler yapılabileceği konusunda fikrimvar.Gelişmekte ve popüler olan bu teknolojileri işin ehillerinden dinlemek de ayrı bir zevkti benim için:)
Eğitimden kalan Birkaç mutlu kare:)))))