ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi
Raspberry PI 3 Model B+

Π’ Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ€ΡŠΡ‡Π½ΠΈΠΊ Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ основитС Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Swift Π½Π° Raspberry Pi. Raspberry Pi Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π΅Π½ ΠΈ Π΅Π²Ρ‚ΠΈΠ½ Π΅Π΄Π½ΠΎΠΏΠ»Π°Ρ‚Π΅Π½ ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€, Ρ‡ΠΈΠΉΡ‚ΠΎ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π» Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ само ΠΎΡ‚ изчислитСлнитС ΠΌΡƒ рСсурси. Π’ΠΎΠΉ Π΅ Π΄ΠΎΠ±Ρ€Π΅ ΠΏΠΎΠ·Π½Π°Ρ‚ Π½Π° Ρ‚Π΅Ρ…Π½ΠΎΠ³ΠΈΠΈΡ‚Π΅ ΠΈ Π»ΡŽΠ±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Π½Π° DIY. Π’ΠΎΠ²Π° Π΅ страхотно устройство Π·Π° Ρ‚Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ искат Π΄Π° СкспСримСнтират с идСя ΠΈΠ»ΠΈ Π΄Π° тСстват ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° концСпция Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°. Използва сС Π·Π° Π½Π°ΠΉ-Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ ΠΈ лСсно сС поставя Π½Π° ΠΏΠΎΡ‡Ρ‚ΠΈ всяко място β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½ Π½Π° ΠΊΠ°ΠΏΠ°ΠΊΠ° Π½Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° ΠΈ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°Ρ‚ΠΎ дСсктоп ΠΈΠ»ΠΈ Π΄Π° сС ΡΠ²ΡŠΡ€ΠΆΠ΅ към ΠΌΠ°ΠΊΠ΅Ρ‚Π½Π° ΠΏΠ»Π°Ρ‚ΠΊΠ° Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Π° схСма.

ΠžΡ„ΠΈΡ†ΠΈΠ°Π»Π½ΠΈΡΡ‚ Π΅Π·ΠΈΠΊ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Π½Π° β€žΠΌΠ°Π»ΠΈΠ½ΠΊΠ°Ρ‚Π°β€œ Π΅ Python. Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‡Π΅ Python Π΅ сравнитСлно лСсСн Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅, ΠΌΡƒ липсва Ρ‚ΠΈΠΏΠΎΠ²Π° бСзопасност ΠΈ консумира ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΌΠ΅Ρ‚. Swift, ΠΎΡ‚ своя страна, Ρ€Π°Π·ΠΏΠΎΠ»Π°Π³Π° с ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ARC ΠΈ Π΅ ΠΏΠΎΡ‡Ρ‚ΠΈ 8 ΠΏΡŠΡ‚ΠΈ ΠΏΠΎ-Π±ΡŠΡ€Π· ΠΎΡ‚ Python. Въй ΠΊΠ°Ρ‚ΠΎ ΠΎΠ±Π΅ΠΌΡŠΡ‚ Π½Π° RAM ΠΈ изчислитСлнитС Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π½Π° Raspberry Pi са ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΅Π·ΠΈΠΊ ΠΊΠ°Ρ‚ΠΎ Swift позволява Π΄Π° сС максимализира ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŠΡ‚ Π½Π° Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π° Π½Π° Ρ‚ΠΎΠ·ΠΈ ΠΌΠΈΠ½ΠΈ-PC.

Π˜Π½ΡΡ‚Π°Π»Π°Ρ†ΠΈΡ Π½Π° ОБ

ΠŸΡ€Π΅Π΄ΠΈ Π΄Π° инсталиратС Swift, трябва Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ ОБ. Π—Π° Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π΅Π΄ΠΈΠ½ ΠΎΡ‚ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈΡ‚Π΅, ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π½ΠΈ ΠΎΡ‚ Ρ‚Ρ€Π΅Ρ‚ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ. Най-разпространСният ΠΈΠ·Π±ΠΎΡ€ Π΅ Raspbian, ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»Π½Π°Ρ‚Π° ОБ Π½Π° Raspberry Pi. Има няколко Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π·Π° инсталиранС Π½Π° Raspbian Π½Π° SD ΠΊΠ°Ρ€Ρ‚Π°; Π² нашия случай Ρ‰Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ balenaEtcher. Π•Ρ‚ΠΎ ΠΊΠ°ΠΊΠ²ΠΎ трябва Π΄Π° сС Π½Π°ΠΏΡ€Π°Π²ΠΈ:

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi
Π‘Ρ‚ΡŠΠΏΠΊΠ° Π²Ρ‚ΠΎΡ€Π°: Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€Π°ΠΉΡ‚Π΅ SD ΠΊΠ°Ρ€Ρ‚Π°Ρ‚Π° Π² MS-DOS (FAT)

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi
Π‘Ρ‚ΡŠΠΏΠΊΠ° Ρ‚Ρ€Π΅Ρ‚Π°: ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ balenaEtcher Π·Π° запис Π½Π° Raspbian Π½Π° ΠΊΠ°Ρ€Ρ‚Π°Ρ‚Π°

ΠŸΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π°ΠΌΠ΅ Π±Π΅Π·ΠΏΠ»Π°Ρ‚Π΅Π½ ΠΈΠ½Ρ‚Π΅Π½Π·ΠΈΠ²Π΅Π½ курс ΠΏΠΎ машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π·Π° Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‰ΠΈ:
Π‘ΡŠΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΏΡŠΡ€Π²ΠΈΡ си ΠΌΠΎΠ΄Π΅Π» Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π·Π° Ρ‚Ρ€ΠΈ Π΄Π½ΠΈ β€” 2-4 сСптСмври. Π‘Π΅Π·ΠΏΠ»Π°Ρ‚Π΅Π½ ΠΈΠ½Ρ‚Π΅Π½Π·ΠΈΠ²Π΅Π½ курс, ΠΊΠΎΠΉΡ‚ΠΎ позволява Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ ΠΊΠ°ΠΊΠ²ΠΎ Π΅ Machine Learning ΠΈ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ ΠΊΠ°ΠΊ Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈΡ‚Π΅ с ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚. Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Ρ‰Π΅ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ ΠΊΠ°ΠΊ Π΄Π° прСдсказватС курса Π½Π° Π΄ΠΎΠ»Π°Ρ€Π° с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° самостоятСлно Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½ ΠΌΠΎΠ΄Π΅Π»..

Настройка Π½Π° Raspberry Pi

ΠŸΠΎΠ»Π²ΠΈΠ½Π°Ρ‚Π° ΠΏΡŠΡ‚ Π²Π΅Ρ‡Π΅ Π΅ ΠΈΠ·ΠΌΠΈΠ½Π°Ρ‚Π°! Π‘Π΅Π³Π° Ρ€Π°Π·ΠΏΠΎΠ»Π°Π³Π°ΠΌΠ΅ с SD ΠΊΠ°Ρ€Ρ‚Π° с ОБ, която Ρ‰Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅, Π½ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ‚Π° систСма всС ΠΎΡ‰Π΅ трябва Π΄Π° бъдС инсталирана. Π—Π° Ρ‚ΠΎΠ²Π° ΠΈΠΌΠ° Π΄Π²Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ:

  • Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈΡ към устройството ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€, ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π° ΠΈ мишка.
  • Π˜Π·Π²ΡŠΡ€ΡˆΠ΅Ρ‚Π΅ всичко ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€ Ρ‡Ρ€Π΅Π· SSH ΠΈΠ»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° USB Console ΠΊΠ°Π±Π΅Π».

Ако Ρ‚ΠΎΠ²Π° Π΅ Π²Π°ΡˆΠΈΡΡ‚ ΠΏΡŠΡ€Π²ΠΈ ΠΎΠΏΠΈΡ‚ с Pi, ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π°ΠΌ опция β„–1. Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ SD ΠΊΠ°Ρ€Ρ‚Π°Ρ‚Π° с Raspbian OS бъдС поставСна Π² Pi, ΡΠ²ΡŠΡ€ΠΆΠ΅Ρ‚Π΅ HDMI ΠΊΠ°Π±Π΅Π», мишка, ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π° ΠΈ Π·Π°Ρ…Ρ€Π°Π½Π²Π°Ρ‰ ΠΊΠ°Π±Π΅Π».

Pi трябва Π΄Π° сС Π·Π°Ρ€Π΅Π΄ΠΈ ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅. ΠŸΠΎΠ·Π΄Ρ€Π°Π²Π»Π΅Π½ΠΈΡ! Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΎΡ‚Π΄Π΅Π»ΠΈΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅ Π΄Π° ΠΏΡ€ΠΎΡƒΡ‡ΠΈΡ‚Π΅ настолната срСда ΠΈ Π½Π΅ΠΉΠ½ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

Π˜Π½ΡΡ‚Π°Π»Π°Ρ†ΠΈΡ Π½Π° Swift

Π—Π° Π΄Π° инсталиратС Swift Π½Π° 'ΠΌΠ°Π»ΠΈΠ½ΠΊΠ°Ρ‚Π°', трябва Π΄Π° я ΡΠ²ΡŠΡ€ΠΆΠ΅Ρ‚Π΅ с ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ (Ρ‡Ρ€Π΅Π· Ethernet ΠΈΠ»ΠΈ WiFi, Π² зависимост ΠΎΡ‚ ΠΌΠΎΠ΄Π΅Π»Π° Π½Π° Π΄ΡŠΡΠΊΠ°Ρ‚Π°). Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ΡŠΡ‚ Π΅ ΡΠ²ΡŠΡ€Π·Π°Π½, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ инсталацията Π½Π° Swift.

