ΠΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
Π²Π΅ΡΠ΅Π½Π½Π΅Π³ΠΎ Ρ
Π°ΠΊΠ°ΡΠΎΠ½Π° DevDays, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°Π»ΠΈ ΡΡΡΠ΄Π΅Π½ΡΡ ΠΌΠ°Π³ΠΈΡΡΠ΅ΡΡΠΊΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
ΠΡΡΠ°ΡΠΈ, Ρ
ΠΎΡΠΈΠΌ ΠΏΡΠΈΠ³Π»Π°ΡΠΈΡΡ ΡΠΈΡΠ°ΡΠ΅Π»Π΅ΠΉ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡΡΡ ΠΊ
Telegram Desktop Voice Message Parser
ΠΠ²ΡΠΎΡ ΠΈΠ΄Π΅ΠΈ
Π₯ΠΎΡΠΎΡΠ΅Π² ΠΡΡΡΠΌ
Π‘ΠΎΡΡΠ°Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρ
Π₯ΠΎΡΠΎΡΠ΅Π² ΠΡΡΠ΅ΠΌ β ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°/ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ/QA
ΠΠ»ΠΈΡΠ΅Π΅Π² ΠΠ½ΡΠΎΠ½ β Π±ΠΈΠ·Π½Π΅Ρ-Π°Π½Π°Π»ΠΈΡΠΈΠΊ/ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡ ΠΏΠΎ ΠΌΠ°ΡΠΊΠ΅ΡΠΈΠ½Π³Ρ
ΠΡΠΊΠ»ΠΈΠ½Π° ΠΠ°ΡΠΈΡ β UI Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ/ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ
ΠΠ°Ρ
Π²Π°Π»ΠΎΠ² ΠΠ°Π²Π΅Π» β UI Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ/ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ/QA
Π‘ Π½Π°ΡΠ΅ΠΉ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ, Telegram ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ ΠΈ ΡΠ΄ΠΎΠ±Π½ΡΠΌ ΠΌΠ΅ΡΡΠ΅Π½Π΄ΠΆΠ΅ΡΠΎΠΌ, Π° Π΅Π³ΠΎ Π²Π΅ΡΡΠΈΡ Π΄Π»Ρ ΠΠ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡΡ ΠΈ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, Π²ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅ ΡΠ΅Π³ΠΎ ΠΈΠΌΠ΅Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΅Π³ΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ. ΠΠ»ΠΈΠ΅Π½Ρ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΠΎΠ³Π°ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ. ΠΠΎΠΌΠΈΠΌΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, Π² Π½Π΅ΠΌ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΡΠ΅ Π·Π²ΠΎΠ½ΠΊΠΈ, Π²ΠΈΠ΄Π΅ΠΎΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π³ΠΎΠ»ΠΎΡΠΎΠ²ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. Π ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΏΠΎΡΠΎΠΉ ΠΏΡΠΈΠ½ΠΎΡΡΡ Π½Π΅ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ ΡΠ²ΠΎΠ΅ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ. ΠΠ°ΡΠ°ΡΡΡΡ Π½Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΡΠΎΡΠ»ΡΡΠ°ΡΡ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, Π½Π°Ρ ΠΎΠ΄ΡΡΡ Π·Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠΌ ΠΈΠ»ΠΈ Π½ΠΎΡΡΠ±ΡΠΊΠΎΠΌ. ΠΠΎΠΆΠ΅Ρ ΠΌΠ΅ΡΠ°ΡΡ ΠΎΠΊΡΡΠΆΠ°ΡΡΠΈΠΉ ΡΡΠΌ, ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π½Π°ΡΡΠ½ΠΈΠΊΠΎΠ², ΠΈΠ»ΠΈ Π²Ρ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΊΡΠΎ-Π»ΠΈΠ±ΠΎ ΡΡΠ»ΡΡΠ°Π». Π’Π°ΠΊΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΏΠΎΡΡΠΈ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌ Π½Π° ΡΠΌΠ°ΡΡΡΠΎΠ½Π΅, Π²Π΅Π΄Ρ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠ΄Π½Π΅ΡΡΠΈ ΠΊ ΡΡ Ρ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Π½ΠΎΡΡΠ±ΡΠΊΠ° ΠΈΠ»ΠΈ ΠΠ. ΠΡ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π»ΠΈ ΡΠ΅ΡΠΈΡΡ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
ΠΠ°Π΄Π°ΡΠ΅ΠΉ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° DevDays Π±ΡΠ»ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ Telegram (Π΄Π°Π»Π΅Π΅ Telegram Desktop) Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΠ°Π½ΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΡΠ΅ΠΊΡΡ.
ΠΡΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΈ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ β ΡΡΠΎ Π±ΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΡΠ»Π°ΡΡ Π·Π²ΡΠΊΠΎΠ²ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, Π° Π² ΠΎΡΠ²Π΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ΅ΠΊΡΡ. ΠΠ°Ρ ΡΡΠΎ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ: ΠΏΠ΅ΡΠ΅ΡΡΠ»Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π±ΠΎΡΡ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ, Ρ ΠΎΡΠ΅Π»ΠΎΡΡ Π±Ρ ΠΈΠΌΠ΅ΡΡ Π½Π°ΡΠΈΠ²Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ. Π ΡΠΎΠΌΡ ΠΆΠ΅ Π»ΡΠ±ΠΎΠΉ Π±ΠΎΡ β ΡΡΠΎ ΡΡΠ΅ΡΡΡ ΡΡΠΎΡΠΎΠ½Π°, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΡΡΡΠΏΠ°Π΅Ρ ΠΏΠΎΡΡΠ΅Π΄Π½ΠΈΠΊΠΎΠΌ ΠΌΠ΅ΠΆΠ΄Ρ API ΠΏΠΎ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ ΡΠ΅ΡΠΈ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, Π° ΡΡΠΎ, ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ, Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ.
ΠΠ°ΠΊ Π±ΡΠ»ΠΎ ΠΎΡΠΌΠ΅ΡΠ΅Π½ΠΎ ΡΠ°Π½Π΅Π΅, telegram-desktop ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ Π΄Π²ΡΠΌΡ Π²Π΅ΡΠΎΠ²ΡΠΌΠΈ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°ΠΌΠΈ: Π»Π΅Π³ΠΊΠΎΡΡΡΡ ΠΈ ΡΠΊΠΎΡΠΎΡΡΡΡ ΡΠ°Π±ΠΎΡΡ. Π ΡΡΠΎ Π½Π΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ, Π²Π΅Π΄Ρ ΠΎΠ½ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° C++. Π ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ ΡΠ΅ΡΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π½ΠΎΠ²ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΡΠΌΠΎ Π² ΠΊΠ»ΠΈΠ΅Π½Ρ, ΡΠΎ ΠΈ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΏΡΠΈΡΠ»ΠΎΡΡ Π½Π° C++.
Π Π½Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π±ΡΠ»ΠΎ 4 ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°. ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ, Π΄Π²ΠΎΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π»ΠΈΡΡ ΠΏΠΎΠΈΡΠΊΠΎΠΌ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡΠ΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄Π»Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ ΡΠ΅ΡΠΈ, ΠΎΠ΄ΠΈΠ½ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ ΠΈΠ·ΡΡΠ°Π» ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Telegram-desktop, Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°Π» build ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π·Π°Π΄ΡΠΌΠ°Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ Π½Π΅ ΡΠΎΡΡΠ°Π²ΠΈΡ ΡΡΡΠ΄Π°, Π½ΠΎ, ΠΊΠ°ΠΊ Π²ΡΠ΅Π³Π΄Π° ΠΈ Π±ΡΠ²Π°Π΅Ρ, Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ ΡΡΡΠ΄Π½ΠΎΡΡΠΈ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ ΡΠΊΠ»Π°Π΄ΡΠ²Π°Π»ΠΎΡΡ ΠΈΠ· Π΄Π²ΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΡ ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ: Π²ΡΠ±ΠΎΡΠ° ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ΅Π³ΠΎ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ ΡΠ΅ΡΠΈ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ UI Π΄Π»Ρ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄Π»Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ Π³ΠΎΠ»ΠΎΡΠ° Π½Π°ΠΌ ΡΡΠ°Π·Ρ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΡΠΎ Π²ΡΠ΅Ρ offline API, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΠ·ΡΠΊΠΎΠ²ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°. Π Π²Π΅Π΄Ρ ΡΠ΅ΡΡ ΠΈΠ΄Π΅Ρ Π»ΠΈΡΡ ΠΎΠ± ΠΎΠ΄Π½ΠΎΠΌ ΡΠ·ΡΠΊΠ΅. Π‘ΡΠ°Π»ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΡΡΠΎ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ online API. ΠΠΎΠ·ΠΆΠ΅ Π²ΡΡΡΠ½ΠΈΠ»ΠΎΡΡ, ΡΡΠΎ ΡΠ΅ΡΠ²ΠΈΡΡ ΠΏΠΎ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ ΡΠ΅ΡΠΈ ΡΠ°ΠΊΠΈΡ Π³ΠΈΠ³Π°Π½ΡΠΎΠ² ΠΊΠ°ΠΊ Google, Yandex ΠΈ Microsoft ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠ΅, ΠΈ Π½Π°ΠΌ ΠΏΡΠΈΠ΄Π΅ΡΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΡΡΠ²ΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠΎΠ±Π½ΡΠΌ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΎΠΌ. Π ΠΈΡΠΎΠ³Π΅ Π±ΡΠ» Π²ΡΠ±ΡΠ°Π½ Google Speech-To-Text, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΎΠΊΠ΅Π½ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Ρ Π²Π°ΡΠΈΡ Π½Π° ΡΠ΅Π»ΡΠΉ Π³ΠΎΠ΄.
ΠΡΠΎΡΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΡ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΠΈΡΡ, ΡΠ²ΡΠ·Π°Π½Π° Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠ°ΠΌΠΈ C++ β Π·ΠΎΠΎΠΏΠ°ΡΠΊΠΎΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΏΡΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. Π’Π°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ, ΡΡΠΎ Telegram Desktop Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π΄ΡΡΠ³ΠΈΡ
Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ
Π²Π΅ΡΡΠΈΠΉ. Π ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π΅ΡΡΡ
Π‘Π°ΠΌ ΠΏΠΎ ΡΠ΅Π±Π΅ Telegram Desktop ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄ΠΎΠ»Π³ΠΎ: Π½Π° Π½ΠΎΡΡΠ±ΡΠΊΠ΅ Ρ Intel Core i5-7200U ΠΏΠΎΠ»Π½Π°Ρ ΡΠ±ΠΎΡΠΊΠ° (ΡΠ»Π°Π³ -j 4) ΡΠΎ Π²ΡΠ΅ΠΌΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΡΡΠ΅Ρ ΡΠ°ΡΠΎΠ². ΠΠ· Π½ΠΈΡ ΠΏΠΎΡΡΠ΄ΠΊΠ° 30 ΠΌΠΈΠ½ΡΡ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π»ΠΈΠ½ΠΊΠΎΠ²ΠΊΠ° ΡΠ°ΠΌΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° (ΠΏΠΎΠ·ΠΆΠ΅ Π²ΡΡΡΠ½ΠΈΠ»ΠΎΡΡ, ΡΡΠΎ Π² Debug-ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π»ΠΈΠ½ΠΊΠΎΠ²ΠΊΠ° Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΎΠΊΠΎΠ»ΠΎ 10 ΠΌΠΈΠ½ΡΡ), Π° Π²Π΅Π΄Ρ ΡΡΠ°ΠΏ Π»ΠΈΠ½ΠΊΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎΠ²ΡΠΎΡΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΏΠΎΡΠ»Π΅ Π²Π½Π΅ΡΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π½Π°ΠΌ ΡΠ΄Π°Π»ΠΎΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π·Π°Π΄ΡΠΌΠ°Π½Π½ΡΡ ΠΈΠ΄Π΅Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ
ΠΠΎ Π½Π°ΡΠ΅ΠΌΡ ΠΌΠ½Π΅Π½ΠΈΡ, ΠΏΠΎΠ»ΡΡΠΈΠ»ΡΡ Ρ ΠΎΡΠΎΡΠΈΠΉ Proof of Concept ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ»Π° Π±Ρ ΡΠ΄ΠΎΠ±Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ. ΠΠ°Π΄Π΅Π΅ΠΌΡΡ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π΅Π΅ Π² Π±ΡΠ΄ΡΡΠΈΡ ΡΠ΅Π»ΠΈΠ·Π°Ρ Telegram Desktop.
Π Π°ΡΡΠΈΡΠ΅Π½Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° Π² IntelliJ IDEA
ΠΠ²ΡΠΎΡ ΠΈΠ΄Π΅ΠΈ
Π’Π°Π½ΠΊΠΎΠ² ΠΠ»Π°Π΄ΠΈΡΠ»Π°Π²
Π‘ΠΎΡΡΠ°Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρ
Π’Π°Π½ΠΊΠΎΠ² ΠΠ»Π°Π΄ΠΈΡΠ»Π°Π² (ΡΠΈΠΌΠ»ΠΈΠ΄, ΡΠ°Π±ΠΎΡΠ° Ρ LanguageTool ΠΈ IntelliJ IDEA)
Π‘ΠΎΠΊΠΎΠ»ΠΎΠ² ΠΠΈΠΊΠΈΡΠ° (ΡΠ°Π±ΠΎΡΠ° Ρ LanguageTool ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ UI)
Π₯Π²ΠΎΡΠΎΠ² ΠΠ»Π΅ΠΊΡΠ°Π½Π΄Ρ (ΡΠ°Π±ΠΎΡΠ° Ρ LanguageTool ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ)
Π‘Π°Π΄ΠΎΠ²Π½ΠΈΠΊΠΎΠ² ΠΠ»Π΅ΠΊΡΠ°Π½Π΄Ρ (ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠ°ΡΡΠΈΠ½Π³Π° ΡΠ·ΡΠΊΠΎΠ² ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ ΠΈ ΠΊΠΎΠ΄Π°)
ΠΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ ΠΏΠ»Π°Π³ΠΈΠ½ Π΄Π»Ρ IntelliJ IDEA, ΠΏΡΠΎΠ²Π΅ΡΡΡΡΠΈΠΉ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠ΅ΠΊΡΡΡ (ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, Π»ΠΈΡΠ΅ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ Π² ΠΊΠΎΠ΄Π΅, ΡΠ΅ΠΊΡΡ ΠΎΡΠΎΡΠΌΠ»Π΅Π½Π½ΡΠΉ Π² Markdown ΠΈΠ»ΠΈ XML-ΡΠ°Π·ΠΌΠ΅ΡΠΊΠ΅) Π½Π° Π³ΡΠ°ΠΌΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ, ΠΎΡΡΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ ΠΈ ΡΡΠΈΠ»ΠΈΡΡΠΈΡΠ΅ΡΠΊΡΡ Π²Π΅ΡΠ½ΠΎΡΡΡ (Π² Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ ΡΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ proofreading).
ΠΠ΄Π΅Π΅ΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π±ΡΠ»ΠΎ ΡΠ°ΡΡΠΈΡΠΈΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ spellcheck IntelliJ IDEA Π΄ΠΎ ΠΌΠ°ΡΡΡΠ°Π±ΠΎΠ² Grammarly, ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠΎΠ΄Π° Grammarly inside IDE.
ΠΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ, ΠΌΠΎΠΆΠ½ΠΎ
ΠΡ Π° Π½ΠΈΠΆΠ΅ ΠΌΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΠΏΠ»Π°Π³ΠΈΠ½Π°, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎ ΡΡΡΠ΄Π½ΠΎΡΡΡΡ , Π²ΠΎΠ·Π½ΠΈΠΊΡΠΈΡ ΠΏΡΠΈ Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ.
ΠΠΎΡΠΈΠ²Π°ΡΠΈΡ
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ², ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠΎΠ² Π½Π° Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ·ΡΠΊΠ°Ρ , Π½ΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΊ ΠΊΠΎΠ΄Ρ ΠΏΠΈΡΡΡΡΡ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π² ΡΡΠ΅Π΄Π°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. Π ΡΠΎΠΆΠ΅ Π²ΡΠ΅ΠΌΡ IDE ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ Ρ ΠΏΠΎΠΈΡΠΊΠΎΠΌ ΠΎΡΠΈΠ±ΠΎΠΊ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΏΠ»ΠΎΡ ΠΎ ΠΏΡΠΈΡΠΏΠΎΡΠΎΠ±Π»Π΅Π½Ρ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠΎΠ² Π½Π° Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ·ΡΠΊΠ°Ρ . ΠΠ·-Π·Π° ΡΡΠΎΠ³ΠΎ ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ Π΄ΠΎΠΏΡΡΡΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ Π² Π³ΡΠ°ΠΌΠΌΠ°ΡΠΈΠΊΠ΅, ΠΏΡΠ½ΠΊΡΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΡΡΠΈΠ»Π΅, Π° ΡΡΠ΅Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π΅ ΡΠΊΠ°ΠΆΠ΅Ρ Π½Π° Π½ΠΈΡ . ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΊΡΠΈΡΠΈΡΠ½ΠΎ Π΄ΠΎΠΏΡΡΡΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΡ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΡΠ°Π΄Π°Π΅Ρ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ½ΡΡΠ½ΠΎΡΡΡ ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΈ ΡΠ°ΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΠΈ ΡΠ°Π·Π²ΠΈΡΡΡ ΡΡΠ΅Π΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ IntelliJ IDEA, Π° ΡΠ°ΠΊΠΆΠ΅ IDE, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠ΅ Π½Π° IntelliJ Platform. Π IntelliJ Platform ΡΠΆΠ΅ Π΅ΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ spellchecker, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½ Π½Π΅ ΠΈΠ·Π±Π°Π²Π»ΡΠ΅Ρ Π΄Π°ΠΆΠ΅ ΠΎΡ ΠΏΡΠΎΡΡΠ΅ΠΉΡΠΈΡ Π³ΡΠ°ΠΌΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΡ ΡΠ΅ΡΠΈΠ»ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ΄Π½Ρ ΠΈΠ· ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌ Π°Π½Π°Π»ΠΈΠ·Π° Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° Π² IntelliJ IDEA.
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
ΠΡ Π½Π΅ ΡΡΠ°Π²ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π΄ ΡΠΎΠ±ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΡ ΡΠΈΡΡΠ΅ΠΌΡ Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ΅ΠΊΡΡΠΎΠ², ΠΏΠΎΡΡΠΎΠΌΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡΠΈΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠΌ ΠΎΠΊΠ°Π·Π°Π»ΡΡ
ΠΠΎΠ΄ ΠΏΠ»Π°Π³ΠΈΠ½Π° Π»Π΅ΠΆΠΈΡ Π²
Π’ΡΡΠ΄Π½ΠΎΡΡΠΈ
ΠΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π±ΡΡΡΡΠΎ ΠΌΡ ΠΏΠΎΠ½ΡΠ»ΠΈ, ΡΡΠΎ Π΅ΡΠ»ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· Π±ΡΠ΄Π΅ΠΌ ΡΠΊΠ°ΡΠΌΠ»ΠΈΠ²Π°ΡΡ Π²Π΅ΡΡ ΡΠ΅ΠΊΡΡ Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΡ LanguageTool, ΡΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ IDEA Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄Π²ΠΈΡΠ°ΡΡ Π½Π° Π»ΡΠ±ΡΡ ΠΌΠ°Π»ΠΎ-ΠΌΠ°Π»ΡΡΠΊΠΈ ΡΠ΅ΡΡΠ΅Π·Π½ΡΡ ΡΠ΅ΠΊΡΡΠ°Ρ , ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΈΡ ΡΠ°ΠΌΠ° ΠΏΠΎ ΡΠ΅Π±Π΅ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΠΏΠΎΡΠΎΠΊ UI. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠ΅ΡΠ°Π»Π°ΡΡ ΡΠ΅ΡΠ΅Π· ΠΏΡΠΎΠ²Π΅ΡΠΊΡ `ProgressManager.checkCancelled` β ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π²ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π΅ΡΠ»ΠΈ IDEA ΡΡΠΈΡΠ°Π΅Ρ, ΡΡΠΎ ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΈΠΈ ΠΏΠΎΡΠ° Π±Ρ ΠΏΡΠ΅ΡΠ²Π°ΡΡΡΡ.
ΠΡΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΈΠ·Π±Π°Π²ΠΈΠ»ΠΎ ΠΎΡ Π·Π°Π²ΠΈΡΠ°Π½ΠΈΠΉ, Π½ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΡΠΈΠΌ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ: ΠΎΡΠ΅Π½Ρ ΡΠΆ Π΄ΠΎΠ»Π³ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΊΡΡ. ΠΡΠΈ ΡΡΠΎΠΌ Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΎΡΠ΅Π½Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΡΠ΅ΠΊΡΡΠ° ΠΈ Ρ ΠΎΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ-ΡΠΎ Π·Π°ΠΊΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ. ΠΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎ ΠΌΡ ΠΈ ΡΠ΄Π΅Π»Π°Π»ΠΈ. Π§ΡΠΎΠ±Ρ Π½Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· Π²ΡΠ΅, ΠΌΡ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎ ΡΠ°Π·Π±ΠΈΠ²Π°Π»ΠΈ ΡΠ΅ΠΊΡΡ Π½Π° ΠΊΡΡΠΊΠΈ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈΡΡ. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΡΠ΅ΠΊΡΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ ΠΈ Π½Π°Π³ΡΡΠΆΠ°ΡΡ ΠΊΠ΅Ρ Π½Π΅ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ, ΠΌΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈ Π½Π΅ ΡΠ°ΠΌΠΈ ΡΠ΅ΠΊΡΡΡ, Π° ΠΈΡ Ρ Π΅ΡΠΈ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΏΠ»Π°Π²Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΠΏΠ»Π°Π³ΠΈΠ½Π° Π΄Π°ΠΆΠ΅ Π½Π° Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ°ΠΉΠ»Π°Ρ .
LanguageTool ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ 25 ΡΠ·ΡΠΊΠΎΠ², Π½ΠΎ Π²ΡΡΠ΄ Π»ΠΈ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½ΡΠΆΠ½Ρ ΠΎΠ½ΠΈ Π²ΡΠ΅. Π₯ΠΎΡΠ΅Π»ΠΎΡΡ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΊΠ°ΡΠΈΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ (Π΅ΡΠ»ΠΈ ΠΎΡΠΌΠ΅ΡΠΈΠ»ΠΈ Π΅Π³ΠΎ Π³Π°Π»ΠΎΡΠΊΠΎΠΉ Π² UI). ΠΡ Π΄Π°ΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ ΡΡΠΎ, Π½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΈ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½ΠΎ. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π½Π°ΠΌ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ classloader-ΠΎΠΌ ΠΏΠΎΠ΄Π³ΡΡΠΆΠ°ΡΡ LanguageTool Ρ Π½ΠΎΠ²ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΡΠ·ΡΠΊΠΎΠ², ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π°ΠΊΠΊΡΡΠ°ΡΠ½ΠΎ Π΅Π³ΠΎ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ. ΠΡΠΈ ΡΡΠΎΠΌ Π²ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π»Π΅ΠΆΠ°Π»ΠΈ Π² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΌ .m2-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΠΈ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΡΠ°ΡΡΠ΅ Π½Π°ΠΌ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΠΈΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ. Π ΠΈΡΠΎΠ³Π΅ ΠΌΡ ΡΠ΅ΡΠΈΠ»ΠΈ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π±ΡΠ΄ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ ΠΏΠ»Π°Π³ΠΈΠ½Π°, ΡΠΎ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΏΠ»Π°Π³ΠΈΠ½ Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠ·ΡΠΊΠΎΠ².
ΠΠΎΡΠ»Π΅ Ρ Π°ΠΊΠ°ΡΠΎΠ½Π°
Π₯Π°ΠΊΠ°ΡΠΎΠ½ Π·Π°ΠΊΠΎΠ½ΡΠΈΠ»ΡΡ, Π½ΠΎ ΡΠ°Π±ΠΎΡΠ° Π½Π°Π΄ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠΌ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΠ»Π°ΡΡ ΡΠΆΠ΅ Π±ΠΎΠ»Π΅Π΅ ΡΠ·ΠΊΠΈΠΌ ΡΠΎΡΡΠ°Π²ΠΎΠΌ. Π₯ΠΎΡΠ΅Π»ΠΎΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°ΡΡ ΡΡΡΠΎΠΊΠΈ, ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ Π΄Π°ΠΆΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΡΠ·ΡΠΊΠ°, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π½Π°Π·Π²Π°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ ΠΊΠ»Π°ΡΡΠΎΠ². Π‘Π΅ΠΉΡΠ°Ρ ΡΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Java, Kotlin ΠΈ Python, Π½ΠΎ ΠΌΡ Π½Π°Π΄Π΅Π΅ΠΌΡΡ, ΡΡΠΎ ΡΡΠΎΡ ΡΠΏΠΈΡΠΎΠΊ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΈ. ΠΡ ΠΈΡΠΏΡΠ°Π²ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ ΡΡΠ°Π»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΌΠΈ Ρ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΌ ΡΠΏΠ΅Π»Π»ΡΠ΅ΠΊΠ΅ΡΠΎΠΌ Idea. ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° XML ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΎΡΡΠΎΠ³ΡΠ°ΡΠΈΠΈ. ΠΡΠ΅ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π²ΠΎ Π²ΡΠΎΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΈ Π½Π΅Π΄Π°Π²Π½ΠΎ.
Π§ΡΠΎ Π΄Π°Π»ΡΡΠ΅?
Π’Π°ΠΊΠΎΠΉ ΠΏΠ»Π°Π³ΠΈΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ, Π½ΠΎ ΠΈ ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΠΈΡΠ°ΡΠ΅Π»ΡΠΌ (ΡΠ°ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΌ, ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ, Ρ XML Π² IDE). ΠΠΌ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ ΠΏΡΠΈΡ
ΠΎΠ΄ΠΈΡΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΌ ΡΠ·ΡΠΊΠΎΠΌ, ΠΏΡΠΈ ΡΡΠΎΠΌ Π½Π΅ ΠΈΠΌΠ΅Ρ ΠΏΠΎΠΌΠΎΡΠ½ΠΈΠΊΠ° Π² Π²ΠΈΠ΄Π΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΎΠΊ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ
ΠΎΡΠΈΠ±ΠΊΠ°Ρ
. ΠΠ°Ρ ΠΏΠ»Π°Π³ΠΈΠ½ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ°ΠΊΠΈΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ ΠΈ Π΄Π΅Π»Π°Π΅Ρ ΡΡΠΎ Ρ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΡΡ ΡΠΎΡΠ½ΠΎΡΡΠΈ.
ΠΡ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΠΌ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡ ΠΏΠ»Π°Π³ΠΈΠ½, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²Π»ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠ·ΡΠΊΠΈ, ΡΠ°ΠΊ ΠΈ ΠΈΡΡΠ»Π΅Π΄ΡΡ ΠΎΠ±ΡΠΈΠΉ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ ΠΊ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠ΅ΠΊΡΡΠ°. Π Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΡ
ΠΏΠ»Π°Π½Π°Ρ
ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΡΠΈΠ»Π΅ΠΉ ΡΡΠΈΠ»ΠΈΡΡΠΈΠΊΠΈ (Π½Π°Π±ΠΎΡΠΎΠ² ΠΏΡΠ°Π²ΠΈΠ» ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΡ
ΡΡΠ°ΠΉΠ»Π³Π°ΠΉΠ΄ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ°, ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ Β«Π½Π΅ ΠΏΠΈΡΠ°ΡΡ e.g., Π° ΠΏΠΈΡΠ°ΡΡ ΠΏΠΎΠ»Π½ΡΡ ΡΠΎΡΠΌΡΒ»), ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΠ»ΠΎΠ²Π°ΡΡ ΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° (Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΠΌΡ Ρ
ΠΎΡΠΈΠΌ Π΄Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ»ΠΎΠ²ΠΎ, Π° Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π΅Π³ΠΎ Π² ΡΠ»ΠΎΠ²Π°ΡΡ, ΡΠΊΠ°Π·ΡΠ²Π°Ρ ΡΠ°ΡΡΡ ΡΠ΅ΡΠΈ).
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com