Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ .NET Framework ΠΈ .NET Core?

Microsoft прСдоставляСт Π΄Π²Π΅ Ρ€Π°Π·Π½Ρ‹Π΅ срСды выполнСния .NET: .NET Framework ΠΈ .NET Core. Оба Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ .NET Standard, ΠΈ ΠΊΠΎΠ΄ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ достаточно кросс-совмСстим, Π½ΠΎ .NET Framework Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Windows. ΠœΡ‹ обсудим различия ΠΌΠ΅ΠΆΠ΄Ρƒ двумя срСдами выполнСния.

ΠšΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΡ‚Π²Π΅Ρ‚: кроссплатформСнная ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ

Быстрый ΠΎΡ‚Π²Π΅Ρ‚: .NET Core Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Linux ΠΈ macOS, Π° .NET Framework Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Windows. Π’Ρ‹ Π±Ρ‹ использовали .NET Core, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½Π° кросс-платформСнная ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ, ΠΈ Π²Ρ‹ Π±Ρ‹ использовали .NET Framework, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ слуТбы Windows ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ NuGet, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π±Ρ‹Π»ΠΈ пСрСнСсСны Π² .NET Core.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для Windows, ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ прилоТСния, ΠΈΠ³Ρ€Ρ‹ — ВБЁ Π‘Π•Π‘ΠŸΠ›ΠΠ’ΠΠž, Π² нашСм Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌΠΌ ΠΊΠ°Π½Π°Π»Π΅ — ΠŸΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°ΠΉΡ‚Π΅ΡΡŒ:)

.NET Core являСтся ΠΏΡ€Π΅Π΅ΠΌΠ½ΠΈΠΊΠΎΠΌ .NET Framework, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ это ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ. Он оставляСт послС сСбя Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Windows, Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· Π½ΠΈΡ… всС Π΅Ρ‰Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠŸΠ°ΠΊΠ΅Ρ‚ обСспСчСния совмСстимости с Windows Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅.

Π’ Ρ†Π΅Π»ΠΎΠΌ Core ΠΈ Framework ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹, Π½ΠΎ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Ρƒ Π½ΠΈΡ… Π΅ΡΡ‚ΡŒ нСбольшиС различия. И .NET Core, ΠΈ .NET Framework ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ API, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ .NET Standard, Π½ΠΎ Core ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ исходный ΠΊΠΎΠ΄, Π° Framework β€” это рСализация Microsoft Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Windows.

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, Core Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Π³Ρ‡Π΅, Ρ‡Π΅ΠΌ Framework, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ ΠΈ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ с Docker Π² сСрвСрных модулях Π½Π° основС микросСрвисов. Помимо возмоТности ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Linux Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ (Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для Docker), ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠΉΡΡ ΠΎΠ±Ρ€Π°Π· Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ мСньшС с .NET Core.

Помимо этого, большая Ρ‡Π°ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² различиях ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² NuGet. НапримСр, Entity Framework Core Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ отличаСтся ΠΎΡ‚ Entity Framework 6, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° .NET Framework. ASP.NET Core сильно отличаСтся ΠΎΡ‚ ASP.NET 4, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ для .NET Core.

Когда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ .NET Core

Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ .NET Core ΠΏΠΎΠ²Π΅Ρ€Ρ… .NET Framework Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… случаях:

  • Π’Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ кроссплатформСнная ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ. Бюда Π²Ρ…ΠΎΠ΄ΠΈΡ‚ использованиС Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ Docker ΠΈ микросСрвисов.
  • Π’Ρ‹ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΈ Π²Π°ΠΌ просто Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½. (.NET Core Π½ΠΎΠ²Π΅Π΅.)
  • Π’Ρ‹ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ инструмСнты, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ NuGet для Windows, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ зависят ΠΎΡ‚ .NET Framework.
  • Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ максимально Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. Microsoft Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅Ρ‚ .NET Core с ASP.NET вмСсто .NET Framework.
  • Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ нСсколько вСрсий .NET Core ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ. Framework Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ это.
  • Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ интСрфСйсу ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки Π² Linux ΠΈΠ»ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ сСрвСр сборки CI / CD Π² Linux.

Когда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ .NET Framework

Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ .NET Framework ΠΏΠΎΠ²Π΅Ρ€Ρ… .NET Core Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… случаях:

  • Π’Ρ‹ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ Windows.
  • Π’Ρ‹ интСнсивно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Windows, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Windows Forms, WPF, ASP.NET Web Forms / Pages ΠΈ Windows Workflow Foundation.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π²Π°ΠΌΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ ΠŸΠ°ΠΊΠ΅Ρ‚ обСспСчСния совмСстимости Windows для . NET Core.
  • Π’Ρ‹ ΡƒΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π΅Π³ΠΎ, ΠΈ миграция ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ слишком ΠΌΠ½ΠΎΠ³ΠΎ усилий.

Как ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° .NET Core

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ это Π±ΡƒΠ΄Π΅Ρ‚ Β«ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ с Framework Π½Π° CoreΒ», ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ любой ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° .NET Core, скорСС всСго, Π½Π΅ нуТдаСтся Π² ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π½Π° ΡΡ‚Π°Ρ€ΡƒΡŽ .NET Framework.

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ спСцифичноС для Windows, Π²Ρ‹ Π½Π΅ смоТСтС. Π’Ρ‹ застряли Π½Π° .NET Framework Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π²Π°ΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ вСрсии Core, Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ с ASP.NET WebForms.

Π‘Π°ΠΌΡ‹ΠΌ простым Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ РСшСниС ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° основС .NET Core ΠΈ пСрСнСсти Ρ‚ΡƒΠ΄Π° свой ΠΊΠΎΠ΄. Если Ρƒ вас Π΅ΡΡ‚ΡŒ простоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, это, вСроятно, самоС простоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅.

Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ dotnet try-convert, ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Руководство Microsoft ΠΏΠΎ ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ.

Для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… слоТных ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Анализатор пСрСносимости .NET. Π­Ρ‚ΠΎ инструмСнт ΠΎΡ‚ Microsoft, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ просканируСт ваш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, расскаТСт, насколько слоТным ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚, ΠΊΠ°ΠΊΠΈΠΌΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ваши ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ шаги.

Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊ Π²Π°ΡˆΠΈΡ… зависимостСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΅Ρ‰Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π°Π½Π°Π»ΠΈΠ·Π°. НСкоторыС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ слоТнСС пСрСнСсти, Ρ‡Π΅ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠ΅, ΠΈ Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ, нСдоступноС Π² Core, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ смоТСтС пСрСнСсти Π±Π΅Π· ΠΎΠ±Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡƒΡ‚ΠΈ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для Windows, ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ прилоТСния, ΠΈΠ³Ρ€Ρ‹ — ВБЁ Π‘Π•Π‘ΠŸΠ›ΠΠ’ΠΠž, Π² нашСм Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌΠΌ ΠΊΠ°Π½Π°Π»Π΅ — ΠŸΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°ΠΉΡ‚Π΅ΡΡŒ:)

ΠœΠ΅Ρ‚ΠΊΠΈ записи: #NET

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ записи

c# — ΠžΠ±ΡŠΡΡΠ½ΠΈΡ‚Π΅ Π½Π° ΠΏΠ°Π»ΡŒΡ†Π°Ρ… ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π² .Net Core, .Net Framework, .Net Standart

