uz
Feedback
ToCode

ToCode

Kanalga Telegramโ€™da oโ€˜tish

ื˜ื™ืคื™ื ืงืฆืจื™ื ืœืžืชื›ื ืชื™ื ืžืืช ื™ื ื•ืŸ ืคืจืง

Ko'proq ko'rsatish
1 420
Obunachilar
Ma'lumot yo'q24 soatlar
+27 kunlar
-230 kunlar
Postlar arxiv
ToCode
1 420
# ืื™ืŸ ืœื™ ืžื•ืฉื’ ืื™ืš ืœื’ืฉืช ืœื–ื” ื‘ื”ืชืžื•ื“ื“ื•ืช ืขื ื‘ืขื™ื”, "ืื™ืŸ ืœื™ ืžื•ืฉื’ ืื™ืš ืœื’ืฉืช ืœื–ื”" ื”ื•ื ื”ืชื—ืœื” ืžืฆื•ื™ื ืช. ื”ื”ืžืฉืš ืฆืจื™ืš ืœื”ื™ื•ืช "ืื‘ืœ ืื ื™ ืžื•ื›ืŸ ืœื ืกื•ืช". ื›ื™ ืฉื ื™ ื”ืžืฉืคื˜ื™ื ื”ืืœื” ื™ื—ื“ ืžื•ื‘ื™ืœื™ื ืื•ืชื ื• ืงื“ื™ืžื”- 1. ืื™ืŸ ืœื™ ืžื•ืฉื’ ืื™ืš ืœื’ืฉืช ืœื–ื”, ืื‘ืœ ืื ื™ ืžื•ื›ืŸ ืœื ืกื•ืช ืืช ื”ืจืขื™ื•ืŸ ื”ืจืืฉื•ืŸ ืฉ Chat GPT ื™ืฆื™ืข ืœื™. ื’ื ืื ื–ื” ืœื ื™ืขื‘ื•ื“ ื‘ื˜ื— ืืœืžื“ ืžืฉื”ื• ืžื”ื ื™ืกื™ื•ืŸ. 2. ืื™ืŸ ืœื™ ืžื•ืฉื’ ืื™ืš ืœื’ืฉืช ืœื–ื”, ืื‘ืœ ืื ื™ ืžื•ื›ืŸ ืœื ืกื•ืช ืื– ืืฉืืœ ื—ื‘ืจื™ื, ื•ืื•ืœื™ ืืงื‘ืœ ื›ืžื” ืจืขื™ื•ื ื•ืช. 3. ืื™ืŸ ืœื™ ืžื•ืฉื’ ืื™ืš ืœื’ืฉืช ืœื–ื”, ืื‘ืœ ืื ื™ ืžื•ื›ืŸ ืœื ืกื•ืช ื’ื ืžืฉื”ื• ืฉืืฃ ืคืขื ืœื ื ื™ืกื™ืชื™ ืงื•ื“ื. 4. ืื™ืŸ ืœื™ ืžื•ืฉื’ ืื™ืš ืœื’ืฉืช ืœื–ื”, ืื‘ืœ ืื ื™ ืžื•ื›ืŸ ืœื ืกื•ืช ื›ื™ ื–ื” ืžืกืคื™ืง ื—ืฉื•ื‘ ื‘ืฉื‘ื™ืœ ืœื”ืชืžื•ื“ื“ ืขื ื”ืื›ื–ื‘ื”. 5. ืื™ืŸ ืœื™ ืžื•ืฉื’ ืื™ืš ืœื’ืฉืช ืœื–ื”, ืื‘ืœ ืื ื™ ืžื•ื›ืŸ ืœื ืกื•ืช ื’ื ืขืœ ื—ืฉื‘ื•ืŸ ื“ื‘ืจื™ื ืฉืื ื™ ื›ืŸ ื™ื•ื“ืข ืœืขืฉื•ืช, ื›ื™ ืฉื ื”ื“ืจืš ืงื“ื™ืžื”. ืื™ืŸ ืœื™ ืžื•ืฉื’ ืื™ืš ืœื’ืฉืช ืœื–ื”. ื•ื–ื” ื‘ืกื“ืจ ื’ืžื•ืจ.

ToCode
1 420
# ืขืฉืจ ื“ืงื•ืช ืขื ืกืงืืœื” ืืชื ื›ื‘ืจ ื™ื•ื“ืขื™ื ืฉื”ืชื—ืœืชื™ ืœื ืžื–ืžืŸ ืœืœืžื•ื“ ืกืงืืœื”, ื•ืื—ื“ ื”ืฆืขื“ื™ื ื”ืจืืฉื•ื ื™ื ืฉืœื™ ืขื ืฉืคืช ืชื›ื ื•ืช ื”ื•ื ืœืžืžืฉ ื“ื‘ืจื™ื ืฉืื ื™ ื›ื‘ืจ ื™ื•ื“ืข ืœืคืชื•ืจ ืจืง ื‘ืฉื‘ื™ืœ ืœืจืื•ืช ืื™ืš ื–ื” ืขื•ื‘ื“. ืื– ื”ื ื” ืคื™ืชืจื•ืŸ ืฉืœ Advent Of Code 2022 Day 2 ื‘ืกืงืืœื”, ืชื•ืš ืฉื™ืžื•ืฉ ื ืจื—ื‘ ื‘ match/case ืฉืœื”ื ื•ื”ื—ืฆื™ื ืฉื ืจืื” ืฉืžืืคื™ื™ื ื™ื ืืช ื”ืฉืคื”. ## ื”ืชืจื’ื™ืœ ื‘ืชืจื’ื™ืœ ืื ื—ื ื• ืžืงื‘ืœื™ื ืงื•ื‘ืฅ ืฉื ืจืื” ื‘ืขืจืš ื›ืš:
A Y
B X
C Z
ื›ืฉื”ืขืžื•ื“ื” ื”ืฉืžืืœื™ืช ืžื™ื™ืฆื’ืช ืžื”ืœืš ื‘ืžืฉื—ืง "ืื‘ืŸ ื ื™ื™ืจ ื•ืžืกืคืจื™ื™ื" (A ืœืื‘ืŸ, B ืœื ื™ื™ืจ ื• C ืœืžืกืคืจื™ื™ื) ื•ื”ืขืžื•ื“ื” ื”ื™ืžื ื™ืช ื‘ืขืœืช ืžืฉืžืขื•ืช ืžืฉืชื ื”. ื‘ื—ืœืง ื”ืจืืฉื•ืŸ ื”ื™ื ืžื™ื™ืฆื’ืช ืืช ื”ืžื”ืœืš ืฉืœ ื”ื™ืจื™ื‘ ื•ื‘ื—ืœืง ื”ืฉื ื™ ื”ื™ื ืžื™ื™ืฆื’ืช ืืช ื”ืชื•ืฆืื” ื”ืจืฆื•ื™ื” (Y ืชื™ืงื•, X ื”ืขืžื•ื“ื” ื”ืฉืžืืœื™ืช ืžื ืฆื—ืช, Z ื”ืขืžื•ื“ื” ื”ืฉืžืืœื™ืช ืžืคืกื™ื“ื”). ื›ืœ ืฉื•ืจื” ืžืชื•ืจื’ืžืช ืœื ืงื•ื“ื•ืช ืœืคื™ ื ื™ืฆื—ื•ืŸ, ืชื™ืงื• ืื• ื”ืคืกื“ ืฉืœ ื”ืขืžื•ื“ื” ื”ื™ืžื ื™ืช ื•ืœืคื™ ื”ืžื”ืœืš ืฉื‘ื•ืฆืข ื‘ืขืžื•ื“ื” ื”ื™ืžื ื™ืช. ื”ืืชื’ืจ ื”ื•ื ืœืกื›ื•ื ืืช ื”ื ืงื•ื“ื•ืช. ## ืคื™ืชืจื•ืŸ ื‘ืกืงืืœื” ื ืงื•ื“ืช ื”ื”ืชื—ืœื” ืฉืœื™ ื”ื™ืชื” ื”ืคื•ื ืงืฆื™ื” score ืฉืžืงื‘ืœืช ืฉื•ืจื” ื•ืžื—ื–ื™ืจื” ืืช ื”ื ื™ืงื•ื“ ืฉืœื”:
def score(line: String): Int =
  line match
    case "A X" => 4
    case "A Y" => 8
    case "A Z" => 3
    case "B X" => 1
    case "B Y" => 5
    case "B Z" => 9
    case "C X" => 7
    case "C Y" => 2
    case "C Z" => 6
ื‘ืกืงืืœื” ืคื•ื ืงืฆื™ื” ืžื•ื’ื“ืจืช ืขื def, ืœืคืจืžื˜ืจื™ื ื™ืฉ ื˜ื™ืคื•ืก ื•ืœืคื•ื ืงืฆื™ื” ื™ืฉ ื˜ื™ืคื•ืก ื”ื—ื–ืจ. ืื—ืจื™ ื”ืคืงื•ื“ื” match ื™ืฉ ืจืฉื™ืžื” ืฉืœ case-ื™ื ื›ืฉื”ื ืงื‘ื•ืขื™ื ื–ื” ืขื•ื‘ื“ ื›ืžื• switch/case ืจื’ื™ืœ (ื•ื›ืŸ ืืคืฉืจ ืœืขืฉื•ืช pattern matching ืžืชื•ื—ื›ื ื›ืžื• ื‘ืฉืคื•ืช ืคื•ื ืงืฆื™ื•ื ืืœื™ื•ืช). ื‘ื—ืœืง ื”ืจืืฉื•ืŸ ืฉืœ ื”ืชืจื’ื™ืœ ืฆืจื™ืš ืจืง ืœืงืจื•ื ืžืงื•ื‘ืฅ ื•ืœืกื›ื•ื ืืช ื”ืชื•ืฆืื” ืฉืœ score ืขืœ ื›ืœ ืฉื•ืจื”:
@main def main(): Unit =
  val filename = "./src/main/scala/day2.txt"
  var score1 = for (line <- Source.fromFile(filename).getLines)
    yield score(line)

  println(score1.sum)
ืืช ืคืงื•ื“ืช for ื‘ืกืงืืœื” ืื ื™ ืงื•ืจื ื›ืžื• List Comprehension ืฉืœ ืคื™ื™ืชื•ืŸ ืื• for ืฉืœ ืืœื™ืงืกื™ืจ, ื›ืฉื” yield ืงื•ื‘ืข ืžื” ื™ื•ื—ื–ืจ. ืกืš ื”ื›ืœ ื”ืžืฉืชื ื” score1 ื™ื”ื™ื” ืจืฉื™ืžื” ืฉืœ ืชื•ืฆืื•ืช ืฉืœ ื”ืคื•ื ืงืฆื™ื”. ื•ื›ืŸ ืืคืฉืจ ื’ื ืœื•ื•ืชืจ ืขืœ ื›ืœ ืชื—ื‘ื™ืจ ื”ืจื›ื‘ืช ื”ืจืฉื™ืžื•ืช ื”ื–ื” ื•ืœื›ืชื•ื‘ ืคืฉื•ื˜:
var score1 = Source.fromFile(filename).getLines.map(score)
ืื‘ืœ ื–ื” ืคื—ื•ืช ื›ื™ืฃ. ื‘ื—ืœืง ื”ืฉื ื™ ืื ื™ ืžืจื™ืฅ ืขื•ื“ ืœื•ืœืื” ื”ืคืขื ืขื match/case ื‘ืชื•ืš ื” for ื›ื“ื™ ืœืงื‘ืœ ืืช ืจืฉื™ืžืช ื”ื ืงื•ื“ื•ืช:
  var score2 = for (line <- Source.fromFile(filename).getLines)
    yield line match
      case "A X" => score("A Z")
      case "A Y" => score("A X")
      case "A Z" => score("A Y")
      case "B X" => score("B X")
      case "B Y" => score("B Y")
      case "B Z" => score("B Z")
      case "C X" => score("C Y")
      case "C Y" => score("C Z")
      case "C Z" => score("C X")


  println(score2.sum)
## ืจืฉืžื™ื ืขืœ ื”ืฉืคื” ื‘ื™ื ืชื™ื™ื ื›ืžื” ื“ื‘ืจื™ื ืฉืœืžื“ืชื™ ื‘ื™ื ืชื™ื™ื: 1. ื‘ืกืงืืœื” ืื™ื ื“ื ื˜ืฆื™ื” ื—ืฉื•ื‘ื”, ื›ืžื• ื‘ืคื™ื™ืชื•ืŸ. 2. ืžืขืจื›ืช ื”ื˜ื™ืคื•ืกื™ื ื™ื›ื•ืœื” ืœืขื–ื•ืจ, ืื‘ืœ ื’ื ื™ื›ื•ืœื” ืœื”ื™ื•ืช ืžืจื’ื™ื–ื” ื•ืœื”ืจืื•ืช ื”ื•ื“ืขื•ืช ืฉื’ื™ืื” ืœื ื‘ืจื•ืจื•ืช. 3. ืงื”ื™ืœื” ืงื˜ื ื” ืื•ืžืจืช ืฉืืคืฉืจ ืœืžืฆื•ื ื”ืจื‘ื” ืคื—ื•ืช ืชื™ืขื•ื“, ื•ื’ื ื“ื•ื’ืžืื•ืช ืฉืœ ืกืงืืœื” 2 ืœืคืขืžื™ื ื™ื”ื™ื• ืฉื•ื ื•ืช ืžืกืงืืœื” 3. 4. ื™ื“ืข ื‘ Java ืžืื•ื“ ืขื•ื–ืจ ืœื”ื‘ื™ืŸ ืืช ืกืงืืœื”. ืกืš ื”ื›ืœ ื‘ื™ื ืชื™ื™ื ืื ื™ ืžื—ื‘ื‘ ืืช ื”ืฉืคื”. ืืžืฉื™ืš ืœืขื“ื›ืŸ. ืื ื™ืฉ ืœื›ื ื˜ื™ืคื™ื ืื™ืš ืœื›ืชื•ื‘ ืืช ื”ืงื•ื“ ื‘ืกืงืืœื” ื™ื•ืชืจ ื ืงื™ ืืฉืžื— ืœืฉืžื•ืข ื‘ืชื’ื•ื‘ื•ืช.

