SlideShare a Scribd company logo
1 of 31
SharePoint kao razvojna platforma
    za ASP.NET developere
      Edin Kapić, pasiona consulting
Agenda
•   Uvod
•   SharePoint ispod haube
•   Primjeri
•   Početničke greške
Edin Kapić
 Key Consultant, pasiona consulting (Barcelona)


• „SharePointer“ od 2005.
• Suosnivač katalonske SharePoint User grupe
  SUG.CAT
• Predavanja
  – EuropeanSP 2011, CEUS, SharePoint Saturday
• Kontakt
  –   ekapic@pasiona.com
  –   http://www.edinkapic.com (engleski)
  –   http://spblogedin.blogspot.com (španski)
  –   @ekapic
Za šta nam služi SharePoint?
•   Saradnja i raspodjela informacija
•   Intranet
•   Web stranice timova i odjela
•   Tražilica
•   Extranet
•   Javno dostupne stranice
•   Platforma za web solucije
Verzije
• Na „zemlji“
  – Besplatno

  – Licencirano
    • Standard
    • Enterprise
• U „oblacima“
  – Office 365
A ispod haube?
• To je ASP.NET 3.5 Web Forms aplikacija
  sa još nekoliko dodataka:
  – Jezgra COM+
  – SQL Server: baza podataka i stored proc.
  – Windows servisi
  – ASMX i WCF servisi
  – JavaScript
  – .NET model objekata
SharePoint kockice
HTTP zahtjev




Framework ASP.NET
                    SharePoint “Virtual Provider”
HTTP zahtjev (2)
Parser ASPX stranica
• SharePoint dopunjuje parser ASP.NET
  stranica i “virtualizuje” pristupni put (path)
SharePoint jezik za putnike
•   Farma
•   Web aplikacija
•   Site collection / Kolekcija lokacija
•   Site / Lokacija
•   Lista / Spisak
•   Biblioteka
•   Web part / Web segment
Hijerarhija
               Separacija

                 IIS nivo



              SQL Server nivo



              SharePoint nivo
SP model objekata
                SPSite

               SPWeb




                SPList

               SPField

              SPListItem
Razvojni alati
• Visual Studio 2010
  – .NET kôd



• SharePoint Designer 2010
  – “Code-less”
Hello World u SharePointu
static void Main(string[] args)
   {
       using (SPSite siteCollection = new SPSite("http://localhost"))
       {
           SPWebCollection sites = siteCollection.AllWebs;
           foreach (SPWeb web in sites)
           {
               try
               {
                   SPListCollection lists = web.Lists;
                   Console.WriteLine("Site: {0} Lists: {1}", web.Name, lists.Count.ToString());

                   foreach (SPList list in lists)
                   {
                       Console.WriteLine("List: {0} {1}", list.Title, list.ID.ToString());
                   }
               }
               finally
               {
                   web.Dispose();
               }
           }
       }
   }
SharePoint kao platforma
– Korisnički interfejs (UI)
   •   Web parts
   •   Navigacija
   •   Master Pages
   •   Client OM (Silverlight, JavaScript)
– Poslovna logika
  •   Workflow
  •   Web servisi
  •   Event receiver
  •   Timer job
  •   Aplikacione stranice
– Pristup podacima
  • Liste i biblioteke
  • Vanjske liste (Business Connectivity Services)
  • Direkto putem .NET-a
Početničke greške
• Razmišljati kao ASP.NET developer
  – SharePoint ima svoja pravila
• AnyCPU !!!
• Zaboraviti na Dispose()
• Permisije
  – Svi nisu administratori
• Skalabilnost i performanse
  – Prevelik broj rezultata
Liste != SQL table
•   Nema foreign key relacija (osim ID)
•   Liste nisu beskonačne
•   Ograničeni JOIN između lista
•   Liste se nalaze u kontekstu SharePoint
    site-a
Biblioteke != Windows folderi
• Ne nalaze se na disku nego u SQL Server
  bazi podataka
• Veličina je ograničena
  – 50 MB po defaultu
