آموزش وردپرس قالب وردپرس قالب رايگان وردپرس درس وردپرس
شیرپوینت فریمورک (قسمت اول) مقدمه - گروه ساقه
SharePointTips
پنج ترفند مهم و کاربردی برای استفاده آسانتر از شیرپوینت
شهریور ۲۰, ۱۳۹۷
SharePointFramework
شیرپوینت فریمورک (قسمت دوم) پیکربندی محیط توسعه
شهریور ۲۷, ۱۳۹۷

شیرپوینت فریمورک (قسمت اول) مقدمه

SharePointFramework

SharePointFramework

فریمورک شیرپوینت(SPFx) یک صفحه و مدلی از وب پارت است که امکان کامل برنامه نویسی سمت کلاینت برای شیرپوینت، یکپارچه سازی آسان با اطلاعات موجود در شیرپوینت و حمایت از ابزارهای متن-باز را فراهم می آورد. با فریمورک شیرپوینت می توانید از تکنولوژی های مدرن و ابزارهای مورد علاقه تان در هر محیط برنامه نویسی که ترجیح می دهید استفاده کنید تا تجربیات پر حاصل و اپ های واکنش گرا و آماده برای نمایش در موبایل تولید نمایید. فریمورک شیرپوینت هم برای شیرپوینت به صورت on-premises و هم به صورت آنلاین مورد استفاده قرار می گیرد.
ویژگی های اصلی فریمورک شیزرپوینت شامل موارد زیر می باشد:

  • اجرای آن در حیطه کاربر جاری است و در ارتباط با مرورگر. iFrame یی برای شخصی سازی وجود ندارد (جاوااسکریپت مستقیما در صفحه جاسازی شده است).
  • کنترل ها به صورت Document Object Model(DOM) نرمال در صفحه رندر می شوند.
  • کنترل ها واکنش گرا هستند و به صورت ذاتی قوانین دسترس پذیری را رعایت می کنند.
  • این امکان برای توسعه دهنده وجود دارد تا به چرخه عمر دسترسی داشته باشد به منظور رندر، بارگذاری، serialize و    reserialize   ، configuration changes  و غیره.
  • می تواند با فریم ورک های مختلفی کار کند، به این معنا که می توانید از هر فریم ورک جاوااسکریپتی که دوست دارید استفاده کنید مانند: React, Handlebars, Knockout, Angular و غیره.
  • Toolchain آن بر اساس ابزاهای برنامه نویسی کلاینت متن باز است مانند npm، TypeScript، Yeoman، webpack، و gulp.
  • پرفورمنس آن قابل اعتماد است.
  • کاربران نهایی می توانند از راهکارهای کلاینت SPFx استفاده کنند که راهبران آن ها را برای تمام سایت ها، شامل سلف- سرویس تیم، گروه یا سایت های شخصی فراهم آورده اند.
  • وب پارت های SPFx می توانند بر روی صفحات کلاسیک و یا مدرن شیرپوینت اضافه شوند.

مدل زمان اجرا برای وب پارت Script Editor بهبود پیدا کرده. این بهبود شامل یک API کلاینت قابل اطمینان است، یک شی HttpClient که احراز هویت بر روی شیرپوینت و Office 365 را به عهده دارد، اطلاعات مربوط به Context های سایت های شیرپویتی، آسانی در تعریف خصیصه و پیکربندی آن ها، و غیره.
اگر پیش از این با سی شارپ آشنا بوده اید. می خواهید بیشتر با برنامه نویسی سمت کلاینت جاوا اسکریپت بیاموزید. تمامی دانسته های جاوااسکریپ شما در ارتباط با شیرپوینت، قابل انتقال به این شیرپوینت مدرن ۲۰۱۹ می باشد. به عنوان مثال دیتا مدل ها تغییر نکرده اند، و همچنین شما می توانید برحسب نیاز از همان سرویس های REST یا JavaScript Object Model(JSOM) استفاده نمایید. اگر شما برنامه نویس سی شارپ هستید TypeScript انتقال زیبایی است برایتان به جهان جاوا اسکریپت. انتخاب Integrated Development Environment(IDE) به شما بستگی دارد. تعدادی از برنامه نویسان علاقمند به استفاده از IDE کراس- پلتفرم Visual Studio Code هستند. تعداد دیگری از برنامه نویسان علاقمند به استفاده از محصولاتی مانند Sublime و ATOM هستند.

چرا فریمورک شیرپوینت؟

شیرپوینت در سال ۲۰۰۱ به عنوان محصولی on-premises ایجاد شد. در طول زمان جامعه بزرگی از برنامه نوسان از جهات مختلفی آن را گسترش و شکل داده اند. بخش عمده ای از آن، توسط جامعه برنامه نویسی از روشی که Patterns and Practices به کار برده اند پیروی کردند، شامل وب پارت ها، امکانات XML در شیرپوینت، و غیره. تعدادی از امکانات با زبان سی شارپ نوشته شده اند، به DLL کامپایل شده اند، و به فارم های on-premises انتقال یافته اند.
این معماری برای یک سازمان خوب کار می کرد، اما نه در اشل فضای ابری، که tenant های مختلف با هم در کنار همدیگر اجرا می شوند. در نتیجه، ما دو روش انتخابی را معرفی کردیم: تزریق JavaScript سمت کلاینت، و Add-in های شیرپوینت. هر کدام از این راهکارها نقاط قوت و ضعف خاص خود را دارند.

JavaScript Injection

یکی از رایج ترین وب پارت ها در SharePoint online اسکریپت ادیتور است. شما می توانید کدهای جاوا اسکریپت را در درون این وب پارت کپی نمایید و اجرای آن را در هنگام رندر شدن صفحه داشته باشید. اگر چه این روش ساده و ابتدایی است ، اما موثر نیز هست. در همان Context از صفحه اجرا می شود، و در همان Document Object Model، بنابراین می تواند با کنترل های دیگر صفحه تعامل داشته باشد. کارایی بالایی دارد و بکارگیری آن آسان است.
به هر حال، تعداد کمی نقاط ضعف نیز برای این گرایش وجود دارد. در ابتدا، هنگامی که راهکار خود را پکیجی می کنید که کاربران می توانند کنترل ها را بر روی صفحه قرار دهند، به سختی می توانید گزینه های تنظیمات را در آن ایجاد نمایید. همچنین، کاربر می تواند صفحه را ویرایش نماید و اسکریپت را تغییر دهد، که این امر می تواند باعث تخریب وب پارت گردد. مشکل بزرگ دیگر این است که اسکریپت ادیتور به عنوان “Safe for Scripting” شناخته شده نیست. اغلب سایت کالکشن های سلف- سرویسی (my-sites, team sites, group sites) دارای ویژگی مشهور به “NoScript” فعال هستند. از نظر تکنیکی، این ویژگی امکان مجوز اضافه یا ویرایش در صفحات را حذف می کند. این به این معنی است که وب پارت اسکریپت ادیتور با اجرای کد ان بلاک خواهد شد.

SharePoint Add-in model

راه حل برای سایت هایی که در NoScript اجرا می شوند مدل add-in/app-part است. این پیاده سازی یک iFrame ایجاد می کند. مزیت آن این است که چون خارج از سیستم قراردارد و دسترسی به DOM جاری ندارد، برای کاربران توسعه دهنده قابل اعتماد تر است تا آن را دیپلوی نمایند. کاربران نهایی می توانند این افزونه ها را بر روی سایت های NoScript نصب نمایند.
چندین نقطه ضعف برای این راهکار وجود دارد. در ابتدا این روش یک iFrame اجرا می کند. iFrame کندتر از وب پارت اسکریپت ادیتور است، چرا که نیاز دارد به صفحه دیگری درخواست ارسال کند. صفحه از طریق احراز هویت و تعیین مجوزهای دسترسی، فراخوانی های خود را به دیتاهای شیرپوینت ایجاد نماید، کتابخانه های مختلف جاوا اسکریپتی را بارگذاری کند، و غیره. یک اسکریپت ادیتور ممکن است برای نمونه صد میلی ثانیه برای بارگذاری و رندر زمان صرف کند، در حالی که یک اپ پارت ممکن است به دو ثانیه یا بیشتر زمان احتیاج داشته باشد. به اضافه این که، به دلیل محدودیت های iFrame ایجاد طراحی واکنش گرا و توارث CSS ها تم ها دشوار است. iFrame ها امنیت بالاتری دارند، که می تواند برای شما مفید باشد(صفحه شما برای دیگر کنترل های روی آن غیر قابل دسترسی است) و برای کاربر نهایی(کنترل به اتصال به office 365 دسترسی ندارد).

فریمورک شیرپوینت

از نظر تاریخی، ما وب پارت ها را به عنوان اسمبلی های قابل اعتماد ساختیم، که بر روی سرورهای فضای ابری نصب شوند. به هر حال بخش عمده ای از مدل های توسعه نرم افزاری مدرن، با مشارکت اجرای جاوا اسکریپت ها در یک مرورگر فراخوانی های REST API به بک-اند شیرپوینت و office 365 را می سازند. اسمبلی های سی شارپ در این جهان کارایی نخواهند داشت. ما به یک مدل توسعه دیگر نیاز داریم. شیرپوینت فریمورک تحول بعدی در برنامه نویسی شیرپوینت است .

این مقاله ترجمه ای است از Overview of the SharePoint Framework

قسمت های دیگر این مقاله:
شیرپوینت فریمورک (قسمت دوم) پیکربندی محیط توسعه
شیرپوینت فریمورک (قسمت سوم) ساخت اولین وب پارت
شیرپوینت فریمورک (قسمت چهارم) ساختار پروژه وب پارت

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *