es
Feedback
ToCode

ToCode

Ir al canal en Telegram

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

Mostrar mรกs
1 419
Suscriptores
Sin datos24 horas
-17 dรญas
+230 dรญas
Archivo de publicaciones
ToCode
1 419
# ืžืงื•ื ืจื™ืง ื›ืฉื”ืชื—ืœืชื™ ืœืœืžื“ ืงื•ืจืกื™ื ื”ืคื—ื“ ื”ื›ื™ ื’ื“ื•ืœ ืฉืœื™ ื”ื™ื” ืœืกื™ื™ื ืืช ื”ืžืฆื’ืช ืœืคื ื™ ื”ื–ืžืŸ. ืœื”ืกืคื™ืง ืืช ื›ืœ ื”ื—ื•ืžืจ ืฉืœ ื”ืงื•ืจืก ื—ืžืฉ ืฉืขื•ืช ืœืคื ื™ ืฉื”ืงื•ืจืก ืืžื•ืจ ืœื”ืกืชื™ื™ื, ื•ืœื”ื™ืชืงืข ื—ืžืฉ ืฉืขื•ืช ื‘ืœื™ ืืฃ ืฉืงืฃ. ื•ืžืื—ืจ ื•ื”ืžื•ื— ื”ืื ื•ืฉื™ ืื™ืคื” ืฉืจื•ืื” ื‘ืขื™ื•ืช ืžื™ื“ ืžืžืฆื™ื ืื™ื ืกื•ืฃ ืคื™ืชืจื•ื ื•ืช, ื’ื ื”ืžื•ื— ืฉืœื™ ื”ื—ืœื™ื˜ ืฉืžื” ืฉื—ื™ื™ื‘ื™ื ืœืขืฉื•ืช ื”ื•ื ืœื›ืชื•ื‘ ืขื•ื“ ืฉืงืคื™ื. ื›ืžื” ืฉื™ื•ืชืจ ืฉืงืคื™ื. ืžืกืคื™ืง ืฉืงืคื™ื ื›ื›ื” ืฉืœื ืžืฉื ื” ื›ืžื” ืžื”ืจ ืื ื™ ืื“ื‘ืจ ื‘ืฉื™ืขื•ืจ, ื›ืžื” ืžืขื˜ ืฉืืœื•ืช ื™ื”ื™ื• ืื• ื›ืžื” ืžื”ืจ ื›ื•ืœื ื™ืกื™ื™ืžื• ืืช ื”ืชืจื’ื™ืœื™ื - ืชืžื™ื“ ื™ื”ื™ื” ืขื•ื“ ื ื•ืฉื ืฉืืคืฉืจ ืœืœืžื“. ืœืงื— ืœื™ ื–ืžืŸ ืœื”ื‘ื™ืŸ ืฉื”ืคื™ืชืจื•ืŸ ื”ื–ื” ื”ื™ื” ื™ื•ืชืจ ื’ืจื•ืข ืžื”ื‘ืขื™ื”. ื›ื™ ืขื›ืฉื™ื• ื‘ืžืงื•ื ืฉืชืœืžื™ื“ื™ื ื™ืฆืื• ืžื”ืฉื™ืขื•ืจ ืขื ื”ืจื’ืฉื” ื˜ื•ื‘ื” ืฉื”ื ื”ืกืคื™ืงื• ื•ื”ื‘ื™ื ื• ื”ื›ืœ, ื›ื•ืœื ืชืžื™ื“ ื™ืฆืื• ืขื ื”ืจื’ืฉื” ืฉื”ื ืœื ื”ืกืคื™ืงื• ืžืฉื”ื•. ืœื›ืœ ืื—ื“ ื”ื™ื” ืื™ื–ื” ื ื•ืฉื ืฉื”ื•ื ืžืฆื‘ ื‘ืžืฆื’ืช ื”ืื™ื ืกื•ืคื™ืช ืฉืœื™ ืฉื“ื•ื•ืงื ืžืื•ื“ ืขื ื™ื™ืŸ ืื•ืชื•, ื•ื”ื•ื ืœื ื”ื‘ื™ืŸ ืœืžื” ื”ืฉื™ืขื•ืจ ื ื’ืžืจ ื‘ืœื™ ืฉื”ืกืคืงื ื• ืœื“ื‘ืจ ืขืœ ื”ื“ื‘ืจ ื”ืžืื•ื“ ื—ืฉื•ื‘ ื”ื–ื”. ืœื™ืžื™ื ืœืžื“ืชื™ ืฉื‘ืขื™ื” ื“ื•ืžื” ืงื™ื™ืžืช ื’ื ื‘ืชืขืฉื™ื”. ืžื ื”ืœื™ ืคื™ืชื•ื— ืฉืคื•ื—ื“ื™ื ืžืžืชื›ื ืชื™ื ืฉื™ืกื™ื™ืžื• ืœืคื ื™ ื”ื–ืžืŸ (ืžืฉืื‘ ืžื‘ื•ื–ื‘ื–), ืžืจื›ื–ื™ื ื™ื•ืชืจ ืžื“ื™ ืžืฉื™ืžื•ืช ื‘ื›ืœ ืกืคืจื™ื ื˜ ื•ืžืชืขื“ืคื™ื ืืช ื”ืžืฉื™ืžื•ืช, ืžืชื•ืš ื›ื•ื•ื ื” ื‘ืจื•ืจื” ืฉืœื ื”ื›ืœ ื™ื‘ื•ืฆืข, ืื‘ืœ ืื ื›ืŸ ื™ื”ื™ื” ื™ื•ืชืจ ื–ืžืŸ ืขื“ื™ืฃ ืฉืชื”ื™ื” ืœื ื• ืชื•ื›ื ื™ืช ืžืืฉืจ ืฉืื ืฉื™ื ื™ืฉืชืขืžืžื•. ืื– ื‘ื•ืื• ื ื“ืžื™ื™ืŸ ืจื’ืข - ืžื” ื‘ืืžืช ืงื•ืจื” ื›ืฉืื ืฉื™ื ืžืฉืชืขืžืžื™ื? ืžื” ื‘ืืžืช ืงื•ืจื” ื›ืฉืื ื—ื ื• ืžืจืฉื™ื ืœืขืฆืžื ื• ืœืชื›ื ืŸ ืงืฆืช ืคื—ื•ืช ืžืžื” ืฉืืคืฉืจ ืœื‘ืฆืข? ื‘ืงื•ืจืกื™ื ืขืฉื™ืชื™ ืืช ื”ื ื™ืกื•ื™ ื”ื–ื” ื›ืžื” ืคืขืžื™ื ื•ื”ืชื•ืฆืื•ืช ื”ืคืชื™ืขื• ืœื˜ื•ื‘ื”. ื‘ื™ืŸ ื”ื“ื‘ืจื™ื ืฉืงืจื•: 1. ืื ืฉื™ื ืฉืืœื• ื™ื•ืชืจ ืฉืืœื•ืช - ืคืฉื•ื˜ ื›ื™ ื”ื ื”ืจื’ื™ืฉื• ืฉื”ืื•ื•ื™ืจื” ื”ืจื’ื•ืขื” ื™ื•ืชืจ ืžืืคืฉืจืช ืืช ื–ื” (ืื™ืŸ ืฉื•ื ื—ื•ืžืจ ืฉื”ื "ืืžื•ืจื™ื" ืœื”ืกืคื™ืง) 2. ื›ืฉื‘ืืžืช ื ืฉืืจ ื–ืžืŸ ืคื ื•ื™ ืœืงืจืืช ืกื•ืฃ ื”ื™ื•ื, ืื ืฉื™ื ื”ืขืœื• ื ื•ืฉืื™ื ืฉืžืขื ื™ื™ื ื™ื ืื•ืชื ื•ืจืฆื• ืœืฉืžื•ืข ื™ื•ืชืจ ืขืœื™ื”ื. 3. ื•ื›ืŸ ืœืคืขืžื™ื ื’ื ืื ืฉื™ื ื”ืœื›ื• ื”ื‘ื™ืชื” ื—ืฆื™ ืฉืขื” ืงื•ื“ื. ืœืคืขืžื™ื ืชืœืžื™ื“ ืื—ื“ ืื• ืฉื ื™ื™ื ื ื™ืฆืœื• ืืช ื–ื” ืฉื”ื›ื™ืชื” ื”ืชืจื•ืงื ื” ื•ื ืฉืืจื• ืœืฉืื•ืœ ืื•ืชื™ ืฉืืœื•ืช ืฉืจืœื•ื•ื ื˜ื™ื•ืช ืœืขื‘ื•ื“ื” ื”ืกืคืฆื™ืคื™ืช ืฉืœื”ื. ื‘ืขื‘ื•ื“ื” ืฉื•ื˜ืคืช ืฉืœ ืชื›ื ื•ืช, ืื ื™ืฉ ืคื—ื•ืช ืžื“ื™ ืžืฉื™ืžื•ืช ื‘ืกืคืจื™ื ื˜ ืื ื™ ื™ื›ื•ืœ ืœื“ืžื™ื™ืŸ ืฉืžืชื›ื ืชื™ื ื™ื›ืชื‘ื• ืงื•ื“ ืื™ื›ื•ืชื™ ื™ื•ืชืจ, ืฉื™ืฉืงื™ืขื• ื™ื•ืชืจ ื–ืžืŸ ื‘ื”ืชืžื•ื“ื“ื•ืช ืขื ืชืงืœื•ืช, ื‘ืชื›ื ื•ืช ื‘ื“ื™ืงื•ืช ื ื›ื•ื ื•ืช, ื‘ื›ืชื™ื‘ืช ืชื™ืขื•ื“ ื•ื‘ืคื™ืชื•ื— ืชืฉืชื™ื•ืช ืฉื™ืืคืฉืจื• ื”ืžืฉืš ืคื™ืชื•ื— ืžื”ื™ืจ. ืื ื™ืฉ ื™ื•ืชืจ ืžื“ื™ ืžืฉื™ืžื•ืช ื‘ืกืคืจื™ื ื˜, ื’ื ืื ืžืฉื™ืžื•ืช ืžืกื•ื™ืžื•ืช ืžื•ื’ื“ืจื•ืช ื‘ืชื™ืขื“ื•ืฃ ื ืžื•ืš, ืื ื—ื ื• ื ืขื“ื™ืฃ ืœืกื™ื™ื ื›ืžื” ืฉื™ื•ืชืจ ืžื”ืžืฉื™ืžื•ืช ื‘ืจืฉื™ืžื” ื’ื ืขืœ ื—ืฉื‘ื•ืŸ ื”ืื™ื›ื•ืช. ื›ื›ื” ื”ืžื•ื— ื”ืื ื•ืฉื™ ืขื•ื‘ื“. ื .ื‘. ืื ืขืฉื™ืชื ื ื™ืกื•ื™ ื›ื–ื” ื‘ืฆื•ื•ืช ืฉืœื›ื ื•ื ืชืชื ืœืื ืฉื™ื ื™ื•ืชืจ ื—ื•ืคืฉ ืคืขื•ืœื”, ืืฉืžื— ืœืฉืžื•ืข ืžื” ื”ื™ื• ื”ืชื•ืฆืื•ืช - ืžื•ื–ืžื ื™ื ืœืฉืชืฃ ื‘ืชื’ื•ื‘ื•ืช ืคื” ืžืชื—ืช ืœืคื•ืกื˜.

ToCode
1 419
# ืœืžื” ืœื ืœืงื—ืชื™ ืืช ื“ืŸ ืื‘ืจืžื•ื‘ ืœืขื‘ื•ื“ื” ืœื ืžื–ืžืŸ ืจืื™ืชื™ ืืช ื”ื•ื™ื“ืื• ืฉืœ ื‘ืŸ ืขื•ื•ืื“ ืฉืขื•ืฉื” ืจืื™ื•ืŸ ืขื‘ื•ื“ื” ืคื™ืงื˜ื™ื‘ื™ ืœื“ืŸ ืื‘ืจืžื•ื‘. ืื ืœื ืจืื™ืชื ืขื“ื™ื™ืŸ ื•ื‘ื ืœื›ื ืœืจืื•ืช ืืช ื“ืŸ ืื‘ืจืžื•ื‘ ื ืื‘ืง ืขื CSS ืฉื•ื•ื” ืœื”ื™ื›ื ืก ืœื›ืืŸ: https://www.youtube.com/watch?v=XEt09iK8IXs. ืื‘ืœ ื”ื•ื•ื™ื›ื•ื— ืฉืœื™ ืขื ื“ืŸ ืื‘ืจืžื•ื‘ ืœื ื”ื™ื” ืขืœ CSS ืืœื ืขืœ ื ืงื•ื“ื” ื™ื•ืชืจ ืขื“ื™ื ื” ืฉืœ ืื‘ื˜ื—ืช ืžื™ื“ืข. ื‘ืื•ืชื• ืจืื™ื•ืŸ ืขื•ื•ืื“ ืฉื•ืืœ ืืช ืื‘ืจืžื•ื‘ ืžื” ื“ืขืชื• ืขืœ dangerouslySetInnerHTML ื•ืื‘ืจืžื•ื‘ ืžื’ื™ื‘ ื‘ืื™ ื ื—ืช ื ื™ื›ืจืช. ืฉื ื™ื”ื ืžืกื›ื™ืžื™ื ืฉืžืฉื”ื• ื‘ API ื”ื–ื” ืžืกื•ืจื‘ืœ ื•ื”ื”ืกื‘ืจ ืฉืœ ืื‘ืจืžื•ื‘ ื”ื•ื ืžืขื ื™ื™ืŸ. ื ื–ื›ื™ืจ ืจืง ืฉื‘ API ืฉืœ ืจื™ืืงื˜ ื”ื ืจืฆื• ืœื”ื™ื•ืช ืžืื•ื“ ื‘ืจื•ืจื™ื ื›ืฉืžื™ืฉื”ื• ืคื•ืชื— ื“ืœืช ืœืคื™ืจืฆืช XSS ื•ืœื›ืŸ ื‘ืžืงื•ื ืœืงืจื•ื ืœืžืืคื™ื™ืŸ ืฉืžืขื“ื›ืŸ ืืช ื” innerHTML ืฉืœ ืืœืžื ื˜ ื‘ืžืฉื”ื• ืคืฉื•ื˜ ื›ืžื• setInnerHTML ื”ื ื”ื•ืกื™ืคื• ืืช ื”ืžื™ืœื” dangerously. ืื‘ืœ ื–ื” ืœื ื”ื›ืœ. ื›ื™ ื‘ืฉื‘ื™ืœ ืœื”ื’ื“ื™ืจ ืืช ื” innerHTML ืฆืจื™ืš ืœื”ืขื‘ื™ืจ ืœืžืืคื™ื™ืŸ dangerouslySetInnerHTML ืื•ื‘ื™ืงื˜ ืขื ืžืคืชื— ื‘ืฉื ืžื™ื•ื—ื“ __html, ื›ืœื•ืžืจ ืžืฉื”ื• ื›ื–ื”:
<div dangerouslySetInnerHTML={{ __html: "Hello" }}></div>
ื”ื˜ืขื ื” ืฉืœ ืื‘ืจืžื•ื‘ ื”ื™ืชื” ืฉื”ื‘ืขื™ื” ื‘ API ื”ื–ื” ื”ื™ื ืฉื”ืžื™ืœื” dangerous ื”ื™ื ื‘ืžืงื•ื ื”ืœื ื ื›ื•ืŸ, ื•ืขื“ื™ืฃ ื”ื™ื” ืœืฉื™ื ืื•ืชื” ื‘ืชื•ืจ ื”ืžืคืชื— ื‘ืื•ื‘ื™ืงื˜ ืฉื”ืžืืคื™ื™ืŸ ืžืงื‘ืœ, ื›ืœื•ืžืจ ื”ื•ื ื”ื™ื” ืจื•ืฆื” ืœืจืื•ืช ืงืจื™ืื” ื›ื–ืืช:
<div html={{ __dangerousHTML: "Hello" }}></div>
ื•ื”ืกื™ื‘ื” ืœื˜ืขื ืชื• ื”ื™ื ืื‘ื˜ื—ื” ื˜ื•ื‘ื” ื™ื•ืชืจ ื›ืฉืฉื ื™ ื”ื—ืœืงื™ื ืจื—ื•ืงื™ื ืื—ื“ ืžื”ืฉื ื™. ืœื“ื•ื’ืžื” ื ื“ืžื™ื™ืŸ ืฉื‘ืงื•ื‘ืฅ ืื—ื“ ื™ืฉ ืœื ื• ืืช ื”ืคื•ื ืงืฆื™ื”:
// file utils.js
export function alertHtml() {
    return { __html: "<b>alert</b>" };
}
ื•ื‘ืงื•ื‘ืฅ ืฉื ื™ ื”ืงื˜ืข:
import { alertHtml } from './utils.js';

<div dangerouslySetInnerHTML={alertHtml()}></div>
ืื ื—ื•ืงืจื™ ืื‘ื˜ื—ื” ื™ืจื™ืฆื• grep ื•ื™ื—ืคืฉื• ืืช ื”ืžื™ืœื” dangerouslySetInnerHTML - ืื– ื‘ื’ื™ืจืกื” ื”ื ื•ื›ื—ื™ืช ืฉืœ ื”ืžืžืฉืง ื”ื ื™ื’ื™ืขื• ืœื—ืœืง ื”ืฉื ื™, ืื‘ืœ ืœืคื™ ื“ืŸ ืื‘ืจืžื•ื‘ ื–ื” ืœื ื”ื—ืœืง ืฉื—ืฉื•ื‘ ืœื—ืงื•ืจ, ื›ื™ ื”ื—ืœืง ื”ืจืืฉื•ืŸ ื”ื•ื ื–ื” ืฉื›ื•ืœืœ ืืช ื” HTML ื”ืžืงื•ืจื™ ื•ืฉื ืฆืจื™ืš ืœื”ืกืชื›ืœ ื•ืœืจืื•ืช ืฉื” HTML ืื›ืŸ ื‘ื˜ื•ื— ืœืฉื™ืžื•ืฉ. ื•ืื– ื”ื‘ื ืชื™ ืฉื“ืŸ ื•ืื ื™ ื›ื ืจืื” ืœื ื ืขื‘ื•ื“ ื™ื—ื“. ืื• ืœืคื—ื•ืช ืœื ื ืกื›ื™ื ืขืœ ื ื•ืฉืื™ ืื‘ื˜ื—ืช ืžื™ื“ืข. ืื—ื“ ื”ื›ืœืœื™ื ื”ื—ืฉื•ื‘ื™ื ื‘ื›ืชื™ื‘ืช ืงื•ื“ ืžืื•ื‘ื˜ื— ื”ื•ื ืœื‘ื“ื•ืง ืืช ื”ืงืœื˜ ื›ืžื” ืฉื™ื•ืชืจ ืงืจื•ื‘ ืœืคืขื•ืœื” ื”ืžืกื•ื›ื ืช, ื›ื™ ื›ืžื” ืฉืชื‘ื“ื•ืง ื™ื•ืชืจ ืจื—ื•ืง ื“ื‘ืจื™ื ืจืขื™ื ื™ื›ื•ืœื™ื ืœืงืจื•ืช ื‘ื™ืŸ ื”ืคื•ื ืงืฆื™ื” ืฉื‘ื” ื‘ื“ืงืช ืœื‘ื™ืŸ ื”ืžืงื•ื ืฉื‘ื• ืžืฉืชืžืฉื™ื ื‘ืงืœื˜ ื›ื“ื™ ืœืขืฉื•ืช ืื™ืชื• ืคืขื•ืœื” ืžืกื•ื›ื ืช. ืœื“ื•ื’ืžื”: 1. ืื ืื ื™ ืฆืจื™ืš ืœืžื—ื•ืง ืงื•ื‘ืฅ, ืื ื™ ืื•ื•ื“ื ืฉืฉื ื”ืงื•ื‘ืฅ ืžืชืื™ื ืœืชื‘ื ื™ืช ืฉืื ื™ ืจื•ืฆื” ืœืžื—ื•ืง ื•ืฉื”ืชื™ืงื™ื” ืžืชืื™ืžื” ืœืชื™ืงื™ื” ืฉื‘ื” ืื ื™ ืžื•ื—ืง ืงื‘ืฆื™ื ื‘ื“ื™ื•ืง ืœืคื ื™ ื”ืžื—ื™ืงื”, ื•ืœื ื›ืฉืื ื™ ืžืงื‘ืœ ืืช ื”ืคืจืžื˜ืจ ืžื”ืžืฉืชืžืฉ. 2. ืื ืื ื™ ืฆืจื™ืš ืœืคื ื•ืช ืœื‘ืกื™ืก ื”ื ืชื•ื ื™ื, ืื ื™ ืืขืฉื” Quoting ืœืงืœื˜ ื”ื—ื™ืฆื•ื ื™ ืžืžืฉ ืœืคื ื™ ืฉืœื™ื—ืช ื”ืฉืื™ืœืชื” ืœื‘ืกื™ืก ื”ื ืชื•ื ื™ื (ืจืฆื•ื™ ื‘ืืžืฆืขื•ืช ืฉื™ืžื•ืฉ ื‘ Bound Variables). 3. ื•ืื ืื ื™ ืฆืจื™ืš ืœื›ืชื•ื‘ HTML ืœืžืกืš, ืื ื™ ืื•ื•ื“ื ืฉื” HTML ื”ื–ื” ื ืงื™ ื›ืžื” ืฉื™ื•ืชืจ ืงืจื•ื‘ ืœืคืงื•ื“ื” ืฉื›ื•ืชื‘ืช ืื•ืชื• ืœืžืกืš, ื›ืœื•ืžืจ ื”ืคื•ืงื•ืก ืฉืœื™ ื‘ืืžืช ืžืชื—ื™ืœ ื‘ืงื˜ืข ื”ืฉื ื™ ื‘ืžืืคื™ื™ืŸ dangerouslySetInnerHTML.

ToCode
1 419
ื‘ื“ืจืš ื›ืœืœ pull ืขื•ืฉื” fetch ื•ืื– merge; ืื‘ืœ ื”ืžืชื’ --rebase ื’ื•ืจื ืœ pull ืœืขืฉื•ืช fetch ื•ืื– rebase. ื•ื–ื” ืžืœื”ื™ื‘ ื›ื™ ื”ื•ื ื‘ืขืฆื ื™ื™ืงื— ืืช ื›ืœ ื”ืฉื™ื ื•ื™ื™ื ืžื”ืขื ืฃ origin/main ืืœื™ื ื• ื•ืื– ื™ืจื™ืฅ ืขืœื™ื• ืจืง ืืช ื”ืฉื™ื ื•ื™ื™ื ืฉืื ื™ ืขืฉื™ืชื™ ื‘ืขื ืฃ main ืฉืœื™. ื‘ืžืงืจื” ื”ืจืืฉื•ืŸ ื”ืคืงื•ื“ื” ืชื–ื”ื” ืฉืืฆืœื™ ืื™ืŸ ืงื•ืžื™ื˜ื™ื ื‘ืขื ืฃ ื•ืœื›ืŸ ืจืง ืชื–ื™ื– ืืช main ืœืžืงื•ื ื”ื ื›ื•ืŸ. ื‘ืžืงืจื” ื”ืฉื ื™ ื”ืคืงื•ื“ื” ืชื–ื™ื– ืืช main ืœืืŸ ืฉ origin/main ื ืžืฆื ื•ืื– ืชื ืกื” "ืœื”ืคืขื™ืœ ืžื—ื“ืฉ" ืืช ื”ืฉื™ื ื•ื™ื™ื ืžื”ืงื•ืžื™ื˜ื™ื ื”ื—ื“ืฉื™ื ื™ื•ืชืจ. ื’ื™ื˜ ืžืกืคื™ืง ื—ื›ื ื‘ืฉื‘ื™ืœ ืœื–ื”ื•ืช ืฉื”ืงื•ืžื™ื˜ ื”ื™ื—ื™ื“ ืฉื™ืฉ ืืฆืœื™ ืฉืœื ื ืžืฆื ื‘ืขื ืฃ ืฉืœ origin/main ื”ื•ื ื”ื™ืกื˜ื•ืจื™ ื•ื™ืชืขืœื ืžืžื ื• ื•ื”ืชื•ืฆืื” ืชื”ื™ื” ื™ื™ืฉื•ืจ ืฉืœ ื”ืžืื’ืจ ื”ืžืงื•ืžื™ ืฉืœื™ ืขื ื”ืžืื’ืจ ื”ืžืจื•ื—ืง. ื•ื‘ืžืงืจื” ื”ืฉืœื™ืฉื™ ืฉื•ื‘ ื”ืคืงื•ื“ื” ืชื–ื™ื– ืืช main ืœืืŸ ืฉ origin/main ื ืžืฆื ื•ืื– ืชืคืขื™ืœ ืžื—ื“ืฉ ืืช ื”ืงื•ืžื™ื˜ ื”ื—ื“ืฉ ืฉืื ื™ ื™ืฆืจืชื™. ื”ืฉื™ื ื•ื™ ื™ื™ืฉืžืจ ื•ื™ืงื‘ืœ ืžื–ื”ื” ืงื•ืžื™ื˜ ื—ื“ืฉ ื•ื”ืžืื’ืจ ื”ืžืงื•ืžื™ ืฉืœื™ ื™ื™ืฉืืจ ืœื™ื ืืจื™ ืœื’ืžืจื™.

ToCode
1 419
# ืžื” ืงื•ืจื” ื›ืฉืžื•ืฉื›ื™ื ืžืื’ืจ ืฉืžื™ืฉื”ื• ืฉื™ื ื” ืžืจื—ื•ืง ืœื ืžื–ืžืŸ ืจืื™ืชื™ ื—ื‘ืจ ืžื•ืฉืš ืžืื’ืจ ืžืจื•ื—ืง ื•ืœืคื ื™ ืฉื”ืคืขื™ืœ git pull ื”ื•ื ืžื—ืง ืืช ื”ืขื ืฃ ืฉืื•ืชื• ื”ื•ื ืจืฆื” ืœืžืฉื•ืš. ื›ืฉืฉืืœืชื™ ืœืžื” ื”ื•ื ื”ืกื‘ื™ืจ ืฉื”ื•ื ื™ื•ื“ืข ืฉืžื™ืฉื”ื• ื“ื—ืฃ ืฉื™ื ื•ื™ื™ื ืขื force ื•ืœื›ืŸ ื“ื‘ืจื™ื ืจืขื™ื ื™ืงืจื• ืื ื”ื•ื ื™ืคืขื™ืœ pull ืจื’ื™ืœ (ื”ื•ื ืฆื•ื“ืง ื‘ื–ื”). ื‘ืกื•ืฃ ื”ืคื•ืกื˜ ืืจืื” ืคื™ืชืจื•ืŸ ื™ื•ืชืจ ืคืฉื•ื˜ ืžืžื—ื™ืงืช ื”ืขื ืฃ, ืื‘ืœ ื‘ื™ื ืชื™ื™ื ื‘ื•ืื• ื ื“ื‘ืจ ืงืฆืช ืขืœ ื”ื“ื‘ืจื™ื ื”ืจืขื™ื ืฉืงื•ืจื™ื ื›ืฉืžื™ืฉื”ื• ืžืฉื ื” ื”ื™ืกื˜ื•ืจื™ื” ืžืจื—ื•ืง: ## ืื ืจืง ืžื—ืงื• ืงื•ืžื™ื˜ื™ื ื”ืฉืืœื” ืžื” ืงื•ืจื” ื›ืฉืื ื™ ืžื•ืฉืš ืฉื™ื ื•ื™ื™ื ืœื ืฆืคื•ื™ื™ื ืงืฉื•ืจื” ืœืื™ื–ื” ืฉื™ื ื•ื™ื™ื ื ืขืฉื•. ื ืชื—ื™ืœ ืขื ื”ืžืงืจื” ื”ืคืฉื•ื˜ ื‘ื• ืžืชื›ื ืช ืื—ื“ ื‘ื™ื˜ืœ ืืช ื”ืงื•ืžื™ื˜ ื”ืื—ืจื•ืŸ ืฉื‘ืขื ืฃ ื•ื“ื—ืฃ ืืช ื”ืฉื™ื ื•ื™ ืขื force, ื•ืžืชื›ื ืช ืื—ืจ ืžื•ืฉืš ืืช ื”ืฉื™ื ื•ื™ื™ื. ื›ืœื•ืžืจ ื‘ืžื—ืฉื‘ ืื—ื“ ืžืจื™ืฆื™ื:
$ git reset --hard HEAD~
$ git push --force
ื•ืฉื™ืžื• ืœื‘ ืฉืื™ืŸ ืฆื•ืจืš ืœื”ืคืขื™ืœ commit ื›ื™ ืื ื™ ืœื ื™ื•ืฆืจ ืฉื•ื ืฉื™ื ื•ื™ ื—ื“ืฉ ืืœื ืจืง ื“ื•ื—ืฃ ืืช ื”ืขื ืฃ ื”ืžืจื•ื—ืง ืœืงื•ืžื™ื˜ ืื—ื“ ืื—ื•ืจื”. ื‘ืžื—ืฉื‘ ื”ืฉื ื™ ืžืจื™ืฆื™ื:
$ git pull
ื‘ืžืฆื‘ ื›ื–ื” ื”ืคืœื˜ ืฉืœ ื”ืžืฉื™ื›ื” ื™ื”ื™ื”:
From github.com:ynonp/pull-after-change
 + 4db20b1...8ef1cf5 main       -> origin/main  (forced update)
Already up to date.
ื•ื”ืœื•ื’ ื™ืจืื” ื‘ืขืจืš ื›ืš:
* 4db20b1 (HEAD -> main) add g.txt
* 8ef1cf5 (origin/main, origin/HEAD) replaced e with f
* 2d31fbd replaced c with d
* 24d6085 (dev) initial commit
ืื ื—ื ื• ืจื•ืื™ื ืฉ origin/main ื–ื– ืงื•ืžื™ื˜ ืื—ื“ ืื—ื•ืจื”, ื•ื”ืงื•ืžื™ื˜ main ืขื“ื™ื™ืŸ ื ืžืฆื ื‘ืžื—ืฉื‘ ื”ืฉื ื™. ืื ื”ืงื•ืžื™ื˜ origin/main ื”ื™ื” ืงื“ื™ืžื” ื™ื•ืชืจ ื›ืžื• ื‘ืžืฆื‘ ืจื’ื™ืœ, ืื– ื’ื™ื˜ ื”ื™ื” ืžื‘ืฆืข Fast Forward Merge ื•ืžื–ื™ื– ืงื“ื™ืžื” ืืช main; ืื‘ืœ ืœื’ื™ื˜ ืื™ืŸ ืžื ื’ื ื•ืŸ ืฉืœ Fast Backwards Merge ื•ื›ื›ื” ื ืชืงืขื ื• ืฉื”ืžื—ืฉื‘ ืฉืœื ื• "ื™ื•ืชืจ ืงื“ื™ืžื”" ืžื”ืงื•ืžื™ื˜ ื”ืขื“ื›ื ื™ ื‘ื™ื•ืชืจ ื‘ืฉืจืช. ืื ื”ื™ื™ื ื• ืžื•ื—ืงื™ื ืžืจืืฉ ืืช ื”ืขื ืฃ ื”ื›ืœ ื”ื™ื” ืžืกืชื“ืจ, ื•ืขื•ื“ ื“ืจืš ืœืฆืืช ืžื–ื” ื”ื™ื:
$ git reset --hard origin/main
(ื•ื‘ืฉื‘ื™ืœ ื”ื“ืจืš ื”ื›ื™ ื˜ื•ื‘ื” ืœืฆืืช ืžื–ื” ืชืฆื˜ืจื›ื• ืœื”ืžืฉื™ืš ืœืงืจื•ื ืขื“ ืœืกื•ืฃ ื”ืคื•ืกื˜). ## ืื ื’ื ื”ื•ืกื™ืคื• ืงื•ืžื™ื˜ ื—ื“ืฉ ืžืฆื‘ ื™ื•ืชืจ ืžื‘ืœื‘ืœ ืงื•ืจื” ื›ืฉื”ืžืชื›ื ืช ื‘ืžื—ืฉื‘ ื”ืจืืฉื•ืŸ ืœื ืจืง ืžื‘ื˜ืœ ืืช ื”ืงื•ืžื™ื˜ ื”ืื—ืจื•ืŸ ืืœื ื’ื ืžื•ืกื™ืฃ ืงื•ืžื™ื˜ ื—ื“ืฉ. ื›ืœื•ืžืจ ืžืฉื”ื• ื›ื–ื”:
$ git reset --hard HEAD~

$ date > newfile.txt
$ git add newfile.txt
$ git commit -m 'yay'

$ git push --force
ื”ืคืขื ื›ืฉื”ืžืชื›ื ืช ื‘ืžื—ืฉื‘ ื”ืฉื ื™ ื™ืžืฉื•ืš ืืช ื”ืžืื’ืจ ื”ื•ื ื™ื’ืœื” ืฉื”ืงื•ืžื™ื˜ ื”ืขื“ื›ื ื™ ื‘ื™ื•ืชืจ ืื™ื ื• ืžื•ื›ืจ ืœื•. ื ืคืขื™ืœ git fetch ืžื”ืžื—ืฉื‘ ื”ืฉื ื™ ื‘ืฉื‘ื™ืœ ืœื”ื‘ื™ืŸ ืืช ื”ื“ื•ื’ืžื” ืœืื˜. ื”ืœื•ื’ ื ืจืื” ื›ืš:
$ git log --oneline --graph
* 2d31fbd (HEAD -> main) replaced c with d
* 24d6085 (dev) initial commit
ื•ืœื ื›ื•ืœืœ ืืช origin/master, ื•ื”ืœื•ื’ ืž origin/master ื ืจืื” ื›ืš:
$ git log --oneline --graph
* a346d40 (origin/main, origin/HEAD) add f.txt
* 24d6085 (dev) initial commit
ืืคืฉืจ ืœืจืื•ืช ืฉื”ืงื•ืžื™ื˜ ื”ืžืฉื•ืชืฃ ืœืฉื ื™ ื”ืœื•ื’ื™ื ื”ื•ื 24d6085. ื”ืฆืขื“ ื”ื‘ื ืฉืœ pull ื”ื•ื merge, ื•ื ื™ืกื™ื•ืŸ ืœืขืฉื•ืช merge ืœืฉื ื™ ื”ืขื ืคื™ื ื™ื”ื™ื” ื›ืžื• ื›ืœ merge ืจื’ื™ืœ, ื›ืœื•ืžืจ ื’ื™ื˜ ื™ื–ื”ื” ืืช ื”ืฉื™ื ื•ื™ื™ื ืฉื›ืœ ืื—ื“ ืขืฉื” ืž 24d6085 ื•ื™ืฉืœื‘ ืื•ืชื ืœืงื•ืžื™ื˜ ื—ื“ืฉ. ื•ื–ื” ืžืžืฉ ืœื ืžื” ืฉืฆืจื™ืš ืœืขืฉื•ืช. ื›ื™ merge ื›ื–ื” ื‘ืขืฆื ืžืฉืœื‘ ืืช ื”ืฉื™ื ื•ื™ื™ื ืฉื™ืฉ ืืฆืœื™ (ืฉื‘ remote ื ืžื—ืงื•) ืขื ื”ืงื•ืžื™ื˜ ื”ื—ื“ืฉ ืžื” remote, ื•ื™ื›ื ื™ืก ื‘ื—ื–ืจื” ืืช ืื•ืชื ืงื‘ืฆื™ื ืื• ืฉื™ื ื•ื™ื™ื ืฉืžื™ืฉื”ื• ืžืจื—ื•ืง ื ื™ืกื” ืœืžื—ื•ืง. ืื ื—ื ื• ืœื ืฆืจื™ื›ื™ื ื›ืืŸ merge ืืœื reset - ืœื”ืขื‘ื™ืจ ืืช ื”ืขื ืฃ main ืฉืœื ื• ืฉื™ื”ื™ื” ืžื™ื•ืฉืจ ืขื origin/main, ื•ืœื”ืขื™ืฃ ืืช ื”ืงื•ืžื™ื˜ 2d31fbd ื’ื ืžื”ืžื›ื•ื ื” ืฉืœื™. ## ื•ืื ื’ื ื”ืžืชื›ื ืช ื”ืฉื ื™ ื”ื•ืกื™ืฃ ืงื•ืžื™ื˜ ื—ื“ืฉ ื”ืกื™ืคื•ืจ ื™ื›ื•ืœ ืœื”ืกืชื‘ืš ืขื•ื“ ื™ื•ืชืจ ืื ื”ืžืชื›ื ืช ื‘ืžื—ืฉื‘ ื”ืฉื ื™ ื’ื ืžื•ืกื™ืฃ ืงื•ืžื™ื˜ื™ื ื—ื“ืฉื™ื ืœืคื ื™ ืฉืžื‘ืฆืข pull. ื”ื ื” ืœื•ื’ ืฉืœ ืกื™ืžื•ืœืฆื™ื” ื–ืจื™ื–ื” ืฉืœ ืžืฆื‘ ื›ื–ื”, ืงื•ื“ื ื›ืœ ืžื”ืขื ืฃ main ื”ืžืงื•ืžื™:
$ git log --oneline --graph
* d96ebe5 (HEAD -> main) changed a.txt
* a346d40 add f.txt
* 24d6085 (dev) initial commit
ื•ืžื”ืขื ืฃ origin/main:
$ git log --oneline --graph origin/main
* 6b84f15 (origin/main, origin/HEAD) add g.txt
* 24d6085 (dev) initial commit
ื”ืคืขื ื™ืฉ ืœื ื• ืฉื ื™ ืงื•ืžื™ื˜ื™ื ื—ื“ืฉื™ื ื‘ืขื ืฃ main ื”ืžืงื•ืžื™ ื•ืงื•ืžื™ื˜ ืื—ื“ ื—ื“ืฉ ื‘ origin/main. ืคืขื•ืœืช merge ืชื ืกื” ืœืฉืœื‘ ืืช ืฉื ื™ ื”ืงื•ืžื™ื˜ื™ื ื•ืชืชืŸ ืœื ื• ื’ื ืืช ื”ืฉื™ื ื•ื™ื™ื ื‘ a.txt ืื•ืชื ืื ื—ื ื• ืจื•ืฆื™ื, ื•ื’ื ืืช ื”ืฉื™ื ื•ื™ื™ื ื‘ f.txt ืื•ืชื ืื ื—ื ื• ืœื ืจื•ืฆื™ื. ื‘ืฉื‘ื™ืœ ืœืฆืืช ืžื–ื” ืื™ ืืคืฉืจ ืœืขืฉื•ืช git reset ื›ื™ ืื– ื ืื‘ื“ ืืช ื”ืงื•ืžื™ื˜ d96ebe5. ื ื•ื›ืœ ืœื”ืฉืชืžืฉ ื‘ reset ื•ืื—ืจื™ื• cherry pick, ืื• ื‘ืงืกื ืฉืœ ื”ืกืขื™ืฃ ื”ื‘ื. ## ืคื™ืชืจื•ืŸ: git pull --rebase ืขื›ืฉื™ื• ืฉืื ื—ื ื• ืžื‘ื™ื ื™ื ืžื” ื™ื›ื•ืœ ืœื”ืฉืชื‘ืฉ ืืคืฉืจ ืœื“ื‘ืจ ืขืœ ื”ืคื™ืชืจื•ืŸ ืฉืœ ื’ื™ื˜ ืœืขื ื™ื™ืŸ ื•ืžืกืชื‘ืจ ืฉื”ื•ื ืžืื•ื“ ืคืฉื•ื˜. ื–ื• ื”ืคืงื•ื“ื” ื”ืžื•ื‘ื ื™ืช:
$ git pull --rebase

ToCode
1 419
# ืฉืœื•ืฉ ืกื™ื‘ื•ืช ืฉื”ืชื•ื›ื ื™ืช ืฉืœืš ืœื ืขื•ื‘ื“ืช ืžื—ืฉื‘ื™ื ื”ื ื™ืฆื•ืจื™ื ืžืื•ื“ ืžืžื•ืฉืžืขื™ื. ืชื’ื™ื“ ืœืžื—ืฉื‘ ืœืขืฉื•ืช ืžืฉื”ื• ื•ื”ื•ื ื™ืขืฉื” ื‘ื“ื™ื•ืง ืืช ื–ื”. ื•ื‘ื›ืœ ื–ืืช ื‘ื ื™ ืื“ื ืžื‘ืœื™ื ื—ืœืง ื ื™ื›ืจ ืžื”ื—ื™ื™ื ืฉืœื”ื ื‘ืœืžืฆื•ื "ื‘ืื’ื™ื", ื›ืœื•ืžืจ ื‘ืœื”ื‘ื™ืŸ ืœืžื” ื”ืžื—ืฉื‘ ืœื ืขืฉื” ืืช ืžื” ืฉืืžืจื ื• ืœื• ืœืขืฉื•ืช. ืื™ืš ื–ื” ืงื•ืจื”? ื™ืฉ ืœื™ ืฉืœื•ืฉื” ืจืขื™ื•ื ื•ืช- ## ื›ื™ ืืชื” ืœื ื™ื•ื“ืข ืื™ืš ืœื‘ืงืฉ ืกื™ื‘ื” ืจืืฉื•ื ื” ื”ื™ื ืฉืื ื—ื ื• ืคืฉื•ื˜ ืžื‘ืงืฉื™ื ืœื ื ื›ื•ืŸ. ืื ืื ื™ ืจื•ืฆื” ืœื’ืจื•ื ืœ Node.JS ืœื™ืฆื•ืจ ืขืฅ ืชื™ืงื™ื•ืช ืžืชื•ืš ืชื™ืงื™ื™ืช /tmp ืฉืžืชื—ื™ืœ ื‘ืชื™ืงื™ื” ืฉื ืงืจืืช foo, ืžืžืฉื™ืš ื‘ืชื™ืงื™ื” ื‘ืฉื bar ื•ืžืกืชื™ื™ื ื‘ืชื™ืงื™ื” ื‘ืฉื buz ื•ืื ื™ ืžืคืขื™ืœ ืืช ื”ืคืงื•ื“ื” ื”ื‘ืื” ื‘ืฉื‘ื™ืœ ื–ื”:
const fs = require('fs');
fs.mkdirSync('/tmp/foo/bar/buz');
ืื– ื–ื” ืœื ื™ืขื‘ื•ื“ ื›ื™ mkdir ื›ื‘ืจื™ืจืช ืžื—ื“ืœ ืœื ื™ื•ืฆืจ ืžืกืคืจ ืชื™ืงื™ื•ืช ืื—ืช ื‘ืชื•ืš ื”ืฉื ื™ื” ื•ืฆืจื™ืš ืœื”ืขื‘ื™ืจ ืื•ืคืฆื™ื” ืžื™ื•ื—ื“ืช ืฉืชืืคืฉืจ ืืช ื”ื”ืชื ื”ื’ื•ืช ื”ื–ืืช. ืืœื” ืกื•ื’ ื”ื‘ืขื™ื•ืช ืฉื”ื›ื™ ืงืœ ืœืžืฆื•ื ื•ื”ื›ื™ ืงืœ ืœืชืงืŸ. ืจื•ื‘ ื”ื–ืžืŸ ืžื—ืฉื‘ื™ื ื“ื™ ื˜ื•ื‘ื™ื ื‘ืœื”ื’ื™ื“ ืœืš ื›ืฉืืชื” ืขื•ืฉื” ืžืฉื”ื• ืœื ื‘ืกื“ืจ. ## ื›ื™ ืืชื” ืœื ื™ื•ื“ืข ืžื” ืœื‘ืงืฉ ืฆืขื“ ืื—ื“ ืงื“ื™ืžื” ืขื ื”ื˜ืขื•ื™ื•ืช ืฉืœื ื• ื•ืื ื—ื ื• ืžื’ื™ืขื™ื ืœื‘ืขื™ื•ืช ืฉื ื•ื‘ืขื•ืช ืžื›ืš ืฉืœื ืชืžื™ื“ ืื ื—ื ื• ื™ื•ื“ืขื™ื ืžื” ืœื‘ืงืฉ. ืžื—ืฉื‘ื™ื ืฆืจื™ื›ื™ื ื”ืจื‘ื” ื™ื•ืชืจ ืื™ื ืคื•ืจืžืฆื™ื” ืžืื ืฉื™ื ื‘ืฉื‘ื™ืœ ืœืคืขื•ืœ ื•ืœืื ืฉื™ื ื™ืฉ ื ื˜ื™ื” ืžืจื’ื™ื–ื” ืœื“ืœื’ ื‘ืจืืฉ ืขืœ ืฉืœื‘ื™ื ืงืจื™ื˜ื™ื™ื ืœืคื™ืชืจื•ืŸ ื›ืฉื—ื•ืฉื‘ื™ื ืขืœ ื‘ืขื™ื”. ืื ื‘ืกื™ืคื•ืจ ืžืงื•ื“ื ื ืจืฆื” ืœื™ื™ืฆืจ ืืช ืขืฅ ื”ืชื™ืงื™ื•ืช "ื‘ืžืงื•ื ื”ืจื’ื™ืœ" ื‘ืžืงื•ื ื‘ืชื•ืš ืชื™ืงื™ื™ืช /tmp ืื ื—ื ื• ืขืœื•ืœื™ื ืœื”ืชืคืชื•ืช ืœื›ืชื•ื‘ ืงื•ื“ ืฉื ืจืื” ื›ื›ื”:
const fs = require('fs');
fs.mkdirSync('foo/bar/buz');
ื•ื‘ื›ืš ืฉื•ื•ื™ืชืจื ื• ืขืœ ืœื”ื™ื•ืช ืกืคืฆื™ืคื™ื™ื ืืžืจื ื• ืœืžื—ืฉื‘ ืฉืื ื—ื ื• ื‘ืขืฆื ืœื ืžืžืฉ ื™ื•ื“ืขื™ื ืžื” ืื ื—ื ื• ืจื•ืฆื™ื. ื”ืื ื–ื” ื™ื—ืกื™ ืœืกืคืจื™ื” ื”ื ื•ื›ื—ื™ืช ืื• ืœืกืคืจื™ื” ืฉื‘ื” ื ืžืฆื ื”ืงื•ื‘ืฅ? ื•ืžื” ืืžื•ืจื” ืœื”ื™ื•ืช ืœื“ืขืชื›ื ื”ืกืคืจื™ื” ื”ื ื•ื›ื—ื™ืช? ื•ืžื” ืื ืžื™ืฉื”ื• ืžืจื™ืฅ ืžืกืคืจื™ื” ืื—ืจืช? ื”ืžื—ืฉื‘ ื™ื•ื“ืข ื‘ื“ื™ื•ืง ืืช ื”ืชืฉื•ื‘ื•ืช ืœื›ืœ ื”ืฉืืœื•ืช ื”ืืœื”, ืื‘ืœ ืื ืืชื ืœื ื‘ื˜ื•ื—ื™ื ืฉืืชื ื™ื•ื“ืขื™ื ื–ื” ืื•ืžืจ ืฉื‘ื™ืงืฉืชื ืžืฉื”ื• ื‘ืœื™ ืœื”ื‘ื™ืŸ ืžื” ืืชื ืžื‘ืงืฉื™ื - ื•ื”ืชื•ืฆืื” ืชื”ื™ื” ืฉืชืงื‘ืœื• ืžืฉื”ื• ืฉืื•ืœื™ ืœื ืฆื™ืคื™ืชื ืœื•. ## ื›ื™ ืืชื” ืžื‘ืงืฉ ื“ื‘ืจื™ื ืœื ื”ื’ื™ื•ื ื™ื™ื ืืคืฉืจื•ืช ืฉืœื™ืฉื™ืช ื‘ื’ืœืœื” ื”ืชื•ื›ื ื™ืช ืชื™ืฉื‘ืจ ื”ื™ื ื›ืฉืืชื ืžื ืกื™ื ืœื‘ืงืฉ ื“ื‘ืจื™ื ืฉืžื—ืฉื‘ ืคืฉื•ื˜ ืœื ื™ื›ื•ืœ ืœืขืฉื•ืช. ื–ื” ื›ืžื• ืฉื ื ืกื” ืœืœื—ื•ืฅ ืขืœ ืžืชื’ ื”ืื•ืจ ื‘ื‘ื™ืช ื‘ืฆื•ืจื” ืžืกื•ื™ืžืช ืฉืชื’ืจื•ื ืœืžื ื•ืจื” ืœื“ืœื•ืง ื‘ืฆื‘ืข ืื—ืจ. ืื ืœืžื ื•ืจื” ืื™ืŸ ืืช ื”ื™ื›ื•ืœืช ืœื”ื™ื“ืœืง ื‘ืื•ืจ ืกื’ื•ืœ ืฉื•ื ืœื—ื™ืฆื” ืขืœ ื”ืžืชื’ ืœื ืชื’ืจื•ื ืœื–ื” ืœืงืจื•ืช. ืื ืชื‘ืงืฉื• ืž Node ืœื™ืฆื•ืจ ืชื™ืงื™ื” ืื™ืคื” ืฉื›ื‘ืจ ื™ืฉ ืงื•ื‘ืฅ ื”ื•ื ื™ื’ื™ื“ ืœื›ื ื‘ื ื™ืžื•ืก ืฉื–ื” ืœื ืืคืฉืจื™ ืœื™ืฆื•ืจ ืฉื ื™ ื“ื‘ืจื™ื ืฉื•ื ื™ื ืขื ืื•ืชื• ืฉื ืขืœ ื”ื“ื™ืกืง. ืื ืชื ืกื• ืœื”ื–ื™ื– ืงื•ื‘ืฅ ืœื›ื•ื ืŸ ืื—ืจ Node ื™ืกืจื‘ ื‘ื ื™ืžื•ืก ื’ื ืœื–ื”. ื•ืจืง ืชื ืกื• ืœื”ืฆื™ืข ืœื• ืœื™ืฆื•ืจ ืงื•ื‘ืฅ ื‘ืชื™ืงื™ื” ืฉื”ื™ื ืœืงืจื™ืื” ื‘ืœื‘ื“. ื•ืื– ื™ืฉ ืืช ื”ืžื’ื‘ืœื•ืช ื”ื˜ื›ื ื™ื•ืช ืฉืœ ื”ืฉืคื” ื•ื”ื—ื•ืžืจื” - ืื ื–ื” ืžื’ื‘ืœื•ืช ืžื”ื™ืจื•ืช, ืžื’ื‘ืœื•ืช ืฉืœ ื ืขื™ืœื•ืช ื•ืžืงื‘ื™ืœื™ื•ืช, ืžื’ื‘ืœื•ืช ืฉืœ ืคืจื™ื™ืžื•ื•ืจืง ืฉื‘ื—ืจืชื ืœื”ืฉืชืžืฉ ื‘ื• ืื• ื›ืœ ืžื’ื‘ืœื” ืื—ืจืช ืฉืืชื ืื•ืœื™ ืœื ืžื•ื“ืขื™ื ืืœื™ื” ืื‘ืœ ื”ืžื—ืฉื‘ ื“ื•ื•ืงื ื›ืŸ. ืžื” ืขื•ืฉื™ื? ืžืชืืžื ื™ื ืขืœ ืื™ืชื•ืจ ื•ืชื™ืงื•ืŸ ืชืงืœื•ืช ื‘-3 ืขืจื•ืฆื™ื: 1. ืœื•ืžื“ื™ื ื˜ื•ื‘ ื™ื•ืชืจ ืืช ืฉืคืช ื”ืชื›ื ื•ืช ื•ื” API ืฉืืชื ืขื•ื‘ื“ื™ื ื‘ื”ื ื›ื“ื™ ืœื”ื‘ื™ืŸ ืื™ืš ืœื‘ืงืฉ ืืช ืžื” ืฉืืชื ื‘ืืžืช ืจื•ืฆื™ื. 2. ืœื•ืžื“ื™ื ืœื”ืกืชื›ืœ ื˜ื•ื‘ ื™ื•ืชืจ ืขืœ ื”ืžื›ื•ื ื” ื•ื”ืืœื’ื•ืจื™ืชื ื›ื“ื™ ืœื”ื‘ื™ืŸ ืžื” ืœื‘ืงืฉ. ืฉื•ืืœื™ื ืืช ืขืฆืžื ื• ื›ืžื” ืฉื™ื•ืชืจ ืฉืืœื•ืช ื‘ื–ืžืŸ ื›ืชื™ื‘ืช ื”ืงื•ื“ ื›ื“ื™ ืœื•ื•ื“ื ืฉื›ื™ืกื™ื ื• ืืช ื›ืœ ื”ืžืฆื‘ื™ื. 3. ืœื•ืžื“ื™ื ืœืจืื•ืช ืžืจืืฉ ืื™ื–ื” ื“ื‘ืจื™ื ื”ืžื—ืฉื‘ ืœื ื™ื›ื•ืœ ืœืขืฉื•ืช, ื•ืžืคืกื™ืงื™ื ืœื‘ื–ื‘ื– ื–ืžืŸ ืขืœ ืœื‘ืงืฉ ืžืžื ื• ืœืขืฉื•ืช ืืช ืื•ืชื ื“ื‘ืจื™ื ืœื ื”ื’ื™ื•ื ื™ื™ื.

ToCode
1 419
# ื•ืื•ืœื™ ื“ื•ื•ืงื ื™ืฉ ืคื™ืชืจื•ืŸ ืงืœ ืงื•ื‘ืจื ื˜ืก ื”ื™ื ืžืขืจื›ืช ืžื“ื”ื™ืžื” ืฉืคื•ืชื—ืช ืœืžืชื›ื ืชื™ื ืืคืฉืจื•ื™ื•ืช Deployment ืฉืคืขื ืืคืฉืจ ื”ื™ื” ืจืง ืœื—ืœื•ื ืขืœื™ื”ืŸ. ืื‘ืœ ื‘ืฉื‘ื™ืœ ืœืขื‘ื•ื“ ืื™ืชื” ืฆืจื™ืš ืงื•ื“ื ืœื”ื›ื™ืจ ืื•ืชื”, ื•ื–ื” ื™ื›ื•ืœ ืœืงื—ืช ื”ืจื‘ื” ื–ืžืŸ. ืื• ืชืกืชื›ืœื• ืขืœ ืคื ื“ืก. ืคื ื“ืก ื”ื™ื ืกืคืจื™ื™ืช ืคื™ื™ืชื•ืŸ ืžื“ื”ื™ืžื” ืฉืžืืคืฉืจืช ืœืฉืœื•ืฃ ืžื™ื“ืข ืžื˜ื‘ืœืื•ืช ื‘ืฆื•ืจื” ื™ืฆื™ืจืชื™ืช ื”ืจื‘ื” ื™ื•ืชืจ ืžืžื” ืฉืืงืกืœ ืžืืคืฉืจ. ืื‘ืœ ื‘ืฉื‘ื™ืœ ืœื”ืฉืชืžืฉ ื‘ื” ืฆืจื™ืš ืœื”ื›ื™ืจ ืื•ืชื”, ื•ื›ื“ืื™ ืœื”ื›ื™ืจ ื’ื ืืช ืกืคืจื™ื•ืช ืฆื™ื•ืจ ื”ื’ืจืคื™ื ืฉืžืœื•ื•ืช ืื•ืชื”. ื›ืฉืžื™ืฉื”ื• ืฉืœื ืžื›ื™ืจ ืืช ื”ื›ืœื™ื ืžื ืกื” ืœื”ืฉืชืžืฉ ื‘ื”ื, ื”ื•ื ื™ื’ืœื” ืฉื™ืฉ ืขื•ื“ ื“ืจืš ืืจื•ื›ื” ืขื“ ืฉืžื’ื™ืขื™ื ืœืคืจื•ื“ื•ืงื˜ื™ื‘ื™ื•ืช ืฉื›ื•ืœื ืžื“ื‘ืจื™ื ืขืœื™ื”. ื›ืฉืฉื•ืงืœื™ื ืื ืœื”ืฉืชืžืฉ ื‘ื˜ื›ื ื•ืœื•ื’ื™ื” ืžืกื•ื™ืžืช ื–ื• ื˜ืขื•ืช ืœืฉืœื‘ ืืช ื–ืžืŸ ื”ืœื™ืžื•ื“ ื‘ืฉื™ืงื•ืœื™ื. ืœื ื›ื“ืื™ ืœื”ื™ืฉืืจ ืขื ืคื™ืชืจื•ืŸ ืœื-ืื•ืคื˜ื™ืžืœื™, ืฉืื•ืœื™ ื›ื•ืœืœ ื‘ืขื™ื•ืช ืื‘ื˜ื—ื” ื•ืื•ืœื™ ื ื•ืชืŸ ืชื•ืฆืื•ืช ืœื ืžื“ื•ื™ืงื•ืช, ืจืง ื‘ื’ืœืœ ืฉื–ื” ื”ืคื™ืชืจื•ืŸ ืฉืืชื ืžื›ื™ืจื™ื ื”ื™ื•ื. ื”ื”ืฉืงืขื” ื‘ืœื™ืžื•ื“ ื”ื™ื ื”ื—ืœืง ื”ืžื”ื ื” ื‘ืขื‘ื•ื“ื” ืฉืœื ื•. ืื ื™ืฉ ื›ืœื™ ืฉื™ื›ื•ืœ ืœืขื–ื•ืจ ืœื›ื ืœื”ืชืžื•ื“ื“ ื˜ื•ื‘ ื™ื•ืชืจ ืขื ื”ืขื•ืœื, ื”ื™ื•ื ื™ื”ื™ื” ื–ืžืŸ ืžืฆื•ื™ืŸ ืœื”ืชื—ื™ืœ ืœืงืจื•ื ืขืœื™ื•.

ToCode
1 419
# ื˜ื™ืค JavaScript: ื‘ื“ื™ืงืช ืคืจืžื˜ืจื™ื ื•ื”ื•ื“ืขื•ืช ืฉื’ื™ืื” ืงื•ื“ ื˜ื•ื‘ ื”ื•ื ื›ื–ื” ืฉืขื•ื–ืจ ืœื ื• ืœืžืฆื•ื ื‘ืื’ื™ื ืžื”ืจ, ื’ื ืื ื”ื‘ืื’ื™ื ืœื ื ืžืฆืื™ื ื‘ืื•ืชื• ืงื•ื“ ืขืฆืžื•. ื‘ื“ื•ื’ืžื” ืฉืœ JavaScript ืชื‘ื ื™ืช ืคื•ืคื•ืœืจื™ืช ืฉื™ื›ื•ืœื” ืœื’ืจื•ื ืœื‘ืขื™ื•ืช ืžืกื•ื’ ื–ื” ื”ื™ื ืงื‘ืœืช ืื•ื‘ื™ืงื˜ ืคืจืžื˜ืจื™ื ืœืคื•ื ืงืฆื™ื”. ื ื“ืžื™ื™ืŸ ืคื•ื ืงืฆื™ื” ืฉืฆืจื™ื›ื” ืœื”ืชื—ื‘ืจ ืœ redis, ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ืฉืœื” ืชื”ื™ื” ืœื”ืชื—ื‘ืจ ืœ redis ืฉืจืฅ ืขืœ ื”ืžื—ืฉื‘ ื”ืžืงื•ืžื™ ืื‘ืœ ื‘ืื•ื‘ื™ืงื˜ ื”ืคืจืžื˜ืจื™ื ื”ื™ื ื™ื›ื•ืœื” ืœืงื‘ืœ ืžืคืชื— ื‘ืฉื redis ื•ื‘ืชื•ื›ื• ื›ืœ ืžื™ื ื™ ืื•ืคืฆื™ื•ืช ืœื—ื™ื‘ื•ืจ ืฉืœ redis ื›ืžื• host ื• port. ื”ืคื•ื ืงืฆื™ื” ืขืฉื•ื™ื” ืœื”ื™ืจืื•ืช ื›ืš:
function init(options={}) {
  let redisHost = 'localhost', redisPort = 6379;

  if (options.redis && options.redis.host) {
    redisHost = options.redis.host;
  }
  if (options.redis && options.redis.port) {
    redisPort = options.redis.port;
  }
  console.log(`Connecting to redis at ${redisHost}:${redisPort}`);
}

init();
init({ redis: { host: 'my-redis' } });
ื”ืงื•ื“ ืขื•ื‘ื“ ื•ืžืฉืชืžืฉ ื‘ืขืจื›ื™ื ื”ื ื›ื•ื ื™ื ืœื›ืœ ื”ืžืฆื‘ื™ื, ืื‘ืœ ื”ื•ื ืขืœื•ืœ ืœืกื‘ืš ืื•ืชื ื• ืื ื ืฉืชืžืฉ ื‘ื• ืœื ื ื›ื•ืŸ. ื ื“ืžื™ื™ืŸ ืฉืฉื ื”ืžื›ื•ื ื” ืžื’ื™ืข ืžืžืฉืชื ื” ืกื‘ื™ื‘ื” ื‘ืฉื REDIS_HOST ืื‘ืœ ื‘ืงื•ื“ ื˜ืขื™ืชื™ ื‘ืื™ื•ืช ื•ื›ืชื‘ืชื™ ืžืฉื”ื• ื›ืžื• REDS_HOST - ื›ืœื•ืžืจ ื”ืคืขืœืชื™:
init({ redis: { host: process.env.REDS_HOST } });
ื‘ืžืฆื‘ ื›ื–ื” ืœืžืจื•ืช ืฉื”ืขื‘ืจืชื™ ืขืจืš ืœืžืฉืชื ื” redis.host ื”ืคื•ื ืงืฆื™ื” ืชืชืขืœื ืžื”ืขืจืš ื‘ื’ืœืœ ืฉื”ื•ื undefined ื•ืชืฉืชืžืฉ ื‘ืขืจืš ื‘ืจื™ืจืช ื”ืžื—ื“ืœ. ืฉื•ื ื”ื•ื“ืขืช ืฉื’ื™ืื” ืœื ืชื•ืคื™ืข ื•ืœื ื™ื”ื™ื” ืœื ื• ืฉื•ื ืจืžื– ืฉื›ืชื‘ื ื• ืžืฉืชื ื” ื‘ืฉื’ื™ืืช ื›ืชื™ื‘. ืงื•ื“ ื˜ื•ื‘ ื™ื•ืชืจ ืœืคื•ื ืงืฆื™ื” ื”ืจืืฉื•ื ื” ื”ื™ื” ื™ื›ื•ืœ ื‘ืงืœื•ืช ืœื–ื”ื•ืช ืฉืžื™ืฉื”ื• ื ื™ืกื” ืœื”ืขื‘ื™ืจ ืขืจืš ืื‘ืœ ื”ืขื‘ื™ืจ undefined, ื•ืœืฆื™ื™ืŸ ืืช ื–ื” ื‘ืื–ื”ืจื” ืื• ืฉื’ื™ืื”:
function init(options={}) {
  let redisHost = 'localhost', redisPort = 6379;

  if (options.redis) {
    if ('host' in options.redis) {
      if (options.redis.host) {
        redisHost = options.redis.host;
      } else {
        throw 'Error: options.redis.host is undefined';
      }
    }
    if ('port' in options.redis) {
      if (options.redis.port) {
        redisPort = options.redis.port;
      } else {
        throw 'options.redis.port is undefined';
      }
    }
  }

  console.log(`Connecting to redis at ${redisHost}:${redisPort}`);
}
ื‘ื›ืชื™ื‘ืช ืคื•ื ืงืฆื™ื” ืฉืื—ืจื™ื ื”ื•ืœื›ื™ื ืœื”ืฉืชืžืฉ ื‘ื” - ืฉื•ื•ื” ืœื—ืฉื•ื‘ ื’ื ืื™ืš ืื•ืชื ืื ืฉื™ื ืื—ืจื™ื ืฉื™ืฉืชืžืฉื• ื‘ืคื•ื ืงืฆื™ื” ื”ื•ืœื›ื™ื ืœื˜ืขื•ืช, ื•ืœืขื–ื•ืจ ืœื”ื ืœืžืฆื•ื ืืช ื”ื˜ืขื•ื™ื•ืช ืžื”ืจ ื™ื•ืชืจ.

ToCode
1 419
# ืœืžื™ ืงืจืืช ื‘ื™ื ื•ื ื™? ื‘ืฆื™ื•ืฅ ืฉืขื•ืจืจ ืกืขืจื” ืœื ืงื˜ื ื” ื‘ืฉืขืชื• ืœื•ืจื™ ื•ื•ืก ื›ืชื‘ ืืช ื”ื“ื‘ืจื™ื ื”ื‘ืื™ื: 1. ืื ื™, ื‘ืžืงืจื” ื”ื›ื™ ื˜ื•ื‘, ืžืชื›ื ืช ืขื ื™ื›ื•ืœื•ืช ื‘ื™ื ื•ื ื™ื•ืช. ื”ืœื•ื•ืื™ ืฉื–ื” ืœื ื”ื™ื” ื ื›ื•ืŸ, ื”ืœื•ื•ืื™ ืฉื”ื™ื™ืชื™ ืื—ื“ ื”ื’ืื•ื ื™ื, ืื‘ืœ ืื ื™ ืœื ืื– ืžื ืกื” ืœืขื‘ื•ื“ ืขื ืžื” ืฉื™ืฉ. 2. ืื ื™ ืžืงื‘ืœ ืืช ื–ื” ืฉืœืขื•ืœื ืœื ืืžืฆื™ื ืืœื’ื•ืจื™ืชื ื—ื“ืฉ ืฉืžืฉื ื” ืืช ื”ืขื•ืœื ื•ื›ื ืจืื” ืืคื™ืœื• ืœื ืคืจื™ื™ืžื•ื•ืจืง ื—ื“ืฉ ืฉืื ืฉื™ื ืื•ื”ื‘ื™ื. ืื ื™ ืžืฉืชืžืฉ ื‘ื“ื‘ืจื™ื ื”ืืœื” - ืคืฉื•ื˜ ืœื ื–ื” ืฉืžืžืฆื™ื ืื•ืชื. 3. ืžื” ืฉื›ืŸ ื™ืฉ ืœื™ ื–ื” ื ื™ืกื™ื•ืŸ. ื ื• ื•ื–ื” ื‘ืจื•ืจ - ืื ืืชื” ืžืคืฉืœ ืžืกืคื™ืง ืคืขืžื™ื ื‘ืกื•ืฃ ืชืœืžื“ ืื™ืš ืขื•ืฉื™ื ื“ื‘ืจื™ื ื ื›ื•ืŸ. ืื ืชื›ืชื•ื‘ ืžืกืคื™ืง ื‘ืื’ื™ื ื‘ืกื•ืฃ ืชืฉืชืคืจ ื‘ืœืžืฆื•ื ืื•ืชื. ื–ื” ืœื ื˜ื•ื‘ ื›ืžื• ืœื”ื™ื•ืช ื’ืื•ืŸ ืื‘ืœ ื”ืืคืงื˜ ืžืฆื˜ื‘ืจ. ื ื™ืกื™ื•ืŸ ื”ื•ื ื“ื‘ืจ ืžืื•ื“ ืžื•ืขื™ืœ. 4. ื”ื“ื‘ืจ ื”ืฉื ื™ ืฉืื ื™ ืžืฆืœื™ื— ืœืขืฉื•ืช ื–ื” ืœื—ื‘ืจ ื‘ื™ืŸ ืจืขื™ื•ื ื•ืช. ืื ื™ ืกื•ืคื’ ืžื™ื“ืข ืžื›ืœ ืžื™ื ื™ ืžืงื•ืจื•ืช, ืžื–ื”ื” ืชื‘ื ื™ื•ืช ื•ื‘ื•ื ื” ืกื‘ื™ื‘ ื–ื” ื”ืกื‘ืจ. ืืคืฉืจ ืœื”ื’ื™ื“ ืฉืื ื™ืฉ ืžืฉื”ื• ืฉืื ื™ ืžืขืœ-ื”ืžืžื•ืฆืข ื‘ื• ื–ื” ืœื”ืกื‘ื™ืจ. 5. ื‘ืจื•ืจ ืฉืœื”ืกื‘ื™ืจ ื“ื‘ืจื™ื ื–ื” ืœื ืžืจืฉื™ื ื›ืžื• ืœื”ืžืฆื™ื ืื•ืชื, ืื‘ืœ ื–ื” ื’ื ืœื ืคื•ืคื•ืœืจื™ ื‘ืื•ืชื” ืžื™ื“ื”. ื›ื™ืฉืจื•ืŸ ืœื”ืกื‘ื™ืจ ืžื” ืงื•ืจื” ื–ื” ืžื” ืฉืื ื™ ืžื‘ื™ื ืœืฉื•ืœื—ืŸ. 6. ื•ื‘ื”ื™ื ืชืŸ ืฉื–ื• ื”ืขื™ืกืงื” ื”ืขื•ื‘ื“ื” ืฉืื ื™ ืžืชื›ื ืช ื‘ื™ื ื•ื ื™ ื“ื•ื•ืงื ืขื•ื–ืจืช. ืื ื™ ืžืฆืœื™ื— ืœืจืื•ืช ื“ื‘ืจื™ื ืžื ืงื•ื“ืช ื”ืžื‘ื˜ ืฉืœ ื”ืžืชื›ื ืช ื”ืžืžื•ืฆืข, ืื ื™ ืื•ื”ื‘ ืืช ืžื” ืฉืžืžื™ืœื ืคื•ืคื•ืœืจื™, ืื ื™ ืืฃ ืคืขื ืœื ืจื•ืฆื” ืœืขืฉื•ืช ื“ื‘ืจื™ื ื‘ื“ืจืš ื”ืงืฉื”-ืื‘ืœ-ื—ื›ืžื”. 7. ื•ื›ืžื•ื‘ืŸ ืฉื ื™ืกื™ื•ืŸ ื”ื•ื ื’ื ื“ื‘ืจ ืžืื•ื“ ืžื•ืขื™ืœ. ืื—ืจื™ ืžืกืคื™ืง ืฉื ื™ื ื‘ืชืขืฉื™ื” ืืชื” ืžืชื—ื™ืœ ืœืœืžื•ื“ ืœื”ื‘ื“ื™ืœ ื‘ื™ืŸ ืจืขื™ื•ื ื•ืช ื˜ื•ื‘ื™ื ืฉื™ื™ืฉืืจื• ืœืื•ืจืš ื–ืžืŸ ืœื‘ื™ืŸ ืื•ืคื ื•ืช ืฉืขื•ื“ ืฉื‘ื•ืข ื™ืขืœืžื•. 8. ื–ืืช ืœื ืžื™ื•ืžื ื•ืช ื ื•ืฆืฆืช, ืื ื™ ืืฃ ืคืขื ืœื ืื”ื™ื” ืžืคื•ืจืกื ื•ื–ื” ื“ื™ ืžื‘ืืก. ืื‘ืœ ื–ืืช ืžื™ื•ืžื ื•ืช ืžื•ืขื™ืœื” ืœื™ ื•ืœืื—ืจื™ื ื•ื›ืš ืœืžื“ืชื™ ืœื”ื™ื•ืช ืžืจื•ืฆื” ื•ืœื”ืกืชืคืง ื‘ื”ื™ื•ืชื™ ืžืชื›ื ืช ื‘ื™ื ื•ื ื™ ืฉืžืฆืœื™ื— ืจืง ืœื”ืกื‘ื™ืจ ื“ื‘ืจื™ื. --- ืงืจืืชื? ืขื›ืฉื™ื• ื‘ื•ืื• ื ืคืชื— ืืช ื–ื”. ืœืคื ื™ ืฉื ื“ื‘ืจ ืขืœ ืžื™ ื–ื” ืœื•ืจื™ ื•ื•ืก ื•ืžื” ื”ื•ื ืขืฉื”, ืืคื™ืœื• ืื ื”ืฆื™ื•ืฅ ื”ื–ื” ื”ื™ื” ืื ื•ื ื™ืžื™ ื”ื™ื” ืงืฉื” ืœื”ืชืขืœื ืžื”ื‘ืขื™ื•ืชื™ื•ืช ืคื”. ื”ื›ื•ืชื‘ ืžืชืขืงืฉ ืฉื”ื•ื ืžืชื›ื ืช ื‘ื™ื ื•ื ื™ ืื‘ืœ ื›ืœ ื”ืชื™ืื•ืจ ืฉืœื• ืืช ืขืฆืžื• ื•ืืช ืกื˜ ื”ืžื™ื•ืžื ื•ื™ื•ืช ืฉืœื• ื”ื•ื ื”ื”ื™ืคืš ื”ื’ืžื•ืจ ืžื‘ื™ื ื•ื ื™. ื‘ื”ื ื—ื” ืฉื•ื•ืก ืžืชืืจ ืืช ืขืฆืžื• ื‘ืฆื•ืจื” ืืžื™ื ื” ืืœื” ื”ืžื™ื•ืžื ื•ื™ื•ืช ืฉื™ืฉ ืœื• ืฉื‘ืขื™ื ื™ื™ ื”ื•ืคื›ื•ืช ืื•ืชื• ืœืžืชื›ื ืช ืžืขื•ืœื”: 1. ื”ื•ื ืœื•ืžื“ ืžื˜ืขื•ื™ื•ืช ื•ืžืฉืชืžืฉ ื‘ื ื™ืกื™ื•ืŸ ืœื˜ื•ื‘ืชื•. 2. ื”ื•ื ื‘ืขืœ ื™ื›ื•ืœืช ืื‘ื—ื ื” ื˜ื•ื‘ื” ื•ืžืฆืœื™ื— ืœืจืื•ืช ื“ื‘ืจื™ื ื‘ืงื•ื“ ืฉืื—ืจื™ื ืœื ืจื•ืื™ื. 3. ื”ื•ื ื‘ืขืœ ืžื™ื•ืžื ื•ืช ืชืงืฉื•ืจืช ื˜ื•ื‘ื” ื•ืžืฆืœื™ื— ืœืชืงืฉืจ ืืช ื”ื“ื‘ืจื™ื ืฉื”ื•ื ืจื•ืื” ื‘ืงื•ื“ ืœืžืชื›ื ืชื™ื ืื—ืจื™ื. 4. ื”ื•ื ืžืกื•ื’ืœ ืœื”ื‘ื™ืŸ ื‘ืขื™ื” ื•ืœื”ืฆื™ืข ืคื™ืชืจื•ืŸ ืฉืื ืฉื™ื ืื—ืจื™ื ื™ื•ื›ืœื• ืื—ืจ ื›ืš ืœืงืจื•ื ื•ืœืชื—ื–ืง ืื•ืชื•. ืืœื” ืืจื‘ืข ืชื›ื•ื ื•ืช ืฉื”ื™ื™ืชื™ ืฉืžื— ืœืžืฆื•ื ื‘ื›ืœ ืžืชื›ื ืช ืฉืืขื‘ื•ื“ ืื™ืชื•. ืชื›ื•ื ื•ืช ืฉืฉื•ื•ื” ืœื”ืฉืงื™ืข ื‘ื”ืŸ ื•ืชื›ื•ื ื•ืช ืฉื‘ื›ืœ ืžืงืฆื•ืข ืื—ืจ ื”ื™ื• ืžื–ื›ื•ืช ืื•ืชื• ื‘ืชื•ืืจ "ื‘ืขืœ ืžืงืฆื•ืข ืžืขื•ืœื”". ืื ืื ื™ ืฆืจื™ืš ืœื‘ื—ื•ืจ ื‘ื™ืŸ ืจื•ืคื ืฉืžืžืฆื™ื ืฉื™ื˜ื•ืช ื˜ื™ืคื•ืœ ื—ื“ืฉื•ืช ืœื‘ื™ืŸ ืจื•ืคื ืืžื™ืŸ, ืžื ื•ืกื”, ื‘ืขืœ ื™ื›ื•ืœืช ืชืงืฉื•ืจืช ื˜ื•ื‘ื” ื•ื™ื›ื•ืœืช ืคื™ืชืจื•ืŸ ื‘ืขื™ื•ืช - ื”ื™ื™ืชื™ ื‘ื•ื—ืจ ื‘ืจื•ืคื ื”ืฉื ื™ ื‘ืœื™ ืœื”ืชื‘ืœื‘ืœ. ืื ืื ื™ ืฆืจื™ืš ืœื‘ื—ื•ืจ ื‘ื™ืŸ ืื“ืจื™ื›ืœ ืฉืžืžืฆื™ื ื‘ื ื™ื™ื ื™ื ื—ื“ืฉื™ื ืœื‘ื™ืŸ ืื“ืจื™ื›ืœ ืฉืžืจืื” Track Record ืฉืœ ื‘ื ื™ื™ื ื™ื ืืžื™ื ื™ื ืฉื‘ื ื” ื•ืžืฆืœื™ื— ืœืชืงืฉืจ ืœื™ ืืช ื›ืœ ื”ืฉื™ืงื•ืœื™ื ื•ื”ื‘ื—ื™ืจื•ืช ื‘ื‘ื ื™ื” - ืื ื™ ื‘ื•ื—ืจ ืืช ื”ืฉื ื™ ืœื‘ื ื•ืช ื›ืœ ื‘ื ื™ื™ืŸ ืฉืื ื™ ืฆืจื™ืš. ื•ืืฆืœื ื• ื‘ืชื›ื ื•ืช? ืงืŸ ืชื•ืžืคืกื•ืŸ, ื”ืžืžืฆื™ื ื”ืื’ื“ื™ ืฉืœ ื™ื•ื ื™ืงืก, ืžืกืคืจ ื‘ืจืื™ื•ื ื•ืช ืฉืืช ื”ืขื‘ื•ื“ื” ืขืœ ื™ื•ื ื™ืงืก ื”ื•ื ืขืฉื” ืื—ืจื™ ืฉื”ืžื ื”ืœื™ื ืฉืœื• ื”ื—ืœื™ื˜ื• ืœื‘ื˜ืœ ืืช ื”ืคืจื•ื™ืงื˜ ื•ื—ืœืง ื’ื“ื•ืœ ืžืžื ื” ื ืขืฉื” ื‘ืœื™ ืœืกืคืจ ืœืžื ื”ืœื™ื ืขืœ ืžื” ื”ื•ื ืขื•ื‘ื“. ื‘ืจื ื“ื•ืŸ ืื™ื™, ื”ืžืžืฆื™ื ืฉืœ JavaScript, ื”ืชืขืงืฉ ืœื”ื›ื ื™ืก ืžืืคื™ื™ื ื™ื ืžืฉืคื•ืช ืื–ื•ื˜ืจื™ื•ืช ืœืชื•ืš ื”ืฉืคื” ื•ื’ืจื ืœืžืชื›ื ืชื™ื ืœื”ืชื‘ืœื‘ืœ ื‘ืžืฉืš ืขืฉืจื•ืช ืฉื ื™ื. ื˜ื•ื‘ ืฉื™ืฉ ืžืชื›ื ืชื™ื ื’ืื•ื ื™ื ื‘ืชืขืฉื™ื” ืื‘ืœ ืฆืจื™ืš ืœื–ื›ื•ืจ ืฉืจื•ื‘ ื”ื–ืžืŸ ื”ื ืœื ื”ืื ืฉื™ื ืฉื”ื›ื™ ืงืœ ืœืขื‘ื•ื“ ืื™ืชื. ื”ืžื—ืฉื‘ื” ื›ืื™ืœื• ื”ื“ืจืš ืœื”ื™ื•ืช ืžืชื›ื ืช ืžืขื•ืœื” ื”ื™ื ืจืง ืœื”ืžืฆื™ื ืืœื’ื•ืจื™ืชื ื—ื“ืฉ ืื• ืœื‘ื ื•ืช ืคืจื™ื™ืžื•ื•ืจืงื™ื ืžืืคืก ื”ื™ื ื”ืจืกื ื™ืช ืœื‘ื™ื˜ื—ื•ืŸ ื”ืขืฆืžื™ ืฉืœื›ื ื•ืœืงื”ื™ืœื” ื›ื•ืœื”. --- ื .ื‘. ืื—ืจื•ืŸ ื‘ื’ื™ื–ืจืช ื”ืงื•ื ื˜ืงืกื˜. ืœืžื™ ืฉืœื ืžื›ื™ืจ ืื– ื”ื‘ื—ื•ืจ ื”ืžืฆื™ื™ืฅ ื”ื•ื Co-Founder ืฉืœ npm (ื›ืŸ ืžืขืจื›ืช ื ื™ื”ื•ืœ ื”ื—ื‘ื™ืœื•ืช ืœ Node.JS, ื–ืืช ืฉืžื—ื–ื™ืงื” ืืช ืžืื’ืจ ื”ื—ื‘ื™ืœื•ืช ื”ื’ื“ื•ืœ ื‘ืขื•ืœื). ื”ื•ื ืžืชื›ื ืช ื•ื•ื‘ ืžืื– 1996 ื•ืœืคื ื™ npm ื”ืงื™ื ื—ื‘ืจื” ื‘ืฉื awe.sm ืฉื ืžื›ืจื” ืœ Unified. ื”ื•ื ื”ืจืฆื” ื‘ JS Conf ื•ื›ื ืกื™ื ื ื•ืกืคื™ื ื•ื›ื•ืชื‘ ื‘ืœื•ื’ ื˜ื›ื ื™ ืžื•ืฆืœื— ื›ื‘ืจ 20 ืฉื ื”. ื™ื•ื ืื—ื“ ื ืฆื˜ืจืš ืœืฉืื•ืœ ืืช ืขืฆืžื ื• ืื™ืš ืื ืฉื™ื ืžืขื•ืœื™ื ืžื”ืชืขืฉื™ื” ื ืชืงืขื™ื ืขื ืจื’ืฉื™ ื ื—ื™ืชื•ืช ืœื ืžื•ืฆื“ืงื™ื.

ToCode
1 419
ืืฃ ืื—ื“ ืœื ื™ื•ื“ืข ื›ืžื” ื–ืžืŸ ื™ื™ืงื— ืœืš ืœืœืžื•ื“ React Hooks ืื• Redux Middlewares, ื•ื–ื” ื‘ืกื“ืจ. ื‘ืชื”ืœื™ืš ืœื™ืžื•ื“ ืžื•ืžืœืฅ ืœื”ืกืชื›ืœ ืขืœ ื›ืžื” ืฉืขื•ืช ืœื™ืžื•ื“ ื™ืฉ ืœื™ ื‘ืฉื‘ื•ืข ื•ืื™ืš ืื ื™ ืžื ืฆืœ ื‘ืฆื•ืจื” ื™ืขื™ืœื” ืืช ื”ืฉืขื•ืช ื”ืืœื”. ืื™ืŸ ื“ืจืš ืœืชื›ื ืŸ ืื• ืœืฉืœื•ื˜ ื‘ื›ืžื” ืฉื‘ื•ืขื•ืช ื™ื™ืงื— ืœื™ ืœืœืžื•ื“ ื ื•ืฉื ืžืกื•ื™ื ื•ื–ื” ื’ื ื‘ื›ืœืœ ืœื ืžืฉื ื”. ืื ื—ื ื• ืœื ืฉื•ืœื˜ื™ื ื‘ืงืฆื‘. ## ืœืกื™ื›ื•ื: ืื™ืš ืœื”ื™ืžื ืข ืžื›ืœ ื”ื˜ืขื•ื™ื•ืช ื‘ืชื”ืœื™ืš ื”ืœื™ืžื•ื“ ื ื ื™ื— ืฉื”ื—ืœื˜ืชื ืœืœืžื•ื“ ืคื™ืชื•ื— Full Stack ื‘ืœื™ ืœื™ืคื•ืœ ืœืืฃ ืื—ืช ืžืืจื‘ืขืช ื”ืžืœื›ื•ื“ื•ืช ืฉืจืื™ื ื•. ื”ื ื” ืžื” ืฉืืคืฉืจ ืœืขืฉื•ืช: 1. ืœื•ืžื“ื™ื ืืช ื”ื˜ื›ื ื•ืœื•ื’ื™ื•ืช ืœืคื™ ื”ืกื“ืจ, ืื—ืช ืื—ืจื™ ื”ืฉื ื™ื”. ื›ื“ืื™ ืœืขื‘ื•ื“ ืœืคื™ ืกื™ืœื‘ื•ืก ืžืกื•ื“ืจ ืฉื™ืขื–ื•ืจ ืœื”ื™ืฉืืจ ืžืžื•ืงื“ื™ื. 2. ืœื”ื—ืœื™ื˜ ืขืœ "ื”ื™ืฉื’ื™ื" ืกื•ื‘ื™ืงื˜ื™ื‘ื™ื™ื ืฉืชืœื•ื™ื™ื ื‘ื›ืœ ื•ืงืฉื•ืจื™ื ืœืกื™ืœื‘ื•ืก ื•ืœื ืงื•ื“ื•ืช ืžืจื›ื–ื™ื•ืช ื‘ื•. ื–ื” ื™ื›ื•ืœ ืœื”ื™ื•ืช ื”ืืชืจ ื”ืจืืฉื•ืŸ ืฉื”ืขืœื™ืชื ืœืื•ื•ื™ืจ, ื”ืงื•ื“ ื”ืื™ื ื˜ืจืงื˜ื™ื‘ื™ ื”ืจืืฉื•ืŸ ืฉื›ืชื‘ืชื, ื”ืคืขื ื”ืจืืฉื•ื ื” ืฉื›ืชื‘ืชื ื‘ืจื›ื” ืื™ื ื˜ืจื ื˜ื™ืช ืœื—ื‘ืจ ืื• ื—ื‘ืจื”, ืื• ืืคื™ืœื• ืกื™ื•ื ืชืจื’ื™ืœื™ ื”ืกื™ื›ื•ื ืฉืœ ืคืจืง ืžืกื•ื™ื ื‘ืกื™ืœื‘ื•ืก. ื›ืฉื™ืฉ ืœื›ื ืžื•ืœ ื”ืขื™ื ื™ื™ื ืจืฉื™ืžื” ืฉืœ ื”ื™ืฉื’ื™ื ืกื•ื‘ื™ืงื˜ื™ื‘ื™ื™ื ื•ืคืจืกื™ื ืงื˜ื ื™ื ืฉืžืชืื™ืžื™ื ืœื›ืœ ื”ื™ืฉื’ ื”ืจื‘ื” ื™ื•ืชืจ ืงืœ ืœื”ืชืงื“ื. 3. ืœื—ืœืง ืืช ื”ื–ืžืŸ ืœื–ืžืŸ ืœื™ืžื•ื“ ื•ื–ืžืŸ ืชืจื’ื•ืœ ื•ื‘ื–ืžืŸ ื”ืชืจื’ื•ืœ ืœืขื‘ื•ื“ ืขืœ ืคืจื•ื™ืงื˜ื™ื ืื• ืจืขื™ื•ื ื•ืช ืฉืœื›ื. ืื ื™ืฉ ืœื›ื 10 ืฉืขื•ืช ื‘ืฉื‘ื•ืข ืฉืœ ืœื™ืžื•ื“ ืื– ืชื—ืœืงื• ืื•ืชืŸ ืฉืขื” ืœืจืื•ืช ื•ื™ื“ืื•, ืขื•ื“ ืฉืขืชื™ื™ื-ืฉืœื•ืฉ ืœืคื™ืชืจื•ืŸ ืชืจื’ื™ืœื™ื ืงื˜ื ื™ื ืขืœ ื”ื ื•ืฉื ืฉื”ื™ื” ื‘ื•ื™ื“ืื• ื•ืขื•ื“ ืฉื‘ืข-ืฉืžื•ื ื” ืฉืขื•ืช ืœื‘ื ื™ื” ืฉืœ ืจืขื™ื•ืŸ ืฉืœื›ื ื‘ืื•ืชื ื”ื›ืœื™ื. ื‘ืฉื‘ื™ืœ ืœื ืœื’ืœื•ืฉ ืขื ื”ื˜ื›ื ื•ืœื•ื’ื™ื” ืืคืฉืจ ืœื”ื™ืขื–ืจ ื‘ืคืจื™ืœืื ืกืจื™ื ืฉื™ื‘ื ื• ื‘ืฉื‘ื™ืœื›ื ืืช ื”ื—ืœืงื™ื ืฉืืชื ืขื“ื™ื™ืŸ ืœื ืฉื•ืœื˜ื™ื ื‘ื”ื (ืœื“ื•ื’ืžื” ืœืงื—ืช ืคืจื™ืœืื ืกืจ ืฉื™ื‘ื ื” ืœื›ื ืืช ื” CSS ื•ืืชื ืชื›ืชื‘ื• ืืช ื” JavaScript, ืื• ืœืงื—ืช ืคืจื™ืœืื ืกืจ ืฉื™ื‘ื ื” ืืช ืงื•ื“ ืฆื“ ื”ืฉืจืช ื•ืืชื ืชืชืžืงื“ื• ื‘ืงื•ื“ ืฆื“ ื”ืœืงื•ื—). 4. ืœื”ืชื—ื™ืœ ืืช ื”ืœื™ืžื•ื“ ื›ืžื” ืฉื™ื•ืชืจ ืžื•ืงื“ื ื•ืœื ื›ืฉื™ืฉ ืœื›ื ื“ื“-ืœื™ื™ืŸ. ืื ื™ืฉ ืœื›ื ืจืื™ื•ืŸ ืขื‘ื•ื“ื” ืขืœ ืจื™ืืงื˜ ื‘ืขื•ื“ ืฉื‘ื•ืขื™ื™ื ืื– ื™ื”ื™ื” ืžืื•ื“ ืงืฉื” ืœื‘ื ื•ืช ืชื”ืœื™ืš ืœื™ืžื•ื“ ืžื”ื ื” ืœืฉื‘ื•ืขื™ื™ื ื”ืงืจื•ื‘ื™ื ืขื“ ื”ืจืื™ื•ืŸ; ืื‘ืœ ืื ื”ืชื—ืœืชื ืœืœืžื•ื“ Full Stack ืชื•ืš ื›ื“ื™ ืขื‘ื•ื“ื” ื‘ืžืฉืจื” ื—ืœืงื™ืช ื‘ืชื•ืจ ืžืชื›ื ืชื™ Java ืื– ื”ืœื™ืžื•ื“ ืœื "ืชื•ืงืข" ืืชื›ื ื‘ื—ื™ื™ื ื•ืืชื ื™ื›ื•ืœื™ื ืœื”ืฉืงื™ืข ืืช ื”ื–ืžืŸ ืฉืฆืจื™ืš ื›ื“ื™ ืœื”ื’ื™ืข ืœืจืžื” ืืœื™ื” ืืชื ืฉื•ืืคื™ื. ื .ื‘. ืชื•ื“ื” ืœืงืœื•ืช'ื™ืœื“ ืขืœ ื”ื”ืฉืจืื” ืœืคื•ืกื˜ ื–ื” ื•ืจื‘ื™ื ื ื•ืกืคื™ื.

ToCode
1 419
# ืืจื‘ืข ื˜ืขื•ื™ื•ืช ืฉื”ื•ืจืกื•ืช ืœื ื• ืืช ื”ืœื™ืžื•ื“ ืชื”ืœื™ืš ืœื™ืžื•ื“ ื˜ื›ื ื•ืœื•ื’ื™ื” ื—ื“ืฉื” ื™ื›ื•ืœ ืœื”ื™ื•ืช ืžื”ื ื” ื•ืžืกืคืง, ืื‘ืœ ื’ื ื™ื›ื•ืœ ืœื”ื™ื•ืช ืžืœื—ื™ืฅ ื•ืœื ื™ืขื™ืœ. ื‘ืจื•ื‘ ื”ืžืงืจื™ื ื›ืฉื”ืชื”ืœื™ืš ื ื›ืฉืœ ื–ื” ื‘ื’ืœืœ ืฉืขืฉื™ื ื• ืื—ืช ืื• ื™ื•ืชืจ ืž-4 ื”ื˜ืขื•ื™ื•ืช ื”ื‘ืื•ืช: ## ืœืœืžื•ื“ ื™ื•ืชืจ ืžื“ื™ ื“ื‘ืจื™ื ื‘ื™ื—ื“ ื˜ืขื•ืช ืžืกืคืจ ืื—ืช ื•ื”ื™ื ื”ื ืคื•ืฆื” ื‘ื™ื•ืชืจ ื”ื™ื ื”ืจืฆื•ืŸ ืœืœืžื•ื“ ื™ื•ืชืจ ืžื“ื™ ื“ื‘ืจื™ื ื‘ืžื›ื” ืื—ืช. ื–ื” ื‘ื•ืœื˜ ื‘ืžื™ื•ื—ื“ ื‘ืชื—ื•ื ืฉืœ ืคื™ืชื•ื— Full Stack ื‘ื’ืœืœ ื”ื›ืžื•ืช ื”ื”ื–ื•ื™ื” ืฉืœ ื˜ื›ื ื•ืœื•ื’ื™ื•ืช ืฉื ืชืงืœื™ื ื‘ื”ืŸ. ื–ื” ืœื ื ื“ื™ืจ ืœืจืื•ืช ืžื™ืฉื”ื• ืฉืžื ืกื” ืœื”ื™ื›ื ืก ืœืจื™ืืงื˜ ืžื ืกื” ืœืœืžื•ื“ ื’ื Next.JS, ื’ื JavaScript, ื’ื React, ื’ื Redux, ื’ื MobX, ื’ื CSS Modules, ื’ื CSS In JS, ื’ื Webpack, ื’ื Material UI, ื•ื’ื ื•ื’ื ื•ื’ื. ืขื›ืฉื™ื• ืžืฆื“ ืื—ื“ ื™ืฉ ืคื” ื”ื’ื™ื•ืŸ ื›ื™ ื‘ืžื•ื“ืขืช ื“ืจื•ืฉื™ื ืื• ืื™ืคื” ืฉืœื ืชืกืชื›ืœื• ื‘ืืžืช ื™ืฉ ืจืฉื™ืžื” ืืจื•ื›ื” ื•ืžืชื™ืฉื” ืฉืœ ื˜ื›ื ื•ืœื•ื’ื™ื•ืช. ืื‘ืœ ืžื”ืฆื“ ื”ืคืจืงื˜ื™ ื–ื” ืคืฉื•ื˜ ื‘ืœืชื™ ืืคืฉืจื™ ืœื”ืฉืชืœื˜ ืขืœ ื›ืœ ื›ืš ื”ืจื‘ื” ื—ื•ืžืจ ื‘ืžื›ื” ืื—ืช. ื›ืœ ืคืขื ืฉืื ื—ื ื• ื™ื•ืจื“ื™ื ืžื”ืฉื‘ื™ืœ ื›ื“ื™ ืœืœืžื•ื“ ืขื•ื“ ื˜ื›ื ื•ืœื•ื’ื™ื” ืื ื—ื ื• ืจืง ืžืชืจื—ืงื™ื ืžื”ื™ืขื“ ืฉืœ ื”ื™ื›ืจื•ืช ื˜ื•ื‘ื” ืขื ื”ื˜ื›ื ื•ืœื•ื’ื™ื” ืื•ืชื” ืจืฆื™ื ื• ืœืœืžื•ื“ ืžื”ื”ืชื—ืœื”. ื‘ืžืงื•ื ืœืจื•ืฅ ืœื›ืœ ื”ื›ื™ื•ื•ื ื™ื ื™ื•ืชืจ ืžืฉืชืœื ืœื”ืชืžืงื“: ืœื‘ื—ื•ืจ ืจืง ื˜ื›ื ื•ืœื•ื’ื™ื” ืื—ืช ื•ืœืœืžื•ื“ ืื•ืชื” ืœืขื•ืžืง. ืื—ืจื™ ื–ื” ืœื”ืžืฉื™ืš ืœืฉื ื™ื”, ื•ืœืฉืœื™ืฉื™ืช ื•ืœืจื‘ื™ืขื™ืช. ื‘ื–ื›ื•ืช ื”ื™ื›ื•ืœืช ืœื”ืชืžืงื“ ื›ืœ ืคืขื ื‘ื˜ื›ื ื•ืœื•ื’ื™ื” ืื—ืช, ื”ืœื™ืžื•ื“ ืฉืœ ื›ืœ ื˜ื›ื ื•ืœื•ื’ื™ื” ื™ื”ื™ื” ืžื”ื™ืจ ื™ื•ืชืจ ื•ื–ืžืŸ ื”ืœื™ืžื•ื“ ื”ื›ื•ืœืœ ื™ื”ื™ื” ืงืฆืจ ื™ื•ืชืจ - ื•ื‘ื ื•ืกืฃ ืืชื ืชืจื’ื™ืฉื• ื”ืจื‘ื” ืคื—ื•ืช ืžืชื•ืกื›ืœื™ื ืžื”ืชื”ืœื™ืš. ## ืœื—ื’ื•ื’ ื”ื™ืฉื’ื™ื ืื•ื‘ื™ืงื˜ื™ื‘ื™ื™ื ื”ื™ืฉื’ ืื•ื‘ื™ืงื˜ื™ื‘ื™ ื”ื•ื ืžืฉื”ื• ืฉืืคืฉืจ ืœืจืื•ืช ื•ืœื”ืจืื•ืช ืœืื—ืจื™ื. ืœื“ื•ื’ืžื” ืื ื”ื—ืœื˜ืชื™ ืœืœืžื•ื“ ืœื›ืชื•ื‘ ืืคืœื™ืงืฆื™ื•ืช ืœืื™ื™ืคื•ืŸ ืื– ื”ื™ืฉื’ ืื•ื‘ื™ื™ืงื˜ื™ื‘ื™ ื™ื”ื™ื” ืืคืœื™ืงืฆื™ื” ืฉืื ืฉื™ื ืžื•ืจื™ื“ื™ื ืื•ืชื” ื•ื ื”ื ื™ื ืžืžื ื”, ื•ืขื“ื™ืฃ ืื—ืช ื‘ืชืฉืœื•ื ื›ืš ืฉื’ื ื ืจืื” ื”ื›ื ืกื” ืžื”ืขื‘ื•ื“ื”. ืื• ืื ืืชื ืœื•ืžื“ื™ื ืคื™ืชื•ื— Full Stack ืื– ื”ื™ืฉื’ ืื•ื‘ื™ืงื˜ื™ ื™ื”ื™ื” ืœื‘ื ื•ืช ืžืขืจื›ืช ืฉืชืจืฉื™ื ืžืจืื™ื™ื ื™ื ืคื•ื˜ื ืฆื™ืืœื™ื™ื ื›ื“ื™ ืฉื™ื–ืžื™ื ื• ืืชื›ื ืœืจืื™ื•ืŸ ืขื‘ื•ื“ื” ืื• ื™ื•ืชืจ ื˜ื•ื‘ ืœืžืฆื•ื ืžืžืฉ ืขื‘ื•ื“ื” ื‘ืชื—ื•ื. ืื ื”ืžื•ื— ืฉืœื›ื ืขื•ื‘ื“ ืงืฆืช ื›ืžื• ืฉืœื™ ืื– ื›ืœ ื™ื•ื ืฉืขื•ื‘ืจ ื‘ืœื™ ื”ื™ืฉื’ ืื•ื‘ื™ืงื˜ื™ื‘ื™ ืžื•ืกื™ืฃ ืœื—ืฅ ื‘ืฆื•ืจื” ืฉืœ: "ืื•ืœื™ ืื ื™ ืœื ื‘ื›ื™ื•ื•ืŸ", "ืื•ืœื™ ืœืขื•ืœื ืœื ืืฆืœื™ื— ืœื›ืชื•ื‘ ืืคืœื™ืงืฆื™ื” ืฉืื ืฉื™ื ื™ืจืฆื•", "ืื•ืœื™ ื”ืชื—ืจื•ืช ืงืฉื” ืžื“ื™", "ืื•ืœื™ ื‘ื—ืจืชื™ ืชื—ื•ื ืฉืœื ืžืชืื™ื ืœื™" ื•ืขื•ื“ ืื™ื ืกืคื•ืจ ืžื—ืฉื‘ื•ืช ื•ืคื—ื“ื™ื ืžืกื•ื’ ื–ื”. ื”ื‘ืขื™ื” ืขื ื”ื™ืฉื’ื™ื ืื•ื‘ื™ืงื˜ื™ื ื”ื™ื ืฉื”ื ื‘ืืžืช ืงืฉื™ื ืœื”ืฉื’ื”. ื–ื” ื™ื›ื•ืœ ืœืงื—ืช ืฉื ื” ืœืœืžื•ื“ Full Stack ื‘ืจืžื” ืฉืชื›ื ื™ืก ืืชื›ื ืœืขื‘ื•ื“ื”. ื–ื” ื™ื›ื•ืœ ืœืงื—ืช ืฉืœื•ืฉ ืฉื ื™ื ืœื”ืชืืžืŸ ืขืœ ืคื™ืชื•ื— ืืคืœื™ืงืฆื™ื•ืช ืขื“ ืฉืชืคืชื—ื• ืื—ืช ืฉืื ืฉื™ื ื™ืจืฆื• ืœืฉืœื ืขืœื™ื” ื•ืœืกืคืจ ืขืœื™ื” ืœื—ื‘ืจื™ื”ื. ื”ืžืชื ื” ืœื”ื™ืฉื’ื™ื ืื•ื‘ื™ืงื˜ื™ื‘ื™ื™ื ืื•ืžืจืช ืฉืืชื ืžืขื‘ื™ืจื™ื ืืช ืจื•ื‘ ืชื”ืœื™ืš ื”ืœื™ืžื•ื“ ื‘ื—ืฉืฉื•ืช ื•ื‘ืœื—ืฅ ืฉืื•ืœื™ ืืชื ืœื ื‘ื›ื™ื•ื•ืŸ ื”ื ื›ื•ืŸ ื•ืฉืื•ืœื™ ื–ื” ืืฃ ืคืขื ืœื ื™ืฆืœื™ื—. ื‘ืืงืœื™ื ืจื’ืฉื™ ื›ื–ื” ืžืื•ื“ ืงืฉื” ืœื”ื ื•ืช ืžื”ืœื™ืžื•ื“ ื•ืœื”ื’ื™ืข ืœื ืงื•ื“ืช ื”ืกื™ื•ื. ื‘ืžืงื•ื ืœื—ื›ื•ืช ืœื”ื™ืฉื’ ืื•ื‘ื™ืงื˜ื™ื‘ื™ ื”ืจื‘ื” ื™ื•ืชืจ ืžื•ืžืœืฅ ืœื—ื’ื•ื’ ื”ื™ืฉื’ื™ื ืกื•ื‘ื™ืงื˜ื™ื‘ื™ื™ื. ื›ืฉื”ืชื—ืœืชื™ ืœืœืžื•ื“ ืคื™ืชื•ื— ืืคืœื™ืงืฆื™ื•ืช ืœืื™ื™ืคื•ืŸ ื›ืชื‘ืชื™ ืืช ื”ืืคืœื™ืงืฆื™ื•ืช ื”ืจืืฉื•ื ื•ืช ืฉืœื™ ืจืง ืขืœ ืกื™ืžื•ืœื˜ื•ืจ ื•ื”ื—ืœื˜ืชื™ ืฉื‘ืจื’ืข ืฉืื ื™ ืžืกื™ื™ื ืœื›ืชื•ื‘ ืžืฉื”ื• ืฉืขื•ื‘ื“ ืื ื™ ืงื•ื ื” ืœืขืฆืžื™ ืžื›ืฉื™ืจ ืืžื™ืชื™ (ืื– ื”ื™ื” ื“ื‘ืจ ื‘ืฉื ipod touch). ื”ื ืงื•ื“ื” ืฉืœื‘ื ื•ืช ืžืฉื”ื• ืฉืขื•ื‘ื“ ื–ื” ื”ื™ืฉื’ ืฉืชืœื•ื™ ืจืง ื‘ื™ ื•ื”ื•ื ื”ืจื‘ื” ื™ื•ืชืจ ืžื”ื™ืจ ืžืœื‘ื ื•ืช ืžืฉื”ื• ืฉืื ืฉื™ื ื™ืจืฆื• ืœืงื ื•ืช. ื•ืื—ืจื™ ืฉืงื ื™ืชื™ ืืช ื” ipod touch ืงื™ื‘ืœืชื™ ื—ื™ื–ื•ืง ืœืžื•ื˜ื™ื‘ืฆื™ื” ืฉืขื–ืจ ืœื™ ืœื”ืžืฉื™ืš ืขื“ ื”ื”ื™ืฉื’ ื”ืกื•ื‘ื™ืงื˜ื™ื‘ื™ ื”ื‘ื. ื›ืฉืื ื—ื ื• ื—ื•ื’ื’ื™ื ื”ื™ืฉื’ื™ื ืกื•ื‘ื™ืงื˜ื™ื‘ื™ื™ื ืื ื—ื ื• ืœื ืคื•ื’ืขื™ื ื‘ืกื™ื›ื•ื™ ืฉืœื ื• ืœื”ื’ื™ืข ืœื”ืฆืœื—ื” - ื‘ื“ื™ื•ืง ืœื”ื™ืคืš. ืื ื—ื ื• ืžืขื•ื“ื“ื™ื ื”ืฉืงืขื” ืžืชื•ืš ื”ื‘ื ื” ืฉื”ื”ืฆืœื—ื” ื”ื™ื ืชื•ืฆืื” ืฉืœ ืชื”ืœื™ืš ื•ื”ื“ื‘ืจ ื”ื—ืฉื•ื‘ ื”ื•ื ืœื‘ื ื•ืช ืชื”ืœื™ื›ื™ื ื ื›ื•ื ื™ื. ## ืœืœืžื•ื“ ื™ื•ืชืจ ืžื“ื™ ืชื™ืื•ืจื™ื” ื˜ืขื•ืช ืžืกืคืจ ืฉืœื•ืฉ ื”ื™ื ืœื”ื™ืชืงืข ืขืœ ืชื™ืื•ืจื™ื” ื•ืืฆืœื ื• ื‘ืชื›ื ื•ืช ื”ื™ื ืžืื•ื“ ื‘ื•ืœื˜ืช. ื–ื” ืžื” ืฉืงื•ืจื” ื›ืฉืื ืฉื™ื ืœื•ืงื—ื™ื ืขื•ื“ ืงื•ืจืก ื•ืขื•ื“ ืงื•ืจืก ื•ื ืชืงืขื™ื ืขืœ ืคืจื•ื™ืงื˜ื™ื ืฉืœ ืงื•ืจืกื™ื ื•ืชืจื’ื™ืœื™ื ืงื˜ื ื™ื ื‘ืžืงื•ื ืœื™ื™ืฉื ืืช ื”ื™ื“ืข ื•ืœื”ืชืงื“ื ืœืคืจื•ื™ืงื˜ื™ื ื™ื•ืชืจ ื•ื™ื•ืชืจ ื’ื“ื•ืœื™ื. ื—ืœื•ืงืช ื”ืขื‘ื•ื“ื” ื‘ื™ืŸ ืœื™ืžื•ื“ ืžืงื•ืจืก ืœื‘ื™ืŸ ืขื‘ื•ื“ื” ืืžื™ืชื™ืช ื‘ืงื•ืจืก ืชื›ื ื•ืชื™ ืฆืจื™ื›ื” ืœืขืžื•ื“ ืขืœ ื—ืžืฉ-ืื—ื“, ื›ืœื•ืžืจ ื›ืœ ืฉืขื” ืฉื”ืฉืงืขืชื ื‘ืœื™ืžื•ื“ ืืชื ืฆืจื™ื›ื™ื ืœื”ืฉืงื™ืข 5 ืฉืขื•ืช ื‘ื›ืชื™ื‘ืช ืงื•ื“ ืืžื™ืชื™. ื–ื” ืื•ืžืจ ืฉืžื™ ืฉืœื•ืงื— ืงื•ืจืก ื•ื™ื“ืื• ืฉื”ืื•ืจืš ืฉืœื• ื”ื•ื 8 ืฉืขื•ืช ื•ื™ื“ืื• ืฆืจื™ืš ืœื”ืฉืงื™ืข ื‘ื ื•ืกืฃ ืœ-8 ืฉืขื•ืช ืฆืคื™ื” ื‘ื•ื™ื“ืื• ืขื•ื“ 40 ืฉืขื•ืช ื‘ื›ืชื™ื‘ืช ืงื•ื“ ืืžื™ืชื™ ืขืœ ื”ื ื•ืฉืื™ื ืฉื ืœืžื“ื• ื‘ื•ื™ื“ืื•. ## ืœื ืกื•ืช ืœืฉืœื•ื˜ ื‘ืงืฆื‘ ื˜ืขื•ืช ืจื‘ื™ืขื™ืช ืฉื™ื•ืฆืจืช ืชืกื›ื•ืœ ื‘ืชื”ืœื™ืš ื”ืœื™ืžื•ื“ ื”ื™ื ื”ื ื™ืกื™ื•ืŸ ืœืฉืœื•ื˜ ื‘ืงืฆื‘ ื”ืœื™ืžื•ื“ ืื• ื™ื•ืชืจ ื ื›ื•ืŸ ื‘ืงืฆื‘ ื”ืงืœื™ื˜ื”. ืœื™ืžื•ื“ ื”ื•ื ืœื ืœื™ื ืืจื™ ื•ื”ืจื‘ื” ืžืื•ื“ ืคืขืžื™ื ืื ื™ ื ืชืงืข ื”ืžื•ืŸ ืฉืขื•ืช ืขืœ ืื™ื–ื” ื ื•ืฉื ืžืกื•ื™ื ืฉื ืจืื” ืžืžืฉ ืงื˜ืŸ ื•ืœื ื—ืฉื•ื‘, ื›ืฉืคืขืžื™ื ืื—ืจื•ืช ืื ื™ ืจืฅ ื•ืžื‘ื™ืŸ ืžื”ืจ ื”ืžื•ืŸ ื ื•ืฉืื™ื ืื—ืจื™ื. ื”ื ื™ืกื™ื•ืŸ ืœืกื“ืจ ืืช ื”ืœื™ืžื•ื“ ื‘ืชื•ืš ืกื™ืœื‘ื•ืก ื•ืœื”ื—ืœื™ื˜ ืฉื™ื™ืงื— ืœื™ ืฉืœื•ืฉ ืฉืขื•ืช ืœืœืžื•ื“ ืœื”ืฉืชืžืฉ ื‘ React Hooks ืชื•ืจื ืจืง ืชืกื›ื•ืœ.

ToCode
1 419
# ืœื ืฉืžืชื™ ืœื‘ ืœื ืฉืžืชื™ ืœื‘ ืœื’ื•ื“ืœ ืฉืœ ื” Docker Image ... ืขื“ ืฉื”ืชื—ื™ืœ ืœื”ื™ื’ืžืจ ืœื™ ื”ืžืงื•ื ืขืœ ื”ื“ื™ืกืง. ืœื ืฉืžืชื™ ืœื‘ ืœื–ืžื ื™ ื”ื˜ืขื™ื ื” ืฉืœ ื”ืืชืจ ... ืขื“ ืฉื”ืชื—ื™ืœื• ืœื”ื’ื™ืข ืชืœื•ื ื•ืช ืžื’ื•ืœืฉื™ื ืฉืœื ืžืฆืœื™ื—ื™ื ืœื”ืชื—ื‘ืจ. ืœื ืฉืžืชื™ ืœื‘ ืœืื™ื˜ื™ื•ืช ื”ืฉืื™ืœืชื•ืช ื‘ DB ... ืขื“ ืฉืงื•ื“ ื”ืชื—ื™ืœ ืœื”ื™ื›ืฉืœ ืขืœ Timeouts ื‘ื“ื™ื•ืง ื‘ืฉื™ื ื”ืขื•ืžืก ืขืœ ื”ืžืขืจื›ืช. ืœื ืฉืžืชื™ ืœื‘ ืœื‘ืขื™ื•ืช ื”ืื‘ื˜ื—ื” ื‘ืงื•ื“ ... ืขื“ ื”ืคืจื™ืฆื” ืฉื”ืคื™ืœื” ืœื™ ืืช ื›ืœ ื”ืžืขืจื›ืช ืœืฉื‘ื•ืขื•ืช. ืœื ืฉืžืชื™ ืœื‘ ืฉื”ืงื•ื“ ื›ืœ ื›ืš ืžื‘ื•ืœื’ืŸ ... ืขื“ ืฉื”ื’ื™ืข ืžืชื›ื ืช ื—ื“ืฉ ืœืฆื•ื•ืช ืฉืœื ื”ืฆืœื™ื— ืœืžืฆื•ื ืืช ื”ื™ื“ื™ื™ื ื•ื”ืจื’ืœื™ื™ื ืฉื. ื‘ืชื•ื›ื ื” ืœื ืœืฉื™ื ืœื‘ ื–ื” ืกื•ื’ ืฉืœ ื‘ื—ื™ืจื”. ื™ืฉ ืœื ืžืขื˜ ื›ืœื™ื ื˜ื•ื‘ื™ื ืฉืขื•ื–ืจื™ื ืœื ื• ืœื–ื”ื•ืช ื”ืจื‘ื” ื‘ืขื™ื•ืช ืœืคื ื™ ืฉืžื’ื™ืขื™ื ืœืคืจื•ื“ืงืฉืŸ. ื”ื‘ื—ื™ืจื” ืœืฉื™ื ืœื‘ ืขื•ื–ืจืช ืœื‘ื ื•ืช ืžืขืจื›ื•ืช ื˜ื•ื‘ื•ืช ื™ื•ืชืจ, ื•ื™ื•ืชืจ ืžื–ื” ื”ื™ื ืคื•ืชื—ืช ื“ืœืชื•ืช ืœืื–ื•ืจื™ ืœื™ืžื•ื“ ื—ื“ืฉื™ื ื•ืขื•ื–ืจืช ืœื ื• ืœื”ืชืงื“ื ื›ืžืชื›ื ืชื™ื.

ToCode - Estadรญsticas y analรญtica del canal de Telegram @tocodeil