• Glavna razlika: Metapodaci
  – Možemo pridružiti informacije o kontekstu
  – Intuitivna pretraga i filtriranje
Rekapitulacija
• SharePoint je ASP.NET platforma
  – Sve vaše prethodno znanje je korisno
  – Iskoristite postojeći kôd

• SharePoint nije ASP.NET
  – Pazite na početničke greške
  – Specifični detalji i ograničenja kojih nema u
    ASP.NET-u

     SharePoint.Welcome(developers);
Za više informacija...
• SharePoint 2010 Developer Platform
  – http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=7563

• SharePoint 2010 Walkthrough Guide
  – http://www.microsoft.com/download/en/details.aspx?id=13773

• SharePoint 2010 Architecture Overview
  – http://msdn.microsoft.com/en-us/library/gg552610.aspx

• Developer Resource Center
  – http://msdn.microsoft.com/en-us/sharepoint/bb964529.aspx
SharePoint kao razvojna platforma za ASP.NET developere
SharePoint kao razvojna platforma za ASP.NET developere

More Related Content

Similar to SharePoint kao razvojna platforma za ASP.NET developere

ATD 2016 - ASP.NET Core Advanced
ATD 2016 - ASP.NET Core AdvancedATD 2016 - ASP.NET Core Advanced
ATD 2016 - ASP.NET Core AdvancedNETMedia
 
Vert.x - Mihovil Rister, Javantura
Vert.x - Mihovil Rister, JavanturaVert.x - Mihovil Rister, Javantura
Vert.x - Mihovil Rister, JavanturaFive
 
REST API - iskustva iz prakse
REST API - iskustva iz prakseREST API - iskustva iz prakse
REST API - iskustva iz prakseDenis Kranjčec
 
Vert.x - asinkroni skalabilni i poliglotni framework nove generacije
Vert.x - asinkroni skalabilni i poliglotni framework nove generacijeVert.x - asinkroni skalabilni i poliglotni framework nove generacije
Vert.x - asinkroni skalabilni i poliglotni framework nove generacijeMihovil Rister
 
GraphQL & Laravel - Efikasni API servisi
GraphQL & Laravel - Efikasni API servisiGraphQL & Laravel - Efikasni API servisi
GraphQL & Laravel - Efikasni API servisiPedja Jevtic
 
ZGFlex Drupal
ZGFlex DrupalZGFlex Drupal
ZGFlex Drupalzgflex
 
Što je novo u Officeu 2016 za korisnike
Što je novo u Officeu 2016 za korisnikeŠto je novo u Officeu 2016 za korisnike
Što je novo u Officeu 2016 za korisnikeTomislav Lulic
 
Upoznajte PowerPivot!
Upoznajte PowerPivot!Upoznajte PowerPivot!
Upoznajte PowerPivot!sharecroatia
 
MSNetwork 4 - Enterprise funkcionalnosti u malim tvrtkama sa Office 365
MSNetwork 4 - Enterprise funkcionalnosti u malim tvrtkama sa Office 365MSNetwork 4 - Enterprise funkcionalnosti u malim tvrtkama sa Office 365
MSNetwork 4 - Enterprise funkcionalnosti u malim tvrtkama sa Office 365Tomislav Lulic
 
Microsoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTX
Microsoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTXMicrosoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTX
Microsoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTXIvan Kaselj
 
Microsoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTX
Microsoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTXMicrosoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTX
Microsoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTXAndrej Ko?i?
 
WinDays 2009 - SharePoint za krajnje korisnike - Prečacima do uspjeha
WinDays 2009 - SharePoint za krajnje korisnike - Prečacima do uspjehaWinDays 2009 - SharePoint za krajnje korisnike - Prečacima do uspjeha
WinDays 2009 - SharePoint za krajnje korisnike - Prečacima do uspjehaToni Frankola
 
Big Brother Hrvatska 2007 - Case Study - BizBuzz
Big Brother Hrvatska 2007 - Case Study - BizBuzzBig Brother Hrvatska 2007 - Case Study - BizBuzz
Big Brother Hrvatska 2007 - Case Study - BizBuzzwebburza
 
Osb studija slucaja sgsb-a.ppt [compatibility m
Osb studija slucaja sgsb-a.ppt [compatibility mOsb studija slucaja sgsb-a.ppt [compatibility m
Osb studija slucaja sgsb-a.ppt [compatibility mOracle Hrvatska
 
Iskoristite Office 365 za vaš web sajt (MSCommunity Conference 2014)
Iskoristite Office 365 za vaš web sajt(MSCommunity Conference 2014)Iskoristite Office 365 za vaš web sajt(MSCommunity Conference 2014)
Iskoristite Office 365 za vaš web sajt (MSCommunity Conference 2014)Dragan Panjkov
 

Similar to SharePoint kao razvojna platforma za ASP.NET developere (20)

ATD 2016 - ASP.NET Core Advanced
ATD 2016 - ASP.NET Core AdvancedATD 2016 - ASP.NET Core Advanced
ATD 2016 - ASP.NET Core Advanced
 
Vert.x - Mihovil Rister, Javantura
Vert.x - Mihovil Rister, JavanturaVert.x - Mihovil Rister, Javantura
Vert.x - Mihovil Rister, Javantura
 
REST API - iskustva iz prakse
REST API - iskustva iz prakseREST API - iskustva iz prakse
REST API - iskustva iz prakse
 
Vert.x - asinkroni skalabilni i poliglotni framework nove generacije
Vert.x - asinkroni skalabilni i poliglotni framework nove generacijeVert.x - asinkroni skalabilni i poliglotni framework nove generacije
Vert.x - asinkroni skalabilni i poliglotni framework nove generacije
 
Javantura Zagreb 2014 - Vert.x 1.3 - Mihovil Rister
Javantura Zagreb 2014 - Vert.x 1.3 - Mihovil RisterJavantura Zagreb 2014 - Vert.x 1.3 - Mihovil Rister
Javantura Zagreb 2014 - Vert.x 1.3 - Mihovil Rister
 
Dizajn REST Web API-ja
Dizajn REST Web API-jaDizajn REST Web API-ja
Dizajn REST Web API-ja
 
GraphQL & Laravel - Efikasni API servisi
GraphQL & Laravel - Efikasni API servisiGraphQL & Laravel - Efikasni API servisi
GraphQL & Laravel - Efikasni API servisi
 
SQL Azure
SQL AzureSQL Azure
SQL Azure
 
JavaCro'15 - RESTful Web APIs Design - Denis Kranjčec
JavaCro'15 - RESTful Web APIs Design - Denis KranjčecJavaCro'15 - RESTful Web APIs Design - Denis Kranjčec
JavaCro'15 - RESTful Web APIs Design - Denis Kranjčec
 
ZGFlex Drupal
ZGFlex DrupalZGFlex Drupal
ZGFlex Drupal
 
Što je novo u Officeu 2016 za korisnike
Što je novo u Officeu 2016 za korisnikeŠto je novo u Officeu 2016 za korisnike
Što je novo u Officeu 2016 za korisnike
 
Upoznajte PowerPivot!
Upoznajte PowerPivot!Upoznajte PowerPivot!
Upoznajte PowerPivot!
 
MSNetwork 4 - Enterprise funkcionalnosti u malim tvrtkama sa Office 365
MSNetwork 4 - Enterprise funkcionalnosti u malim tvrtkama sa Office 365MSNetwork 4 - Enterprise funkcionalnosti u malim tvrtkama sa Office 365
MSNetwork 4 - Enterprise funkcionalnosti u malim tvrtkama sa Office 365
 
Microsoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTX
Microsoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTXMicrosoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTX
Microsoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTX
 
Microsoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTX
Microsoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTXMicrosoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTX
Microsoft WinDays16 Technology Dynamics AX 7 Cloud ERP.PPTX
 
WinDays 2009 - SharePoint za krajnje korisnike - Prečacima do uspjeha
WinDays 2009 - SharePoint za krajnje korisnike - Prečacima do uspjehaWinDays 2009 - SharePoint za krajnje korisnike - Prečacima do uspjeha
WinDays 2009 - SharePoint za krajnje korisnike - Prečacima do uspjeha
 
Big Brother Hrvatska 2007 - Case Study - BizBuzz
Big Brother Hrvatska 2007 - Case Study - BizBuzzBig Brother Hrvatska 2007 - Case Study - BizBuzz
Big Brother Hrvatska 2007 - Case Study - BizBuzz
 
Osb studija slucaja sgsb-a.ppt [compatibility m
Osb studija slucaja sgsb-a.ppt [compatibility mOsb studija slucaja sgsb-a.ppt [compatibility m
Osb studija slucaja sgsb-a.ppt [compatibility m
 
Iskoristite Office 365 za vaš web sajt (MSCommunity Conference 2014)
Iskoristite Office 365 za vaš web sajt(MSCommunity Conference 2014)Iskoristite Office 365 za vaš web sajt(MSCommunity Conference 2014)
Iskoristite Office 365 za vaš web sajt (MSCommunity Conference 2014)
 
Javantura Zagreb 2014 - Alfresco-Neo4j integracija - Damir Murat
Javantura Zagreb 2014 - Alfresco-Neo4j integracija - Damir MuratJavantura Zagreb 2014 - Alfresco-Neo4j integracija - Damir Murat
Javantura Zagreb 2014 - Alfresco-Neo4j integracija - Damir Murat
 

More from Edin Kapic

ESPC15 - Extending Authentication and Authorization
ESPC15 - Extending Authentication and AuthorizationESPC15 - Extending Authentication and Authorization
ESPC15 - Extending Authentication and AuthorizationEdin Kapic
 
SPS London 2015 - IoT and Room Reservation Cloud-Style
SPS London 2015 - IoT and Room Reservation Cloud-StyleSPS London 2015 - IoT and Room Reservation Cloud-Style
SPS London 2015 - IoT and Room Reservation Cloud-StyleEdin Kapic
 
SPS Belgium 2015 - High-trust Apps for On-Premises Development
SPS Belgium 2015 -  High-trust Apps for On-Premises DevelopmentSPS Belgium 2015 -  High-trust Apps for On-Premises Development
SPS Belgium 2015 - High-trust Apps for On-Premises DevelopmentEdin Kapic
 
Personal Branding for Developers
Personal Branding for DevelopersPersonal Branding for Developers
Personal Branding for DevelopersEdin Kapic
 
SharePoint Saturday Stockholm 2015 - Building Maintainable and Testable Share...
SharePoint Saturday Stockholm 2015 - Building Maintainable and Testable Share...SharePoint Saturday Stockholm 2015 - Building Maintainable and Testable Share...
SharePoint Saturday Stockholm 2015 - Building Maintainable and Testable Share...Edin Kapic
 
ESPC14 Social Business Value Demystified
ESPC14 Social Business Value DemystifiedESPC14 Social Business Value Demystified
ESPC14 Social Business Value DemystifiedEdin Kapic
 
Maintainable Testable SharePoint Components SPSBE 2014
Maintainable Testable SharePoint Components SPSBE 2014Maintainable Testable SharePoint Components SPSBE 2014
Maintainable Testable SharePoint Components SPSBE 2014Edin Kapic
 
MVP Open Day 2014 - Hacking Human Behaviour
MVP Open Day 2014 - Hacking Human BehaviourMVP Open Day 2014 - Hacking Human Behaviour
MVP Open Day 2014 - Hacking Human BehaviourEdin Kapic
 
SPS Stockholm 7 Key Things for Building a Highly-Scalable SharePoint 2013 App
SPS Stockholm 7 Key Things for Building a Highly-Scalable SharePoint 2013 AppSPS Stockholm 7 Key Things for Building a Highly-Scalable SharePoint 2013 App
SPS Stockholm 7 Key Things for Building a Highly-Scalable SharePoint 2013 AppEdin Kapic
 
7 Key Things for Building a Highly-Scalable SharePoint 2013 App
7 Key Things for Building a Highly-Scalable SharePoint 2013 App7 Key Things for Building a Highly-Scalable SharePoint 2013 App
7 Key Things for Building a Highly-Scalable SharePoint 2013 AppEdin Kapic
 
Social Business Value Demystified: Real-World Experiences
Social Business Value Demystified: Real-World ExperiencesSocial Business Value Demystified: Real-World Experiences
Social Business Value Demystified: Real-World ExperiencesEdin Kapic
 
BcnDevCon13 - No Designer? No Problem!
BcnDevCon13 - No Designer? No Problem!BcnDevCon13 - No Designer? No Problem!
BcnDevCon13 - No Designer? No Problem!Edin Kapic
 
BcnDevCon12 - Una vuelta por Orchard CMS
BcnDevCon12 - Una vuelta por Orchard CMSBcnDevCon12 - Una vuelta por Orchard CMS
BcnDevCon12 - Una vuelta por Orchard CMSEdin Kapic
 
BcnDevCon12 - CQRS explicado a mi compañero arquitecto
BcnDevCon12 - CQRS explicado a mi compañero arquitectoBcnDevCon12 - CQRS explicado a mi compañero arquitecto
BcnDevCon12 - CQRS explicado a mi compañero arquitectoEdin Kapic
 
Modelos de madurez de SharePoint
Modelos de madurez de SharePointModelos de madurez de SharePoint
Modelos de madurez de SharePointEdin Kapic
 
SharePoint 2013 Novedades y más allá (Introducción de SUG.CAT)
SharePoint 2013 Novedades y más allá (Introducción de SUG.CAT)SharePoint 2013 Novedades y más allá (Introducción de SUG.CAT)
SharePoint 2013 Novedades y más allá (Introducción de SUG.CAT)Edin Kapic
 
SUG.CAT First Monday Noviembre 2012
SUG.CAT First Monday Noviembre 2012SUG.CAT First Monday Noviembre 2012
SUG.CAT First Monday Noviembre 2012Edin Kapic
 
JavaScript per a desenvolupadors de C#
JavaScript per a desenvolupadors de C#JavaScript per a desenvolupadors de C#
JavaScript per a desenvolupadors de C#Edin Kapic
 
CatDotNet - Farmville para SharePoint
CatDotNet - Farmville para SharePointCatDotNet - Farmville para SharePoint
CatDotNet - Farmville para SharePointEdin Kapic
 
Universidad de La Habana - SharePoint, Listas y XSLT
Universidad de La Habana  - SharePoint, Listas y XSLTUniversidad de La Habana  - SharePoint, Listas y XSLT
Universidad de La Habana - SharePoint, Listas y XSLTEdin Kapic
 

More from Edin Kapic (20)

ESPC15 - Extending Authentication and Authorization
ESPC15 - Extending Authentication and AuthorizationESPC15 - Extending Authentication and Authorization
ESPC15 - Extending Authentication and Authorization
 
SPS London 2015 - IoT and Room Reservation Cloud-Style
SPS London 2015 - IoT and Room Reservation Cloud-StyleSPS London 2015 - IoT and Room Reservation Cloud-Style
SPS London 2015 - IoT and Room Reservation Cloud-Style
 
SPS Belgium 2015 - High-trust Apps for On-Premises Development
SPS Belgium 2015 -  High-trust Apps for On-Premises DevelopmentSPS Belgium 2015 -  High-trust Apps for On-Premises Development
SPS Belgium 2015 - High-trust Apps for On-Premises Development
 
Personal Branding for Developers
Personal Branding for DevelopersPersonal Branding for Developers
Personal Branding for Developers
 
SharePoint Saturday Stockholm 2015 - Building Maintainable and Testable Share...
SharePoint Saturday Stockholm 2015 - Building Maintainable and Testable Share...SharePoint Saturday Stockholm 2015 - Building Maintainable and Testable Share...
SharePoint Saturday Stockholm 2015 - Building Maintainable and Testable Share...
 
ESPC14 Social Business Value Demystified
ESPC14 Social Business Value DemystifiedESPC14 Social Business Value Demystified
ESPC14 Social Business Value Demystified
 
Maintainable Testable SharePoint Components SPSBE 2014
Maintainable Testable SharePoint Components SPSBE 2014Maintainable Testable SharePoint Components SPSBE 2014
Maintainable Testable SharePoint Components SPSBE 2014
 
MVP Open Day 2014 - Hacking Human Behaviour
MVP Open Day 2014 - Hacking Human BehaviourMVP Open Day 2014 - Hacking Human Behaviour
MVP Open Day 2014 - Hacking Human Behaviour
 
SPS Stockholm 7 Key Things for Building a Highly-Scalable SharePoint 2013 App
SPS Stockholm 7 Key Things for Building a Highly-Scalable SharePoint 2013 AppSPS Stockholm 7 Key Things for Building a Highly-Scalable SharePoint 2013 App
SPS Stockholm 7 Key Things for Building a Highly-Scalable SharePoint 2013 App
 
7 Key Things for Building a Highly-Scalable SharePoint 2013 App
7 Key Things for Building a Highly-Scalable SharePoint 2013 App7 Key Things for Building a Highly-Scalable SharePoint 2013 App
7 Key Things for Building a Highly-Scalable SharePoint 2013 App
 
Social Business Value Demystified: Real-World Experiences
Social Business Value Demystified: Real-World ExperiencesSocial Business Value Demystified: Real-World Experiences
Social Business Value Demystified: Real-World Experiences
 
BcnDevCon13 - No Designer? No Problem!
BcnDevCon13 - No Designer? No Problem!BcnDevCon13 - No Designer? No Problem!
BcnDevCon13 - No Designer? No Problem!
 
BcnDevCon12 - Una vuelta por Orchard CMS
BcnDevCon12 - Una vuelta por Orchard CMSBcnDevCon12 - Una vuelta por Orchard CMS
BcnDevCon12 - Una vuelta por Orchard CMS
 
BcnDevCon12 - CQRS explicado a mi compañero arquitecto
BcnDevCon12 - CQRS explicado a mi compañero arquitectoBcnDevCon12 - CQRS explicado a mi compañero arquitecto
BcnDevCon12 - CQRS explicado a mi compañero arquitecto
 
Modelos de madurez de SharePoint
Modelos de madurez de SharePointModelos de madurez de SharePoint
Modelos de madurez de SharePoint
 
SharePoint 2013 Novedades y más allá (Introducción de SUG.CAT)
SharePoint 2013 Novedades y más allá (Introducción de SUG.CAT)SharePoint 2013 Novedades y más allá (Introducción de SUG.CAT)
SharePoint 2013 Novedades y más allá (Introducción de SUG.CAT)
 
SUG.CAT First Monday Noviembre 2012
SUG.CAT First Monday Noviembre 2012SUG.CAT First Monday Noviembre 2012
SUG.CAT First Monday Noviembre 2012
 
JavaScript per a desenvolupadors de C#
JavaScript per a desenvolupadors de C#JavaScript per a desenvolupadors de C#
JavaScript per a desenvolupadors de C#
 
CatDotNet - Farmville para SharePoint
CatDotNet - Farmville para SharePointCatDotNet - Farmville para SharePoint
CatDotNet - Farmville para SharePoint
 
Universidad de La Habana - SharePoint, Listas y XSLT
Universidad de La Habana  - SharePoint, Listas y XSLTUniversidad de La Habana  - SharePoint, Listas y XSLT
Universidad de La Habana - SharePoint, Listas y XSLT
 

SharePoint kao razvojna platforma za ASP.NET developere

  • 1.
  • 2.
  • 3. SharePoint kao razvojna platforma za ASP.NET developere Edin Kapić, pasiona consulting
  • 4.
  • 5. Agenda • Uvod • SharePoint ispod haube • Primjeri • Početničke greške
  • 6. Edin Kapić Key Consultant, pasiona consulting (Barcelona) • „SharePointer“ od 2005. • Suosnivač katalonske SharePoint User grupe SUG.CAT • Predavanja – EuropeanSP 2011, CEUS, SharePoint Saturday • Kontakt – ekapic@pasiona.com – http://www.edinkapic.com (engleski) – http://spblogedin.blogspot.com (španski) – @ekapic
  • 7. Za šta nam služi SharePoint? • Saradnja i raspodjela informacija • Intranet • Web stranice timova i odjela • Tražilica • Extranet • Javno dostupne stranice • Platforma za web solucije
  • 8. Verzije • Na „zemlji“ – Besplatno – Licencirano • Standard • Enterprise • U „oblacima“ – Office 365
  • 9. A ispod haube? • To je ASP.NET 3.5 Web Forms aplikacija sa još nekoliko dodataka: – Jezgra COM+ – SQL Server: baza podataka i stored proc. – Windows servisi – ASMX i WCF servisi – JavaScript – .NET model objekata
  • 10.
  • 12. HTTP zahtjev Framework ASP.NET SharePoint “Virtual Provider”
  • 14. Parser ASPX stranica • SharePoint dopunjuje parser ASP.NET stranica i “virtualizuje” pristupni put (path)
  • 15. SharePoint jezik za putnike • Farma • Web aplikacija • Site collection / Kolekcija lokacija • Site / Lokacija • Lista / Spisak • Biblioteka • Web part / Web segment
  • 16. Hijerarhija Separacija IIS nivo SQL Server nivo SharePoint nivo
  • 17. SP model objekata SPSite SPWeb SPList SPField SPListItem
  • 18. Razvojni alati • Visual Studio 2010 – .NET kôd • SharePoint Designer 2010 – “Code-less”
  • 19. Hello World u SharePointu static void Main(string[] args) { using (SPSite siteCollection = new SPSite("http://localhost")) { SPWebCollection sites = siteCollection.AllWebs; foreach (SPWeb web in sites) { try { SPListCollection lists = web.Lists; Console.WriteLine("Site: {0} Lists: {1}", web.Name, lists.Count.ToString()); foreach (SPList list in lists) { Console.WriteLine("List: {0} {1}", list.Title, list.ID.ToString()); } } finally { web.Dispose(); } } } }
  • 20.
  • 22. – Korisnički interfejs (UI) • Web parts • Navigacija • Master Pages • Client OM (Silverlight, JavaScript)
  • 23. – Poslovna logika • Workflow • Web servisi • Event receiver • Timer job • Aplikacione stranice
  • 24. – Pristup podacima • Liste i biblioteke • Vanjske liste (Business Connectivity Services) • Direkto putem .NET-a
  • 25. Početničke greške • Razmišljati kao ASP.NET developer – SharePoint ima svoja pravila • AnyCPU !!! • Zaboraviti na Dispose() • Permisije – Svi nisu administratori • Skalabilnost i performanse – Prevelik broj rezultata
  • 26. Liste != SQL table • Nema foreign key relacija (osim ID) • Liste nisu beskonačne • Ograničeni JOIN između lista • Liste se nalaze u kontekstu SharePoint site-a
  • 27. Biblioteke != Windows folderi • Ne nalaze se na disku nego u SQL Server bazi podataka • Veličina je ograničena – 50 MB po defaultu • Glavna razlika: Metapodaci – Možemo pridružiti informacije o kontekstu – Intuitivna pretraga i filtriranje
  • 28. Rekapitulacija • SharePoint je ASP.NET platforma – Sve vaše prethodno znanje je korisno – Iskoristite postojeći kôd • SharePoint nije ASP.NET – Pazite na početničke greške – Specifični detalji i ograničenja kojih nema u ASP.NET-u SharePoint.Welcome(developers);
  • 29. Za više informacija... • SharePoint 2010 Developer Platform – http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=7563 • SharePoint 2010 Walkthrough Guide – http://www.microsoft.com/download/en/details.aspx?id=13773 • SharePoint 2010 Architecture Overview – http://msdn.microsoft.com/en-us/library/gg552610.aspx • Developer Resource Center – http://msdn.microsoft.com/en-us/sharepoint/bb964529.aspx