This repository has been archived by the owner on Sep 17, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 152
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #251 from Ehsan-Home/persian(fa)
Persian(fa) Package
- Loading branch information
Showing
1 changed file
with
33 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
# مقایسه با بقیه کتابخانه ها | ||
|
||
این بخش نمی تواند از برخی سوگیری ها دوری کند، اما ما فکر می کنیم مهم است که بدانیم راه حل سالید (Solid) در مقایسه با کتابخانه های دیگر در کجا قرار دارد. این قسمت مربوط به عملکرد نیست و فقط تفاوت فلسفه های کتابخانه ها را بیان میکند. برای ارزیابی عملکرد، به | ||
[JS Framework Benchmark](https://github.com/krausest/js-framework-benchmark) | ||
نگاه کنید. | ||
|
||
## ریاکت (React) | ||
|
||
ری اکت (React) تأثیر زیادی روی سالید (Solid) داشته است. سالید ایده جریان یک طرفه ارسال داده ها و تفکیک صریح خواندن و نوشتن در قلاب ها (Hooks) ها را از ری اکت (React) الهام گرفته است. سالید (Solid) ایده ها و نظرات قوی و جذابی در مورد چگونگی رویکرد مدیریت داده در توسعه برنامه دارد، اما به دنبال محدود کردن اجرای آن نیست. | ||
|
||
با این حال، به همان اندازه که سالید (Solid) با فلسفه طراحی ری اکت (React) مطابقت دارد، اساساً متفاوت عمل می کند. ری اکت از درخت مجازی (virtual DOM)استفاده می کند ، درحالی که سالید از آن استفاده نمی کند. اجزا ری اکت از بالا به پایین چیده می شود که در آن متدهای رندر (render) و یافتن تفاوت ها بین درخت اصلی و مجازی (Diff) به طور مکرر فراخوانی می شوند. در عوض سالید هر جز برنامه را را یکبار به طور کامل رندر (render) میکند، گراف آن را می سازد و فقط دستور العمل هایی که منجر به تغییر ان جز می شود را اجرا میکند. | ||
|
||
## توصیه برای تغییر پروژه های فعلی به سالید | ||
|
||
مدل به روز رسانی سالید هیچ شباهتی به ری اکت یا حتی ری اکت و موب اکس (Mobx) ندارد. به جای اینکه اجزای تابع را به عنوان تابع `رندر` `(render)` در نظر بگیرید، آنها را به عنوان `سازنده` `(constructor)` در نظر بگیرید. | ||
|
||
در Solid، پراپز (Props) و حافظه ها (stores) [پراکسی](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) هستند که برای ردیابی و بهروزرسانیها به دسترسی به مقادیر پراکسی ها تکیه میکنند . | ||
مراقب دسترسی به متغیرهای پراپز یا دسترسی اولیه به پراپز باشید، که می تواند باعث شود پراپز و حافظه ها واکنش پذیری خود را از دست بدهند یا در زمان نامناسبی صدا زده شوند. | ||
|
||
مقادیر نوع اولیه (Primitive ) در سالید همانند قلاب ها در ری اکت هیچ محدودیتی ندارند. | ||
بنابراین میتوانید به آزادی از ان ها استفاده کنید و هر جا که نیاز شد ، ان ها را شاخه بدهید. | ||
|
||
در سالید ، شما نیازی به اضافه کردن شناسه واحد برای هر آیتم لیست یا جدول یا هر لیست تکرار شونده همانند ری اکت نیستید. | ||
|
||
در ری اکت وقتی یک ورودی یا اصطلاحا input داشته باشیم ، با استفاده از تابع onChange میتوانیم تغییرات ورودی را مشاهده کنیم. ولی این رفتار [پیش فرض](https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onchange) تابع onChange نیست. در سالید ، با استفاده از onInput ، میتوانید تغییرات یک ورودی را مشاهده نمایید. | ||
|
||
در نهایت، هیچ درخت مجازی در سالید وجود ندارد، بنابراین APIهای ضروری درخت مجازی مانند «React.Children» و «React.cloneElement» در سالید معادلی ندارند. به جای ایجاد یا تغییر مستقیم عناصر درخت اجزا (DOM) ، مقاصد خود را به صورت شفاف بیان کنید. | ||
|
||
## ویو جی اس (Vue.js) | ||
|
||
سالید به ویژه از نظر طراحی از ویو جی اس (Vue.js) الهام نمی گیرد، اما از نظر روش پیاده سازی قابل مقایسه هستند. هر دوی آنها از پراکسی ها (Proxy) در سیستم تعاملی خود با ردیابی خودکار مبتنی بر خواندن استفاده می کنند. اما این همان جایی است که شباهت ها به پایان می رسد. سیستم تشخیص وابستگی در ویو جی اس فقط درخت اجزا (DOM) و اجزا (Component) مجازی خود را تغذیه می کند، در حالی که سالید سیستم خود را تا رسیدن به درخت اجزا به صورت جز جز نگه می دارد. | ||
|
||
این فایل در حال به روز رسانی می باشد... |