ToCode
1 420
# ืื‘ืœ ื–ื” ื›ื‘ืจ ืฉื... ื•ืื•ืœื™ ื‘ืกื™ืก ื ืชื•ื ื™ื ืจืœืฆื™ื•ื ื™ ื”ื•ื ืœื ื›ื–ื” ืจืขื™ื•ืŸ ื˜ื•ื‘? ืื• ืœื ื›ื–ื” ืžืชืื™ื ืœืคืจื•ื™ืงื˜ ืฉืœืš? ื•ืื•ืœื™ Virtual DOM ื”ื•ื ืœื ื›ื–ื” ืจืขื™ื•ืŸ ื˜ื•ื‘? ืื• ืœื ื›ื–ื” ืžืชืื™ื ืœืคืจื•ื™ืงื˜ ืฉืœืš? ื•ืื•ืœื™ ORM ืœื ื”ื™ื” ื›ื–ื” ืจืขื™ื•ืŸ ื˜ื•ื‘? ืื• ืœืคื—ื•ืช ืœื ื”ื›ื™ ืžืชืื™ื ืœืคืจื•ื™ืงื˜ ืฉืœืš? ื›ืžื” ื”ื—ืœื˜ื•ืช ืื ื—ื ื• ืžืงื‘ืœื™ื ืจืง ื›ื™ ื”ืŸ ืฉื, ื›ื™ ืื™ืŸ ืœื ื• ืืช ื”ื™ื“ืข "ืœื”ืชื•ื•ื›ื—", ื•ื›ื™ ื–ื” ืžื” ืฉื›ื•ืœื ืขื•ืฉื™ื? ื›ืžื” ืคืขืžื™ื ืื ื—ื ื• ืžื’ืœื™ื, ื‘ืื™ื—ื•ืจ ืฉืœ ืฉื ื” ืื• ืฉื ืชื™ื™ื, ืฉืื ื—ื ื• ืขื•ื‘ื“ื™ื ื”ืจื‘ื” ื™ื•ืชืจ ืžื“ื™ ืงืฉื” ื•ืœื ื ื”ื ื™ื ืžื”ื™ืชืจื•ื ื•ืช ืฉืœ ื”ื›ืœื™ ืฉื‘ื—ืจื ื•? ื•ืžื” ืขื•ืฉื™ื ื‘ืžืฆื‘ ื›ื–ื”? ื”ื‘ืขื™ื” ืขื ืชืฉืชื™ื•ืช ื”ื™ื ืฉืžืื•ื“ ืงืฉื” ืœื”ื™ืคื˜ืจ ืžื”ืŸ. ื‘ืคืจื•ื™ืงื˜ ืจื™ื™ืœืก ื›ืœ ื”ืงื•ื“ ืฉืœื™ ืžื‘ื•ืกืก ืขืœ ORM. ืื ืžื—ืจ ืื ื™ ืจื•ืฆื” ืœื”ื—ืœื™ืฃ ืืช ื–ื” ืœื’ื™ืฉื” ืคื•ืงื ืฆื™ื•ื ืืœื™ืช ืœื‘ืกื™ืก ื”ื ืชื•ื ื™ื ืฆืจื™ืš ืœืฉื›ืชื‘ ื”ื›ืœ. ื‘ืคืจื•ื™ืงื˜ ืจื™ืืงื˜ ื›ืœ ื”ืงื•ื“ ืžื‘ื•ืกืก ืขืœ Virtual DOM. ืื ืžื—ืจ ืื ื™ ืจื•ืฆื” ืœื”ื—ืœื™ืฃ ืืช ื–ื” ืœื’ื™ืฉื” ืจื™ืืงื˜ื™ื‘ื™ืช ืื• ืื™ืžืคืจื˜ื™ื‘ื™ืช ืืฆื˜ืจืš ืœืฉื›ืชื‘ ืืช ื”ื›ืœ. ืืœื” ื”ื—ืœื˜ื•ืช ืฉื”ืŸ ื›ืžื• ื“ืจืš ื—ื“-ืกื˜ืจื™ืช ื‘ืคื™ืชื•ื—. ื•ืืœื” ื’ื ื”ื”ื—ืœื˜ื•ืช ืฉืื ื—ื ื• ืžืงื‘ืœื™ื ื‘ืฉืœื‘ื™ื ื”ื›ื™ ืžื•ืงื“ืžื™ื ืฉืœ ื”ืคืจื•ื™ืงื˜, ื›ืฉืœื ื™ื•ื“ืขื™ื ืขื“ื™ื™ืŸ ืžืกืคื™ืง ืขืœ ื”ื“ืจื™ืฉื•ืช, ื”ืืชื’ืจื™ื ื•ื”ืจื‘ื” ืคืขืžื™ื ื’ื ืœื ืžืกืคื™ืง ืขืœ ื”ื˜ื›ื ื•ืœื•ื’ื™ื” ืฉื‘ื—ืจื ื•. ืื– ืœื•ืงื—ื™ื ืžื” ืฉื›ื•ืœื ืœื•ืงื—ื™ื ื•ืžืงื•ื•ื™ื ืœื˜ื•ื‘. ืžื™ืงืจื• ืกืจื‘ื™ืกื™ื ืžื”ื•ื•ื™ื ืกื•ื’ ืฉืœ ืืœื˜ืจื ื˜ื™ื‘ื”, ื›ื™ ืื ื™ ื‘ื•ื ื” ืžื•ืฆืจ ืงื˜ืŸ ื™ื•ืชืจ ื•ืื– ื‘"ืžื•ืฆืจ" ื”ื‘ื ืื•ื›ืœ ืœื‘ื—ื•ืจ ืชืฉืชื™ืช ืื—ืจืช. ืื‘ืœ ื”ื ืžื›ื ื™ืกื™ื ืขื•ืœื ืฉืœื ืฉืœ ืกื™ื‘ื•ื›ื™ื ื‘ื”ื™ื‘ื˜ ืฉืœ ืชืงืฉื•ืจืช ื•ืกื™ื ื›ืจื•ืŸ ื‘ื™ืŸ ื”ืกืจื‘ื™ืกื™ื. ืคื™ืชื•ื— POC ื”ื•ื ื ื™ืกื™ื•ืŸ ื ื•ืกืฃ ืœื”ืชืžื•ื“ื“ ืขื ื”ืืชื’ืจ, ืื‘ืœ ื‘ื“ืจืš ื›ืœืœ ื’ื ื”ื•ื ืœื ืคื•ืชืจ ืืช ื”ื‘ืขื™ื” ื›ื™ ื” POC ื”ื•ื ื‘ืกื™ืกื™ ืžื“ื™ ื•ื“ื•ื•ืงื ื‘ืžืงืจื™ื ื”ืคืฉื•ื˜ื™ื ืขื•ื“ ืœื ืจื•ืื™ื ืืช ื”ื‘ืขื™ื•ืช ืฉืœ ื”ืชืฉืชื™ืช ืฉื‘ื—ืจื ื•. ืžื” ื‘ื›ืœ ื–ืืช ืืคืฉืจ (ื—ื•ืฅ ืžืœืื›ื•ืœ ืืช ื”ืœื‘ ื›ืžื•ื‘ืŸ)? ื–ื” ื›ื‘ืจ ืชืœื•ื™ ื‘ืคืจื•ื™ืงื˜. ื”ืจื‘ื” ืคืขืžื™ื ืื ื™ ืžื’ืœื” ืฉื›ืชื™ื‘ื” ืžื—ื“ืฉ ื‘ื˜ื›ื ื•ืœื•ื’ื™ื” ื™ื•ืชืจ ืžืชืื™ืžื”, ืืคื™ืœื• ืื—ืจื™ ื—ืฆื™ ืฉื ื” ืคื™ืชื•ื—, ื›ืžืขื˜ ืœื ืœื•ืงื—ืช ื–ืžืŸ, ื›ื™ ืขื™ืงืจ ื”ื”ืชืขืกืงื•ืช ื‘ืคื™ืชื•ื— ื”ืจืืฉื•ื ื™ ื”ื™ืชื” ื‘ื›ืœืœ ื‘ืœื–ื”ื•ืช ืืช ื”ื‘ืขื™ื”. ืืคืฉืจ ื‘ื”ื—ืœื˜ ืœืฉื‘ืช ืฉื‘ื•ืขื™ื™ื ื•ืœืฉื›ืชื‘ ืงื•ื“ ืฉื ื›ืชื‘ ื‘ื—ืฆื™ ืฉื ื”. ืื•ืคืฆื™ื” ืฉื ื™ื” ืื ืืคื™ืœื• ืืช ื”ืฉื‘ื•ืขื™ื™ื ื”ืืœื” ืงืฉื” ืœืžืฆื•ื, ืื• ืื ื ื–ื›ืจืชื ืžืื•ื—ืจ ืžื“ื™, ื”ื™ื ืœื”ื—ืœื™ืฃ ืชืฉืชื™ืช ืœืื˜ ื•ื‘ื–ื”ื™ืจื•ืช. ื‘ื”ืชื—ืœื” ืœื”ื•ืกื™ืฃ ืžื•ื“ื•ืœื™ื ื—ื“ืฉื™ื ื‘ืชืฉืชื™ืช ื”ื—ื“ืฉื” ื•ืื—ืจ ื›ืš ืœืื˜ ืœื”ื—ืœื™ืฃ ื“ื‘ืจื™ื ืงื™ื™ืžื™ื. ืžื” ืฉื—ืฉื•ื‘ ื”ื•ื ืœื”ืกืชื›ืœ ืขืœ ื”ืžืขืจื›ืช ื›ืœ ื”ื–ืžืŸ ื‘ืชื•ืจ ืžืฉื”ื• "ื—ื™", ื•ืœื”ื™ื–ื”ืจ ืžืœื”ื™ืชืงืข ืœืื•ืจืš ื–ืžืŸ ืขื ืชืฉืชื™ืช ืฉืจืง ืžืขื›ื‘ืช ืื•ืชื ื•, ืจืง ื‘ื’ืœืœ ืฉื”ื™ื ื”ื™ืชื” ื–ืžื™ื ื” ื‘ืชื—ื™ืœืช ื”ืคืจื•ื™ืงื˜.

ToCode
1 420
# ืืจื‘ืขื” ื›ืœืœื™ื ืœื›ืชื™ื‘ืช ืงื•ื“ ืื“ื™ื‘ ืœื ืจืง ืื ืฉื™ื ื™ื›ื•ืœื™ื ืœื”ื™ื•ืช ืื“ื™ื‘ื™ื, ื”ืชื•ืืจ ื”ื–ื” ื™ืขื‘ื•ื“ ื’ื ืขืœ ืงื•ื“ ืื ื ืงืคื™ื“ ืขืœ ืžืกืคืจ ื›ืœืœื™ื: 1. ืงื•ื“ ืื“ื™ื‘ ืœื ืขื•ืฉื” ืœืš ืขื‘ื•ื“ื”. ื”ื•ื ืœื ืžื‘ืงืฉ ืžืžืš ืฉืชืฉื“ืจื’ ื›ืœ ื™ื•ืžื™ื™ื ื•ืœื ืžื›ืจื™ื— ืื•ืชืš ืœืฉื ื•ืช ืืช ื”ืงื•ื“ ืฉืœืš ื›ืœ ืคืขื ืฉืฉื™ื“ืจื’ืช ื’ื™ืจืกื”. ืื ื›ื‘ืจ ื”ื›ื ื™ืกื• ืฉื™ื ื•ื™ื™ื ื’ื“ื•ืœื™ื ื”ื ื™ืฉืžืจื• ืขืœ ืชืื™ืžื•ืช ืื—ื•ืจื”. 2. ืงื•ื“ ืื“ื™ื‘ ื™ื•ื“ืข ืœืขื‘ื•ื“ ืงืฆืช ื‘ืฉื‘ื™ืœืš. ื”ื•ื ืœื ื›ื•ืœืœ ื”ืจื‘ื” ืชืœื•ื™ื•ืช ื•ืื ื›ื‘ืจ ื™ืฉ ื”ื•ื ื™ื‘ื™ื ืื•ืชื ืื™ืชื•. ื”ื•ื ื’ื ื™ื’ื™ืข ืขื ืชื™ืขื•ื“ ืžืงื™ืฃ ืฉื›ื•ืœืœ ื”ืจื‘ื” ื“ื•ื’ืžืื•ืช ืฉืืคืฉืจ ื›ื‘ืจ ืœืงื—ืช ื•ืœื”ืชื—ื™ืœ ืžื”ืŸ. 3. ืงื•ื“ ืื“ื™ื‘ ืœื ื™ืชื•ื•ื›ื— ื›ืฉืชื—ืœื™ื˜ ืœืขืฉื•ืช ื“ื‘ืจื™ื ืงืฆืช ืื—ืจืช ืžืžื” ืฉื”ื•ื ืชื›ื ืŸ. ื”ื•ื ื™ืชืืžืฅ ื›ื“ื™ ืœืชืช ืœืš ืœืขื‘ื•ื“ ื‘ื“ืจืš ืฉืœืš, ื•ื™ื‘ื™ืŸ ืฉื›ืœ Constraint ืฉืžื•ืกื™ืคื™ื ืœืžืขืจื›ืช ืจืง ืžืงืฉื” ืขืœ ื”ืฉื™ืžื•ืฉ ื‘ื•. 4. ืงื•ื“ ืื“ื™ื‘ ื™ืขื–ื•ืจ ืœื—ื‘ืจื™ื. ื›ืฉืืชื ืžื ืกื™ื ืœื”ืฉืชืžืฉ ื‘ื• ืœื ื‘ื“ื™ื•ืง ื›ืžื• ืฉืฆืจื™ืš ื”ื•ื ื™ื™ื“ืข ืœื”ืฆื™ื’ ื”ื•ื“ืขื•ืช ืฉื’ื™ืื” ืžืคื•ืจื˜ื•ืช ื•ืžื“ื•ื™ืงื•ืช ื•ืœื”ืกื‘ื™ืจ ืœื›ื ืžื” ื ืฉื‘ืจ ื•ืžื” ืฆืจื™ืš ืœืขืฉื•ืช ื›ื“ื™ ืœืกื“ืจ ืืช ื–ื”.

