مایکروسافت از شروع کار شیرپوینت همیشه در ارتقاء روشهای برنامهنویسی شیرپوینت وقت و هزینه زیادی صرف کرده است و این نیز همیشه یکی نقاط قوت شیرپوینت بوده است. همچنین مایکروسافت در این مسیر توجه بسیار زیادی به تکنولوژیها و ترندهای روز دنیا داشته است.
در این مقاله قصد داریم روشهای برنامهنویسی شیرپوینت را در گذر زمان در ورژنهای مختلف شیرپوینت بررسی کنیم پس با ما همراه باشید.
در ابتدای راه شیرپوینت، برای توسعه با استفاده از Visual Studio امکان توسعه وب پارتها و Event Handler ها وجود داشت. این ابزار و روش برنامهنویسی به صورت کاملا ابتدایی بود و ابزار و امکانات محدودی در اختیار برنامه نویسان قرار میداد، که بارگذاری خروجی کدها روی سرور نیز باید به صورت دستی انجام میشد.
در ورژن 2007 مشکلات بارگذاری کدها روی سرور و همچنین آپدیت آنها حل شد ( با استفاده از سولوشن WSP و فیچرها ). همراه با حل این مشکلات امکانات فوق العادهای نیز به محیط توسعه (Visual Studio) اضافه شد امکاناتی مانند امکان ساخت یک فیچر خاص برای شیرپوینت ( برای مثال فیچر شمارهگذاری اسناد)، ساخت Custom Action ها ( برای مثال اکشن دانلود چندین فایل همزمان در لایبری)، نوع محتوای جدید و سایر امکاناتی که در این ورژن اضافه شدند.
با معرفی فارم سولوشنها با توجه به اینکه این سولوشنها در سطح فارم نصب میشد و بالافاصله روی تمامی سایتها اعمال میشد مشکلات فراوانی نیز به وجود آمد برای مثال فرض کنید برنامهای با نصب شدنش باعث خطا دادن سرچ شیرپوینت بشود. از این رو مایکروسافت با ارائه Sandbox Solution قصد داشت تا با امکان اعمال کدها روی یک سایت این مشکل را برطرف نماید که اکنون میدانیم این اتفاق رخ نداده است و این راه حل نتوانست مشکلات به وجود آمده را حل نماید.
همچنین با آمدن شیرپوینت 2010 همانطور که خود شیرپوینت قدرتمندتر شد ابزار برنامهنویسی نیز توسعه یافت و امکانات بیشتری برای برنامهنویسان شیرپوینت فراهم نمود.
مایکروسافت با معرفی شیرپوینت 2013 تغییرات بسیار زیادی در زمینه شیرپوینت اعمال کرد. تغییراتی که از UI شیرپوینت شروع شد و به مسیر آینده برنامهنویسی شیرپوینت ختم شد. مایکروسافت توجه خود را کاملا از برنامهنویسی سمت سرور(Farm Solutions) برداشته و امکانات جدیدی به برنامهنویسان سمت سرور نداد و با معرفی امکانات بسیار زیاد و ارتقاء امکانات قبلی، برنامهنویسی سمت کلاینت شیرپوینت را قوت بخشید امکاناتی مانند REST API ها، Sharepoint Add-in، وبپارتهای سرچ و وب پارتهایی برای کدنویسی با جاوااسکریپت و …
همچنین با معرفی سرویسهای app یا همان Sharepoint Add-in و همچنین اپ استور شیرپوینت، محیط و امکانات بسیار جدیدی برای برنامهنویسان ایجاد نمود تا با ارائه کدها و سولوشن های خود بر این بستر از تغییرات سمت سرور جلوگیری کند. البته تغییر مسیر به سمت برنامههای سمت کلاینت علتی دیگر نیز داشت و آن ارائه کلاد مایکروسافت (آفیس 365) بود که در آن برنامهنویسان به کدهای سمت سرور نمیتوانستند دسترسی داشته باشند.
قبل از معرفی شیرپوینت 2016 مایکروسافت در شیرپوینت آنلاین خود امکانات کد نویسی سمت کلاینت جدیدی به نام Sharepoint Framework (SPFx) را معرفی نمود که با استفاده از تایپ اسکریپت،Js Node و فریمورکهای برنامهنویسی مانند React، Angular و Knockout و دیگر فریمورکهای وب با آن میتوان به کدنویسی در شیرپوینت پرداخت.
SPFx با توجه به استفاده از فریمورکهای روز دنیای برنامهنویسی وب، قابلیت های وسیعی دارد که با استفاده از آنها میتوان وب پارتهای بسیاری برای شیرپوینت نوشت. همچنین به دلیل Open Source بودن SPFx مثالهای زیادی توسط توسعهدهندگان اشتراک گذاشته شده تا بتوان از آنها یاد گرفت یا در پروژهها استفاده نمود.
مایکروسافت پس ازارائه فیچر پک 2 شیرپوینت SPFx را به نسخه شیرپوینت غیر کلاد (On-Premises) خود نیز اضافه نمود.
مایکروسافت با ارائه شیرپوینت 2019 و همچنین آپدیت های ماهانه شیرپوینت 2019 و 2016 امکانات SPFx شیرپوینت On-Premises را به نسخه آفیس 365 آن نزدیک تر مینماید و امکانات بسیار زیادی در اختیار برنامهنویسان شیرپوینت قرار میدهد.