МоТС Π΄Π° я ΠΈΠ·ΠΏΡŠΠ»Π½ΠΈΡ‚Π΅ ΠΏΠΎ Π΄Π²Π° Π½Π°Ρ‡ΠΈΠ½Π°. ΠŸΡŠΡ€Π²ΠΈΡΡ‚ β€” самостоятСлно създаванС Π½Π° Π±ΠΈΠ»Π΄ Π½Π° Swift, вторият β€” Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π²Π΅Ρ‡Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½ΠΈ Π±ΠΈΠ½Π°Ρ€Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅. НастоятСлно Π²ΠΈ ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π°ΠΌ втория ΠΌΠ΅Ρ‚ΠΎΠ΄, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΏΡŠΡ€Π²ΠΈΡΡ‚ изисква няколко Π΄Π½ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ°. Вторият Π½Π°Ρ‡ΠΈΠ½ стана възмоТСн Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° Π³Ρ€ΡƒΠΏΠ°Ρ‚Π° Swift-ARM. Π’Π΅ ΠΏΡ€ΠΈΡ‚Π΅ΠΆΠ°Π²Π°Ρ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ΠΎΡ‚ ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° инсталиратС Swift, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ apt (Advanced Package Tool).

Π’ΠΎΠ²Π° Π΅ инструмСнт Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π΅Π½ Ρ€Π΅Π΄, Π½Π΅Ρ‰ΠΎ ΠΊΠ°Ρ‚ΠΎ App Store Π·Π° прилоТСния ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ Π·Π° устройства с Linux. Π—Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π° с apt, ΠΊΠ°Ρ‚ΠΎ Π²ΡŠΠ²Π΅Π΄Π΅Ρ‚Π΅ Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° apt-get. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° трябва Π΄Π° посочитС Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ уточняват ΠΈΠ·Π²ΡŠΡ€ΡˆΠ΅Π½Π°Ρ‚Π° Π·Π°Π΄Π°Ρ‡Π°. Π’ нашия случай трябва Π΄Π° инсталирамС Swift 5.0.2. Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΈΡ‚Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° сС намСрят Ρ‚ΡƒΠΊ.

Какво ΠΆ, Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ. Π‘Π΅Π³Π°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π·Π½Π°Π΅ΠΌ, Ρ‡Π΅ Ρ‰Π΅ инсталирамС Swift с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° apt, трябва Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡ‚ΠΎ Π² списъка Π½Π° Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡ‚Π΅.

ΠšΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Π·Π° добавянС/инсталиранС Π½Π° Ρ€Π΅ΠΏΠΎ swift-arm ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Ρ‚Π°ΠΊΠ°:

curl -s  | sudo bash

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° инсталирамС Swift ΠΎΡ‚ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΎΡ‚ΠΎ Ρ€Π΅ΠΏΠΎ:

sudo apt-get install swift5=5.0.2-v0.4

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

И Ρ‚ΠΎΠ²Π° Π΅ всичко! Π‘Π΅Π³Π° Swift Π΅ инсталиран Π½Π° Π½Π°ΡˆΠ°Ρ‚Π° 'ΠΌΠ°Π»ΠΈΠ½ΠΊΠ°'.

БъздаванС Π½Π° тСстов ΠΏΡ€ΠΎΠ΅ΠΊΡ‚

Към ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Swift REPL Π½Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ, Π½ΠΎ всичко останало β€” Π΄Π°. Π—Π° тСста Π΄Π° създадСм Swift ΠΏΠ°ΠΊΠ΅Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Swift Package Manager.

ΠŸΡŠΡ€Π²ΠΎ ΡΡŠΠ·Π΄Π°ΠΉΡ‚Π΅ дирСктория с ΠΈΠΌΠ΅ MyFirstProject.

mkdir MyFirstProject

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π΅Ρ‚Π΅ Ρ‚Π΅ΠΊΡƒΡ‰Π°Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Π½Π° дирСктория Π½Π° Π½ΠΎΠ²ΠΎΡΡŠΠ·Π΄Π°Π΄Π΅Π½Π°Ρ‚Π° MyFirstProject.

cd MyFirstProject

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

Π‘ΡŠΠ·Π΄Π°ΠΉΡ‚Π΅ Π½ΠΎΠ² изпълним Swift ΠΏΠ°ΠΊΠ΅Ρ‚.

swift package init --type=executable

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

Π’Π΅Π·ΠΈ Ρ‚Ρ€ΠΈ Ρ€Π΅Π΄Π° ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ ΠΏΡ€Π°Π·Π΅Π½ Swift ΠΏΠ°ΠΊΠ΅Ρ‚, Π½Π°Ρ€Π΅Ρ‡Π΅Π½ MyFirstProject. Π—Π° Π΄Π° Π³ΠΎ стартиратС, Π²ΡŠΠ²Π΅Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° swift run.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π·Π°Π²ΡŠΡ€ΡˆΠΈ, Ρ‰Π΅ Π²ΠΈΠ΄ΠΈΠΌ Ρ„Ρ€Π°Π·Π°Ρ‚Π° β€žHello, world!β€œ Π² командния Ρ€Π΅Π΄.

Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ ΡΡŠΠ·Π΄Π°Π΄ΠΎΡ…ΠΌΠ΅ ΠΏΡŠΡ€Π²Π°Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° Π½Π° Pi, Π½Π΅ΠΊΠ° Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ някои ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ. Π’ дирСкторията MyFirstProject Ρ‰Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°ΠΌΠ΅ Ρ„Π°ΠΉΠ»Π° main.swift. Π’ Π½Π΅Π³ΠΎ сС Π½Π°ΠΌΠΈΡ€Π° ΠΊΠΎΠ΄ΡŠΡ‚, ΠΊΠΎΠΉΡ‚ΠΎ сС изпълнява, ΠΊΠΎΠ³Π°Ρ‚ΠΎ стартирамС ΠΏΠ°ΠΊΠ΅Ρ‚Π° с ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° swift run.

ΠŸΡ€ΠΎΠΌΠ΅Π½ΡΠΌΠ΅ дирСкторията Π½Π° Sources/MyFirstProject.

cd Sources/MyFirstProject 

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ„Π°ΠΉΠ»Π° main.swift, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ вградСния nano Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€.

nano main.swift

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΡŠΡ‚ Π΅ ΠΎΡ‚Π²ΠΎΡ€Π΅Π½, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° промСнятС ΠΊΠΎΠ΄Π° Π½Π° Π²Π°ΡˆΠ°Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°. НСка Π·Π°ΠΌΠ΅Π½ΠΈΠΌ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Ρ„Π°ΠΉΠ»Π° main.swift с Ρ‚ΠΎΠ²Π°:

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

print("Hello, Marc!")

Π Π°Π·Π±ΠΈΡ€Π° сС, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΠΈΠΌΠ΅. Π—Π° Π΄Π° Π·Π°ΠΏΠ°Π·ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅, трябва Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ слСдното:

  • CTRL+X Π·Π° Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° Ρ„Π°ΠΉΠ»Π°.
  • ΠŸΠΎΡ‚Π²ΡŠΡ€Π΄Π΅Ρ‚Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅, ΠΊΠ°Ρ‚ΠΎ натиснСтС Β«YΒ».
  • ΠŸΠΎΡ‚Π²ΡŠΡ€Π΄Π΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Ρ„Π°ΠΉΠ»Π° main.swift, ΠΊΠ°Ρ‚ΠΎ натиснСтС Enter.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

Всички ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ са Π½Π°ΠΏΡ€Π°Π²Π΅Π½ΠΈ, сСга Π΅ Π²Ρ€Π΅ΠΌΠ΅ Π΄Π° рСстартиратС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°Ρ‚Π°.

swift run

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ Π΅Π·ΠΈΠΊ Swift Π½Π° Raspberry Pi

ΠŸΠΎΠ·Π΄Ρ€Π°Π²Π»Π΅Π½ΠΈΡ! Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ ΠΊΠΎΠ΄ΡŠΡ‚ Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½, Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΡŠΡ‚ трябва Π΄Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅ промСнСния Ρ€Π΅Π΄.

Π‘Π΅Π³Π°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Swift Π΅ инсталиран, ΠΈΠΌΠ°Ρ‚Π΅ ΠΊΠ°ΠΊΠ²ΠΎ Π΄Π° ΠΏΡ€Π°Π²ΠΈΡ‚Π΅. НапримСр, Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€, ΠΊΠ°Ρ‚ΠΎ свСтодиоди, сСрвомотори ΠΈ Ρ€Π΅Π»Π΅Ρ‚Π°, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Π·Π° Β«ΠΆΠ΅Π»Π΅Π·Π½ΠΈΒ» ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Π·Π° ΠΏΠ»Π°Ρ‚ΠΊΠΈ Linux/ARM, която сС Π½Π°Ρ€ΠΈΡ‡Π° SwiftyGPIO.

УспСх Π² СкспСримСнтитС с Swift Π½Π° Raspberry Pi!

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

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster