Руководство: ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ простого Π±ΠΎΡ‚Π° для Π’Π΅Π»Π΅Π³Ρ€Π°ΠΌ Π½Π° JS для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Π― Π½Π°Ρ‡Π°Π» ΠΏΠΎΠ³Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΌΠΈΡ€ IT лишь Ρ‚Ρ€ΠΈ Π½Π΅Π΄Π΅Π»ΠΈ Π½Π°Π·Π°Π΄. Π‘Π΅Ρ€ΡŒΠ΅Π·Π½ΠΎ, Ρ‚Ρ€ΠΈ Π½Π΅Π΄Π΅Π»ΠΈ Π½Π°Π·Π°Π΄ я Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π» синтаксиса HTML, Π° знакомство с языками программирования Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Π»ΠΎΡΡŒ школьной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ ΠΏΠΎ Pascal 10-Π»Π΅Ρ‚Π½Π΅ΠΉ давности. Однако я Ρ€Π΅ΡˆΠΈΠ»ΡΡ ΠΏΠΎΠ΅Ρ…Π°Ρ‚ΡŒ Π² IT-Π»Π°Π³Π΅Ρ€ΡŒ, для Π΄Π΅Ρ‚Π΅ΠΉ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π±ΠΎΡ‚Π°. Π― Ρ€Π΅ΡˆΠΈΠ», Ρ‡Ρ‚ΠΎ это вряд Π»ΠΈ Ρ‚Π°ΠΊ слоТно.

Π‘ этого начался Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ, Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ я:

  • Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΠ» ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΉ сСрвСр с Ubuntu,
  • зарСгистрировался Π½Π° GitHub,
  • Π²Ρ‹ΡƒΡ‡ΠΈΠ» Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ синтаксис JavaScript,
  • ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π» Ρ‚ΠΎΠ½Π½Ρƒ статСй Π½Π° английском ΠΈ русском языках,
  • сдСлал, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, Π±ΠΎΡ‚Π°,
  • написал эту ΡΡ‚Π°Ρ‚ΡŒΡŽ, Π½Π°ΠΊΠΎΠ½Π΅Ρ†.

ВыглядСл ΠΈΡ‚ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

Руководство: ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ простого Π±ΠΎΡ‚Π° для Π’Π΅Π»Π΅Π³Ρ€Π°ΠΌ Π½Π° JS для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Π‘ΠΊΠ°ΠΆΡƒ сразу, это ΡΡ‚Π°Ρ‚ΡŒΡ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… β€” Ρ‡Ρ‚ΠΎΠ±Ρ‹ просто ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ Π΄Π΅Π»Π°Ρ‚ΡŒ элСмСнтарныС Π²Π΅Ρ‰ΠΈ с самой Π½ΡƒΠ»Π΅Π²ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ.

А Π΅Ρ‰Π΅ β€” для ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Ρ… программистов β€” просто Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡ… Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡΠΌΠ΅ΡˆΠΈΡ‚ΡŒ.

1. Как ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° JS?

Π― ΠΏΠΎΠ½ΠΈΠΌΠ°Π», Ρ‡Ρ‚ΠΎ стоит для Π½Π°Ρ‡Π°Π»Π° хотя Π±Ρ‹ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² синтаксисС языка. Π’Ρ‹Π±ΠΎΡ€ ΠΏΠ°Π» Π½Π° JavaScript, просто ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом для мСня Π±Ρ‹Π»ΠΎ созданиС прилоТСния Π½Π° ReactNative. Π― Π½Π°Ρ‡Π°Π» с курса Π½Π° Codecademy ΠΈ остался Π² большом восторгС. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ 7 Π΄Π½Π΅ΠΉ бСсплатно. Π Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ. ΠŸΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π΅Π³ΠΎ заняло порядка 25 часов. На самом Π΄Π΅Π»Π΅ Π΄Π°Π»Π΅ΠΊΠΎΠΎΠΎΠΎ Π½Π΅ всС ΠΈΠ· Π½Π΅Π³ΠΎ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ. Π’ΠΎΡ‚ Ρ‚Π°ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ выглядит структура курса ΠΈ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π±Π»ΠΎΠΊ.

Руководство: ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ простого Π±ΠΎΡ‚Π° для Π’Π΅Π»Π΅Π³Ρ€Π°ΠΌ Π½Π° JS для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

2. Как Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΡ‚Π°?

Π’ Π½Π°Ρ‡Π°Π»Π΅ ΠΌΠ½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠΌΠΎΠ³Π»Π° Π²ΠΎΡ‚ эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΈΠ· Π±Π»ΠΎΠ³Π° Π½Π΅ΠΊΠΎΠ΅Π³ΠΎ Арчакова. Он Ρ€Π°Π·ΠΆΠ΅Π²Ρ‹Π²Π°Π΅Ρ‚ самоС Π½Π°Ρ‡Π°Π»ΠΎ. Но Π³Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΌ Π΅ΡΡ‚ΡŒ β€” это инструкция ΠΏΠΎ рСгистрации Π±ΠΎΡ‚Π°. Π›ΡƒΡ‡ΡˆΠ΅ я Π½Π΅ Π½Π°ΠΏΠΈΡˆΡƒ, ΠΈ ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ это самая лСгкая Ρ‡Π°ΡΡ‚ΡŒ, просто Π½Π°ΠΏΠΈΡˆΡƒ ΡΡƒΡ‚ΡŒ. НуТно ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π±ΠΎΡ‚Π° ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ API. Π­Ρ‚ΠΎ дСлаСтся Ρ‡Π΅Ρ€Π΅Π· Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Π±ΠΎΡ‚Π° β€” @BotFather. НайдитС Π΅Π³ΠΎ Π² telegram, Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π΅ΠΌΡƒ, ΠΏΡ€ΠΎΠΉΠ΄ΠΈΡ‚Π΅ простой ΠΏΡƒΡ‚ΡŒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ (сохранитС!) API-ΠΊΠ»ΡŽΡ‡ (это Π½Π°Π±ΠΎΡ€ Ρ†ΠΈΡ„Ρ€ ΠΈ Π±ΡƒΠΊΠ²). Он пригодился ΠΌΠ½Π΅ ΠΏΠΎΠ·ΠΆΠ΅.

Руководство: ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ простого Π±ΠΎΡ‚Π° для Π’Π΅Π»Π΅Π³Ρ€Π°ΠΌ Π½Π° JS для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

3. Как выглядит ΠΊΠΎΠ΄ Π±ΠΎΡ‚Π°?

ПослС Π΄ΠΎΠ»Π³ΠΎΠ³ΠΎ изучСния статСй, я понял, Ρ‡Ρ‚ΠΎ стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ (сторонний ΠΊΠΎΠ΄ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ модуля), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΌΡƒΡ‡Π°Ρ‚ΡŒΡΡ с ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ API Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌΠ° ΠΈ созданиСм с нуля Π±ΠΎΠ»ΡŒΡˆΠΈΡ… кусков ΠΊΠΎΠ΄Π°. Π― нашСл Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ telegraf, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊ Ρ‡Π΅ΠΌΡƒ-Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ npm ΠΈΠ»ΠΈ yarn. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ я ΠΏΠΎΠ½ΠΈΠΌΠ°Π» Ρ‚ΠΎΠ³Π΄Π°, ΠΈΠ· Ρ‡Π΅Π³ΠΎ состоит Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ Π±ΠΎΡ‚Π°. Π‘ΠΌΠ΅ΡΡ‚ΡŒΡΡ здСсь. Π― Π½Π΅ ΠΎΠ±ΠΈΠΆΡƒΡΡŒ. Π‘ΠΎΠ»ΡŒΡˆΠ΅ всСго ΠΏΡ€ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ создании Π±ΠΎΡ‚Π° ΠΌΠ½Π΅ ΠΏΠΎΠΌΠΎΠ³Π»ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π²Π½ΠΈΠ·Ρƒ страницы:

Руководство: ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ простого Π±ΠΎΡ‚Π° для Π’Π΅Π»Π΅Π³Ρ€Π°ΠΌ Π½Π° JS для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

3. Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ собствСнный ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΉ сСрвСр Π·Π° 100 Ρ€ΡƒΠ±Π»Π΅ΠΉ

ПослС Π΄ΠΎΠ»Π³ΠΈΡ… поисков я понял, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° ‘npm’ ΠΈΠ· ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ Π²Ρ‹ΡˆΠ΅ относится ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС. Командная строка Π΅ΡΡ‚ΡŒ Π²Π΅Π·Π΄Π΅, Π½ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ Π΅Π΅ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ, Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ NodePackageManager. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π±Ρ‹Π»Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π» я Π½Π° PixelBook с ChromeOS. Π― ΠΏΡ€ΠΎΠΏΡƒΡ‰Ρƒ здСсь большой Π±Π»ΠΎΠΊ ΠΏΡ€ΠΎ Ρ‚ΠΎ, ΠΊΠ°ΠΊ я ΠΏΠΎΠ·Π½Π°Π²Π°Π» Linux β€” для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° это пустоС ΠΈ Π½Π΅Π½ΡƒΠΆΠ½ΠΎΠ΅. Если Ρƒ вас Π΅ΡΡ‚ΡŒ Windows ΠΈΠ»ΠΈ MacBook, Ρƒ вас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ консоль.

Если Π² Π΄Π²ΡƒΡ… словах, я поставил Linux Ρ‡Π΅Ρ€Π΅Π· Crostini.

Однако Π² процСссС я понял, Ρ‡Ρ‚ΠΎ для постоянной Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±ΠΎΡ‚Π° (Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° Ρƒ мСня Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€) ΠΌΠ½Π΅ Π½ΡƒΠΆΠ΅Π½ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΉ сСрвСр. Π― Π²Ρ‹Π±Ρ€Π°Π» vscale.io Π― Π·Π°ΠΊΠΈΠ½ΡƒΠ» 100 Ρ€ΡƒΠ±Π»Π΅ΠΉ, ΠΊΡƒΠΏΠΈΠ» самый Π΄Π΅ΡˆΠ΅Π²Ρ‹ΠΉ сСрвСр Ubuntu (см.ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ).

Руководство: ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ простого Π±ΠΎΡ‚Π° для Π’Π΅Π»Π΅Π³Ρ€Π°ΠΌ Π½Π° JS для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

4. Как ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ сСрвСр для запуска Π±ΠΎΡ‚Π°

ПослС этого я понял, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π° сСрвСрС ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ ΠΏΠ°ΠΏΠΊΡƒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я ΠΏΠΎΠ»ΠΎΠΆΡƒ Ρ„Π°ΠΉΠ» с тСкстом ΠΊΠΎΠ΄Π°. Для этого Π² консоли (Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ прямо Π½Π° сайтС Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ консоль») я Π²Π±ΠΈΠ»

mkdir bot

bot β€” это стало Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΅ΠΉ ΠΏΠ°ΠΏΠΊΠΈ. ПослС этого я установил npm ΠΈ Node.js, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΌΠ½Π΅ ΠΏΠΎΡ‚ΠΎΠΌ ΠΊΠΎΠ΄ ΠΈΠ· Ρ„Π°ΠΉΠ»ΠΈΠΊΠΎΠ² с Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ *.js

sudo apt update
sudo apt install nodejs
sudo apt install npm

ΠžΡ‡Π΅Π½ΡŒ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ Π½Π° этом этапС Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ сСрвСру Ρ‡Π΅Ρ€Π΅Π· свою консоль. Π’ΠΎΡ‚ инструкция Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с сСрвСром Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Ρ‡Π΅Ρ€Π΅Π· консоль своСго ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°.

5. Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π±ΠΎΡ‚Π°.

А Π²ΠΎΡ‚ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ просто ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ для мСня. Π›ΡŽΠ±Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° β€” это просто строки тСкста. Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ Π²Π±ΠΈΡ‚ΡŒ ΠΊΡƒΠ΄Π° ΡƒΠ³ΠΎΠ΄Π½ΠΎ, ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ с Π½ΡƒΠΆΠ½Ρ‹ΠΌ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ ΠΈ всС. Π’Ρ‹ прСкрасСн. Π― использовал Atom, Π½ΠΎ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ просто Π² Π±Π»ΠΎΠΊΠ½ΠΎΡ‚Π΅ стандартном ΠΏΠΈΡΠ°Ρ‚ΡŒ. Π“Π»Π°Π²Π½ΠΎΠ΅ β€” ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΠΎΡ‚ΠΎΠΌ Ρ„Π°ΠΉΠ» Π² Π½ΡƒΠΆΠ½ΠΎΠΌ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΈ. Π­Ρ‚ΠΎ ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ тСкст Π² Word ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ.

Π― сдСлал Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ», Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ вставил ΠΊΠΎΠ΄ ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π½Π° страницС telegraf ΠΈ сохранил Π² Ρ„Π°ΠΉΠ» index.js (Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Ρ‚Π°ΠΊ, Π½ΠΎ Ρ‚Π°ΠΊ принято). Π’Π°ΠΆΠ½ΠΎ β€” вмСсто BOT_TOKEN Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ свой API-ΠΊΠ»ΡŽΡ‡ ΠΈΠ· Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π°.

const Telegraf = require('telegraf')

const bot = new Telegraf(process.env.BOT_TOKEN)
bot.start((ctx) => ctx.reply('Welcome!'))
bot.help((ctx) => ctx.reply('Send me a sticker'))
bot.on('sticker', (ctx) => ctx.reply(''))
bot.hears('hi', (ctx) => ctx.reply('Hey there'))
bot.launch()

6. Как Π·Π°ΠΊΠΈΠ½ΡƒΡ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° сСрвСр Ρ‡Π΅Ρ€Π΅Π· github

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠ½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°ΠΊΠΈΠ½ΡƒΡ‚ΡŒ ΠΊΠ°ΠΊ-Ρ‚ΠΎ этот ΠΊΠΎΠ΄ Π½Π° сСрвСр ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ. Для мСня это стало Ρ‡Π΅Π»Π»Π΅Π½Π΄ΠΆΠ΅ΠΌ. Π’ ΠΈΡ‚ΠΎΠ³Π΅, послС Π΄ΠΎΠ»Π³ΠΈΡ… мытарств я понял, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Π½Π° github, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позовляСт ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² консоли. Π― Π·Π°Ρ€Π΅Π³Π°Π» Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ Π½Π° github ΠΈ сдСлал Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΊΡƒΠ΄Π° ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠ» Ρ„Π°ΠΉΠ». ПослС этого ΠΌΠ½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΆΠ΅ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Ρ„Π°ΠΉΠ»ΠΎΠ² с ΠΌΠΎΠ΅Π³ΠΎ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° (ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ!) Π½Π° сСрвСр Π² ΠΏΠ°ΠΏΠΊΡƒ bot (Ссли Π²Π΄Ρ€ΡƒΠ³ Π²Ρ‹ Π²Ρ‹ΡˆΠ»ΠΈ ΠΈΠ· Π½Π΅Π΅ β€” просто Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ cd bot).

7. Как Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π½Π° сСрвСр Ρ‡Π΅Ρ€Π΅Π· github Ρ‡.2

МнС Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π½Π° сСрвСр ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ с git. Π― поставил git Π½Π° сСрвСр, Π²Π±ΠΈΠ² Π² консоль

apt-get install git

ПослС этого ΠΌΠ½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Ρ„Π°ΠΉΠ»ΠΎΠ². Для этого я Π²Π±ΠΈΠ» Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку

git clone git://github.com/b0tank/bot.git bot

Π’ ΠΈΡ‚ΠΎΠ³Π΅ всС ΠΈΠ· ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠ»ΠΎΡΡŒ Π½Π° сСрвСр. Ошибкой Π½Π° Π΄Π°Π½Π½ΠΎΠΌ этапС Π±Ρ‹Π»ΠΎ, Ρ‡Ρ‚ΠΎ я, ΠΏΠΎ сути, сдСлал Π²Ρ‚ΠΎΡ€ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΠ°ΠΏΠΊΠΈ bot. АдрСс Π΄ΠΎ Ρ„Π°ΠΉΠ»Π° выглядСл ΠΊΠ°ΠΊ */bot/bot/index.js

Π― Ρ€Π΅ΡˆΠΈΠ» ΠΏΡ€Π΅Π½Π΅Π±Ρ€Π΅Ρ‡ΡŒ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ.

И Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ telegraf, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅ΠΌ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС ΠΊΠΎΠ΄Π°, Π²Π±Π΅ΠΉΡ‚Π΅ Π² консоль ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ.

npm install telegraf

8. Как Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π±ΠΎΡ‚Π°

Для этого, Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π² ΠΏΠ°ΠΏΠΊΠ΅ с Ρ„Π°ΠΉΠ»ΠΎΠΌ (Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ Π² ΠΏΠ°ΠΏΠΊΡƒ Ρ‡Π΅Ρ€Π΅Π· консоль β€” выполняйтС ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° cd bot Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ‚Π°ΠΌ, Π³Π΄Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²Π±ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, которая ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ Π² консоли всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΏΠ°ΠΏΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π°ΠΌ Π»Π΅ΠΆΠ°Ρ‚ ls -a

Для запуска я Π²Π²Π΅Π» Π² консоль

node index.js

Если Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ошибки β€” всС Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Π±ΠΎΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Π˜Ρ‰ΠΈΡ‚Π΅ Π΅Π³ΠΎ Π² Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌΠ΅. Если ошибка Π΅ΡΡ‚ΡŒ β€” примСняйтС свои знания ΠΈΠ· 1 ΠΏΡƒΠ½ΠΊΡ‚Π°.

9. Как Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π±ΠΎΡ‚Π° Π² Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅

Достаточно быстро Π²Ρ‹ ΠΏΠΎΠΉΠΌΠ΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Π±ΠΎΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ сами сидитС Π² консоли. Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ я использовал ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

screen

ПослС этого появится экран с ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ тСкстом. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ всС Ρ…ΠΎΡ€ΠΎΡˆΠΎ. Π’Ρ‹ Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ сСрвСрС Π½Π° ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠΌ сСрвСрС. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ Π»ΡƒΡ‡ΡˆΠ΅, ΠΊΠ°ΠΊ это всС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ β€” Π²ΠΎΡ‚ ΡΡ‚Π°Ρ‚ΡŒΡ. ΠŸΡ€ΠΎΡΡ‚ΠΎ Π·Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ Π² свою ΠΏΠ°ΠΏΠΊΡƒ ΠΈ Π²Π±ΠΈΠ²Π°ΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠΏΠΎ запуску Π±ΠΎΡ‚Π°

node index.js

10. Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π±ΠΎΡ‚ ΠΈ ΠΊΠ°ΠΊ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»

Π§Ρ‚ΠΎ ΠΆΠ΅ ΡƒΠΌΠ΅Π΅Ρ‚ наш Π±ΠΎΡ‚ ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°? Он ΡƒΠΌΠ΅Π΅Ρ‚

bot.start((ctx) => ctx.reply('Welcome!'))

Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ Β«Welcome!Β» Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ старта (ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ тСкст)

bot.help((ctx) => ctx.reply('Send me a sticker'))

Π² ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ /help ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ сообщСниС Β«Send me a stickerΒ»

bot.on('sticker', (ctx) => ctx.reply(''))

Π² ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° стикСр ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΈΠ΅

bot.hears('hi', (ctx) => ctx.reply('Hey there'))

ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ Β«Hey thereΒ», Ссли Π΅ΠΌΡƒ ΠΏΠΈΡˆΡƒΡ‚ ‘hi’
bot.launch()

Руководство: ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ простого Π±ΠΎΡ‚Π° для Π’Π΅Π»Π΅Π³Ρ€Π°ΠΌ Π½Π° JS для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Если Π²Ρ‹ посмотритС ΠΊΠΎΠ΄ Π½Π° github, Ρ‚ΠΎ быстро ΠΏΠΎΠΉΠΌΠ΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ сильно Π΄Π°Π»Π΅ΠΊΠΎ ΠΎΡ‚ этого Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° я Π½Π΅ ΡƒΡˆΠ΅Π». Π§Ρ‚ΠΎ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Ρ‚Π°ΠΊ это функция ctx.replyWithPhoto Она позволяСт ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Ρ„ΠΎΡ‚ΠΎ ΠΈΠ»ΠΈ gif Π² ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ тСкст.

Значимая Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° Π±Ρ‹Π»Π° написана Π΄Π΅Ρ‚ΡŒΠΌΠΈ 11-13 Π»Π΅Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ я Π΄Π°Π» доступ ΠΊ Π±ΠΎΡ‚Ρƒ. Они Π²Π²Π΅Π»ΠΈ свои user-case. Π”ΡƒΠΌΠ°ΡŽ, Π»Π΅Π³ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, какая Ρ‡Π°ΡΡ‚ΡŒ сдСлана Π±Ρ‹Π»Π° ΠΈΠΌΠΈ.

НапримСр, Π½Π° сообщСниС Β«Π΄ΠΆΠ΅ΠΉΠΊΒ» ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ Π³ΠΈΡ„ΠΊΠ° с извСстным пСрсонаТСм ΠΈΠ· ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΊΠ° Adventure Time.

Руководство: ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ простого Π±ΠΎΡ‚Π° для Π’Π΅Π»Π΅Π³Ρ€Π°ΠΌ Π½Π° JS для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ Π±ΠΎΡ‚Π° дальшС, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρƒ Π½ΡƒΠΆΠ½ΠΎ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΡ‚ΡΡŽΠ΄Π°

11. Как ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΈ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π±ΠΎΡ‚Π°

НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π½Π°Π΄ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΊΠΎΠ΄ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° github, Π½ΠΎ ΠΈ Π½Π° сСрвСрС. Π”Π΅Π»Π°Ρ‚ΡŒ это просто β€” стопим Π±ΠΎΡ‚Π° (Π½Π°ΠΆΠ°Ρ‚ΡŒ ctrl+c),

β€” Π²Π²ΠΎΠ΄ΠΈΠΌ Π² консоль, Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π² Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅, git pull
β€” вновь запускаСм Π±ΠΎΡ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ node index.js

END

МногиС Π²Π΅Ρ‰ΠΈ, описанныС Π² этом Ρ„Π°ΠΉΠ»Π΅, Π±ΡƒΠ΄ΡƒΡ‚ супСр ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ для ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Ρ… программистов. Однако ΠΊΠΎΠ³Π΄Π° я сам пытался ΠΎΠ΄Π½ΠΈΠΌ ΠΌΠ°Ρ…ΠΎΠΌ ΠΏΠ΅Ρ€Π΅ΠΏΡ€Ρ‹Π³Π½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠΏΠ°ΡΡ‚ΡŒ Π΄ΠΎ ΠΌΠΈΡ€Π° Π±ΠΎΡ‚ΠΎΠ², ΠΌΠ½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π»ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Π³Π°ΠΉΠ΄Π°. Π“Π°ΠΉΠ΄Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π½Π΅ пропускаСтся ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹Π΅ ΠΈ простыС для любого IT-спСциалиста Π²Π΅Ρ‰ΠΈ.

Π’ дальнСйшСм я ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΡŽ пост ΠΏΡ€ΠΎ Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ своС ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ReactNative Π² Ρ‚Π°ΠΊΠΎΠΌ ΠΆΠ΅ стилС, ΠΏΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°ΠΉΡ‚Π΅ΡΡŒ!

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com