ToCode
1 420
# ื˜ื™ืค CSS: ื”ืกืชืจืช ืคื•ืงื•ืก ื›ืฉืœื•ื—ืฆื™ื ืขืœ ืœื™ื ืง ืขื ื”ืขื›ื‘ืจ ื‘ืฉื‘ื™ืœ ืœื‘ื ื•ืช ืืชืจื™ื ื ื’ื™ืฉื™ื ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื”ื•ืกื™ืฃ ืื™ื ื“ื™ืงืฆื™ื” ื•ื™ื–ื•ืืœื™ืช ื›ืฉื›ืคืชื•ืจ ื ื›ื ืก ืœืคื•ืงื•ืก, ื›ื“ื™ ืฉืžืฉืชืžืฉื™ื ื™ื•ื›ืœื• ืœื ื•ื•ื˜ ื‘ื™ืŸ ื”ื›ืคืชื•ืจื™ื ืฉืœ ื”ืืชืจ ื‘ืขื–ืจืช ืœื—ื™ืฆื” ืขืœ Tab. ื”ื‘ืขื™ื” ืฉื’ื ืœื—ื™ืฆื” ืขื ื”ืขื›ื‘ืจ ืขืœ ื›ืคืชื•ืจ ืžื›ื ื™ืกื” ืืช ื”ื›ืคืชื•ืจ ืœืคื•ืงื•ืก, ืืคื™ืœื• ืฉืžืฉืชืžืฉื™ื ื™ื•ื“ืขื™ื ืขืœ ืžื” ื”ื ืœื—ืฆื• ื•ืœื ืฆืจื™ื›ื™ื ืืช ื”ืื™ื ื“ื™ืงืฆื™ื” ื”ื–ื•. ืืคืฉืจ ืœืจืื•ืช ืืช ื”ื‘ืขื™ื” ื‘ืงื•ื“ืคืŸ ื”ื‘ื, ืคืฉื•ื˜ ืœื—ืฆื• ืขืœ ื”ื›ืคืชื•ืจ ื•ืชืจืื• ืืช ื”ืจื™ื‘ื•ืข ื”ื›ื—ื•ืœ ืฉืžื•ืคื™ืข ืกื‘ื™ื‘ื•: https://codepen.io/ynonp/pen/LYMrbzw <iframe height="300" style="width: 100%;" scrolling="no" title="Untitled" src="https://codepen.io/ynonp/embed/LYMrbzw?default-tab=html%2Cresult" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> See the Pen <a href="https://codepen.io/ynonp/pen/LYMrbzw"> Untitled</a> by Ynon Perek (<a href="https://codepen.io/ynonp">@ynonp</a>) on <a href="https://codepen.io">CodePen</a>. </iframe> ืžื” ืขื•ืฉื™ื? ืคื™ืชืจื•ืŸ ืงืœ ื”ื•ื ืœื”ื•ืกื™ืฃ ืงืฆืช JavaScript ืฉื™ื–ื”ื” ืœื—ื™ืฆื•ืช ืขื›ื‘ืจ ื•ื™ื•ืกื™ืฃ ืงืœืืก ืžื™ื•ื—ื“ ืœ body. ื‘ืœื—ื™ืฆื” ืขืœ ื˜ืื‘ ื ื•ืจื™ื“ ืืช ื”ืงืœืืก ื”ื–ื”. ื‘ CSS ื ืฆื™ื’ ืืช ื”ืื™ื ื“ื™ืงืฆื™ื” ื”ื•ื™ื–ื•ืืœื™ืช ืœืคื•ืงื•ืก ืจืง ืื ื”ืงืœืืก ืœื ื ืžืฆื ืขืœ ื” body. ืงื•ื“? ื‘ืจื•ืจ:
document.body.addEventListener("mousedown", () => {
  document.body.classList.add("using-mouse");
});
document.body.addEventListener("keydown", ({ key }) => { 
  if (key === "Tab") { 
    document.body.classList.remove("using-mouse"); 
  } 
});
ื•ื‘ืงื•ื“ืคืŸ: https://codepen.io/ynonp/pen/LYMmmEd <iframe height="300" style="width: 100%;" scrolling="no" title="Untitled" src="https://codepen.io/ynonp/embed/LYMmmEd?default-tab=html%2Cresult" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> See the Pen <a href="https://codepen.io/ynonp/pen/LYMmmEd"> Untitled</a> by Ynon Perek (<a href="https://codepen.io/ynonp">@ynonp</a>) on <a href="https://codepen.io">CodePen</a>. </iframe>

ToCode
1 420
# ื•ืžื” ืขื•ื“ ื™ื”ื™ื” ื‘ื”ืจืฆืื”? ืื—ื“ ื”ื“ื‘ืจื™ื ื”ืžืขื ื™ื™ื ื™ื ืฉืงื•ืจื™ื ื‘ืจืฉืช ื‘ืฉื ื™ื ื”ืื—ืจื•ื ื•ืช, ื•ื‘ืžื™ื•ื—ื“ ืžืื– ื” AI, ื”ื•ื ืฉื›ื‘ืจ ืœื ืฆืจื™ืš ืœืœื›ืช ืœื”ืจืฆืื•ืช ื‘ืฉื‘ื™ืœ ืœืœืžื•ื“ ื“ื‘ืจื™ื ื—ื“ืฉื™ื. ืืคืฉืจ ืœื”ื’ื™ื“ ืฉื–ื” ืืคื™ืœื• ืžื™ื•ืชืจ. ื›ืŸ ืื ื™ ื™ื›ื•ืœ ืœืจืื•ืช ื‘ื™ื•ื˜ื™ื•ื‘ ื›ืœ ื”ืจืฆืื” ืžื›ืœ ื›ื ืก, ืื‘ืœ ื”ืจื‘ื” ื™ื•ืชืจ ืžื”ืจ ืœื‘ืงืฉ ืž Chat GPT ืœืชืงืฆืจ ืœื™ ืื•ืชื” ืื• ืคืฉื•ื˜ ืœืœืžื“ ืื•ืชื™ ืžื” ืฉืจืฆื™ืชื™ ืœืœืžื•ื“ ืžืฉื. ื•ื ื›ื•ืŸ, ื”ื•ื ืขื“ื™ื™ืŸ ืœื ืžื•ืฉืœื ื•ื™ืฉ ืœื• ื”ื–ื™ื•ืช, ืื‘ืœ ืื ื™ ื—ื•ืฉื‘ ืฉื‘ื”ืกืชื›ืœื•ืช ืงื“ื™ืžื” ื–ื” ื”ื•ืœืš ืœื”ื™ืคืชืจ ื•ื“ื™ ืžื”ืจ. ืื– ืื ืœื ืฆืจื™ืš ื™ื•ืชืจ ืœืฉื‘ืช ื‘ื›ื™ืชื” ื‘ืงื‘ื•ืฆื” ื‘ืฉื‘ื™ืœ ืœืœืžื•ื“ ืืช ื”ื—ื•ืžืจ, ืœืžื” ื‘ื›ืœ ื–ืืช ืื ื—ื ื• ืžืขื“ื™ืคื™ื ืœืœืžื•ื“ ื‘ืฆื•ืจื” ื›ื–ืืช? ืžื” ืขื•ื“ ืื ื—ื ื• ืžืงื‘ืœื™ื ืžื”ืจืฆืื” ื—ื•ืฅ ืžื—ื•ืžืจ ื”ืœื™ืžื•ื“? ื”ื ื” ื›ืžื” ืจืขื™ื•ื ื•ืช: 1. ื”ืจืฆืื” ืžืจื’ื™ืฉื” ื‘ื˜ื•ื—ื” - ื›ื›ื” ืœืžื“ื ื• ืžืื– ืฉื”ื™ื™ื ื• ืงื˜ื ื™ื, ื•ื™ืฉ ืžืฉื”ื• ืžืจื’ื™ืข ื•ื‘ื˜ื•ื— ื‘ืœื”ืžืฉื™ืš ืžืฉื”ื• ืฉืขืฉื™ื ื• ืœืื•ืจืš ืฉื ื™ื ืžื’ื™ืœ ืฆืขื™ืจ. 2. ื‘ื”ืจืฆืื” ืื ื™ ืžืจื’ื™ืฉ ืฉื™ื™ืš ืœืงื‘ื•ืฆื” - ื™ืฉ ืื™ืชื™ ืขื•ื“ ืื ืฉื™ื ืฉืœื•ืžื“ื™ื ืืช ื–ื”. ืื ื™ ืœื ืœื‘ื“. 3. ื”ืจื’ืฉื” ืฉืื ื™ ื™ื•ื“ืข ืขืœ ืžื” ืžื“ื•ื‘ืจ - ืฉืื ื™ ื‘ืžืงื•ื ื”ื ื›ื•ืŸ. ืฉืื ื™ ืžื‘ื™ืŸ. ื–ื” ืžืฉื”ื• ืฉืžืื•ื“ ืงืฉื” ืœืงื‘ืœ ืž AI. 4. ื›ืฉืื ื™ ืžืฉืชืชืฃ ื•ืขื•ื ื” ืขืœ ืฉืืœื•ืช ืื ื™ ืžืจื’ื™ืฉ ืฉืžืกืชื›ืœื™ื ืขืœื™ื™ - ืื ื™ ืžืจื’ื™ืฉ ืฉืœืžื™ืฉื”ื• ื ื•ืกืฃ (ื”ืžืจืฆื”, ืฉืืจ ื”ืชืœืžื™ื“ื™ื) ืื›ืคืช ืžื” ื™ืฉ ืœื™ ืœื”ื’ื™ื“. ื”ื”ืฉืชืชืคื•ืช ื ื•ืชื ืช ืืช ื”ืชื—ื•ืฉื” ืฉื™ืฉ ืœื™ ืžื” ืœืชืจื•ื ืœืฉื™ื—ื” ื•ืžื—ื–ืงืช ืืช ื”ื”ื‘ื ื”. 5. ื‘ื”ืจืฆืื” ื™ืฉ ื“ื™ื ืžื™ืงื” ืงื‘ื•ืฆืชื™ืช - ื’ื ืื ืจื•ื‘ ื”ื–ืžืŸ ืจืง ื”ืžืจืฆื” ืžื“ื‘ืจ, ืžืกืคื™ืง ืœื”ืกืชื›ืœ ืžืกื‘ื™ื‘ ืขืœ ื–ื” ืฉื ืจื“ื, ื•ืขืœ ื–ืืช ืฉืžืชืคืจืฆืช ืขื ืฉืืœื”, ื•ืขืœ ื”ื”ื•ื ืฉืขื•ื‘ื“ ืขืœ ื”ืžื—ืฉื‘ ื‘ืื•ืชื• ื–ืžืŸ ื•ื”ืฉื ื™ื™ื ืžืงื“ื™ืžื” ืฉืžืงืฉืงืฉื™ื ืžื•ืœ ื”ืคืจืฆื•ืฃ ืฉืœ ื”ืžืจืฆื”. ืื—ืจื™ ืฉืขื” ืื ื™ ื›ื‘ืจ ืžืจื’ื™ืฉ ืžื™ื•ื“ื“ ืขื ืจื•ื‘ื. 6. ื”ืคืชืขื” - ื”ืกื™ืคื•ืจื™ื ื”ืงื˜ื ื™ื ืฉืœื ืชื›ื ื ืชื™ ืœืฉืžื•ืข ื•ืื•ืœื™ ืฉื•ื•ื™ื ื™ื•ืชืจ ืžื”ื ื•ืฉื ื”ืืžื™ืชื™. ื•ืžื” ืืชื›ื? ืžื” ืืชื ืชืžืฉื™ื›ื• ืœืงื—ืช ืžื”ืจืฆืื•ืช ืื—ืจื™ ืฉื ื•ื›ืœ ืœืœืžื•ื“ ื”ื›ืœ ืžื” AI? ืœืžื” ืขื•ื“ ืชืจืฆื• ืœื”ืžืฉื™ืš ืœื‘ื•ื?

ToCode
1 420
# ืœืžื” ืœื ื”ืชื™ื™ืืฉืชื™ ืื—ืจื™ ื”ืกื™ืคื•ืจ ืฉืœ Zecento ื‘ื—ื•ืจ ืžืฉืงื™ืข ืฉื ืชื™ื™ื ื• 15 ืืœืฃ ื“ื•ืœืจ ื‘ืคื™ืชื•ื— ืชื•ืกืฃ ืœื›ืจื•ื, ื•ื‘ืกื•ืฃ ืžืจื•ื•ื™ื— ืžื–ื” ืžืฉื”ื• ื›ืžื• 200$. ืฉื•ืง ืžืกื•ื›ืŸ? ืืœ ืชืคืชื—ื• ืกื˜ืืจื˜-ืืค? ืขื“ื™ืฃ ืœื”ื™ืฉืืจ ื‘ืขื‘ื•ื“ื” ืงื‘ื•ืขื”? ืœื ื™ื•ื“ืข, ื‘ื•ืื• ื ืงืจื ืืช ื”ืคืจื˜ื™ื: 1. ื”ืชื•ืกืฃ ืžืืคืฉืจ ืœืงื‘ืœ ืขื“ื›ื•ื ื™ื ืœื•ื•ื˜ืกืืค ื›ืฉืžื—ื™ืจ ืฉืœ ืžื•ืฆืจ ืฉืžืขื ื™ื™ืŸ ืืชื›ื ื™ื•ืจื“ ื‘ืืžื–ื•ืŸ. 2. ื”ืชื•ืกืฃ ืคืขื™ืœ ืจืง ื‘ืื™ื˜ืœื™ื” 3. ื”ืžื•ืฆืจ ื”ื•ื Freemium, ื›ืœื•ืžืจ ื”ืชื•ืกืฃ ื”ื•ื ื—ื™ื ืžื™ ืื‘ืœ ื™ืฉ ื’ื™ืจืกืช ืคืจืžื™ื•ื ืฉืขื•ืœื” ื›ืกืฃ. ืžื” ืžืกืชื‘ืจ? ืจืง ืื—ื•ื– ืžื–ืขืจื™ ืžื”ืžืฉืชืžืฉื™ื ืฉื™ื“ืจื’ื• ืœื’ื™ืจืกืช ื”ืคืจื™ืžื™ื•ื, ื•ื”ื‘ื—ื•ืจ ืœื ืžืฆืœื™ื— ืœื”ืจื•ื•ื™ื— ืžื”ืžื•ืฆืจ ืฉืœื•. ืœื ืžื–ืžืŸ ื”ื•ื ื”ืจื•ื•ื™ื— ืžืฉื”ื• ื›ืžื• 200$ ืž"ื˜ื™ืคื™ื" ื“ืจืš ื›ืคืชื•ืจ ื‘ืกื’ื ื•ืŸ Buy Me Coffee ื‘ื’ื™ืจืกื” ื”ื—ื™ื ืžื™ืช. ืžืกืงื ื•ืช: 1. ื™ืฉ ืžื•ืฆืจื™ื ืฉื™ื”ื™ื” ืงืฉื” ืžืื•ื“ ืœืžื›ื•ืจ ืื•ืชื. ื™ืฉ ื’ื ืžื•ืฆืจื™ื ืฉื™ื”ื™ื” ืงืœ ืœืžื›ื•ืจ ืื•ืชื, ื•ื‘ื›ืœ ืžืงืจื” ืจื•ื‘ ื”ืžื•ืฆืจื™ื ื™ืฆื˜ืจื›ื• ื”ืชืืžื” ืœืงื”ืœ ื™ืขื“ ื›ื“ื™ ืฉืืคืฉืจ ื™ื”ื™ื” ืœืžื›ื•ืจ ืื•ืชื (ืžื” ืฉืงื•ืจืื™ื Product/Market Fit). 2. ืœื ื›ืœ ืžื•ืฆืจ ื—ื™ื ืžื™ ื˜ื•ื‘ ื•ืฉื™ืžื•ืฉื™ ืฉื•ื•ื” ืฉื™ื“ืจื•ื’, ื‘ืžื™ื•ื—ื“ ื›ืฉื”"ืคื™ืฆ'ืจ" ืฉื”ื•ื ื ื•ืชืŸ ืœื ื ืจืื” ื›ื–ื” ื—ืฉื•ื‘ ื•ื™ืฉ ืื™ื ืกื•ืฃ ืžื•ืฆืจื™ื ื“ื•ืžื™ื ื•ื—ื™ื ืžื™ื™ื ืฉืขื•ืฉื™ื ื‘ื“ื™ื•ืง ืื•ืชื• ื“ื‘ืจ. ื•ืื•ืœื™ ื”ืžืกืงื ื” ื”ื›ื™ ื—ืฉื•ื‘ื” - ืื ื”ืžื˜ืจื” ืฉืœื›ื ื”ื™ื ืœื‘ื ื•ืช ืžื•ืฆืจ ืฉื™ืจื•ื•ื™ื— ื›ืกืฃ (ื‘ื ื™ื’ื•ื“ ืœื‘ื ื™ื™ืช ืžื•ืฆืจ ื‘ืฉื‘ื™ืœ ืขืฆืžื›ื, ื‘ืฉื‘ื™ืœ ืชื™ืง ืขื‘ื•ื“ื•ืช ืื• ื›ืœ ืกื™ื‘ื” ืื—ืจืช), ืื– ืžื•ืฆืจื™ื ื‘ืชืฉืœื•ื ื”ื ืื•ืคืฆื™ื” ืงืœื” ื‘ื”ืจื‘ื” ืžืžื•ืฆืจื™ Freemium. ื›ืฉืžื•ืฆืจ ื‘ืชืฉืœื•ื ืœื ืžืฆืœื™ื— ืื™ืŸ ืœืงื•ื—ื•ืช ื•ืืคืฉืจ ืœื–ืจื•ืง ื”ื›ืœ ื•ืœื”ืชื—ื™ืœ ืžื•ืฆืจ ื—ื“ืฉ. ืžื•ืฆืจื™ Freemium ื™ื›ื•ืœื™ื ืœื”ืฉื™ื’ ื‘ืกื™ืก ืœืงื•ื—ื•ืช ื’ื“ื•ืœ ืฉืœื ืžืฉืœื, ื•ืื ื—ื ื• ื ื›ื ืกื™ื ืœืžืขืจื‘ื•ืœืช ืฉืœ ื”ื•ืฆืื•ืช ื‘ื ื™ืกื™ื•ืŸ ืœื”ื‘ื™ืŸ ืื™ืš ืœืขืฉื•ืช ืžื–ื” ื›ืกืฃ.

ToCode
1 420
# ื”ื–ื“ืžื ื•ืช ืฉื ื™ื” ืœื ืžื–ืžืŸ ืžื™ืฉื”ื• ืฉืืœ ื‘ืจื“ื™ื˜ ืœื’ื‘ื™ ืžื•ื‘ืืงืก ื•ืื ื”ื•ื ืขื“ื™ื™ืŸ ืจืœื•ื•ื ื˜ื™. ืจื•ื‘ ื”ืชืฉื•ื‘ื•ืช ื”ื™ื• ืฉืœ ืื ืฉื™ื ืฉื‘ื—ืจื• ืืช ื”ื›ืœื™ (ืžื•ื‘ืืงืก ืื• ืจื™ื“ืืงืก) ืœืคื ื™ ื›ืžื” ืฉื ื™ื ื•ื ืฉืืจื• ืขื ื”ื‘ื—ื™ืจื”. ืขื•ื“ ื”ืจื‘ื” ืชืฉื•ื‘ื•ืช ื”ืžืœื™ืฆื• ืขืœ ื›ืœื™ื ื—ื“ืฉื™ื ื™ื•ืชืจ ื›ืžื• ื–ื•ืกื˜ื ื“ ืื• Context. ืžื” ืฉื”ื™ื” ื—ืกืจ ืœื™ ื‘ืื•ืชื• ื“ื™ื•ืŸ ื”ื•ื ืื•ืชื ืื ืฉื™ื ืฉื‘ื—ืจื• ืœืชืช ื”ื–ื“ืžื ื•ืช ืฉื ื™ื”. "ื ื™ืกื™ืชื™ ืืช ืžื•ื‘ืืงืก ืœืคื ื™ ื›ืžื” ืฉื ื™ื, ื”ื•ื ืœื ืขื‘ื“ ืœื™ ื˜ื•ื‘, ืื‘ืœ ืœื ืžื–ืžืŸ ื ื™ืกื™ืชื™ ืื•ืชื• ืžื—ื“ืฉ ื‘ืคืจื•ื™ืงื˜ ืื—ืจื™ ืžืกืคืจ ืคืจื•ื™ืงื˜ื™ื ืขื ืจื™ื“ืืงืก ื•ืืœื” ื”ื“ื‘ืจื™ื ืฉืื ื™ ื—ื•ืฉื‘ ืฉื”ื•ื ืขื•ืฉื” ื˜ื•ื‘ ื™ื•ืชืจ". ืื• "ื ื™ืกื™ืชื™ ืืช ืจื™ื“ืืงืก ืœืคื ื™ ื›ืžื” ืฉื ื™ื, ื”ื›ืœ ื”ื™ื” ืฉื ืžืกื•ื‘ืš, ืื‘ืœ ืื—ืจื™ ื›ืžื” ืคืจื•ื™ืงื˜ื™ื ืขื ืžื•ื‘ืืงืก ื—ื–ืจืชื™ ืืœื™ื• ื•ืฉืžื—ืชื™ ืœืžืฆื•ื ืืช Redux Toolkit ืฉื”ืคืš ืืช ืชื”ืœื™ืš ื”ืขื‘ื•ื“ื” ืœื”ืจื‘ื” ื™ื•ืชืจ ืคืฉื•ื˜. ื™ื—ื“ ืขื React Hooks ื ืจืื” ืฉื–ื” ืคื™ืชืจื•ืŸ ืฉืืžืฉื™ืš ืื™ืชื• ื’ื ื‘ืขืชื™ื“ ืžื”ืกื™ื‘ื•ืช ื”ื‘ืื•ืช" ื‘ื”ืชืœื‘ื˜ื•ืช ื˜ื›ื ื•ืœื•ื’ื™ืช ื‘ื™ืŸ ื›ืœื™ื ื‘ืฉืœื™ื, ืฉื•ื•ื” ืœื—ืคืฉ ืืช ืืœื” ืฉืขื‘ืจื• ื•ืฆื‘ืจื• ื ื™ืกื™ื•ืŸ ื‘ืฉืชื™ ื”ืกื‘ื™ื‘ื•ืช, ื•ืื•ืœื™ ืืคื™ืœื• ืœืžืฆื•ื ืคืจื•ื™ืงื˜ื™ื ืฉืœื”ื ืœื”ืฉื•ื•ืื”. ื”ื ื™ืชื ื• ืœื ื• ื ืงื•ื“ืช ืžื‘ื˜ ื”ืจื‘ื” ื™ื•ืชืจ ืžืขืžื™ืงื” ื•ืžืขื ื™ื™ื ืช.

ToCode
1 420
# ื”ืืชื’ืจ: ืœื”ื•ืฆื™ื ื”ื—ื•ืฆื” ืืช ื”ืชืœื•ื™ื•ืช ืจื•ื‘ ื”ืงื•ื“ ืฉืื ื™ ืจื•ืื” ืฉืœ ืžืขืจื›ื•ืช ืฉืขื•ื‘ื“ื•ืช ืขื ืจื›ื™ื‘ื™ื ื—ื™ืฆื•ื ื™ื™ื (ื›ืžื• ื‘ืกื™ืก ื ืชื•ื ื™ื) ืžืฉืœื‘ ืืช ื”ื—ืœืง ืฉืงื•ืจื ืืช ื”ืžื™ื“ืข ืขื ื”ื—ืœืง ืฉืžืขื‘ื“ ืื•ืชื• ื•ืžืกื™ืง ืžืกืงื ื•ืช. ื–ื” ื™ื›ื•ืœ ืœื”ื™ื•ืช ื‘ื’ืœืœ ืื™ืœื•ืฆื™ื ืฉืœ ORM ืื• ื‘ื’ืœืœ ืฉืื ื—ื ื• ืœื ื—ื•ืฉื‘ื™ื ืžืกืคื™ืง ืขืœ ื”ืคืจื“ื•ืช ืœืคื ื™ ืฉื›ื•ืชื‘ื™ื ืืช ื”ืงื•ื“, ืื• ืฉื—ื•ืฉื‘ื™ื ืื‘ืœ ืคื•ื—ื“ื™ื ืžื‘ืขื™ื•ืช ืชื—ื–ื•ืงื”. ืฉืชื™ ื“ื•ื’ืžืื•ืช- ื”ืงื•ื“ ืฉืœ swapi ืฉืžื—ื–ื™ืจ ืžื™ื“ืข ืขืœ ืžืœื—ืžืช ื”ื›ื•ื›ื‘ื™ื ื›ื•ืœืœ ืืช ื”ืžื—ืœืงื”:
class PeopleViewSet(viewsets.ReadOnlyModelViewSet):

    queryset = People.objects.all()
    serializer_class = PeopleSerializer
    search_fields = ('name',)

    def retrieve(self, request, *args, **kwargs):
        return super(PeopleViewSet, self).retrieve(request, *args, **kwargs)

    def list(self, request, *args, **kwargs):
        return super(PeopleViewSet, self).list(request, *args, **kwargs)
