መመሪያዎች

React ምንድን ነው? ለኮድ ጸሐፊ ላልሆኑ ሰዎች ቀላል ማብራሪያ

React የተጠቃሚ በይነገጽ ለመገንባት የJavaScript ቤተ-መጽሐፍት ነው — የሰዎች የሚያዩትና የሚጫኑት የመተግበሪያው ክፍል። ማያ ገጾችን ከእንደ ቁልፍ፣ የምርት ካርድ ወይም ሙሉ ገጽ ካሉ ተደጋጋሚ ክፍሎች ይገነባሉ፤ React ማያ ገጹን ከመረጃዎ ጋር ያስተካክላል፦ መረጃው ሲቀየር በላዩ ላይ የሚመሠረቱትን የገጹ ክፍሎች ያዘምናል። በFacebook (አሁን Meta) የተፈጠረ፣ ክፍት ምንጭ ነው፤ እንዲሁም የድር መተግበሪያዎችን ለመገንባት በስፋት ከሚጠቀሙት አንዱ ነው።

ከAI ጋር ሲገነቡ ለምን ይጠቅማል

በAI መሳሪያ የድር መተግበሪያ ከገነቡ ብዙ ጊዜ በReact የተጻፈ ሊሆን ይችላል። ብዙ AI መተግበሪያ ገንቢዎች React እንደ ነባሪ ይጠቀማሉ፤ ምክንያቱም ተወዳጅ፣ በሰፊው የተሰነደ ነው፤ AI ሞዴሎች ለመማር ብዙ የReact ኮድ አላቸው።

በAI ለመገንባት React መጻፍ አያስፈልግዎትም። ነገር ግን ትንሽ ማወቅ ይረዳዎታል፦

  • ለውጦችን በትክክል መግለጽ። «ProductCard ክፍሉን ዋጋው ደፋር እንዲሆን ቀይር» ከ«የሆነ ቦታ ዋጋዎች ጎልተው ይታዩ» የበለጠ ግልጽ ነው።
  • ስህተቶችን መረዳት። «Cannot read properties of undefined» ወይም «Too many re-renders» ዓይነት መልዕክቶች ትርጉም ይይዛሉ።
  • ትክክለኛ ውሳኔዎች መወሰን። ቀላል React መተግበሪያዎች በአሳሹ ውስጥ ይሥላሉ፤ ይህ ለፍለጋ ታይነትና የመጀመሪያ ጭነት ፍጥነት ይጎዳል። ይህንን ማወቅ ሌላ ዝግጅት መጠየቅ እንዳለብዎ ለመወሰን ይረዳዎታል።
  • ከገንቢዎች ጋር በኋላ መሥራት። React የተለመደ ችሎታ ስለሆነ ገንቢ የReact ኮድ ቤዝን በቀላሉ ሊረከብ ይችላል።

ዕለታዊ ምሳሌ

LEGO ያስቡ። ሞዴልን ከአንድ ብሎክ ከመቅረጽ ይልቅ ከመደበኛ ጡቦች ይገነቡታል። ጥቂት ጡቦች ጎማ ይሆናሉ፤ አራት ጎማዎችና ሌሎች ክፍሎች መኪና ይሆናሉ። ሁሉም መኪኖች ቀይ ጎማ እንዲኖራቸው ከፈለጉ የጎማውን ንድፍ አንድ ጊዜ ይቀይራሉ።

የReact ክፍሎች ጡቦቹ ናቸው። Button ክፍል በProductCard ውስጥ ይገባል፤ ያ በProductGrid ውስጥ፤ ያ ደግሞ የShopPage አካል ነው። Buttonን አንድ ጊዜ ይቀይሩ፤ በመተግበሪያው ውስጥ ያሉ ሁሉም ቁልፎች ይቀየራሉ።

ሌላኛው የምሳሌው ግማሽ፦ የLEGO ሞዴሉ መመሪያውን ሲቀይሩ ራሱን እንደገና የሚገነባ ይሁን። የReact ሌላኛው ዘዴ ይህ ነው — ለአሁኑ መረጃ ማያ ገጹ ምን መምሰል እንዳለበት ይገልጻሉ፤ React በገጹ ላይ ምን መቀየር እንዳለበት ይሠራል።

ዋና ሐሳቦች

ክፍሎች (Components)

ክፍል የበይነገጽ ክፍልን የሚመልስ JavaScript ተግባር ነው። የReact ሰነድ ክፍልን የራሱ ሎጂክና ገጽታ ያለው የUI ቁራጭ ብሎ ይገልጸዋል። የክፍል ስሞች በትልቅ ፊደል ይጀምራሉ።

JSX

ክፍሎች ብዙ ጊዜ በJSX ይጻፋሉ፤ ይህም ከJavaScript ጋር የተቀላቀለ የHTML ይመስላል፦

function Greeting() {
  return <h1>Welcome back!</h1>;
}

JSX ግዴታ አይደለም፤ ነገር ግን የReact ሰነዶች አብዛኞቹ ፕሮጀክቶች እንደሚጠቀሙት ይገልጻሉ። በአሳሹ ከመሥራቱ በፊት ወደ ተራ JavaScript ይቀየራል።

Props

Props ወደ ክፍል የሚያስገቡት ግብዓቶች ናቸው፤ እንደ ተደጋጋሚ ክፍል ላይ እንደሚሰጡ ቅንብሮች፦

<ProductCard name="Lavender Candle" price={24} />

ተመሳሳዩ ProductCard ማንኛውንም ምርት ማሳየት ይችላል።

State

State ክፍሉ የሚያስታውሰው መረጃ ሲሆን መተግበሪያው በሚሠራበት ጊዜ ሊቀየር ይችላል — ምናሌ ክፍት ነው ወይስ አይደለም፣ በፍለጋ ሳጥን ውስጥ ምን ተጻፈ፣ በቅርጫቱ ውስጥ ስንት ዕቃ አለ። State ሲቀየር React ክፍሉን እንደገና ይሥላል፤ ማያ ገጹ እንዲዛመድ።

Hooks

Hooks ስማቸው በuse የሚጀምሩ ተግባራት ናቸው፤ ለምሳሌ useState (ዋጋን ማስታወስ) እና useEffect (ከሥዕል በኋላ ኮድ ማስኬድ፤ ለምሳሌ መረጃ ለማምጣት)። በAI የተጻፈ React ኮድ ውስጥ በሁሉም ቦታ ታዩዋቸዋላችሁ።

የሥራ ምሳሌ፦ የቅርጫት ቆጣሪ

የመስመር ላይ ሱቅዎ «ወደ ቅርጫት ጨምር» ቁልፍና የዕቃ ብዛት የሚያሳይ የቅርጫት አዶ አለው እንበል። በReact ውስጥ በግምት እንዲህ ይመስላል፦

import { useState } from "react";

function Shop() {
  const [cartCount, setCartCount] = useState(0);

  return (
    <div>
      <CartIcon count={cartCount} />
      <ProductCard
        name="Lavender Candle"
        price={24}
        onAdd={() => setCartCount(cartCount + 1)}
      />
    </div>
  );
}

function CartIcon({ count }) {
  return <span>Cart ({count})</span>;
}

function ProductCard({ name, price, onAdd }) {
  return (
    <div>
      <h2>{name}</h2>
      <p>${price}</p>
      <button onClick={onAdd}>Add to cart</button>
    </div>
  );
}

ገዢ «ወደ ቅርጫት ጨምር» ሲጫን የሚሆነው፦

  1. የቁልፉ onClick onAddን ይጠራል፤ እሱም setCartCountን ይጠራል።
  2. React cartCount ን ከ0 ወደ 1 ያዘምናል።
  3. React Shopን እንደገና ይሥላል፤ ለCartIcon count={1} ያስተላልፋል።
  4. ገጹ አሁን «Cart (1)» ያሳያል። «የቅርጫት ጽሑፉን ፈልግና ቀይረው» የሚል ኮድ ማንም አልጻፈም — ማያ ገጹ መረጃውን ይከተላል።

ገደቦቹንም ልብ ይበሉ። ይህ ቆጣሪ በአሳሹ ማህደረ ትውስታ ውስጥ ይኖራል። ገጹን ካደሱ ወደ 0 ይመለሳል። ቅርጫት ለማቆየት የሚቆይ ቦታ ላይ ማስቀመጥ ያስፈልግዎታል — ኩኪ፣ የአሳሽ ማከማቻ፣ ወይም በbackend በኩል ዳታቤዝ። React ማያ ገጹን ይቆጣጠራል፤ ዳታዎን አያከማችም።

React በድር መተግበሪያ ውስጥ የት ይገባል

ክፍልምን ያደርጋልየተለመዱ ምርጫዎች
UI ቤተ-መጽሐፍትበይነገጹን ይገነባልReact
ቋንቋኮዱ የተጻፈበትJavaScript ወይም TypeScript
Build toolየምንጭ ኮድን አሳሾች የሚጭኑት ፋይሎች ያደርጋል፤ dev server ያሄዳልVite
ማዕቀፍ (አማራጭ)መንገድ መምረጥ፣ በአገልጋይ መስጠት፣ መረጃ መጫን ይጨምራልNext.js፣ React Router
ስታይሊንግእንዴት እንደሚመስልTailwind CSS፣ CSS ፋይሎች
Backendየንግድ አመክንዮ፣ መረጃ፣ ሚስጥሮችNode.js፣ Python እና ሌሎች
ዳታቤዝመረጃን ያከማቻልPostgres እና ሌሎች