Π˜Π·ΡƒΡ‡Π°ΡŽ .Net. Π₯ΠΎΡ‡Ρƒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΠ΅ сСрвСрноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (Π΄ΡƒΠΌΠ°ΡŽ Ρ‡Ρ‚ΠΎ ΡƒΡ‡Π΅Π±Π° Π»ΡƒΡ‡ΡˆΠ΅ Π½Π° Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Π½Π΅ΠΆΠ΅Π»ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ hello world). Π’Ρ‹Π±ΠΎΡ€ ΡƒΡ…ΠΎΠ΄ΠΈΡ‚ Π² сторону .Net Core (микросСрвис). Π’ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ (Π΄Π°Π»Π΅Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ). Из всСго ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½Π½ΠΎΠ³ΠΎ понял ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ (Ссли Ρ‡Ρ‚ΠΎ Π½Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ понял ΠΏΠΎΠΏΡ€Π°Π²ΡŒΡ‚Π΅):

  1. Net Standart — Π²Π΅Ρ€ΡˆΠΈΠ½Π° «Π°ΠΉΡΠ±Π΅Ρ€Π³Π°» (своСго Ρ€ΠΎΠ΄Π° Ρ‚ΠΈΠΏΠ° интСрфСйс для ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²)
  2. Net Core, Net Framework, Xamarin — Π½ΠΈΠΆΠ΅ ΠΏΠΎ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ (Ρ‚ΠΈΠΏΠ° ΠΊΠ°ΠΊ классы Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠ΅ интСрфСйс), Π½ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ (ΠΈ скорСС всСго Ρ‚Π°ΠΊ ΠΈ Π΄Π΅Π»Π°ΡŽΡ‚) Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ свои спСцифичСскиС Ρ„ΠΈΡ‡ΠΈ, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹Π΅ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ….
  3. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ (dll-ΠΊΠΈ) написанныС ΠΊΠ°ΠΊ классы Net Standart ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² любом ΠΈΠ· наслСдников (Net Core, Net Framework, Xamarin) с ΠΏΠΎΠ»Π½ΠΎΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ (Π° Ссли Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΌ Ρ‚ΠΎ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ https://docs.microsoft.com/en-us/dot…tation-support), Π½ΠΎ Π½Π΅ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚ (Ρ‚.Π΅. ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ Ссли Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° написана ΠΊΠ°ΠΊ Net Framework dll (со спСцифичСскими для Net Framework Ρ„ΠΈΡ‡Π°ΠΌΠΈ), Ρ‚ΠΎ Π½Π΅ Ρ„Π°ΠΊΡ‚ Ρ‡Ρ‚ΠΎ Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Net Core, ΠΏΠΎΡ‚ΠΎΠΌΡƒ ΠΊΠ°ΠΊ ΠΎΠ½ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ спСцифичСскиС Ρ„ΠΈΡ‡ΠΈ ΠΈΠ· Net Framework)
  4. КаТдая ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ вСрсия Net Standart, Net Core, Net Framework, Xamarin Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя всС Ρ„ΠΈΡ‡ΠΈ ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ вСрсии самой сСбя + Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΠΎΠ²Ρ‹Π΅. Π’.Π΅. ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ ΠΊΠΎΠ΄ написанный ΠΏΠΎΠ΄ Net Standart 1.3 Π±ΡƒΠ΄Π΅Ρ‚ 100% Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Net Standart 2.0, НО ΠΊΠΎΠ΄ написанный ΠΏΠΎΠ΄ Net Standart 2.0 Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Net Standart 1.3 ΠΈ Π²Ρ‹ΡˆΠ΅.

И Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ собствСнно Π½Π° Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅. Π‘ΡƒΠ΄Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ .Net Core 2.0 ΠΈ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ СстСствСнно с Net Standart 2.0 ΠΈ .NETFramework 4. 6.1. Π’Ρ‹Π±ΠΈΡ€Π°ΡŽ Π΄Π²Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π° (Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ) Π½Π° сайтС nuget. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ Selenium Webdriver https://www.nuget.org/packages/Selenium.WebDriver/ Π’ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ dependencies ΡΠΌΠΎΡ‚Ρ€ΡŽ Ρ‡Ρ‚ΠΎ Π΅ΠΌΡƒ Π½Π°Π΄ΠΎ (я понимаю Ρ‡Ρ‚ΠΎ всС это подтянСтся Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΎΠΌ Π² visual studio, Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Π½Π΅ Π½Π°Π΄ΠΎ):

.NETFramework 3.5
No dependencies.
.NETFramework 4.0
No dependencies.
.NETFramework 4.5
No dependencies.
.NETStandard 2.0
Newtonsoft.Json (>= 10.0.3)

Как я понимаю Π΅ΠΌΡƒ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ зависимости ΠΈΠ· .NETFramework, Π½ΠΎ Π½ΡƒΠΆΠ½Π° ΠΎΠ΄Π½Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈΠ· .NETStandard 2.0. Но для Newtonsoft.Json (>= 10.0.3) Ρ‚ΠΎΠΆΠ΅ Π½ΡƒΠΆΠ½Ρ‹ зависимости https://www.nuget.org/packages/Newtonsoft.Json/

.NETFramework 2.0
No dependencies.
.NETFramework 3.5
No dependencies.
.NETFramework 4.0
No dependencies.
.NETFramework 4.5
No dependencies.
.NETStandard 1.0
Microsoft.CSharp (>= 4.3.0)
NETStandard.Library (>= 1.6.1)
System.ComponentModel.TypeConverter (>= 4.3.0)
System.Runtime.Serialization.Primitives (>= 4.3.0)
.NETStandard 1. 3
Microsoft.CSharp (>= 4.3.0)
NETStandard.Library (>= 1.6.1)
System.ComponentModel.TypeConverter (>= 4.3.0)
System.Runtime.Serialization.Formatters (>= 4.3.0)
System.Runtime.Serialization.Primitives (>= 4.3.0)
System.Xml.XmlDocument (>= 4.3.0)
.NETStandard 2.0
No dependencies.

Π’ΠΎΡ‚ Ρ‚ΡƒΡ‚ я Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π² ступорС. Если я Π±ΡƒΠ΄Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ .Net Core 2.0, Π° ΠΎΠ½ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ .NETStandard 2.0, Ρ‚ΠΎ ΠΊΠ°ΠΊ я понимаю для Newtonsoft.Json ΡƒΠΆΠ΅ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹ зависимости ΠΈΠ· .NETStandard 1.0 ΠΈ .NETStandard 1.3, ΠΏΠΎΡ‚ΠΎΠΌΡƒ ΠΊΠ°ΠΊ всС это ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π² .NETStandard 2.0.

Π’.Π΅. Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ Selenium.WebDriver совмСстим с .Net Core Π² Π΄Π°Π½Π½ΠΎΠΌ случаС?

И Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΅ΡΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ cefSharp: https://www.nuget.org/packages/CefSharp.OffScreen/65.0.0-pre01 Он тянСт Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ CefSharp.Common (= 65.0.0-pre01) Π’Π° Π΅Ρ‰Π΅ Π΄Π²Π΅, Π½ΠΎ эти послСдниС Π΄Π²Π΅ Π½Π΅ тянут Π½ΠΈΡ‡Π΅Π³ΠΎ https://www.nuget.org/packages/cef.redist.x64/

This package has no dependencies.

Π’ этом случаС Π½ΠΈ слова ΠΏΡ€ΠΎ .NETStandard ΠΈ . NETFramework. Π’.Π΅. ΠΊΠ°ΠΊ я понимаю ΠΎΠ½ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ самодостаточныС? Π’.Π΅. ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² .Net Core?

Π”Π»ΠΈΠ½Π½Ρ‹ΠΉ вопрос получился, Π½ΠΎ надСюсь Π²Ρ‹ поняли, Π² Ρ‡Π΅ΠΌ я Ρ…ΠΎΡ‡Ρƒ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ: Как Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Π° с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ .NET?

Π›ΡƒΡ‡ΡˆΠΈΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Go: Π½Π΅Ρ‚ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°?

Π’ΠΎ врСмя написания этого Π±Π»ΠΎΠ³Π° ΠΈ руководства ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ Go Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π»Π΅Ρ‚, самый частый вопрос, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я ΡΠ»Ρ‹ΡˆΠ°Π» ΠΎΡ‚ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ², Π±Ρ‹Π»

«Какой Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ ΠΌΠ½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?Β». Одна ΠΈΠ· Ρ…ΡƒΠ΄ΡˆΠΈΡ… Π²Π΅Ρ‰Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π² Go, β€” это ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ… языков программирования.

Для Π΄Ρ€ΡƒΠ³ΠΈΡ… языков установлСны Ρ€Π°ΠΌΠΊΠΈ Β«ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽΒ». Π’ Java Π΅ΡΡ‚ΡŒ Spring, Π² Python β€” Django ΠΈ Flask, Π’ Ruby Π΅ΡΡ‚ΡŒ Rails, Π² C# β€” ASP.NET, Π² Node β€” Express, Π° Π² PHP β€” Symfony ΠΈ Laravel. Иди ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ: Ρ‚Π°ΠΌ Π½Π΅Ρ‚ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ .

Π§Ρ‚ΠΎ Π΅Ρ‰Π΅ Π±ΠΎΠ»Π΅Π΅ интСрСсно, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ. Они ΡΡƒΠΌΠ°ΡΡˆΠ΅Π΄ΡˆΠΈΠ΅?

Π‘Π±ΠΎΡ€ΠΊΠ° сСрвиса Go ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°Ρ‚ΡŒ ΠΎΡ‰ΡƒΡ‰Π΅Π½ΠΈΠ΅ создания монстра Π€Ρ€Π°Π½ΠΊΠ΅Π½ΡˆΡ‚Π΅ΠΉΠ½Π°

Ѐилософия Go языки.

Π­Ρ‚ΠΎ Π½Π΅ скоро измСнится.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ это ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ экосистСма Go ΠΌΠΎΠ»ΠΎΠΆΠ΅. Но Π΅ΡΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹ΠΉ Ρ„Π°ΠΊΡ‚ΠΎΡ€. Go построСн Π½Π° философии Unix, которая гласит:

  • ΠŸΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ ΠΎΠ΄Π½Ρƒ Π²Π΅Ρ‰ΡŒ ΠΈ Π΄Π΅Π»Π°ΡŽΡ‚ это Ρ…ΠΎΡ€ΠΎΡˆΠΎ.
  • ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для совмСстной Ρ€Π°Π±ΠΎΡ‚Ρ‹.
  • ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ тСкстовых ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ², ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ интСрфСйс.

Π­Ρ‚Π° философия Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° Ρƒ КСна Вомпсона, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° языка программирования B (ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΈΠΊΠ° C), Π° Ρ‚Π°ΠΊΠΆΠ΅… Π˜Π΄Ρ‚ΠΈ!

На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅

философия Unix ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ нСбольшиС нСзависимыС части ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ ΠΎΠ΄Π½Ρƒ Π·Π°Π΄Π°Ρ‡Ρƒ, Π° Π½Π΅ большиС куски, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ всС. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ Π²ΠΈΠ΄Π΅Π»ΠΈ это Π² своСм Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅. НапримСр: cat example.txt | ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ | ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ . cat Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ тСкст ΠΈΠ· Ρ„Π°ΠΉΠ»Π°, sort сортируСт строки, Π° uniq удаляСт Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚Ρ‹. ВсС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ нСзависимы ΠΈ Π΄Π΅Π»Π°ΡŽΡ‚ ΠΎΠ΄Π½ΠΎ Π΄Π΅Π»ΠΎ. Π­Ρ‚ΠΎ происходит нСпосрСдствСнно ΠΈΠ· философии Unix. Благодаря Ρ‚Π°ΠΊΠΎΠΌΡƒ Π΄ΠΈΠ·Π°ΠΉΠ½Ρƒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΠ΅ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

Π’ Go философия Unix Π²ΠΈΠ΄Π½Π° Π² стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅. Π›ΡƒΡ‡ΡˆΠΈΠΌΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ самыС распространСнныС интСрфСйсы: io.Reader ΠΈ io.Writer . Π›ΡƒΡ‡ΡˆΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ этой философии.

Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ этой философии. Часто ΠΎΠ½ΠΈ ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ ΠΎΡ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ использования Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°. Они Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ инструмСнтами ΠΈ часто Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ пСрСнСсти усилия ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ нСсовмСстимыС Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ. Если Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Π½ΠΈΠ·ΠΊΠΎΠ΅ (ΠΈΠ»ΠΈ ΠΎΠ½ΠΎ просто ΡƒΠΌΠΈΡ€Π°Π΅Ρ‚), всС усилия потСряны.

Π’Ρ‹ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΉ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ основы Go?

Π’Ρ‹ Π½Π΅ станСтС ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠΌ, просматривая Π²ΠΈΠ΄Π΅ΠΎ. Π˜Π·ΡƒΡ‡Π°ΠΉΡ‚Π΅ Go Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, создавая Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹.

Π§Ρ‚ΠΎ для вас Π²Π°ΠΆΠ½ΠΎ

Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ тСхничСского Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π΅ΡΡ‚ΡŒ компромиссы. Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ компромиссы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ большС смысла для вас ΠΈ вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

НСкоторыС ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ смысл, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π½Π°Π΄ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Π·Π° ΠΎΠ΄ΠΈΠ½ ΡƒΠΈΠΊ-энд ΠΈ отбрасываСтС Π΅Π΅ (Π²Ρ‹ это сдСлаСтС, Π²Π΅Ρ€Π½ΠΎ?). Π’ этом случаС Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹ΠΌ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ являСтся Ρ‚ΠΎ, насколько быстро Π²Ρ‹ смоТСтС это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. Но Ссли Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π»ΠΈΡ‚ΡŒΡΡ Π΄ΠΎΠ»Π³ΠΎ, ΠΈ Π²Ρ‹ строитС Π΅Π³ΠΎ с участиСм Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, влияниС этого Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎ.

Для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ:

  • насколько быстро Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚,
  • насколько быстро Π²Ρ‹ смоТСтС Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ этот ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² долгосрочной пСрспСктивС,
  • насколько Π³ΠΈΠ±ΠΊΠΈΠΌ для Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ (это сильно связано с ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌ ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠΌ).

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ ΠΎΡ†Π΅Π½ΠΈΠ²Π°Ρ‚ΡŒ наши Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

Экономия Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ

Одним ΠΈΠ· самых Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±Π΅Ρ‰Π°Π½ΠΈΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² являСтся экономия Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π’Ρ‹ запускаСтС ΠΎΠ΄Π½Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ ΠΏΠΎΠ»Π½ΠΎΡ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΡΠ°ΠΌΠΎΡƒΠ²Π΅Ρ€Π΅Π½Π½ΡƒΡŽ структуру ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΈ это ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚, Ссли Π²Ρ‹ Π½Π΅ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. Но, ΠΊΠ°ΠΊ ΠΈ Π² случаС с Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ Π΄Ρ€ΡƒΠ³ΠΈΡ… тСхничСских Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, это Π½Π΅ бСсплатно.

Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ разрастСтся, Π²Ρ‹ быстро ΡΡ‚ΠΎΠ»ΠΊΠ½Π΅Ρ‚Π΅ΡΡŒ со стСной условностСй ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°. ВрСбования ΠΊ Π°Π²Ρ‚ΠΎΡ€Ρƒ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°, вСроятно, ΠΎΡ‚Π»ΠΈΡ‡Π°Π»ΠΈΡΡŒ ΠΎΡ‚ Π²Π°ΡˆΠΈΡ…. РСшСниС, принятоС создатСлСм Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°, ΠΌΠΎΠΆΠ΅Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ для простых CRUD-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ с Π±ΠΎΠ»Π΅Π΅ слоТными сцСнариями. Π›Π΅Π³ΠΊΠΎ быстро ΠΏΠΎΡ‚Π΅Ρ€ΡΡ‚ΡŒ всС врСмя, сэкономлСнноС Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π±ΠΎΡ€ΡŒΠ±Ρƒ с ΠΎΠ΄Π½ΠΈΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ это ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π±ΠΎΠ»ΡŒΡˆΠΎΠΌΡƒ Ρ€Π°Π·ΠΎΡ‡Π°Ρ€ΠΎΠ²Π°Π½ΠΈΡŽ Π² вашСй ΠΊΠΎΠΌΠ°Π½Π΄Π΅.

ΠŸΠ°Ρ€Ρƒ Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄ я Ρ€Π°Π±ΠΎΡ‚Π°Π» Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, которая ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π»Π° с ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Go (Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° ΠΎΠΏΡƒΡ‰Ρƒ). Компания росла ΠΈ создавала Π½ΠΎΠ²Ρ‹Π΅ услуги. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΌΡ‹ Π½Π°Ρ‡Π°Π»ΠΈ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ большС Π±ΠΎΠ»ΠΈ, ΠΊΠΎΠ³Π΄Π° Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ слоТныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ использования. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π±Ρ‹Π»ΠΎ источником ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Ρ… ошибок. К соТалСнию, ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Π±Ρ‹Π»ΠΎ нСпросто.

Π’ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° пСрСстали ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΈ стали нСсовмСстимы с ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ экосистСмы. ΠœΡ‹ Π±Ρ‹Π»ΠΈ Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Ρ‹ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Π½Π΅Π³ΠΎ. Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ ΡƒΠΆΠ΅ стал ΠΎΡ‡Π΅Π½ΡŒ тСсно связан со всСй систСмой. Π£Π±Ρ€Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈΠ· дСсятков сСрвисов оказалось Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ΠΉ. ΠŸΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»Π°ΡΡŒ мСТкомандная ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π°, Π½Π° устранСниС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡƒΡˆΠ»ΠΎ нСсколько Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎ-мСсяцСв ΠΈ нСсколько ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚ΠΎΠ². Π”Π°ΠΆΠ΅ Ссли Π² ΠΈΡ‚ΠΎΠ³Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ удался, я Π½Π΅ Π²ΠΈΠ΄Π΅Π» Π΅Π³ΠΎ Ρ‚Π°ΠΊΠΈΠΌ. ВсС Π·Π°Ρ‚Ρ€Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ врСмя ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π»ΡƒΡ‡ΡˆΠ΅, Ссли Π±Ρ‹ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ принял Π΄Ρ€ΡƒΠ³ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π½ΡŒΡˆΠ΅. Π’Π΅ΡΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π±Ρ‹Π» Π±Ρ‹ Π½Π΅ Π½ΡƒΠΆΠ΅Π½. ΠΠ΅ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡΡ‚Ρ€Π°Π΄Π°ΡŽΡ‚ ΠΎΡ‚ нСдовСрия ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

Π­Ρ‚ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ‚Π°ΠΊΠΎΠ΅ малСнькоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ дорогостоящим ΡΠΏΠ°ΡΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ послС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π³ΠΎΠ΄Ρ‹.

Π Π΅ΠΌΠΎΠ½Ρ‚ΠΎΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

Π˜Π·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ рСмонтопригодности ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² β€” спорная Ρ‚Π΅ΠΌΠ° β€” слоТно ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ Π΄Π²Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. НСкоторыС люди говорят, Ρ‡Ρ‚ΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ β€” это Π·Π΄ΠΎΡ€ΠΎΠ²ΠΎ, ΠΈ ΠΎΠ½ΠΈ Π½Π΅ ΠΈΡΠΏΡ‹Ρ‚Ρ‹Π²Π°ΡŽΡ‚ Π±ΠΎΠ»ΠΈ ΠΏΡ€ΠΈ ΠΈΡ… использовании. Для Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‚Π°Ρ‚ΡŒ самым большим ΠΊΠΎΡˆΠΌΠ°Ρ€ΠΎΠΌ Π² долгосрочной пСрспСктивС. НСкоторыС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ слоТнСС, Ρ‡Π΅ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. МногиС Π΄ΡƒΠΌΠ°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Π±ΠΎΡ€ΡŒΠ±Π° с Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠΌ β€” это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π°ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΠ·ΠΌΠ΅Ρ€ΠΈΡ‚ΡŒ влияниС Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² Π½Π° Ρ€Π΅ΠΌΠΎΠ½Ρ‚ΠΎΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

К ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΌΠΎΡ‡ΡŒ сСбС ΠΏΠΎΠ½ΡΡ‚ΡŒ это, ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠ² Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π°ΡƒΠΊΠΈ. Π’ΠΎΡ‡Π½Π΅Π΅, с ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΎΠΉ Accelerate: The Science of Lean Software and DevOps , основанной Π½Π° Π½Π°ΡƒΡ‡Π½ΠΎΠ΅ исслСдованиС. Книга ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π° Π½Π° поиск характСристик Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΈ Ρ…ΡƒΠ΄ΡˆΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Π§Ρ‚ΠΎ Π²Π°ΠΆΠ½ΠΎ для нас, ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π½Π°Ρ‡ΠΈΠΌΡ‹Ρ… Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² для Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ слабосвязанная Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°.

Π“Ρ€ΡƒΠΏΠΏΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ я Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΠ», часто ΡΠΏΡ€Π°ΡˆΠΈΠ²Π°Π»ΠΈ мСня, ΠΊΠ°ΠΊ ΡƒΠ·Π½Π°Ρ‚ΡŒ, являСтся Π»ΠΈ наша Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° слабосвязанной. Один ΠΈΠ· самых простых способов β€” ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ простоту Π·Π°ΠΌΠ΅Π½Ρ‹ ΠΈΠ»ΠΈ удалСния частСй вашСго прилоТСния. Если Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ части вашСго прилоТСния, вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ тСсно связано. ΠŸΡ€ΠΈΠΊΠΎΡΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ‰ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ эффСкт Π΄ΠΎΠΌΠΈΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Ρ€Π°Π·Π½Ρ‹Ρ… мСстах.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ слабосвязанная Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Ρ‚Π°ΠΊ Π²Π°ΠΆΠ½Π°? Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠ·Π½Π°Π΅ΠΌ это. ΠœΡ‹ люди, ΠΈ Π΄Π°ΠΆΠ΅ послС Π»ΡƒΡ‡ΡˆΠΈΡ… исслСдований ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ ошибки. Если Π²Ρ‹ Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚Π΅ Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ, ΠΈΡ… Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅Π³ΠΊΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, Π½Π΅ пСрСписывая вСсь ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ врСмя, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π² долгосрочной пСрспСктивС. Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Рассмотрим сцСнарий, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ. ΠŸΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ΡΡ Π»ΠΈ пСрСписываниС большого количСства ΠΊΠΎΠ΄Π°? МоТно Π»ΠΈ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… сСрвисах нСзависимо? Если Π½Π΅Ρ‚, Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ усилия, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Π΄Π΅Π»ΠΈΡ‚ΡŒ структуру ΠΎΡ‚ вашСй основной Π»ΠΎΠ³ΠΈΠΊΠΈ. Но для этого Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΆΠ΅Ρ€Ρ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ «экономиСй Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈΒ», ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΠ½ Π΄Π°Π΅Ρ‚ Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ.

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π°? Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ сСрвисов Π±Π΅Π· Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°

Π’Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ созданиС сСрвисов Π±Π΅Π· Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Π·Π°ΠΉΠΌΠ΅Ρ‚ Ρ†Π΅Π»ΡƒΡŽ Π²Π΅Ρ‡Π½ΠΎΡΡ‚ΡŒ. ОсобСнно, Ссли Π²Ρ‹ ΠΏΡ€ΠΈΡˆΠ»ΠΈ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΈΡ… языков программирования. Π― это понимаю. Π£ мСня Π±Ρ‹Π»ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΆΠ΅ чувство ΠΏΠ°Ρ€Ρƒ Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄, ΠΊΠΎΠ³Π΄Π° я Π½Π°Ρ‡Π°Π» ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° Go. Π­Ρ‚ΠΎ Π±Ρ‹Π» нСобоснованный страх. ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Π½Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ всС ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. БущСствуСт мноТСство ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ Π²Π°ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚ΡŒ большС усилий для исслСдований. Π’Ρ‹ Ρ‡ΠΈΡ‚Π°Π΅Ρ‚Π΅ это, Π·Π½Π°Ρ‡ΠΈΡ‚, Π²Ρ‹ ΡƒΠΆΠ΅ Π΄Π΅Π»Π°Π΅Ρ‚Π΅ это! Π”Π°ΠΆΠ΅ ΠΏΠ°Ρ€Π° часов исслСдований β€” это Π½ΠΈΡ‡Ρ‚ΠΎ Π·Π° всю Тизнь ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‡Π΅Π½ΡŒ скоро Π²Π΅Ρ€Π½Π΅Ρ‚Π΅ это врСмя благодаря гибкости, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΠ½ΠΎ Π²Π°ΠΌ Π΄Π°Π΅Ρ‚.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли Π²Ρ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ? Π‘Π°ΠΌΡ‹ΠΌ большим прСпятствиСм Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ создаСтС сСрвис. ΠŸΡ€ΠΎΡ‰Π΅ всСго Π½Π°Ρ‡Π°Ρ‚ΡŒ с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ всС Π² ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ». Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ с простого, ΠΎΡ‚Π»ΠΎΠΆΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

ПолСзно ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² качСствС справочных ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ². Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я использовал для своСй ΠΏΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Β«Π”Π°Π²Π°ΠΉΡ‚Π΅ создадим управляСмоС событиями ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π° 15 ΠΌΠΈΠ½ΡƒΡ‚Β» с ΠΏΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ Watermill Π½Π° GoRemoteFest β€” github.com/roblaszczak/goremotefest-livecoding. Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ всСго Π΄Π²Π΅ внСшниС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

НС ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΏΠΎΠ΄ свои Π½ΡƒΠΆΠ΄Ρ‹. Π― ΡƒΠ²Π΅Ρ€Π΅Π½, Ρ‡Ρ‚ΠΎ Π² этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½Π΅Ρ‚ всСх Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… для вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ с Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°ΠΌΠΈ использования, ΠΌΡ‹ написали ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΡΡ‚Π°Ρ‚ΡŒΡŽ со списком Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Go, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для создания своих сСрвисов Go. ΠŸΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ ΠΈΠΌ ΠΏΠ°Ρ€Ρƒ Π»Π΅Ρ‚. ΠœΡ‹ объясняСм, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ эти Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ ΠΊΠ°ΠΊ ΡƒΠ·Π½Π°Ρ‚ΡŒ, Ρ…ΠΎΡ€ΠΎΡˆΠ° Π»ΠΈ подобная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΈΠ»ΠΈ ΠΏΠ»ΠΎΡ…Π°.

Π£Π΄ΠΎΠ±Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ части вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π½Π΅ убивая Π΅Π³ΠΎ.

Когда ваш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ становится Π±ΠΎΠ»Π΅Π΅ слоТным, ΠΈ Π²Ρ‹ ΡƒΠΆΠ΅ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ваши Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ вмСстС, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ Π΅Π³ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Ρƒ. Π’ ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ†ΠΎΠ², Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ казались критичСски Π²Π°ΠΆΠ½Ρ‹ΠΌΠΈ. Благодаря этому Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ простой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ мСньшС исслСдований.

Если Π²Ρ‹ ΠΈΡ‰Π΅Ρ‚Π΅ справку ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ слоТныС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, Π²Π°ΠΌ слСдуСт ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Wild Workouts β€” наш ΠΏΠΎΠ»Π½ΠΎΡ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Go-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ΠœΡ‹ выпустили Π±Π΅ΡΠΏΠ»Π°Ρ‚Π½ΡƒΡŽ ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΡƒΡŽ ΠΊΠ½ΠΈΠ³Ρƒ +200 страниц, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΡƒΡŽ, ΠΊΠ°ΠΊ ΠΌΡ‹ создали это ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

РСзюмС

ΠŸΡ€ΠΈΠ½ΡΡ‚ΠΈΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ сСрвисы, β€” это Π½Π΅ Ρ‚ΠΎ, Π³Π΄Π΅ Π²Π°ΠΌ слСдуСт ΠΈΡΠΊΠ°Ρ‚ΡŒ ярлыки. ΠŸΡ€ΠΈΠ½ΡΡ‚ΠΈΠ΅ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ влияниС Π½Π° вашС врСмя Π² долгосрочной пСрспСктивС. Π­Ρ‚ΠΎ Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½ΠΎ влияСт Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ вашСй ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈ, Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎ, Π½Π° ΠΌΠΎΡ€Π°Π»ΡŒΠ½Ρ‹ΠΉ Π΄ΡƒΡ….

ΠŸΡ€ΠΈΠ½ΡΠ² Π½Π΅Π²Π΅Ρ€Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ быстро ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ Π² Π»ΠΎΠ²ΡƒΡˆΠΊΡƒ ошибки Π½Π΅ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠΌΡ‹Ρ… Π·Π°Ρ‚Ρ€Π°Ρ‚. ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ гСроями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ΠΈ создали, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ ΠΈΡ… создания.

ПослС Π»Π΅ΠΊΡ†ΠΈΠΈ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π½Π°Ρ‚ΡŒ ΠΎ компромиссах ΠΈ послСдствиях ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡƒΡ‚ΠΈ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ отвСтствСнноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Π― надСюсь, Ρ‡Ρ‚ΠΎ эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ хотя Π±Ρ‹ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΌΡƒΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°ΠΉΠΌΠ΅Ρ‚ ΠΏΠ°Ρ€Ρƒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎ-мСсяцСв.

Π£ вас Π΅ΡΡ‚ΡŒ ΡΡ‚Ρ€Π°ΡˆΠΈΠ»ΠΊΠΈ с Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠΌ (Π΄Π°ΠΆΠ΅ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ языка программирования)? Π”Π°ΠΉΡ‚Π΅ Π½Π°ΠΌ Π·Π½Π°Ρ‚ΡŒ ΠΎΠ± этом Π² коммСнтариях!

БСскаркасноС Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅

Π—Π²Π΅Π·Π΄Π° Ρ€Π΅ΠΏΠΎ!

Π”Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Frameworkless Movement β€” это Π³Ρ€ΡƒΠΏΠΏΠ° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², заинтСрСсованных Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π±Π΅Π· Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ². ΠœΡ‹ Π½Π΅ Π½Π΅Π½Π°Π²ΠΈΠ΄ΠΈΠΌ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ , ΠΈ ΠΌΡ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊΠ°ΠΌΠΏΠ°Π½ΠΈΠΈ ΠΏΡ€ΠΎΡ‚ΠΈΠ² Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ², Π½ΠΎ ΠΌΡ‹ воспринимаСм Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ использованиС Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² ΠΊΠ°ΠΊ отсутствиС Π·Π½Π°Π½ΠΈΠΉ ΠΎ тСхничСском Π΄ΠΎΠ»Π³Π΅ ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ², прСдоставляСмых Π²Π°Π½ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ языком ΠΈΠ»ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ, ΠΎΠ½Π° Ρ‚Π°ΠΊΠΆΠ΅ подвСргаСтся риску . Риск Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΎ ΠΏΡ€ΠΎΡˆΠ΅ΡΡ‚Π²ΠΈΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° окаТСтся с инструмСнтом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ большС Π½Π΅ прСдставляСт Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ цСнности ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв прСдставляСт собой ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎΠ΅ прСпятствиС для внСсСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π‘Π°ΠΌΠΎΠ΅ Π³Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Β«ΡƒΠΌΠ΅Ρ€Π΅Ρ‚ΡŒΒ» Π·Π°Π΄ΠΎΠ»Π³ΠΎ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π½Π°Ρ‡Π½Π΅Ρ‚ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, оставив Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² тяТСлым Π±Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ.

Π­Ρ‚ΠΎΡ‚ риск усиливаСтся Π±Π΅Π· наличия ΠΏΡ€ΠΎΡ‡Π½ΠΎΠΉ связи ΠΌΠ΅ΠΆΠ΄Ρƒ принятиСм тСхничСских Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, бизнСс-цСлями ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ. ВмСсто этого Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ трСбования, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΊΡ€Π°ΠΉΠ½ΠΈΠΉ срок, ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΆΠΈΠ·Π½ΠΈ, Π±ΡŽΠ΄ΠΆΠ΅Ρ‚, удобство использования, Π±ΡƒΠ΄ΡƒΡ‰ΠΈΠ΅ бизнСс-сцСнарии ΠΈ ограничСния, связанныС с ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡ‚ΡŒΡŽ, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ основными Ρ„Π°ΠΊΡ‚ΠΎΡ€Π°ΠΌΠΈ принятия Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ для Π²Ρ‹Π±ΠΎΡ€Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ для Π΄ΠΎΡ€ΠΎΠΆΠ½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ бСскаркасноС Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅

Как ΠΌΡ‹ ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅, ΠΌΡ‹ Π½Π΅ считаСм Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ Π·Π»ΠΎΠΌ . Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠΎΡ‰Π½Ρ‹Π΅ инструмСнты, написанныС простым Π²Π°Π½ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ языком ΠΈ Π² ΠΎΡ‡Π΅Π½ΡŒ ΠΎΠ±Ρ‰Π΅ΠΌ Π²ΠΈΠ΄Π΅, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΈΡ… ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ инструмСнтами для обучСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π»ΡŽΠ±ΠΎΠΌΡƒ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±Π΅Π· Π½ΠΈΡ… . Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΈ ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ. ПониманиС ΡΠΈΠ»ΡŒΠ½Ρ‹Ρ… сторон ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°. Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ ясно, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π²Π°ΠΌ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ Π½ΡƒΠΆΠ΅Π½. ПониманиС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π·Π° кулисами, ΡƒΠ³Π»ΡƒΠ±ΠΈΡ‚ ваши знания ΠΎ самом языкС. Π—Π½Π°Π½ΠΈΠ΅ основ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΠΈΠΉ ΠΊΠΎΠ΄ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π΅Ρ‚Π΅ΡΡŒ.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΌΡ‹ считаСм, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ слСдуСт отвСтствСнно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° протяТСнии всСго ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½ΠΎ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΠΉΡ‚Π΅ сСбС, Ρ‡Ρ‚ΠΎ Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ инструмСнта Π΅ΡΡ‚ΡŒ компромисс.

ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΠ΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ процСссу принятия тСхнологичСских Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΈ ΠΎΡΠΎΠ·Π½Π°Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±ΠΎΡ€ Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±Π΅Π· зависимости ΠΎΡ‚ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Π²ΠΏΠΎΠ»Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½!

ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ вСсь контСкст, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Β«Ρ€ΠΎΠ΄ΠΈΡ‚ΡŒΡΡΒ» ΠΈ Β«ΠΆΠΈΡ‚ΡŒΒ». Π’ΠΊΠ»ΡŽΡ‡Π°Ρ Π½Π°Π²Ρ‹ΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, Ρ€Π΅ΡˆΠ°Ρ, ΠΌΠΎΠ³ΡƒΡ‚ Π»ΠΈ ΠΎΠ½ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΎΡ‚ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°, учитывая ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ этот Π²Ρ‹Π±ΠΎΡ€, ΠΈ Π΅Π³ΠΎ компромиссы.

НаконСц, отсутствиС Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ написаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния β€” это ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡ‚ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ сСбС Π΄Π΅Π»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ Π΅Ρ‰Π΅ ΠΈ ΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ) для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ вашСй ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ привязки Ρ€ΡƒΠΊ ΠΈ Π½ΠΎΠ³ ΠΊ Ρ†Π΅Π»ΠΎΠΌΡƒ каркасу, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π²Π°ΠΌ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ Π½ΡƒΠΆΠ΅Π½.

Наш манифСст

Наш манифСст ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π² нашСм Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ GitHub. ΠœΡ‹ Ρ‚Π²Π΅Ρ€Π΄ΠΎ Π²Π΅Ρ€ΠΈΠΌ , Ρ‡Ρ‚ΠΎ для Ρ‚ΠΎΠ³ΠΎ , Ρ‡Ρ‚ΠΎΠ±Ρ‹ этот манифСст Π±Ρ‹Π» ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ , ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ обсуТдСний , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ вСсти нашС сообщСство . Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒ этот ΠœΠ°Π½ΠΈΡ„Π΅ΡΡ‚. Если Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ этот ΠœΠ°Π½ΠΈΡ„Π΅ΡΡ‚ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ для своСй Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ ΠΈΠΌ со своСй ΡΠ΅Ρ‚ΡŒΡŽ. БовмСстноС использованиС β€” это Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ люди подписали этот Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.

ЯвляСтся Π»ΠΈ Frameworkless Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²?

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ исслСдования ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, дСйствия ΠΏΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈ бизнСс-Ρ†Π΅Π»ΠΈ большС ΠΏΡ€ΠΎΡΡΠ½ΡΡŽΡ‚ Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ трСбования, ΠΌΡ‹ считаСм Π²Π°ΠΆΠ½Ρ‹ΠΌ ΠΏΡ€ΠΈΠ²Π»Π΅Ρ‡ΡŒ ΠΊ ΠΎΠ±ΡΡƒΠΆΠ΄Π΅Π½ΠΈΡŽ всСх, ΠΊΡ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π½Π΅-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². КаТдоС тСхничСскоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π²Ρ‹Π±ΠΎΡ€ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°, Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ всСх аспСктов контСкста, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Β«ΠΆΠΈΠ²Π΅Ρ‚Β» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС.

РСсурсы

ΠœΡ‹ собрали всС рСсурсы ΠΎ бСскаркасном ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ Π² этом ΠΏΠΎΡ‚Ρ€ΡΡΠ°ΡŽΡ‰Π΅ΠΌ спискС. НС ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ рСсурсы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅, ΠΏΠΎ Π²Π°ΡˆΠ΅ΠΌΡƒ мнСнию, Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ для нашСго сообщСства .

ΠŸΡ€ΠΈΠΌΠΈΡ‚Π΅ участиС

ΠœΡ‹ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌ Π»ΡŽΠ±Ρ‹Π΅ ΠΎΡ‚Π·Ρ‹Π²Ρ‹ , поэтому, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ±ΡΡƒΠ΄ΠΈΡ‚ΡŒ с Π½Π°ΠΌΠΈ ΠΊΠ°ΠΊΡƒΡŽ-Π»ΠΈΠ±ΠΎ ΠΈΠ· Ρ‚Π΅ΠΌ, ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… здСсь, просто ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ вопрос ΠΈΠ»ΠΈ запрос Π½Π° слияниС.