22 Kasım 2009 Pazar

Microsoft Sharepoint Server 2010 Beta Çıktı


Microsoft Offıce Sharepoint 2010 Technical Preview sadece Microsoft iş ortağı şirketlere sunulmuştu. Şu anda herkese açık bir beta sürümü ilgilenenlere sunulmuş durumda. Sharepoint 2010 karşımıza iki versiyon şeklinde çıkmıştır:

  • SharePoint Server 2010 (Enterprise Client Access License features):
Sharepoint'i intranet amaçlı kullanmak isteyen, iş çözümlerini bir ortak çalışma(collaboration) platformuna taşımak isteyen kurum ve kuruluşlar için uygun versiyon. Üzerinde Sharepoint'in bütün nimetlerinden yararlanabilirsiniz, doküman yönetimi yapabilir, iş akışları çalıştırabilir, formlar tasarlayabilir, diğer uygulamarınızla entegre uygulamalar geliştirebilirsiniz. İstediğiniz özelleştirmeleri yapabilirsiniz.

  • SharePoint Server 2010 for Internet Sites, Enterprise:
Sharepoint'i extranet veya internet'e açık şekilde kullanmak isteyenlerin tercih etmesi gerekmektedir. Yayınlama sayfalarıyla Sharepoint'inizi müşterilerinize açabilirsiniz. Bunun üzerine Enterprise sürümdeki bütün özellikleri bünyesinde barındırmaktadır.

Sharepoint 2010 Beta kurulumu için gereksinimler:
  • Donanımsal:
Processor
64-bit, dual processor, 3 GHz
RAM
4 GB (Stand-alone veya test ortamı kurtulumları için)
8 GB (Tek bir server veya bir farm içerisindeki bir server için)
Hard disk
80 GB
Diğer
DVD drive

  • Yazılımsal: 
 

Ortam

Minimum gereksinim
Database server in a farm

The 64-bit edition of Microsoft SQL Server 2005 with Service Pack 3 (SP3), or the 64-bit edition of Microsoft SQL Server 2008 with Service Pack 1 (SP1)



Stand-alone server

  • The 64-bit edition of Windows Server 2008 Standard with SP2

  • Web Server (IIS) role

  • Application Server role

  • Microsoft .NET Framework version 3.5 SP1

  • SQL Server 2008 Express with SP1

  • Microsoft "Geneva" Framework

  • Microsoft Sync Framework Runtime v1.0 (x64)

  • Microsoft Filter Pack 2.0

  • Microsoft Chart Controls for the Microsoft .NET Framework 3.5

  • Windows PowerShell 2.0 CTP3

  • SQL Server 2008 Native Client

  • Microsoft SQL Server 2008 Analysis Services ADOMD.NET

  • ADO.NET Data Services v1.5 CTP2

Front-end Web servers and application servers in a farm

  • The 64-bit edition of Windows Server 2008 Standard with SP2

  • Web Server (IIS) role

  • Application Server role

  • Microsoft .NET Framework version 3.5 SP1

  • Microsoft "Geneva" Framework

  • Microsoft Sync Framework Runtime v1.0 (x64)

  • Microsoft Filter Pack 2.0

  • Microsoft Chart Controls for the Microsoft .NET Framework 3.5

  • Windows PowerShell 2.0 CTP3

  • SQL Server 2008 Native Client

  • Microsoft SQL Server 2008 Analysis Services ADOMD.NET

  • ADO.NET Data Services v1.5 CTP2

Client bilgisayar

  • Microsoft Silverlight 3.0

  • Desteklenen bir web tarayıcısı
(Tablolar http://technet.microsoft.com/en-us/library/cc262485(office.14).aspx adresinden alınmıştır.)

Sahrepoint 2010 Beta'yı download etmek için kullanabileceğiniz link:

http://technet.microsoft.com/tr-tr/evalcenter/ee388573(en-us).aspx

Sharepoint 2010 Beta'nın kurulumu, kurulumda dikkat etmeniz gerekenler veya karşılaşabileceğiniz sorunlarla ilgili yazım için blogumu takip etmeye devam ediniz.

16 Kasım 2009 Pazartesi

Kum Kutularıyla Artık Daha Güvendeyiz (Sandboxed Solutions)


Windows Sharepoint Services 3.0 ve/veya Microsoft Office Sharepoint Server 2007 üzerinde özelleştirmeleri veya geliştirmeleri, sisteme nasıl dahil ettiğimize(deployment) şöyle bir bakalım;

Yazılım ekibi geliştirme süresince geliştirmiş oluşturduğu feature'ları, web partları, event receiver'ları vs. test ortamında denedikten sonra, Sharepoint üzerine, sahip olduğu yetkiyle kurar, istediği feature'ları aktive eder, istediği web part'ı istediği sayfaya yerleştirir, event receiver'larını attachler, gerekli dosyalarını kopyalar ve uygulamasını çalışır hale getirir veya bunları bir paket halıne getirip (.wsp) Central Administration'dan deployment yapar. Daha sonraki ek taleplerle yapılan yeni geliştirmeler aynı şekilde çalışan uygulamaya tekrar kurulur. Bu bir çok geliştirme ekibinin uyguladığı klasik ve en pratik(best practice) yöntemlerdendir.

Fakat bu yöntemde göze bazı eksiklikler çarpabilir. Bunlardan ilk göze çarpanı, çalışan mevcut uygulama üzerinde yapılabilecek yeni bir geliştirmeden kaynaklanabilecek bir hata, sistemin düzgün işlemesini engelleyebilir. Bu anca sıkı kontroller ve testlerle önüne geçilecek bir durum. Sharepoint site yöneticisinin sistem üzerindeki çalışan kodun yol açabileceği hasarların veya performans kaybının boyutlarını bir bakışta anlaması pek mümkün olmamaktadır. Burada bir profesyonelin yardımına ihtiyaç duyabilir. İşin daha farklı boyutu ise şirket geliştirmeler için üçüncü parti bir şirketten hizmet satın almış olabilir veya geliştirmeyi farklı bir yazılım ekibine devretmiş(outsource) olabilir. Veya senaryo bunlardan çok daha farklı olabilir, kendi Sharepoint sunucunuz üzerinde başka kişilere hosting hizmeti veriyor olabilirsiniz. Sistem yöneticisinin bunların hepsini takip edebilmesi için yüksek bir teknik bilgiye sahip olması ve kod erişim güvenliğini (Code Access Security) çok iyi bir şekilde uyguluyor olması gerekmektedir.


Sharepoint 2010'da bu zorluklar göz ardı edilmemiş ve bizlere solution kurulumunda iki farklı seçenek sunulmuştur. Full Trusted Solutions(Farm Level Solutions) ve Sandboxed Solutions...

Full Trusted Solutions yani tam güvenilir çözümler, eski alışkanlıklarımızdan çok da farklı değil. Sisteme hakim, bütün yetkilere sahip kişilerin yaptığı geliştirmeleri içerir, sorgusuz sualsiz sistemimizde çalışır. Sistem yöneticisinin veya sahibinin güvendiği kişiler tarafından geliştirilmesine ve kurulumuna izin verilir.

Asıl yenilik Sandboxed Solutions ile gelmekte. İsminin kum kutusu olmasının sebebi, yapılan geliştirilmenin sisteme adeta bir kum kutusu içerisinde dahil edilmiş gibi davranması. Kutunun dışına çıkmasına izin verilmiyor ve yine kutunun içerisinde olduğu için yaptığı, yapabildiği her şey gözlemlenebiliyor.

Üçüncü kişiler tarafından geliştirilen uygulamalar, sisteme direk olarak dahil edilemiyor. Kurulumu site yöneticisinin veya her hangi bir yetkili kullanıcının yapması gerekiyor. Daha önceden bildiğimiz form kütüphaneleri, master page galerileri, web part galerileri gibi artık solution galerilerimiz var. Yetkili kullanıcı solution'ı, solution galeriye yükledikten sonra kullanıma hazır hale getirebilmektedir. Buraya yüklenen solution aktive edildikten sonra içerisindeki web partlar, featurelar veya içerisinde her ne varsa Sharepoint sitesi içerisinde kullanılabilir hale gelmektedir. Solution içerisindeki bu ekler, aktive edilip Sharepoint içerisine yerleştikten sonra kum kutusundan kurtulmuş sayılmamakta. Sharepoint 2010 bu ekleri(web part, feature, event receiver vs...) sürekli takip etmekte. Sistem kaynaklarını fazla kullanması durumunda veya erişmemesi geriken yerlere erişmeye çalıştığı zamanlarda (farklı bir web application'a erişemeye çalışmak, dosya sistemine erişmek, farm'a erişmek gibi istenmeyecek kodlar) Sharepoint bunları engelleyecektir. Bu uygulamaların neler yaptığı, nerelere eriştiği, sistem kaynaklarını ne kadar kullandığı gibi bilgilerin hepsi site yöneticisi tarafından görüntülenebilecek şekilde anlık raporlanacaktır. Durum böyle olunca artık bu solutionlar, bir bilgi işlem uzmanı veya bir yazılımcının kontrolünde olmak zorunda kalmayacak. Yetkili her hangi bir kullanıcı bunların yönetimini yapabilecektir.

Sandboxed Solution Nasıl Oluşturulur?


Visual Studio 2010'da yeni bir Sharepoint 2010 projesi açtığınız zaman size bunun Sandboxed mı yoksa Farm Level mı olduguğunu soracaktır. Farm level, her şeyi yapmakta özgür olduğunuz fully trusted solutionlardır. Dilediğiniz gibi kodunuzu yazabilir ve çalıştırabilirsiniz. Sandboxed seçtiyseniz eğer aralarındaki farkı zaten size ilk başta Visual Studio 2010'un IntelliSense'i gösterecektir. Bütün Sharepoint sınıflarına(class) ulaşamadığınızı göreceksiniz. Bunların en başında da Sharepoint geliştiricilerinin en sık kullandığı SPSecurity sınıfı olacaktır. IntelliSense bu sınıfı size göstermeyecektir. Hele hele SPSecurity sınıfının içerisindeki RunWithElevatedPrivileges metodunu, asla :) Kod ile değişiklik yapma yetkiniz en fazla SPSite seviyesinde olabilecektir. Daha üst seviyelerde(Web Application, Farm) sadece okuma yetkileriniz olacaktır.

IntelliSensi'in bunları göstermiyor olması tabi ki yazmanıza engel değil. Elle yazdığınız takdirde, Visual Studio, kodunuzu derlemenizde bir sorun çıkarmayacaktır. Bunun sebebi o an önünüzde açık olan projeye referans olarak "14\ISAPI\Microsoft.Sharepoint.dll"'in gösterilmiş olmasıdır. 14 Hive içerisinde yeni bir klasör olarak karşımıza çıkan UserCode klasörünün içinde başka bir Microsoft.Sharepoint dll'i göreceksiniz. (14\UserCode\Assemblies\Microsoft.Sharepoint.dll) Bu dll gerçek Sharepoint dll'inin bir altkümesidir. İçerisinde Sandboxed olarak erişebileceğiniz sınıflar bulunmaktadır. Siz referans olarak sandboxed dll'i kullanırsanız daha sağlıklı bir geliştirme yapabilirsiniz fakat deployment yaparken gerçek Sharepoint dll'ini kullanmanız gerekmektedir.

Solution hazır olduğunda, bu solution'ı Sharepoint üzerindeki Solution Gallery'ye yükleyeceğiz. Bize aktive etmek isteyip istemediğimizi soracak; o an aktivasyon işlemini yapabilir veya daha sonra aktive edebilirsiniz. Aktive olduktan sonra solution içerisindeki feature'lar aktive olacak, web partlar galeride yerini alacak, varsa site, liste şablonları, content type'lar, site kolonları yerlerini alacak ve hazır olacaktır. Yazılan kodlar Sharepoint denetiminde çalışacak. Eğer kodunuzda kullanmamanız gereken bir sınıf veya metod veya özellik kullandıysanız (IntelliSense'in kısıtladıklarıdır bunlar) çalıştığı zaman hata fırlatacaktır.

Özet:

Sharepoint 2010'la birlikte gelecek olan Sandboxed Solutions artık portalleri, güvenliğini, performansını teknik konulara tamamen hakim olmayan kişilerin dahi yönetebileceği, herkes tarafından özelleştirilebilir, geliştirilebilir bir ortam haline getirmekte.

Sandboxed Solutions hakkında Channel9'da yayınlanan vidyolara göz atmak isterseniz:

Genel bakış : 
http://channel9.msdn.com/learn/courses/SharePoint2010Developer/SandboxedSolutions/IntroducingSandboxedSolutions/

Sandboxed Solutions içerisinde kod çalıştırma : 
http://channel9.msdn.com/learn/courses/SharePoint2010Developer/SandboxedSolutions/ExecutingCodeintheSandbox/



İlerleyen günlerde adım adım bir sandboxed solution oluşturmayı, kurmayı ve yönetmeyi örneklendirerek anlatacağım. Bunun için blogumu takip etmeye devam ediniz.

10 Kasım 2009 Salı

Sharepoint 2010 Powershell Desteği

Sharepoint 2007 üzerinde geliştirme yapanların, yazdığı kodları denemenin veya bir seferlik çalıştırılacak olan kodların kolayca çalıştırılıp işini yapması için en çok tercih ettikleri yöntem Visual Studio'da bir Console Application oluşturmaktı. Sharepoint contexti dışında bu kodlar çalıştırılır, yapılmak istenen yapılır, sonra gerçek geliştirme ortamına dahil edilirdi. Bu geliştiriciye zaman kazandıran bir yöntemdi fakat artık bu kadar da uğraşmaya gerek kalmayacak.

Powershell nedir?
Powershell, Microsoft'un geliştirmiş olduğu modern bir komut uygulaması olarak düşünülebilir. Klasik "Command Promt(cmd.exe)"tan daha güçlü, daha yetenekli, üzerinde scriptler yazıp çalıştırabileceğiniz bir uygulama. Ve Sharepoint geliştirme ekibi bu nimetten biz Sharepoint geliştiricilerinin de yararlanmasını istemiş ki bize "Microsoft.Sharepoint.Powershell" kütüphanesini hazırlamış.

Bizim STSADM.EXE'miz vardır?
Bu kütüphane sayesinde, powershell üzerinde bir çok Sharepoint komutunu çalıştırabiliyoruz. Bu eminim size de yeni nesil "STSADM.EXE"yi çağrıştırdı. Powershell, STSADM'nin yerini alıyor. STSADM'de hali hazırda var olan komutlara yenilerini ekleyebildiğimizi biliyorduk (http://emirelkabes.blogspot.com/2009/10/kendi-stsadm-commandimizi-yaratmak.html) Powershell ile buradaki hantallıktan da kurtulup kendi komutlarımızı kolaylıkla oluşturabileceğiz. STSADM extensionlar, 2010'la birlikte deprecated(geçerliliği kalmamış) sayılacaktır.

Nereden ve nasıl başlayacağız?
Powershell üzerinde Sharepoint komutlarını çalıştırmaya iki şekilde başlayabilirsiniz.
  1. Powershell'i açıp Sharepoint snapin'ini ekleyerek. Snapini şu komutu çalıştırarak ekleyebilirsiniz:
    Add-PSSnapin Microsoft.Sharepoint.Powershell
  2. Başlat Menüsü > Yönetimsel Araçlar(Administrative Tools) > Sharepoint Management Console
Bu ikisinden birini yaptıktan sonra Sharepoint Cmdlet'lerini çalıştırmaya başlayabilirisiniz.

Neler yapabiliriz?
İlk etapta aklınıza gelen her şeyi. Satır satır kod yazarak sadece bir enter tuşuyla çalıştırabilirsiniz. Site Collection'lara, Site'lere, listelere, listitemlara erişebilir, okuyabilir, yazabilirsiniz, sorgulayabilirsiniz. Bir solution'ı kurabilir, bir feature'ı aktive edebilirsiniz. Bir objeyi bir değişkene atıp satırlar sonra tekrar kullanabilirsiniz. Tüm bu komutları ezberlemek veya sürekli arama motorlarında bu komutları aramamız mı gerekecek diye soran kişilere ise yüreklerine su serpecek bir cevabım var: Intellisense. Powershell intellisense desteği vermektedir.

Başka başka?
Kodunuzu sadece komut satırında çalıştırmak işinize yaramıyorsa, aynı kodu defalarca kullanmanız gerekiyorsa(ki mutlaka gerekecektir) eski alışkanlıklarımız içerisinde bulunan .bat dosyaları gibi .ps1 dosyaları hazırlayabilir ve istediğiniz zaman bunları çalıştırabilirsiniz. Eski alışkanlıklarınızdan biraz daha sıyrılıp bu işi notepad üzerinde değil intellisense desteği veren, renkli yazıları destekleyen Powershell ISE(Integrated Scripting Environment) gibi güçlü bir araç kullanabilirsiniz, üstelik debugging bile yapabilirsiniz.

Örneklemek gerekirse?
Bir kaç satır kod örneği göstermek gerekirse:

if($args)
{

   $SiteNameInput = args[0]

   $SiteUrl = "http://testportal/"
   $NewSiteUrl =  $SiteUrl + $SiteNameInput
   Write-Host "Yeni webimiz : " + $SiteNameInput + " olusturuluyor."
   $NewSite = New-SPSite -URL $NewSiteUrl -OwnerAlias Administrator -Template PUBLISHING#0 -Name $SiteNameInput
   $RootWeb = $NewSite.Rootweb
   $RootWeb.Title = "Powershell ile olusturulmus bir site : " + $SiteNameInput
   $RootWeb.Update()
   Write-Host $SiteNameInput + " başarıyla oluşturulmuştur."
}
else
{

   Write-Host "HATA : YeniWebOlustur.ps1 i calistirmak icin site adini parametre olarak girmelisiniz."
}
Kodun ne yaptığı açık bir şekilde anlaşılıyor, yeni bir SPSite oluşturuyoruz. Yukarıdaki kodu Powershell ISE'de veya Notepad'de yazıp YeniWebOlustur.ps1 olarak kaydettikten sonra PowerShell üzerinde site adını parametre olarak geçerek çalıştırdığımızda, verdiğimiz isimde yeni bir SPSite oluşacaktır. Görüldüğü üzere bir Console Application'da kod yazıyor kadar özgürüz.

Peki kendi snap-in'lerimizi oluşturmak istersek?
Bu da mümkündür.SPNewCmdletBase SPSetCmdletBase gibi sınıfları kullanarak yeni snap-inler oluşturabiliriz. Oluşturduğumuz snap-in'lerde c# kullanarak yazıp derlediğimiz kodları, PowerShell'e register ettikten sonra bu snap-in'i yüklediğimizde yazdığımız cmdlet'leri istediğimiz zaman kullanabileceğiz. Snap-in geliştirmeyle ilgili ilerleyen günlerde bir yazı yazacağım. Şimdilik ilgilenenlere bir adres tavsiye edebilirim : http://stsadm.blogspot.com/2009/10/creating-custom-sharepoint-2010-cmdlets.html

Özetle...
Artık STSADM yok, zaten gerek de yok. İstediğimiz işleri fazlasıyla PowerShell üzerinden Microsoft.Sharepoint.Powershell.dll kütüphanesiyle yapabiliyoruz. Geliştirme ekipleri kendi script kütüphanelerini veya snap-in'lerini oluşturabilir defalarca aynı scriptlerin yazmaktan kurtulabilir. Buradan sonrası sizin ihtiyaçlarınıza ve bu ihtiyaçlarınıza bulacağınız en iyi çözümlere bakmaktadır. Fakat şu bir gerçek ki hayatımız eskisinden biraz daha kolay olacaktır.

Sharepoint 2010 üzerindeki yeni gelişmeler için blogumu takip etmeye devam ediniz.

9 Kasım 2009 Pazartesi

Sharepoint 2010 Ignite Program for Developers @ Amsterdam

Microsoft bu aralar dünyanın bazı önemli şehirlerinde Sharepoint üzerinde yazılım geliştirenler yazılımcıları ve Sharepoint yönetimi konusunda çalışan IT Profesyonellerini Sharepoint 2010'a hazırlamak adına Ignite(ateşleme) programını gerçekleştirmekte. Başvuruları aylar öncesinden başlayan bu programlar tarih sıralarıyla Atalanta(USA), Dallas(USA), Amsterdam(Hollanda), Berlin(Almanya) ve Bangalore(Hindistan) şehirlerinde yapılacak şekilde organize edildi. 2-6 Kasım 2009 tarihleri arasında yapılan Amsterdam ayağının yazılım geliştiriciler için yapılan programına katılma fırsatı buldum. Oldukça verimli geçen 5 günlük bu programın sonunda Sharepoint 2010'da yazılım geliştiricileri aşağı yukarı nelerin beklediğini, ne gibi kolaylıkların geleceğini Sharepoint 2010 Beta 2 üzerinde uzmanlar eşliğinde eğitimler ve HOL(hands on lab) ile görme imkanını sağladık.


Peki Sharepoint 2010'da biz Sharepoint üzerinde geliştirme yapan yazılımcıları neler beklemekte? Aslında bu soru şu şekilde sorulursa daha doğru olacak, Visual Studio 2010'da biz Sharepoint üzerinde geliştirme yapan yazılımcıları neler beklemekte? Çünkü Sharepoint 2010 yani versiyon 14 kütüphaneleri Sharepoint 2007 kütüphaneleriyle çok büyük farklılıklar içermiyor, kullanmaya alıştığımız sınıflar bazı değişikliklerle kullanılmaya devam ediyor. Bu noktada farkı yaratan Visual Studio 2010'un içinde gelen Sharepoint için proje ve dosya şablonları(Project template & Item template), deployment kısmında getirdiği kolaylıklar ve belki de en önemlisi yazdığınız kodu rahatlıkla debug edebilmeniz.

Site templateler, list definitionlar, featurelar, web partlar, event receiverlar, workflowlar, business data catalog modelleri birer Visual Studio proje şablonu olarak karşımızda. Üstelik Visual Studio bunları oluşturduktan sonra Sharepoint portalımıza kendisi kurmakta. Bu kurulum(deployment) işlemini de tabi ki senaryomuza göre özelleştirebiliyoruz. DLL dosyamızın GAC(Global Assembly Cache)'e mi yoksa Virtual Directory'ye(inetpub altındaki sanal dizinin içerisindeki bin klasörü) mi atılacağına, dosyalar kopyalandıktan sonra hangi işlemlerin yapılacağına(örnek IISRESET) hangi sırayla yapılacağına biz karar veriyoruz. Bunlar kulağa çok hoş gelse de uzaktaki bir makinedeki Sharepoint üzerinde çalışan geliştiriciler ne yazık ki bu nimetlerin bir çoğundan yararlanamayacak(en azından 3. parti bir araç geliştirilene kadar. Bu işlemleri bir web serevis aracılığı ile uzak sunucuda yapabilecek bir çözüm geliştirilmekte). Sharepoint'in kurulu olduğu makinede geliştirilme yapıldığı zamanlar ise bunların tamamından "out of box"(tam Türkçe karşılığı nedir bilmiyorum ama paketten çıktığı gibi dersek yanlış olmaz) yararlanılabilecek.

Bu yazımda kısaca dikkat çeken bazı noktalardan bahsedeceğim daha sonraki yazılarımda bunları daha detaylı şekilde anlatacağım. Mesela;

  • Visual Studio 2010 içerisinde "Visual Web Part" isimli yeni bir template bulunmakta ki eskiden 3. parti web partlarla veya kendi yazdığımız kodlarla bir user control'ü web partımız içerisinde yükleme işi artık bir template halinde sadece yeni bir "Visual Web Part" ekleyerek içerisinde user controlü hazır, user controlü web partın içinde çağıran kodları hazır şekilde kolayca kullanabiliyoruz. 

  • 2007 versiyonunda sadece listelere bağlayabildiğimiz event receiverlar biraz daha gelişmiş durumda bu versiyonda. Artık sitelere de event receiverlar bağlayabiliyoruz. Bu yeni gelen eventlar arasında "List Created" "List Deleted" "Site Created" "Site Deleted" gibi eksikliğini fazlasıyla hissettiğimiz eventlar yer almakta.

  • Harici bir data kaynağından datayı Sharepoint içerisine dahil eden Business Data Catalog'lar artık yeni adıyla karşımızda olacak; Business Connectivity Services. Entity modellemeleri Sharepoint Designer 2010 veya Visual Studio 2010 ile kolaylıkla yapılabilmekte, datanın çekileceği kaynaklar kolaylıkla ayarlanabilip Sharepoint içerisine dahil edilebilmekte. Bu dataları bir Sharepoint listesinde görüntülemek de mümkün.

  • Sharepoint 2010 belki de en büyük devrimini UI(User Interface - Kullanıcı Arayüzü) tarafında gerçekleştirmiş durumda. Ribbon'un (Microsoft'un Office 2007 ile bizleri tanıştırdığı yeni menü) Sharepoint 2010 içerisinde yer aldığını takip eden hemen herkes zaten biliyordur. Ribbon geliştirilebilir veya özelleştirilebilir, yeni buttonlar, sekmeler eklenebilir ve son kullanıcının da tanımlayabileceği(ben yine de son kullanıcı için çok kolay bir iş olduğunu sanmıyorum) Custom Action adı verilen işleri yapabilen buttonlar eklenebilmekte. 

  • Hiç şüphesiz ki Sharepoint 2007'ye göre çok daha temiz bir HTML bizleri beklemekte. Sayfalar çok daha kolay özelleştirilebilecek, 2007'de kullanmakta zorlandığımız bir çok JavaScript kütüphanesini kolayca kullanabileceğiz. Belki buna çok gerek olmayabilir çünkü Sharepoint 2010'un hali hazırda oldukça büyük bir JavaScript kütüphanesi bulunmakta. Bu JavaScript kütüphanesi bizi bir çok kez Ajax.Net kullanmaya bile muhtaç bırakmayacak nitelikte, Server Side veri çekebilip bunları istediğiniz gibi kullanmanızı sağlamakta. C#'taki kadar iyi bir modelleme ummak hayal karıklığı olacak olsa da listeler, listitemlar JavaScript tarafında da modellenmiş durumda ve kullanılabilir durumda. Bu modellemenin bir benzeri Silverlight için de geçerli. Silverlight içerisinde kullanabileceğiniz Sharepoint kütüphaneleri bulunmakta. 

Bunlar 2010 hakkında sadece şöyle yüzeysel olarak düşününce aklıma gelen sizi ilk başta heyecanlandırabilecek ufak notlar. Yenilikleri daha detaylı şekilde yazmaya devam edeceğim. Microsoft'a Sharepoint 2010 Ignite gibi faydalı bir program için teşekkür etmemiz gerekiyor. Oldukça başarılı bir organizasyona imza attılar, kaliteli katılımcılarla hem keyifli hem de bilgi dolu 1 hafta oldu. Eğitimleri veren kişiler:

Wouter van Vugt
Mark Kashman
Vesa Juvonen
Todd Carter

Eğitimden bir kaç da kare paylaşayım:






Daha fazla bilgi için blog'umu takip etmeye devam edin.