«Vite + React» መተግበሪያ በአሳሹ ውስጥ ይሥላል (ነጠላ-ገጽ መተግበሪያ)። Next.js መተግበሪያ ገጾችን በአገልጋዩ ላይ አስቀድሞ ሊሥል ይችላል፤ ይህም የፍለጋ ሞተሮችንና የመጀመሪያ ጭነት ፍጥነትን ይረዳል።

የተለመዱ ቃላት ማብራሪያ

ቃልትርጉም
Componentእንደ ተግባር የተጻፈ ተደጋጋሚ የበይነገጽ ክፍል።
JSXየJavaScript ውስጥ ክፍሎችን ለመግለጽ የሚያገለግል HTML መሰል አገባብ።
Propsወደ ክፍል የሚተላለፉ ግብዓቶች።
Stateበጊዜ ሂደት ሊቀየር የሚችል፣ ክፍሉ የሚያስታውሰው መረጃ።
Hookእንደ state ያሉ ባህሪያትን ወደ ክፍል የሚጨምር፣ በuse የሚጀምር ተግባር።
Render / re-renderReact ከለውጦች በኋላ ማያ ገጹ ምን ማሳየት እንዳለበት እንደገና ሲሰላ።
ነጠላ-ገጽ መተግበሪያ (SPA)አንድ ጊዜ የሚጫን፣ አዳዲስ ገጾችን ከመጫን ይልቅ በJavaScript ገጹን የሚያዘምን መተግበሪያ።
የአገልጋይ ጎን ሥዕል (SSR)የገጹን HTML ከመላኩ በፊት በአገልጋዩ ላይ ማዘጋጀት።
npm ጥቅልመጫን የሚችሉት ተደጋጋሚ የኮድ ቤተ-መጽሐፍት፣ ለምሳሌ የቀን መራጭ ወይም የገበታ ቤተ-መጽሐፍት።
React Nativeቤተኛ የሞባይል መተግበሪያዎችን ለመገንባት የተዛመደ ፕሮጀክት።

የተለመዱ ስህተቶችና የተሳሳቱ ግንዛቤዎች

  • «React የፕሮግራም ቋንቋ ነው።» ቤተ-መጽሐፍት ነው፤ በJavaScript (ወይም TypeScript) ተጽፎ ከነሱ ይጠቀማል።
  • «React መረጃዬን ያከማቻል።» State በአሳሹ ውስጥ ይኖራል፤ ገጹን ሲያድሱ ይጠፋል። ዘላቂ መረጃ backend እና ዳታቤዝ ይፈልጋል።
  • ሚስጥሮችን በReact ኮድ ውስጥ ማድረግ። በReact መተግበሪያ ውስጥ ያለ ሁሉ ወደ ጎብኚው አሳሽ ይላካል። የAPI ቁልፎች እዚያ ይፋ ይሆናሉ። በአገልጋዩ ላይ ያቆዩዋቸው።
  • «React መተግበሪያዎች በፍለጋ ደረጃ ሊያዙ አይችሉም።» በደንበኛው ብቻ የሚሥል ሥዕል ለፍለጋ ደካማ ነው፤ ነገር ግን አስቀድሞ መሥራት ወይም በአገልጋይ መሥራት አብዛኛውን ይፈታል።
  • ግዙፍ ክፍሎች። አንድ 1,000 መስመር ክፍል ለሰዎችም ሆነ ለAI ለመለወጥ አስቸጋሪ ነው። ትናንሽ እንዲሠሩ ይጠይቁ።
  • የReact ድር መተግበሪያ የሞባይል መተግበሪያ ነው ማለት። በአሳሹ ይሠራል፤ በስልኮችም ላይ ይሠራል፤ ግን የApp Store መተግበሪያ አይደለም።

ከAI ገንቢችሁ ምን ብላችሁ ጠይቁ

  • «ይህን ገጽ ትናንሽ በስም የተጠሩ ክፍሎች ከፋፍለው፤ እያንዳንዱ በየትኛው ፋይል እንዳለ ንገረኝ።»
  • «ProductCard ክፍሉን እንደገና ጥቅም ላይ እንዲውል አድርገው፤ name፣ price እና image እንደ props።»
  • «ቅርጫቱን በዳታቤዙ ውስጥ አስቀምጥ፤ ገጹ ቢታደስም እንዲቆይ።»
  • «ሁሉንም የAPI ቁልፎች በአገልጋዩ ላይ አቆይ፤ የReact ኮዱ የራሳችንን API መጥራት አለበት።»
  • «ከአገልጋዩ ለሚመጣ መረጃ የመጫኛና የስህተት ሁኔታዎችን ጨምር።»
  • «የፍለጋ ታይነት ለእነዚህ ገጾች አስፈላጊ ከሆነ አስቀድመህ ሥራቸው ወይም በአገልጋይ ላይ የሚሠራ ማዋቀር ተጠቀም።»
  • «በቀላል ቋንቋ ይህ ስህተት ምን ማለት እንደሆነና ከየትኛው ክፍል እንደሚመጣ አስረዳኝ።»

ለትልቁ ምስል frontend vs backend ይመልከቱ፤ AI የጻፈውን ለመገምገም ደግሞ AI የጻፈውን ኮድ እንዴት መገምገም እንደሚቻል።

React በMythex

የሆነ ሌላ ነገር ካልጠየቁ በስተቀር Mythex አዳዲስ ፕሮጀክቶችን በVite + React + TypeScript + Tailwind ይጀምራል፤ ቻት በሚያደርጉበት ጊዜ የቀጥታ ቅድመ-እይታ ይሠራል። በመጀመሪያ prompt ውስጥ ሌላ ዝግጅት መጥቀስ ይችላሉ — ለምሳሌ «Next.js ተጠቀም» ወይም «ቀላል የስታቲክ HTML ማረፊያ ገጽ» — Mythex ከጻፉት ይመርጠዋል፤ ለዚህ የቅንብር ገጽ የለም። ቴክኖሎጂው እንዴት እንደሚመረጥ የሰነድ ገጽ አማራጮቹን ያብራራል። የኮድ አርታኢው በFree ዕቅድ ላይ ለማንበብ ብቻ ነው፤ በPro ላይ የReact ኮዱን በቀጥታ ማርትዕና ፕሮጀክቱን ወደ ሌላ ቦታ ለመቀጠል ማውጣት ይችላሉ።

ጥያቄዎች

React በቀላል ቃላት ምንድን ነው?

React የተጠቃሚ በይነገጽ ለመገንባት የJavaScript ቤተ-መጽሐፍት ነው። ማያ ገጾችን ከእንደ ቁልፍ፣ የምርት ካርድ ወይም ሙሉ ገጽ ካሉ ተደጋጋሚ ክፍሎች ይገነባሉ፤ የመሠረት መረጃው ሲቀየር React በማያ ገጹ ላይ ያለውን ያዘምናል።

React ማዕቀፍ ነው ወይስ ቤተ-መጽሐፍት?

React ራሱን ቤተ-መጽሐፍት ብሎ ይጠራል፤ በበይነገጹ ግንባታ ላይ ያተኩራል። በላዩ ላይ የተገነቡ ማዕቀፎች፣ ለምሳሌ Next.js፣ መንገድ መምረጥን፣ በአገልጋይ ላይ መስጠትንና መረጃ መጫንን ይጨምራሉ።

AI መተግበሪያ ገንቢዎች ለምን React ይጠቀማሉ?

React የድር በይነገጾችን ለመገንባት ከሚጠቀሙ ዋና መንገዶች አንዱ ነው፤ ስለዚህ AI ሞዴሎች ለመማር ብዙ የReact ኮድና ሰነድ አሉ። የክፍሎቹ አወቃቀርም ትናንሽና ዒላማ ያደረጉ ለውጦችን ለማድረግ ይስማማል።

React ለSEO መጥፎ ነው?

በራሱ አይደለም። ሁሉን ነገር በአሳሹ ውስጥ የሚሥል React መተግበሪያ ለአንዳንድ ክራውለሮች ለማንበብ ይከብዳል፤ ነገር ግን React አስቀድሞ ሊሠራ ወይም በአገልጋይ ላይ ሊሰጥ ይችላል፤ ለምሳሌ Next.js ጋር፤ ይህም አብዛኛውን ችግር ይፈታል።

React ከReact Native ጋር አንድ ነው?

አይደለም። React በአሳሽ የሚሠሩ የድር በይነገጾችን ይገነባል። React Native ተመሳሳይ ሐሳቦችን በመጠቀም ለiOS እና ለAndroid ቤተኛ መተግበሪያዎችን ይገነባል። ሐሳቦቹን ይጋራሉ፤ አብዛኞቹን የግንባታ ክፍሎቻቸውን ግን አይጋሩም።

Mythex · Pricing · በAI ማንኛውንም ነገር ይገንቡ · የድር ጣቢያ እና የመተግበሪያ ቴምፕሌቶች · Mythex ከሌሎች ጋር ሲነጻጸር · የAI መተግበሪያ ግንባታ የቃላት መዝገበ-ቃላት · ነፃ የAI መተግበሪያ መገንቢያ መሳሪያዎች · English

English العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)