ื”ืงื•ื“ ืฉืœ kutt ื›ื•ืœืœ ืืช ื”ื‘ืœื•ืง:
export const get = async (match: Partial<Link>, params: GetParams) => {
  const query = knex<LinkJoinedDomain>("links")
    .select(...selectable)
    .where(normalizeMatch(match))
    .offset(params.skip)
    .limit(params.limit)
    .orderBy("created_at", "desc");

  if (params.search) {
    query.andWhereRaw(
      "concat_ws(' ', description, links.address, target, domains.address) ILIKE '%' || ? || '%'",
      [params.search]
    );
  }

  query.leftJoin("domains", "links.domain_id", "domains.id");

  const links: LinkJoinedDomain[] = await query;

  return links;
};
ื•ื”ื‘ืขื™ื” ื‘ืชื‘ื ื™ืช ื”ื™ื ืฉื ื•ืฆืจื” ืœื ื• ื‘ืขื™ื” ื‘ื‘ื“ื™ืงื•ืช. ื‘ืฉื‘ื™ืœ ืœื‘ื“ื•ืง ืืช ื”ืœื•ื’ื™ืงื” ืื ื—ื ื• ื—ื™ื™ื‘ื™ื ื‘ืกื™ืก ื ืชื•ื ื™ื ื›ื™ ื”ืงื•ื“ ืฉืœ ื”ืœื•ื’ื™ืงื” ื›ื‘ืจ ืžืจื™ืฅ ืืช ื”ืฉืื™ืœืชื” ืžื•ืœ ื‘ืกื™ืก ื”ื ืชื•ื ื™ื. ื‘ืฉื ื™ ื”ืžืงืจื™ื ืืคืฉืจ ืœื“ืžื™ื™ืŸ ื”ืคืจื“ื” ื‘ื™ืŸ ืฉืœื•ืฉื” ืžื ื’ื ื•ื ื™ื: 1. ื”ืงื•ื“ ืฉื‘ื•ื ื” ืืช ื”ืฉืื™ืœืชื” ืœืคื™ ืคืจืžื˜ืจื™ื 2. ื”ืงื•ื“ ืฉืฉื•ืœื— ืฉืื™ืœืชื” ืœื‘ืกื™ืก ื ืชื•ื ื™ื ื•ืžื—ื–ื™ืจ ืชืฉื•ื‘ื” 3. ื”ืงื•ื“ ืฉืžืคืขื ื— ืืช ื”ืžื™ื“ืข ืฉื—ื–ืจ ื•ืžืืจื’ืŸ ืื•ืชื• ืœืฆื•ืจืš ืฉืœื™ื—ื” ืœืžืฉืชืžืฉ ืจืง (2) ืฆืจื™ืš ืืช ื”ื’ื™ืฉื” ืœื‘ืกื™ืก ื”ื ืชื•ื ื™ื, ื•ืจืง (2) ื”ื•ื ื”ืงื•ื“ ืฉืื™ื ื• ืกืคืฆื™ืคื™ ืœืคื•ื ืงืฆื™ื” ืื• ืืคื™ืœื• ืœืžืขืจื›ืช ืžืกื•ื™ืžืช. ื›ืฉืžืฆืœื™ื—ื™ื ืœื”ื•ืฆื™ื ืืช ื”ื—ืœืง ื”ื–ื” ื•ืœืงื‘ืœ ืื•ืชื• ืžื‘ื—ื•ืฅ, ืื ื—ื ื• ืœื•ืงื—ื™ื ืฆืขื“ ืขื ืง ืงื“ื™ืžื” ืœื›ื™ื•ื•ืŸ ืงื•ื“ ืฉืงืœ ื™ื•ืชืจ ืœื‘ื“ื•ืง ืื•ืชื•, ื›ื™ ื›ื‘ืจ ืœื ืฆืจื™ืš ื‘ืกื™ืก ื ืชื•ื ื™ื ื‘ื‘ื“ื™ืงื”. ื•ื›ืŸ ื–ื” ื ืงืจื Dependency Injection ืœื“ืจื™ื™ื‘ืจ ืฉืœ ื‘ืกื™ืก ื”ื ืชื•ื ื™ื. ื•ื›ืŸ ืงืฉื” ืžืื•ื“ ืœื”ื’ื™ืข ืœืฉื ืื—ืจื™ ืฉื”ืžืขืจื›ืช ื›ืชื•ื‘ื”.

ToCode
1 420
# ืชื•ื›ื ื™ืช ืœืœื™ืžื•ื“ ืฉืคืช ืชื›ื ื•ืช ื—ื“ืฉื” (ื•ื”ืคืขื - ืกืงืืœื”) ืคืขื ืื—ืจื•ื ื” ืฉื”ืกืชื›ืœืชื™ ืขืœ ืกืงืืœื” ื”ื™ืชื” ื‘ื’ื™ืจืกื” 2 ื ืงื•ื“ื” ืžืฉื”ื•. ื”ื™ื ื ืจืืชื” ื›ืžื• ื’ื™ืจืกื” ืžื•ื–ืจื” ืฉืœ Java ืฉืžื ืกื” ืœื”ื™ื•ืช ืฉืคืช ืชื›ื ื•ืช ืคื•ื ืงืฆื™ื•ื ืืœื™ืช ืื‘ืœ ืคื—ื•ืช ื˜ื•ื‘ื” ืžืงืœื•ื–'ืจ ืื• ืืœื™ืงืกื™ืจ, ื•ืœื ืจืื™ืชื™ ืืช ื”ื˜ืขื ืœื”ืžืฉื™ืš. ืœืื—ืจื•ื ื” ื™ืฆื ืœื™ ืœื”ืกืชื›ืœ ืฉื•ื‘ ืขืœ ื”ืฉืคื”, ื”ืคืขื ื‘ื’ื™ืจืกื” 3, ื•ืื ื™ ืœื ื™ื•ื“ืข ืื ื–ื” ืื ื™ ืฉื”ืฉืชื ื™ืชื™ ืื• ืกืงืืœื” ืื‘ืœ ื”ื™ื ื ืจืื™ืช ื”ืจื‘ื” ื™ื•ืชืจ ืžื•ืฆืœื—ืช ืžืžื” ืฉื–ื›ืจืชื™, ืื– ืื ื™ ืžืชื›ื ืŸ ืœื ืกื•ืช ืฉื•ื‘ ืœืœืžื•ื“ ืกืงืืœื” ืžืืคืก. ื”ื™ืชืจื•ืŸ ื”ื›ื™ ื’ื“ื•ืœ ืฉืœ ืœืœืžื•ื“ ืฉืคื” ื—ื“ืฉื” ื‘ืกื•ืฃ 2023 ื”ื•ื ื›ืžื•ื‘ืŸ ื›ืœื™ ื” AI ืฉื”ื•ืคื›ื™ื ืืช ืชื”ืœื™ืš ื”ืœื™ืžื•ื“ ืœื”ืจื‘ื” ื™ื•ืชืจ ืžื”ื™ืจ. ื›ืœ ืคืขื ืฉืื ื™ ื ืชืงืข ืื• ืฉืžืฉื”ื• ืœื ืขื•ื‘ื“ ืื ื™ ืคืฉื•ื˜ ืžื“ื‘ื™ืง ืืช ื”ืงื•ื“ ืฉื—ืฉื‘ืชื™ ืฉืฆืจื™ืš ืœืขื‘ื•ื“ ืœ Chat GPT ืื• ืœื‘ื™ื ื’ ื•ืžื‘ืงืฉ ืžืžื ื• ืฉื™ืฆื™ืข ืชื™ืงื•ืŸ. ื•ื‘ื’ืœืœ ืฉืื ื™ ืžืžืฉ ื‘ื”ืชื—ืœื” ื”ื•ื ืžืฆืœื™ื— ื™ืคื” ืœื–ื”ื•ืช ืืช ื”ืฉื˜ื•ื™ื•ืช ืฉืœื™ ื•ืœื”ืฆื™ืข ื’ื™ืจืกืื•ืช ื™ื•ืชืจ ืชื•ืืžื•ืช ืœืฉืคื”. ืื ื™ ืœื ื™ื•ื“ืข ืื™ืš ื™ืœืš ื”ืžืกืข ืฉืœื™ ืขื ืกืงืืœื” ื•ื›ืžื” ื–ืžืŸ ื”ื•ื ื™ื™ืงื—, ืื‘ืœ ืื ื™ ืื•ื”ื‘ ื‘ืชื—ื™ืœืช ืžืกืข ืœืฉืจื˜ื˜ ืžืคื” ืฉืœ ื“ื‘ืจื™ื ืฉื”ื™ื™ืชื™ ืจื•ืฆื” ืœืžืฆื•ื. ื–ืืช ื”ืจืฉื™ืžื” ืฉืœื™ ืฉืœ ืชื•ื›ื ื™ื•ืช ืฉื ืจืื” ืœื™ ืฉื™ื”ื™ื” ืžืขื ื™ื™ืŸ ืœืžืžืฉ ื‘ืกืงืืœื” ื›ื“ื™ ืœื”ืจื’ื™ืฉ ืฉืื ื™ ืžื‘ื™ืŸ ืžื” ื”ื•ืœืš ืฉื. 1. ืžืกืคื™ืง ืกืงืืœื” ื›ื“ื™ ืฉืืคืฉืจ ื™ื”ื™ื” ืœืขื‘ื•ื“ - ืชื—ื ื” ืจืืฉื•ื ื” ืชื”ื™ื” ืœืคืชื•ืจ ืืช ื”ืชืจื’ื™ืœื™ื ื”ืจืืฉื•ื ื™ื ืฉืœ ืคืจื•ื™ืงื˜ ืื•ื™ืœืจ ื•ื›ืžื” ืฉืืœื•ืช ืž Advent Of Code ื•ื›ืœ ืžื™ื ื™ ืืชื’ืจื™ ื”ื›ื ื” ืœืจืื™ื•ื ื•ืช ืขื‘ื•ื“ื” ืจืง ื‘ืฉื‘ื™ืœ ืœืจืื•ืช ืฉืื ื™ ืžืฆืœื™ื— ืœื›ืชื•ื‘ ืงื•ื“ ื‘ืกื™ืกื™ ื‘ืฉืคื”. ืื ื™ ืžืงื•ื•ื” ืœื›ืœ ืชื•ื›ื ื™ืช ืฉืื›ืชื•ื‘ ืœื”ื•ืกื™ืฃ ื’ื ืชื•ื›ื ื™ืช ื‘ื“ื™ืงื” ื›ื“ื™ ืœื”ื‘ื™ืŸ ืื™ืš ืขื•ื‘ื“ ืžื ื’ื ื•ืŸ ื”ื‘ื“ื™ืงื•ืช ื‘ืกืงืืœื”. 2. ืคื™ืชื•ื— ืืคืœื™ืงืฆื™ื™ืช ื•ื•ื‘ ืขื ื‘ืกื™ืก ื ืชื•ื ื™ื - ื”ื™ื ืœื ื—ื™ื™ื‘ืช ืœื”ื™ื•ืช ืžืชื•ื—ื›ืžืช, ืืคื™ืœื• Backend ืœืืคืœื™ืงืฆื™ื™ืช Todos ื™ื”ื™ื” ื˜ื•ื‘ ืคื”. ื”ืžื˜ืจื” ื”ื™ื ืœืจืื•ืช ืื™ืš ืžืชืงื™ื ื™ื ื—ื‘ื™ืœื•ืช ื—ื™ืฆื•ื ื™ื•ืช, ืื™ื–ื” ืืคืฉืจื•ื™ื•ืช ืงื™ื™ืžื•ืช ืœืคื™ืชื•ื— ื•ื•ื‘ ื•ื—ื™ื‘ื•ืจ ืœื‘ืกื™ืกื™ ื ืชื•ื ื™ื ื•ืื™ืš ื ืจืื™ืช ืชื•ื›ื ื™ืช ืงืฆืช ื™ื•ืชืจ ื’ื“ื•ืœื” ื‘ืกืงืืœื”. 3. ื—ื™ื‘ื•ืจ ืœื‘ืกื™ืก ื ืชื•ื ื™ื neo4j ืขื ื˜ื™ืคื•ืกื™ื - ืœื ืืฉืงืจ, ืื—ืช ื”ืกื™ื‘ื•ืช ื”ืžืจื›ื–ื™ื•ืช ืœืœืžื•ื“ ืกืงืืœื” ื”ื™ื ื”ืขื‘ื•ื“ื” ื‘ืชื•ืš ื” JVM. ื‘ื’ืœืœ ืฉืื ื™ ื›ื‘ืจ ืžื›ื™ืจ neo4j ื•ืื•ื”ื‘ ืœืขื‘ื•ื“ ืื™ืชื•, ื”ื™ื™ืชื™ ืจื•ืฆื” ืœืจืื•ืช ืื ื”ื“ืจื™ื™ื‘ืจื™ื ืฉืœ ืกืงืืœื” ื•ืžืขืจื›ืช ื”ื˜ื™ืคื•ืกื™ื ืฉืœื” ื™ืืคืฉืจื• ืœื™ ืœืขื‘ื•ื“ ื‘ืฆื•ืจื” ื™ื•ืชืจ ื‘ื˜ื•ื—ื” ืขื ื‘ืกื™ืก ื ืชื•ื ื™ื ื–ื”. 4. ืคื™ืชื•ื— ืืคืœื™ืงืฆื™ื™ืช GUI - ืื™ืŸ ืœื™ ืžื•ืฉื’ ืื™ืš ื‘ื•ื ื™ื ืžืžืฉืง ื’ืจืคื™ ื‘ืกืงืืœื”, ื•ืื ื™ ืžืงื•ื•ื” ืฉื™ืฉ ืžืฉื”ื• ื™ื•ืชืจ ืžื•ืฆืœื— ืžืกื•ื•ื™ื ื’. ื‘ื›ืœ ืžืงืจื” ื–ื• ืชื—ื ื” ืฉืืฉืžื— ืœื‘ืงืจ ื‘ื”. ืžืฉื—ืง ืื™ืงืก ืขื™ื’ื•ืœ ืื• ืกื ื™ื™ืง ื™ื”ื™ื• ืžื•ืขืžื“ื™ื ื˜ื•ื‘ื™ื ืœืชื—ื ื” ื–ื•. 5. ื™ืฉ ืฉืžื•ืขื” ืฉืกืงืืœื” ืžืชืงืžืคืœืช ืœ Web Assembly, ื•ื–ื” ื‘ื”ื—ืœื˜ ื›ื™ื•ื•ืŸ ืฉื—ืฉื•ื‘ ืœื—ืงื•ืจ ืื•ืชื• ื”ื™ื•ื. ื•ื›ืŸ ื™ืฉ ื’ื ืืช scala-js ืื– ืฆืจื™ืš ืœืจืื•ืช ืื™ื–ื• ืืคืฉืจื•ืช ืชืขื‘ื•ื“ ื˜ื•ื‘ ื™ื•ืชืจ. ื”ืงื•ื“ ืขืฆืžื• ื™ื›ื•ืœ ืœื”ื™ื•ืช ืคืจื•ื ื˜ ืื ื“ ืœืืคืœื™ืงืฆื™ื™ืช ื”ื•ื•ื‘ ื‘ืกืงืืœื” ืฉืชื›ื ื ืชื™ ืœื›ืชื•ื‘, ืื• ืžืฉื—ืงื•ืŸ ืฆื“-ืœืงื•ื— ื‘ืœื‘ื“. 6. ืชื—ื ื” ืื—ืจื•ื ื” ืœืœื™ืžื•ื“ ืกืงืืœื” ืชื”ื™ื” ืคื™ืชื•ื— ืžืฉื”ื• ืืžื™ืชื™ ืฉืื ื™ ืฆืจื™ืš, ื•ื”ื“ื‘ืจ ื”ืจืืฉื•ืŸ ืฉืงื•ืคืฅ ืœืจืืฉ ื”ื•ื ื‘ื•ื˜ ืœืกืœืืง. ื›ืŸ ื”ืฉืžื•ืช ื“ื•ืžื™ื ื•ื’ื ื”ืจื‘ื” ื–ืžืŸ ืจืฆื™ืชื™ ื‘ื•ื˜ ืœืกืœืืง ื•ืกืคืจื™ื” ื›ืžื• ScalaBot ื ืจืื™ืช ื›ืžื• ืจืขื™ื•ืŸ ืžืื•ื“ ืื˜ืจืงื˜ื™ื‘ื™ ืฉืื•ืœื™ ื™ื—ืœื™ืฃ ื’ื ืืช ื‘ื•ื˜ ื”ื˜ืœื’ืจื ื”ืคื™ื™ืชื•ื ืื™ ืฉืœื™. ื™ื•ื“ืขื™ื ื›ื‘ืจ ืกืงืืœื” ื•ืจื•ืฆื™ื ืœื”ืฆื™ืข ืชื—ื ื•ืช ื ื•ืกืคื•ืช ืœืžืกืœื•ืœ? ืืœ ืชืชื‘ื™ื™ืฉื• ืœื”ืฉืื™ืจ ืชื’ื•ื‘ื”. ื•ื›ืžื•ื‘ืŸ ืชืจื’ื™ืฉื• ื—ื•ืคืฉื™ ืœื”ืฉืชืžืฉ ื‘ืžืกืœื•ืœ ื”ื–ื” ื›ื‘ืกื™ืก ื‘ืคืขื ื”ื‘ืื” ืฉืืชื ืจื•ืฆื™ื ืœืœืžื•ื“ ืฉืคืช ืชื›ื ื•ืช ื›ืœืฉื”ื™.