Welche SharePoint-Entwicklungskonzepte sind für ASP.Net-Entwickler am schwierigsten zu verstehen?

8

Ich versuche, SharePoint 2007 (und schließlich 2010) Schulungsmaterialien für erfahrene ASP.Net-Entwickler zusammenzustellen, und nachdem ich SharePoint jahrelang gemacht habe, kann ich mich nicht wirklich erinnern, wo die schlimmsten Probleme am Anfang lagen - Ganz zu schweigen davon, dass die Menge an Google-SharePoint-Inhalten um eine Größenordnung größer ist als vor zwei Jahren.

Welche SharePoint-Konzepte sind am schwierigsten zu verstehen, und / oder welche Teile von SharePoint sind esoterisch genug, um für einen neuen SharePoint-Entwickler, der gerade taucht, nicht offensichtlich zu sein?

    
Greg Hurlman 15.09.2009, 01:12
quelle

7 Antworten

8

Greg,

Nach meiner Erfahrung, die sich auf die ordnungsgemäße Objektentsorgung bezieht ( SPWeb und SPSite -Objekte, die wiederum auf SPRequest -Wrapper um nicht verwaltete COM verweisen Objekte) sind ein häufiges Problem und die Quelle vieler Skalierbarkeit, Leistung und anderer Codierprobleme. Sobald Microsoft das Ausmaß des Problems und den Grad der Entwickler Verwirrung in diesem Bereich erkannte, schrieben sie einen großen Leitartikel ( Ссылка ) und entwickelte das Tool SPDisposeCheck ( Ссылка ).

Das ist mein Votum für "Nicht-offensichtlich für einen Neueinsteiger SharePoint-Entwickler, der gerade taucht": -)

Für was es wert ist!

    
Sean McDonough 15.09.2009, 01:22
quelle
8

Meine Liste der Dinge, die am schwersten zu verstehen sind, sind:

  • Code Zugriffssicherheit und alle andere Sicherheitsfunktionen
  • Unterschied zwischen Site / Anwendung Seiten und Customized / Uncustomized Seiten
  • CAML in beiden Abfragen und allen Definitionen
  • Was ist schon in SharePoint so du erfinde das Rad nicht neu
  • Die Kontrolle aufgeben.

    Sie kontrollieren nicht, welche Webparts sind auf einer Seite und wie sie verbunden sind. Du solltest es einfach möglich machen Wiederverwendung

    Sie steuern nicht, welche Liste auf einem steht Website oder welche Felder sie enthalten

  • Mangel an Unterstützung für mehrere Sprachen
  • Veröffentlichen Sie SPWeb und SPSite nicht, wenn Sie Hol sie von SPContext.Current
  • Delegiertensteuerelemente

Andere Dinge, die neu sind, aber leichter zu verstehen sind, sind:

  • Lösungen / Funktionen
  • Alle Platzhalter in masterpages
Per Jakobsen 15.09.2009 07:18
quelle
7

* Fehlende Kontrolle *

Dies ist das Schlüsselproblem, da Per Jakobsen erwähnt . Weitergehen ...

  1. Es ist nicht möglich, ASPX- und MASP-Dateien einfach dort einzugeben und zu bearbeiten, wo immer Sie möchten. Es gibt Konsequenzen, wie zum Beispiel das "Unghosting", die Unterstützung und dass es oft nicht wie erwartet funktioniert. Ein gutes Verständnis dafür, wie SharePoint Seiten erstellt, ist von entscheidender Bedeutung.

  2. Es gibt keine (unterstützte und zuverlässige) Möglichkeit, die Datenbank direkt abzufragen. Dies ist extrem frustrierend für ASP.NET-Entwickler, die es gewohnt sind, mit speziell entwickelten und gut gestalteten Datenbanken zu arbeiten. CAML-Abfragen sind kein Ersatz für die Leistungsfähigkeit gut optimierter SQL-Abfragen.

  3. (Mehr von a 2b): Schlechte Unterstützung für relationale Daten zwischen Listen. Ungerade für eine Unternehmensanwendung.

  4. Ein bisschen off topic aber HTML Markup und CSS war 2003 ein Albtraum und nicht viel besser im Jahr 2007. Es ist schmerzhaft, mit zu arbeiten und nicht schön auch nicht. Sie müssen große Anstrengungen unternehmen, um eine Website zu erstellen, die vollständig den Webstandards und Best Practices entspricht.

Um es zusammenzufassen, Dinge müssen normalerweise "auf die Art und Weise von SharePoint" gemacht werden. Dies ist oft nicht der effizienteste oder eleganteste Weg, den ein direkter ASP.NET-Entwickler bevorzugt. Entwickler mögen Eleganz und sie geben nicht auf Kontrolle auf.

Es gibt auch Fehler über das Produkt hinweg ( Sean erwähnte einen Schlüssel ) lauerte wie kleine Stolperdrähte für die ahnungslosen. Die einzige Möglichkeit, sie zu kennen und zu verstehen, ist SharePoint zu kennen - und es ist ein großes Produkt.

Weitere Diskussionen hierzu finden Sie unter Warum verwenden ASP.NET-Entwickler WSS nicht? für SharePointDevWiki .

    
Alex Angas 15.09.2009 08:36
quelle
4

Was ist schon in SharePoint, damit Sie das Rad nicht neu erfinden. Ich stimme dafür.

    
guangming 20.01.2010 14:18
quelle
3

Per hat die meisten Punkte für mich abgedeckt, aber ich werde ein paar mehr hinzufügen:

  1. SPContext - Das Konzept der konzeptuellen Codeausführung, z.B. SPContext.Current oder Properties-Objekt in einem Ereignisempfänger.

  2. Im Anschluss an den Kontext ist es auch wichtig zu verstehen, wer der Code ausführt und welche Aktionen er ausführen kann - Hochladen (Privilegien erhöhen), Imitieren (Tokens) und Ausführung (Webservices / Ereignisreceiver) .

  3. Fehlerbehandlung - Jeder schreit, wenn der einzige Fehler auftaucht, ist "ein Fehler ist aufgetreten", deshalb ist es wichtig, SP Logs und Fehlercodes zu verstehen. Dies ist wichtig, um verschwendete Zeit zu sparen, die einem ärgerlichen XML-Fehler nachjagt.

  4. Visual Studio-Tools - WSPBuilder, VS Tools für Sharepoint usw. Reduzieren Sie den Aufwand für die Bereitstellung und das Debuggen, indem Sie den Integrationszyklus verkürzen.

DJ. 16.09.2009 09:19
quelle
0

Erstellen Sie einen Bericht / ein Dashboard mit Berichtsdiensten von SQL Server für reale Probleme und zeigen Sie sie auf der Sharepoint-Site an. Anzahl der Beispiele / Tutorial online gefunden, das ist noch nicht ausreichend (ich denke).

    
ajitdh 27.01.2010 17:26
quelle
0

Alles in Bezug auf die Architektur und Implementierungen der realen Welt. Ich bin ein Entwickler, aber ich muss mir die Hände schmutzig machen, wenn ich die Client-Umgebung in meinen virtuellen Umgebungen so nah wie möglich haben möchte, ohne auf einen offiziellen IT-Support zu warten. Versuchen Sie, eine kleine Farm mit Intranet, Internet, Extranet, gemischtem Authentifizierungsmechanismus, alternativen Zugriffszuordnungen, Hostheaderkonfiguration usw. zu erstellen. Das ist ein ganz eigener Job, aber Sie müssen einsteigen, wenn Sie einige Implementierungen im mittleren bis großen Maßstab entwickeln wollen.

    
Francois Verbeeck 28.01.2011 14:44
quelle