توسعه شیرپوینت با روشهای مختلفی انجام میگیرد که با توجه به نیاز سازمانها و امکانات آنها یکی از این روشها انتخاب میشوند:
- فرمسازها (InfoPath، Nintex Form، BPC Power Form و …)
- وب پارتهای سمت سرور
- جاوا اسکریپت، CSS و HTML و استفاده با Script Editor
- کتابخانهها و فریم ورکهای جاوا اسکریپت (React ,Vue ,Knockout ,…)
- SPFX (SharePoint Framework)
در این مجموعه مقالات قصد داریم به بررسی و نحوۀ استفاده از React در شیرپوینت بپردازیم. در ابتدا لازم است با شیرپوینت و توسعه آن با جاوا اسکریپت آشنایی لازم را داشته باشید.
دنیا به سمت توسعه سمت کلاینت در حرکت است. برای کاربر مهم نیست که معماری سمت سرور چقدر خوب است بلکه آن چیزی که کاربر میبیند رابط کاربریست. پس احساس یک تجربۀ روان اهمیت بالایی خواهد داشت. با استفاده از فریم ورکهای جاوا اسکریپت و ساخت وب اپلیکیشنهای تک صفحهای میتوان به این تجربه دست یافت.
چرا باید از React استفاده کنیم؟
از آنجایی که شیرپوینت روی توسعه سمت کاربر تمرکز کرده است و از جامعه متن باز حمایت میکند به معنی آن است که از مفهوم برنامههای تک صفحهای برای توسعه رابط کاربری استفاده میکند و استفاده از کتابخانهای مثل React مناسب اینگونه برنامههاست.
سادگی مفاهیم React، یادگیری آسانتر نسبت به سایر کتابخانهها و فریمورکها، کدنویسی با جی اس ایکس، توسعهپذیری بالا، ساخت برنامههای تک صفحهای و پشتیبانی قدرتمند از دلایل ما برای استفاده از React هستند.
مقایسه React با دیگر روشهای توسعه
زمانی که از فرمسازهایی مانند Nintex یا BPC Power form استفاده میکنید یکی از مهمترین ویژگیهای این ابزار سرعت در توسعه فرمها است. و در کنار این سرعت شما قابلیت استفاده از کدهای جاوا اسکریپت را خواهید داشت. که میتوانید از تواناییهای این زبان در توسعه فرمهای خود استفاده کنید.
ولی این فرمسازها در کنار این مزایا معایب قابل توجهی هم نیز دارند. که چند مورد از آن ها به شرح زیر است:
- محدودیت استفاده از کامپوننتها
- عدم توانایی استفاده از رابطهای کاربری متنوع
- عدم امکان توسعه همزمان بر روی فرم توسط چند نفر
- عدم توانایی استفاده مجدد از کامپوننتها و کدهای موجود در فرم دیگر
- عدم امکان استفاده از سورس کنترل ها جهت مدیریت کدها
- محدودیت در روشهای فراخوانی وب سرویسها
و می توان چندین مورد دیگر به این لیست اضافه کرد.
یکی از مزیت های اصلی react قسمت بندی کامپوننت هاس (hook).
یعنی اگه بخوای یه فرم پیچیده رو چندنفر با هم طراحی کنین می تونین با ایجاد یک کانتکس در کامپوننت پرنت برای مدیریت state ها از اون تو کامپوننت های فرزند استفاده کرد و هرقسمت از کامپوننت اصلی رو تشکیل داد از چند تا کامپوننت فرزند.
“مورد سوم معایب” 😉
جناب آقای امینی
با سلام
معایب عنوان شده در این قسمت ، کمبود ها و معایب فرمساز هایی نظیر BPC PowerForms و Nintex Form است که به دلیل وجود این کمبودها، در توسعه فرم های پیچیده تر ، از جاوااسکریپت یا ری اکت استفاده می کنیم
با سپاس