2009-05-07 5 views
47

Mam dziś ofertę pracy na stanowisko programisty SharePoint. Jeden z moich znajomych mówi mi, że sharepoint to wielki bałagan, a nie coś, co chciałbym robić.Jak dobrze/źle programuje program SharePoint?

Jakie są twoje doświadczenia/przemyślenia dotyczące pracy z SharePoint?

+1

Cóż, czy zaakceptowałeś tę pracę? Dlaczego lub dlaczego nie? – CodeHawk

+2

Zostałem odrzucony przed rozmową, Chcieli kogoś, kto ma więcej doświadczenia z SharePoint. Znalazłem lepiej płatną pracę, więc wszystko poszło dobrze. – Superdumbell

Odpowiedz

76

Zamierzam nieco zburzyć ten trend. Widzę SharePoint jako platformę programistyczną - prostą i prostą. Wykorzystuje inne technologie, takie jak IIS, ASP.NET, SQL Server i Windows Workflow, więc nie muszę wymyślać koła. Pozwala mi to skupić się na rozwiązywaniu problemów biznesowych zamiast martwić się o instalacje i kod na poziomie systemu.

Nie zrozum mnie źle, SharePoint ma bagaż, ale jeśli chcesz rozwiązywać rzeczywiste problemy biznesowe, a nie tylko kodowanie, ma wiele do zaoferowania. Ciągle jestem zaskoczony, jak bogata jest platforma dzięki WSSv3 - który jest bezpłatny.

Jeśli chcesz dostosować się do technologii firmy Microsoft, musisz zdać sobie sprawę z tego, że SharePoint jest tutaj i pozostanie jeszcze lepszym i będzie bardziej powszechny. Obecna wersja (v3 - WSSv3/MOSS 2007) jest pozbawiona AJAX, sieci społecznościowych i innych funkcji/technologii. Wersja v4 jest tuż za rogiem i z pewnością poprawi się w tych obszarach.

W odniesieniu do niektórych z negatywów, które przeczytałem w tym wątku:

  • Pisałem części sieci, które żyją w SharePoint, które wykorzystują zestawu narzędzi AJAX i tak mają współpracowników kopalni. Jeden współpracownik jest bardzo aktywny dzięki częściom internetowym Silverlight.

  • Tak, zazwyczaj rozwijasz się w systemie Windows Server 2003/2008. To mi nie przeszkadza i nie poświęcam zbyt wiele czasu na instalację i konfigurację. Czasami używam maszyn wirtualnych do środowisk programistycznych i zgadzam się, że czasami może to być problem.

Jednak to, co mogę zrobić, to skonfigurować niektóre rzeczy zamiast rozwijać. Autoryzacja, gotowe; udostępnianie, gotowe; bezpieczeństwo na poziomie wiersza, gotowe; podstawowy interfejs użytkownika CRUD, gotowe; wdrożenie do wielu frontów, gotowe; szukaj, gotowe. Teraz mam czas, aby skoncentrować się na rozwiązywaniu problemu biznesowego.

Jeśli zamierzasz tworzyć program SharePoint, musisz zacząć od prawej strony. Gorąco polecam Inside Microsoft Windows SharePoint Server 3.0, aby dostać się do tego, co programista może/powinien zrobić w SharePoint.

Od tego czasu jestem programistą od ponad 20 lat pracując na systemach Unix i Windows w kilku różnych językach i technologiach. Skupiłem się na SharePoint v3, ponieważ jest to wersja beta i jestem zadowolony z kierunku, który wybrałem.

+0

Tutaj! Tutaj! Spot na Kirku. –

+3

Cóż, Kirk - jestem z tobą na tym. –

+17

Uzgodnione. To jak obróbka drewna - jeśli pracujesz z ziarnem, to jest bardzo dobre, działa dobrze, jest złe. W każdym razie są pewne węzły, których należy unikać. –

10

Jest to (dobre?) Sposób płacenia rachunków ....

+2

Podczas gdy ta odpowiedź jest glib, jest rzeczywiście dokładna pod pewnymi względami. Tak wiele firm rekrutacyjnych po prostu wydaje się grep wznawia poszukiwanie doświadczenia SharePoint .. –

+0

Średnie kontrakty SP, które zdobywałem, mają miejsce w 125-godzinnym stadionie piłkarskim, więc tak, to dobry sposób na opłacenie rachunków! –

+0

Czy mówisz dobrze? może być null .. :) – Manish

12

SharePoint może być frustrująca. Jest to "dojrzewający produkt" według Microsoftu, więc gdy zrobisz coś złego, dostaniesz ładne błędy, takie jak "wystąpił błąd" lub "nie można ukończyć działania". CAML to coś, co wymaga wielkiej cierpliwości. Dokumentacja nie jest zbyt dobra i można marnować sporo czasu na głupi błąd składni.

Podsumowując, jest to przyzwoita platforma, ale prawdopodobnie spowoduje, że siwizny staną się szybsze niż twoi rówieśnicy.

+1

Jeśli to coś, co nie jest skończone, dlaczego nie pójść i pracować nad czymś bardziej spełniającym, gdzie nie walczysz z obecnym niedokończonym hackerem? Oznacza to, że wspierasz innowację, zamiast pofragmentowanego "korporacyjnego" sprzętu do nauki. – Nick

+0

Produkt, który jest "wykończony", jest również nazywany "starszym" lub "przestarzały". To prawda, że ​​SharePoint nie jest "ukończony". –

8

SharePoint to produkt v2 ... v3 ma się ukazać w 2010 roku i jest najszybciej rosnącym produktem w historii MS (podobno). v2 jest niedojrzały i na pewno pozostawia wiele do życzenia tym z nas, którzy się rozwijają, ale jest wiele narzędzi, które ułatwiają rozwijanie go (stsdev, bycie jednym).

Jest to coś, co będzie coraz bardziej widoczne, jeśli pozostaniesz w świecie Windows. To potężna platforma, a jej przyszłość wygląda obiecująco.

Z perspektywy programisty jest to nieco frustrujące, ponieważ pomyśleli oni o tym, aby rozwijać się przeciwko niemu jako rodzaj refleksji, tak jak większość aplikacji opartych na systemie Windows. Użytkownik końcowy wygrywa w pierwszej kolejności, to na pewno.

Praca z programem SharePoint jest trudna i satysfakcjonująca, nawet bez aspektu rozwojowego. Wpływasz na całą organizację i pomagasz firmom działać lepiej. Aspekt rozwoju będzie od czasu do czasu frustruć, ale wszystko ma tendencję do wyrównania.

+0

Wszelkie przemyślenia na temat użyteczności projektów programu SharePoint z punktu widzenia użytkownika końcowego. Pracowałem kiedyś dla dużej firmy, w której zaczęły przenosić wiele narzędzi do programu sharepoint (zakładam ... nie jestem ekspertem) i uważam, że doświadczenie było frustrujące (z punktu widzenia użyteczności). – stefanB

+0

@stefanB przeciętny. Wykonuje to zadanie, ale nie ma to żadnego wpływu na użyteczność ani jakość doświadczenia użytkownika. –

+2

To już produkt v3; 2001, 2003, 2007. –

8

Różni się wiele w zależności od sposobu uruchomienia projektu - jeśli pracujesz w ramach projektu SharePoint, możesz osiągnąć wiele bez większego wysiłku. Jeśli masz wymagania, które są sprzeczne z tym, a klient nie chce iść na kompromis, może to być dość frustrujące.

Masz również tendencję do uzyskiwania wielu środowisk, które nie zostały prawidłowo skonfigurowane - nawet rzeczy tak podstawowe, jak kontrola źródła i powtarzalne wdrażanie są często pomijane. Ludzie infrastruktury często nie rozumieją SharePoint, więc pojawiają się problemy, takie jak brak możliwości połączenia środowiska programistycznego z siecią.

Jednak większość z tych problemów można łatwo rozwiązać, jeśli w grę wchodzi ktoś, kto wie, co robi. Po przejściu przez problemy związane z projektem i środowiskiem jest to całkiem dobra platforma do pracy.

Oficjalna dokumentacja nie jest szczególnie pomocna, ale dostępna nieoficjalna dokumentacja i narzędzia uległy znacznej poprawie od czasu rozpoczęcia pracy z platformą.

+0

Kluczem jest tutaj "ktoś, kto wie, co robi". Umiejętności, które są bardzo poszukiwane! –

5

Jeśli masz doświadczenie w tworzeniu stron internetowych, myślę, że możesz być sfrustrowany z powodu braku elastyczności, które SharePoint oferuje programistom. Ograniczanie się do myślenia w kategoriach "części internetowych" nie jest zbyt zabawne, jeśli wcześniej masz możliwość pisania trochę bliżej kodu HTML.

Ponadto odkryłem, że poświęcono dużo czasu na problemy związane z konfiguracją/wdrożeniem w stosunku do zwykłego tworzenia stron internetowych.

Dostajesz rozsądną ilość funkcjonalności "po wyjęciu z pudełka".

+0

Dlaczego miałbyś ograniczać się do myślenia w kategoriach webparts? Cokolwiek możesz zrobić z czystym asp.net 2.0, możesz zrobić w sharepoint. –

+1

@ Tudor - nie w łatwy sposób jednak –

55

Jestem zaskoczony wszystkimi pozytywnymi odpowiedziami. Pozwól, że zapytam, czy masz coś przeciwko tworzeniu znaczników w kodzie? Podobnie jak w HtmlWriter.BeginTag ("br") (lub cokolwiek innego, przepraszam, że nie znam api HtmlWriter). Jest to uważane za najlepsze praktyki w zakresie tworzenia redystrybucyjnych części internetowych.

Co z zestawem narzędzi Ajax? Ups, poza granicami. Nie działa z powodu braku typu dokumentu w nagłówku.

A twój laptop działa pod kontrolą Windows Server 2003, prawda? Ponieważ program Sharepoint nie będzie działał na niczym innym.

Rozumiem ludzi broniących swojej platformy, ale jako ktoś, kto musiał pracować w Sharepoint, ale już nigdy więcej ... pozwól mi powiedzieć, że rozwijanie programu Sharepoint jest najgorszym doświadczeniem w moim życiu. Teraz jestem bardzo ostrożny w moich dotychczasowych wyborach, więc nie jest to najgorsze z możliwych doświadczeń, ale jest tam na dole. Lub, mówiąc inaczej, wolałbym pracować w PHP niż Sharepoint.

+0

Zgadzam się, że to dość okropne, ale istnieją sposoby, aby uczynić go mniej bolesnym.STSDev upraszcza tworzenie i pakowanie funkcji, możesz zainstalować SharePoint w Vista dla dev (z obejściem), a ja koduję wszystkie moje webparty za pomocą UserControls w tych dniach, chociaż napisałem okropny kod BeginTag w przeszłości :-) Mój główny bugbear zawsze debugował. Mimo że istnieje wiele blogów na temat tego, jak sprawić, aby działało, zawsze lubi losowo przestać pracować dla mnie, zwłaszcza gdy mam termin :-) –

+25

dwa najczęściej używane zwroty z sharepoint ... "potężny, od razu w polu "i" z obejściem ": p – nailitdown

+4

SharePoint działa na Win2008, ale nie powinno to mieć znaczenia, po prostu uruchom go na maszynie wirtualnej. Robiłem rozwój w SharePoint tak długo, jak on istniał. Najważniejsze jest to, że wielu programistów w stylu ASP.NET nie lubi tego, ponieważ nie możesz po prostu wskoczyć i zrobić, co ci się podoba. Wiele osób zaczyna myśleć "to po prostu kolejne OM", a potem się rozczarowuje, gdy mają problemy z budowaniem rzeczy, które działają. Musisz głęboko zrozumieć produkt, więc pracujesz * z nim *, a nie * przeciw niemu *. Doświadczenie nie jest tak dojrzałe jak czysta ASP.NET, ale możesz szybko zbudować niesamowite rozwiązania! –

6

To jednocześnie najbardziej frustrujące i najbardziej satysfakcjonujące doświadczenie. Podczas gdy nagroda przychodzi (przynajmniej częściowo) w postaci wspaniałej pensji (w porównaniu do prostej strony internetowej), frustracje nie są niczym, co nie może zostać pokonane przez stackoverflow i google u twojego boku.

Zajmuję się tworzeniem SharePoint od 2003 r. Oraz dolinami "I FREAKING HATE SHAREPOINT!" zawsze są odstawione przez momenty "DUDE, KTÓRE SĄ NIESAMOWITE!"

Jeśli zaoferujesz pozycję na poziomie podstawowym dzięki programowi SharePoint, wziąłbym to w mgnieniu oka. Dostaniesz szkolenie w miejscu pracy od jednej z najgorętszych technologii w pobliżu.

+12

Kiedy do cholery miałeś kiedyś "ten niesamowity" moment z Sharepoint? W MOSS 2007 byłem już głęboko w łokciach i im częściej go używam, tym bardziej go nienawidzę. –

+7

Nie sądzę, abym kiedykolwiek miał "ten niesamowity" moment, kiedy rozwija się z Sharepoint. – NotMe

+0

Przypuszczam, że to zależy od tego, jak zdefiniujesz "niesamowite". Około rok temu pracowałem nad projektem, który polegał na zbudowaniu rozwiązania zgodnego z SOX dla MOSS, które wypalało wszelkie niestandardowe funkcje w miłym, schludnym, nadającym się do współudziału wsp. Ustalenie, jak zgiąć CAML do mojej woli, ale mogę przekazać doświadczenie do stołu negocjacyjnego, jak sądzę, kwalifikuje się jako "niesamowite". –

32

Mój mały sklep internetowy krótko objął SharePoint kilka lat temu; przeprowadziliśmy konsultacje, dostosowywanie, szkolenia i tak dalej. To prawda, że ​​dostajesz dużo z pudełka i rozumiem, że jest dużo poprawiony; ale ogólne wrażenia były bardzo negatywne i nigdy nie oglądaliśmy się za siebie.

  1. Użytkownicy, których wyszkoliliśmy, całkowicie znienawidzili interfejs użytkownika i bardzo frustrujące było to, że nie można naprawić rzeczy, które są z nim nie tak.
  2. Dostosowywanie prezentacji wizualnej Sharepoint nie jest przeznaczone dla osób o słabym sercu. Niepełnosprawność tego, kto napisał CSS w Microsoft jest po prostu przerażająca. Nadal mam koszmary.
  3. Z jakiegoś powodu nie zaprojektowano go tylko jako aplikacji internetowej w ogrodzie, co sprawia, że ​​tworzenie środowiska programistycznego to ogromny ból w szyi.

Ogólnie rzecz biorąc, SharePoint nie spełnia swojej obietnicy na wiele sposobów, które są po prostu mistyfikacją: rzeczy, które wydają się nieobliczalne, wymagają wszelkiego rodzaju niestandardowego rozwoju.

Wróciliśmy do rozwijania własnych rozwiązań dla klientów; oni są znacznie bardziej zadowoleni z tego układu i my też.

+2

Wiem, że to będzie dziecinne, ale przegłosowałem twoją odpowiedź tylko po to, żeby zepsuć twoją reputację z tej miłej "4000" wartości: P –

17

Nic nie wiedziałem o SharePoint 3 miesiące temu. Od tego czasu musiałem stworzyć kilka niestandardowych części internetowych dla nowej witryny wsparcia mojej firmy i muszę zgodzić się z twoim przyjacielem, to wielki bałagan.

Na początku byłem pod wrażeniem tego, ile można zrobić z platformą bez żadnego kodowania. Ale to frustrujące, że moje rzeczy działają poprawnie.Próbowałem włączyć kontrolkę użytkownika, którą wcześniej napisałem, która świetnie działała w zwykłej aplikacji internetowej, ale kluczowa część po prostu nie działałaby w SharePoint z powodów, które są nadal poza mną. Udało mi się znaleźć obejście, ale straciłem dwa tygodnie.

To również przygnębiające, gdy dowiedzieliśmy się, że środowisko programistyczne musi być maszyną, na której działa program SharePoint, który musi działać pod kontrolą systemu Windows 2003/2008. Musiałem skonfigurować wirtualną maszynę na istniejącym systemie, co nie jest wielkim problemem, ale jest jeszcze jedną przeszkodą, którą trzeba pokonać.

W sumie wydawało się zbyt niejasne dla tego, co próbujesz zrobić. Zgadzam się z tym, że dużo czasu poświęca się na instalację, konfigurację i wdrażanie w porównaniu do rzeczywistego rozwoju. Może wersja 2010 będzie lepsza. Z pewnością nie jest to produkt, z którym chciałbym pracować.

3

Z przyjemnością informuję o pozytywnym doświadczeniu z programowaniem SharePoint. Zgadzam się, że standardowe i css są niezłe, a brak tu i tam dokumentacji w API może czasami być bardzo frustrujący, ale są to drobne niepowodzenia, jeśli zamiast tego widzisz SharePointa jako framework programistyczny jako skończony produkt, który można dostosować. Czytałem kogoś w MS opisującego SharePoint jako "modelującą glinę", a gotowe szablony są jedynie "demonstracjami" tego, co można osiągnąć.

Moją prostą i łatwą budową jest niestandardowa strona wzorcowa (z odpowiednim typem Doc w nagłówku, aby usunąć okropne BackCompat i włączyć CSS1Compat, na przykład) lub mieć swoje strony aspx z kodem do tyłu lub cokolwiek innego. Najważniejsze jest to, że cokolwiek możesz zrobić na stronie w czystym asp.net 2.0, możesz zrobić to samo z SharePoint i skorzystać z jego skalowalności, technik wdrażania, API, modelu uprawnień, audytów, systemu przechowywania dokumentów, integracji InfoPath, przepływów pracy, itd.

Myślę, że ostatecznie zależy to od twojego punktu widzenia: jest SharePoint platformą programistyczną z "demo" kolekcją szablonów witryn, lub po prostu pół-skończonym produktem, który pozwala na dostosowanie go tutaj i tam?

7

Z innych odpowiedzi wynika, że ​​programistów SharePoint jest dużo frustracji.

W Givens to:

  1. Tak trzeba rozwijać na produkcie serwera Windows 2003 lub Windows 2008
  2. Wiele informacji rozwojowej pochodzi z blogów o różnej jakości
  3. Produkt stara się być wszystko dla wszystkich, ale rzeczywistość jest taka, że ​​produkt jest tak duży, że są obszary wymaganej specjalizacji

To zdecydowanie technologia, która wciąż dojrzewa dla d evelopers. Ilość informacji dostępnych w społeczności programistów i Microsoft wzrosła ogromnie w ciągu ostatnich 2 lat. Istnieje wiele wskazówek pochodzących z wzorców & praktyki team for SharePoint, które można znaleźć tutaj: http://www.codeplex.com/spg

Co do niektórych innych uwag - to najszybciej rozwijający się produkt firmy Microsoft mierzona na sprzedanych licencji, niekoniecznie na instalacje! I tak, funkcjonalność dostarczana z WSS 3.0 za darmo jest naprawdę niesamowita.

Istnieje bardzo szeroki zakres tego, co może obejmować "rozwój SharePointa". Może to być czysty rozwój treści internetowych za pośrednictwem przeglądarki internetowej i narzędzi takich jak SharePoint Designer. Lub w dół i brudne pisanie niestandardowych części sieci ASP.NET, Windows Workflow, niestandardowych usług sieciowych ASP.NET i stron hostowanych w SharePoint i wiele więcej.

Istnieje wiele gotowych usług internetowych, które są dostarczane z programem SharePoint, które umożliwiają integrację z innymi systemami, a niektóre osoby mogą nazywać programowanie w oparciu o ten rozwój API "SharePoint".

Myślę, że ogólna zasada działania SharePoint polega na tym, że wydaje się, że jest to produkt wszechstronny, który stara się być wszystkim dla każdego. Czasem nie musisz drapać powierzchni zbyt daleko, aby zdać sobie sprawę, że platforma nie rozwiąże twoich konkretnych potrzeb biznesowych bez znaczącej personalizacji. Czasami to ostatnie 10% wymaganej funkcji, która kosztuje 90% wysiłku!

31

dobre ============================= [=] === złe

  • konfiguracja/podanie/aktualizacja jest ból
  • rozwijanie/debugowanie jest ból
  • dokumentacja jest żart
+1

Całkowicie zgadzam się z debugowaniem będącym bólem. Mam debugowanie błędu aktywacji funkcji i to jest frustrujące i czasochłonne. – Eric

+0

haha ​​poważnie dokumentacja to żart ... tak jak to –

22

mam jak Kirk pracował także z SharePoint od wersji beta 2003 i wciąż to lubić. Oczywiście zawsze możesz chcieć, aby coś było lepiej przemyślane, ale myślę, że możesz powiedzieć o prawie każdym produkcie Enterprise. Dla mnie pozytywy znacznie przewyższają negatywy, jeśli chodzi o budowanie rozwiązań na platformie SharePoint.

Niech mnie za akcję dewelopera z wami moje top 5 dobrych rzeczy i top 5 złych rzeczy o SharePoint:

Top 5 dobrych rzeczy o SharePoint

  1. Jest comphrensive platforma. Znacznie szybciej jest rozwijać i wdrażać w pełni funkcjonalne, standardowe, skalowalne i wysokiej dostępności rozwiązania sieciowe, takie jak korporacyjny intranet i ekstranet.
  2. Ma ogromny rozmach. Microsoft kontynuuje ulepszanie i z każdą kolejną wersją robi się o wiele lepiej, społeczność jest świetna i rośnie, zasoby online są dobre i rosną, coraz więcej książek wychodzi, wiele świetnych darmowych dodatków i dobrych produktów firm trzecich pojawia się wszędzie czas i są też wielkie konferencje, do których można się udać.
  3. Bardzo modularna platforma umożliwiająca pakowanie własnych rzeczy w rozwiązania, funkcje, elementy Web, szablony, typy zawartości i wiele innych.
  4. Wykorzystuje standardowe technologie firmy Microsoft, takie jak .NET, ASP.NET, IIS i SQL Server. Więc nie utkniesz z jednym określonym zestawem umiejętności.
  5. Na obecnym rynku pracy znacznie lepiej radzisz sobie z technologiami .NET + SharePoint niż tylko z technologiami .NET. Jest to coś w rodzaju mówienia, że ​​masz doświadczenie w zakresie SAP lub jesteś specjalistą ds. BI.

i # 6: więcej dziewcząt zaangażowanych w projekty SharePoint (może to powinno być # 1 ;-)). Kobiety zazwyczaj radzą sobie z wieloma łagodniejszymi aspektami dużych projektów SharePoint, które często są lepsze niż ich męskie odpowiedniki. Udany projekt SharePoint to coś więcej niż kodowanie niektórych części Web i stylizacja niektórych stron internetowych. Po prostu przeczytaj znakomitą serię Why do SharePoint Projects Fail Paula Culmsee'a.

Top 5 złych rzeczy o SharePoint

  1. stroma krzywa uczenia się. Aby stać się dobrym programistą SharePoint, potrzeba co najmniej dwóch lat - nawet jeśli jesteś już dobry w C# i .NET. Będziesz potrzebował pierwszego roku, aby po prostu zrozumieć wszystkie koncepcje platformy, a następnie kolejny rok, aby się z nimi zapoznać.
  2. Nieodpowiednie narzędzia programistyczne. Visual Studio prawie nic nie wie na temat SharePoint - ale słyszę, że to się zmieni z VS 2010 :-)
  3. Nie zawsze możliwe jest korzystanie z najnowszych i najciekawszych funkcji .NET. Zawsze zajmuje SharePoint kilka lat, aby zaadaptować najnowsze i najlepsze rzeczy z zespołów platformy .NET. Pomyśl o Linq i AJAX. Jestem ciekawy, czy/kiedy SharePoint 2010 będzie obsługiwał .NET 4.0.
  4. Często potrzeba znalezienia obejść do dziwnych problemów/niespójności na platformie.
  5. Zmienianie interfejsów API. Cóż, przynajmniej był to ból przechodzący od SPS 2003 do MOSS 2007. Mam nadzieję, że przejście na SharePoint 2010 będzie bardziej płynne.
+2

Dobrze powiedziane, zwłaszcza twoje 5 najgorszych rzeczy. Mam związek miłości/nienawiści z SharePoint. To jak paląca seksowna dziewczyna. –

+1

2. MS kontynuuje pisanie, a użytkownicy testują go w wersji beta. – Nick

+0

Lubię 5 najlepszych rzeczy specjalnie na # 6 lolach ... –

25

Uważam, że największą frustracją SharePoint, nawet najnowszej wersji, jest brak dbałości o dokumentację. Jest tak wiele słabo udokumentowanych wywołań interfejsu API. Czuję, że moje ciśnienie krwi rośnie właśnie od opublikowania tej odpowiedzi.

3

Początkowo byłam deweloperem ASP.NET, tworząc systemy zarządzania treścią WWW i współpracując z systemami zarządzania dokumentami. SharePoint był naturalnym postępem w tej przestrzeni, wykorzystując umiejętności, które miałem już na szczycie platformy.

Zrobiłem prezentację na ten ostatni rok, który może być interesujący.

Więcej informacji dostępnych jest tutaj: http://sharepointdevwiki.com/x/HYBfAQ

11

mam przyzwoity doświadczenie .net dev i 3 miesięcy na SP, moje doświadczenie do tej pory:

Dobre: ​​

myślę SP jest dobry do zastosowania z prostym modelem danych, najlepiej czytanym ciężkim. Ogromną zaletą jest to, co użytkownicy/administratorzy mogą osiągnąć tylko dzięki konfiguracji. Zmiana struktury danych w locie, modyfikować wygląd itp wspaniałą platformą dla „moje książki” rodzaju rzeczy ..

Zła:

Ale istnieje wiele rzeczy, gdzie potyka i SP spada (na ciebie). Na przykład trudno jest pracować, gdy wymagana jest logika nietrywialna, zwłaszcza funkcje agregacji w stosunku do relacji klucza obcego. I oczywiście brak transakcji. Utrzymanie integralności danych może stać się problemem. Strzeż się tego, gdy rozważasz pracę nad konkretnym projektem.

Niewiele jest wsparcia podczas kompilacji, większość twoich zadań będzie zawierała problemy z przeglądaniem zasobów, wywołując je jako nazwę. Można go uważać za "elastyczny" i "prosty", ale po prostu zbyt ostry jak na błędy smakuje i spowalnia rozwój. Oczywiście nie jest to tylko SP, ale MVC/webformy wydają się łatwiejsze do popychania w kierunku silnie typowanego świata.

Jeśli podoba Ci się zarządzany świat, to radzimy sobie z faktem, że ogromna większość SP jest niezarządzanym kodem, dając wyjątki, takie jak "HResult 8000072F", obok braku śledzenia stosu, aby wskazać ci, co mogło zawieść.

Wdrożenie i powielanie błędów spowodowało wiele frustrujących dni. WSS pobiera całą maszynę dla siebie, pliki potrzebne do uruchomienia aplikacji są rozproszone wokół DB, systemu plików (i dość często GAC). Aby uzyskać podstawową separację projektów, należy pracować nad wieloma różnymi maszynami wirtualnymi.

Obsługa narzędzi jest dość słaba (nie sprawdzono VS 2010). Lepiej oczekiwać znajomości z linią poleceń i skryptami. Oczekuj, że debugowanie będzie wolne. Jednostka badanie jest dość trudne do zrobienia ..

Mój osobisty wniosek: SP ma to nisza, ale nie jest to platforma programista .Net może cieszyć. Użytkownik może mieć sporadyczne "WOW", ale programista tego nie zrobił.Może to być "stroma krzywa uczenia się", ale może tak właśnie jest.

28

Sharepoint JEST ogromnym bałaganem.

  1. Wygenerowana marża jest najgorsza, jaką kiedykolwiek widziałem.
  2. Ma równie zły kod CSS, aby przejść długą z tym znacznikiem.
  3. Boże, zmiłuj się nad duszą, która musi zmienić funkcjonalność aplikacji Sharepoint lub rozszerzyć funkcje po stronie klienta.
  4. Cała platforma leci w obliczu dobrego projektu architektonicznego.
  5. Integralność danych to ogromny problem z platformą, ponieważ nie ma transakcji.
  6. Interfejs API jest zaskakująco zainfekowany błędami i nie zajmie godziny po pracy z interfejsem API, aby uruchomić błędy, które spowodują, że wyczyścisz sieć i zaostrzy problemy z integralnością danych.
  7. Właściwe testowanie jednostek jest bardzo trudne na platformie.
  8. Platforma jest duża i jest wypełniona "wszystkim", jednak wszystko, co robi Sharepoint, robi źle. Możesz łatwo znaleźć inne frameworki lub platformy, które lepiej wykonają zadanie i będą bardziej dopasowane do wymagań twojego klienta.
  9. Krzywa uczenia się jest stroma, co byłoby w porządku, gdyby dokumentacja platformy (w szczególności API) była dobra.
  10. Zgodność ze przeglądarkami, Sharepoint to tylko IE (przypisywany jego przerażającemu znacznikowi, CSS i javascript).

Należy powiedzieć, platforma zarabia, ale bardziej jako system zarabiania pieniędzy. Umiejętności programistów w Sharepoint są rzadkie, a osoby z tymi umiejętnościami są dobrze opłacane. Klienci płacą za zęby za niestandardowe domy deweloperskie i deweloperskie Sharepoint, dlatego dokładają wszelkich starań, aby przekonać swoich klientów, że Sharepoint idealnie pasuje do wszystkiego.

Moja opinia, Sharepoint nie jest platformą programistyczną, ale platformą do zarabiania pieniędzy.

Edycja: Zapomniałem też dodać 11. Jest to świnia zasobów, jak nic, co kiedykolwiek widziałeś.

14

Mam 3 miesiące na projekt SharePoint, który wkrótce się zakończy.

Spędzam dni na przeglądaniu dzienników błędów, próbując dowiedzieć się, dlaczego różne komponenty SharePoint nie działają tak, jak MS twierdzi, że powinny. Dokumentacja uważana jest przez wielu w branży deweloperskiej za "... najgorszą , jaką kiedykolwiek widziałem". Powodzenia w znalezieniu czegoś przydatnego na stronie związanej z MS.

Wiele "funkcji społecznościowych" zależy od usługi UPS (User Profile Service), która jest notorycznie bardzo trudna i trudna do skonfigurowania; google to zobaczysz. W moim projekcie zajęło wielu programistom tygodni i doktorat w EE, aby UPS działał w ogóle. Wszystko to dla usługi internetowej! Ze względu na trwające problemy ze stabilnością wspomniana firma ostatecznie wynajęła autora SharePoint, który ogłosił "Wierzę w tę platformę!". Tak jasne. I Zastanawiam się, ile zarabia, żeby to powiedzieć. Jednak biorąc na siebie, z każdą nową aktualizacją kumulacyjną MS, staje się coraz bliższa żywotności, przynajmniej dla środowiska programistycznego . Przeszedł długą drogę od początkowego wydania, gdy całkowicie przestał działać.

Spędzasz dużo czasu konfigurując usługi Active Directory, IIS, ForeFront Identity Management Services, SQLServer i Server2008. Pamiętaj, że większość tych ustawień będzie w konflikcie z innymi, więc przygotuj się na spędzanie dużej ilości czasu na blogach SharePoint w poszukiwaniu obejść. W rzeczywistości większość blogów SharePoint poświęcona jest obejściom i hackom tylko po to, aby program SharePoint działał lub przynajmniej dostosował go do funkcjonalności podstawowej strony internetowej. Sądziłem, że cała platforma z wbudowaną funkcjonalnością ma zmniejszyć obciążenie pracą, a nie ją zwiększyć. Jeśli lubisz kłaść kod, a nie grać w administratora lub bloga, to nie jest to platforma dla ciebie.

Jak już wspomniano, wymagania rozwojowe są szalone. Serwer SharePoint (pełna wersja produktu) może/powinien być uruchamiany tylko na serwerze Windows. Dla mnie oznacza to maszynę wirtualną. Pamięć 8 GB to naprawdę minimum, z którym możesz sobie uciec. Skończyło się na zakupie Core i5, 16GB i SSD tylko po to, aby zbudować rozsądnie szybkie środowisko dev. To jest tworzenie stron WWW, a nie edycja wideo.

Jeśli Ty i/lub Twój zespół masz szczęście, że program SharePoint jest umiarkowanie stabilny w środowisku produkcyjnym, użytkownicy końcowi będą traktowani z 5-sekundowymi ładowaniami stron, wolnymi czasami odpowiedzi dla prawie każdego typu żądania i prawdopodobnie najbardziej niezrozumiały interfejs użytkownika w najnowszej historii komputerów. Jedną z głównych atrakcji SharePoint jest to, że możesz edytować strony internetowe w locie, dodając różne typy stron internetowych lub używając SharePoint Designer, aby faktycznie zmienić strukturę strony. Może to sprawić, że doświadczeni programiści napotkają wiele problemów, więc nietechniczny użytkownik, któremu wierzę, że ta funkcja jest przeznaczona, umrze. Spotkamy się z chórami błędów związanych z Correlation Id, które dają im bardzo pomocny i informacyjny GUID.

Deweloperzy i użytkownicy końcowi są obojętni, jeśli chodzi o ten bałagan. Jedyne, co SharePoint jest dobre dla mnie, sprawia, że ​​wierzę w konieczność z opensource.

PS - Proszę nie atakować mojej pisowni ani gramatyki. Nie jestem angielskim magistrem.