ריאקט נייטיב
פעולות נוספות
תבנית {{תוכנה}} ריקה מתוכן. יש להזין פרמטרים בערך או בוויקינתונים. ריאקט נייטיב (באנגלית: React Native) היא ספריית תוכנה לפיתוח ממשק משתמש שנוצרה על ידי חברת פייסבוק.[1] היא משמשת לפיתוח יישומים עבור אנדרואיד,[2] Android TV,[3] iOS, macOS,[4] tvOS,[5] אינטרנט,[6] Windows[4] ו-UWP[7] בזכות היכולת לנצל את היכולות המובנות של מערכות ההפעלה השונות תוך שימוש בספריית React.[8] היא משמשת גם לפיתוח יישומי מציאות מדומה ב-Oculus.[9]
היסטוריה עריכה
בשנת 2012 אמר מארק צוקרברג, "הטעות הגדולה ביותר שעשינו כחברה הייתה הימור רב מדי על HTML בניגוד לאפליקציות נייטיב".[10][11] השימוש ב-HTML5 לגרסת הנייד של פייסבוק הביא ליישום לא יציב שאחזר נתונים לאט.[12] הוא הבטיח שפייסבוק תספק בקרוב חוויית מובייל טובה יותר.
בתוך פייסבוק, ג'ורדן וולק מצא דרך לייצר רכיבי ממשק משתמש ל-iOS מתוך תהליכון JavaScript ברקע, שהפך לבסיס לשלד התוכנה React. הם החליטו לארגן האקתון פנימי בכדי לשכלל את אב הטיפוס הזה על מנת שיוכלו לבנות אפליקציות מובייל עם טכנולוגיה זו.[13]
לאחר חודשים של פיתוח, פייסבוק פרסמה את הגרסה הראשונה של React JavaScript Configuration בשנת 2015. במהלך שיחה טכנית,[14] כריסטופר צ'אדו הסביר כי פייסבוק כבר משתמשת ב-React Native עבור אפליקציית הקבוצות שלהם ואפליקציית מנהל המודעות שלהם.[15]
יישום עריכה
עקרונות העבודה של React Native כמעט זהים ל-React פרט לכך ש-React Native אינו מבצע מניפולציות על ה-DOM באמצעות ה-DOM הווירטואלי. הוא פועל בתהליכון רקע (המפרש את JavaScript שכתבו המפתחים) ישירות במכשיר הקצה ומתקשר עם מערכת ההפעלה באמצעות סריאליזציה של נתונים דרך גשר אסינכרוני.[16][17]
רכיבי React עוטפים קוד נייטיב קיים ומתקשרים עם ממשקי API נייטיביים באמצעות פרדיגמת ממשק המשתמש ההצהרתי של React ו-JavaScript.
בעוד שלעיצוב ב-React Native יש תחביר דומה ל-CSS, הוא אינו משתמש ב-HTML או CSS.[18] במקום זאת, משתמשים בהודעות משרשור ה-JavaScript כדי לנהל תצוגות נייטיביות. React Native מאפשרת למפתחים לכתוב גם קוד מקור בשפות כגון Java או Kotlin עבור אנדרואיד, Objective-C או Swift עבור iOS ו-C ++/WinRT או C# עבור Windows 10, מה שהופך אותו לגמיש עוד יותר.
מיקרוסופט בונה ומתחזקת את React Native עבור Windows ו-React Native עבור macOS.
דוגמה לתוכנית - שלום עולם עריכה
תוכנית Hello world ב-React Native תוך שימוש ב-Function component נראית כך:
import { Text } from 'react-native';
import { React } from 'react';
export default function HelloWorldApp() {
return (
<Text>Hello world!</Text>
);
}
ראו גם עריכה
קישורים חיצוניים עריכה
- קובץ:2021 Facebook icon.svg ריאקט נייטיב, ברשת החברתית פייסבוק
- קובץ:X logo 2023.svg ריאקט נייטיב, ברשת החברתית X (טוויטר)
- קובץ:Telegram logo.svg ריאקט נייטיב, ביישום טלגרם
- קובץ:Instagram logo 2016.svg ריאקט נייטיב, ברשת החברתית אינסטגרם
- קובץ:טיקטוק.png ריאקט נייטיב, ברשת החברתית טיקטוק
- קובץ:VK.com-logo.svg ריאקט נייטיב, ברשת החברתית VK
- קובץ:Linkedin.svg ריאקט נייטיב, ברשת החברתית LinkedIn
- קובץ:Linkedin.svg ריאקט נייטיב, ברשת החברתית LinkedIn
- קובץ:YouTube full-color icon (2017).svg ריאקט נייטיב, סרטונים בערוץ היוטיוב
- קובץ:Twitch logo 2019.svg ריאקט נייטיב, ערוץ באתר Twitch.tv
- קובץ:Vimeo Logo.svg ריאקט נייטיב, סרטונים באתר Vimeo
- קובץ:Rss-feed.svg [%7B%7B%23property%3AP1581%7D%7D ריאקט נייטיב], הבלוג הרשמי
- קובץ:Goodreads logo 2025.svg ריאקט נייטיב, ברשת החברתית Goodreads
- קובץ:Flickr wordmark.svg ריאקט נייטיב, באתר פליקר
- קובץ:Reddit logo 2023.svg ריאקט נייטיב, באתר רדיט
- קובץ:Pinterest-logo.png ריאקט נייטיב, באתר פינטרסט
- אמיר עוז, React Native: המהפכה השקטה של עולם פיתוח האפליקציות כבר כאן, באתר "אנשים ומחשבים", 3 בינואר 2019
הערות שוליים עריכה
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ 1 2 שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).
- ^ שגיאת לואה ביחידה יחידה:Citation/CS1/Configuration בשורה 1739<includeonly></includeonly>: attempt to index field '?' (a nil value).