Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° C#
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
ΠΠ΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°. Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Ρ Π½ΡΠ»Ρ. Π Π°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ CRM ΠΏΠΎΠ΄ Π½Π°ΡΠΈ ΠΏΡΠΎΡΠ΅ΡΡΡ: ΠΊΠ°ΡΡΠΎΡΠΊΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², Π·Π°ΡΠ²ΠΊΠΈ, ΡΠΌΠ΅Π½Π° ΡΡΠ°ΡΡΡΠΎΠ², ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ, ΠΈΡΡΠΎΡΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ. ΠΠΏΠ»Π°ΡΠ° ΠΏΠΎ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ΅Π½Π½ΠΎΡΡΠΈ.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° C#
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
ΠΠ΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°. Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Ρ Π½ΡΠ»Ρ. Π’Π Π½Π° ΡΡΠ΅Π±Π½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π΄Π»Ρ QA ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΠΡΠΆΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΡΡΠ΅Π±Π½ΡΠΉ Π²Π΅Π±-ΠΏΡΠΎΠ΅ΠΊΡ β ΠΊΠ½ΠΈΠΆΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΠΌΠ°Π³Π°Π·ΠΈΠ½, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΡΡΠ΄Π΅Π½ΡΠ°ΠΌΠΈ Π΄Π»Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ»Π°Π²Π½Π°Ρ ΡΠ΅Π»Ρ β ΡΡΠΎΠ±Ρ ΡΡΡΠ΄Π΅Π½ΡΡ ΠΌΠΎΠ³Π»ΠΈ: β’ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ UI β’ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡ Π±Π°Π³ΠΈ β’ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΡΠ°ΠΉΡΠ° ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΊΠΈ ΠΡΠΎΠ΅ΠΊΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΡΠΎΡΡΡΠΌ ΠΈ Π½Π΅Π΄ΠΎΡΠΎΠ³ΠΈΠΌ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅. Π’Π΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ β’ Backend: Django β’ ΠΠ΄ΠΌΠΈΠ½ΠΊΠ°: Django Admin β’ Frontend: ΠΏΡΠΎΡΡΠΎΠΉ HTML / Bootstrap / Django templates β’ ΠΠ°Π·Π°: SQLite ΠΈΠ»ΠΈ PostgreSQL ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΡΠ°ΠΉΡΠ° 1. ΠΠ°ΡΠ°Π»ΠΎΠ³ ΠΊΠ½ΠΈΠ³ ΠΠ°ΠΆΠ΄Π°Ρ ΠΊΠ½ΠΈΠ³Π°: β’ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ β’ Π°Π²ΡΠΎΡ β’ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ β’ ΡΠ΅Π½Π° β’ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡ β’ ΠΎΠ±Π»ΠΎΠΆΠΊΠ° ΠΠ° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°: β’ ΡΠΏΠΈΡΠΎΠΊ ΠΊΠ½ΠΈΠ³ β’ ΠΏΠΎΠΈΡΠΊ β’ ΡΠΈΠ»ΡΡΡ ΠΏΠΎ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ β’ ΠΊΠ½ΠΎΠΏΠΊΠΈ: β’ ΠΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΊΠΎΡΠ·ΠΈΠ½Ρ β’ ΠΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΈΠ·Π±ΡΠ°Π½Π½ΠΎΠ΅ 2. ΠΠ°ΡΡΠΎΡΠΊΠ° ΠΊΠ½ΠΈΠ³ΠΈ ΠΠ° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ: β’ ΠΎΠ±Π»ΠΎΠΆΠΊΠ° β’ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ β’ Π°Π²ΡΠΎΡ β’ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ β’ ΡΠ΅Π½Π° β’ ΠΊΠ½ΠΎΠΏΠΊΠ° βΠ ΠΊΠΎΡΠ·ΠΈΠ½Ρβ β’ ΠΊΠ½ΠΎΠΏΠΊΠ° βΠ ΠΈΠ·Π±ΡΠ°Π½Π½ΠΎΠ΅β β’ ΡΠ΅ΠΉΡΠΈΠ½Π³ β’ ΠΎΡΠ·ΡΠ²Ρ 3. Π Π΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΠΈ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ: β’ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ β’ Π²ΠΎΠΉΡΠΈ β’ Π²ΡΠΉΡΠΈ ΠΈΠ· Π°ΠΊΠΊΠ°ΡΠ½ΡΠ° 4. ΠΠΈΡΠ½ΡΠΉ ΠΊΠ°Π±ΠΈΠ½Π΅Ρ ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ: β’ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ β’ ΠΈΠΌΡ β’ email β’ ΡΠ΅Π»Π΅ΡΠΎΠ½ β’ Π°Π΄ΡΠ΅Ρ β’ ΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΡΡΠΎΡΠΈΡ Π·Π°ΠΊΠ°Π·ΠΎΠ² β’ Π²ΠΈΠ΄Π΅ΡΡ ΠΈΠ·Π±ΡΠ°Π½Π½ΡΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ 5. ΠΠΎΡΠ·ΠΈΠ½Π° ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ: β’ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠΎΠ²Π°Ρ β’ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠΎΠ²Π°Ρ β’ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ β’ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΈΡΠΎΠ³ΠΎΠ²ΡΡ ΡΡΠΌΠΌΡ β’ ΠΎΡΠΎΡΠΌΠΈΡΡ Π·Π°ΠΊΠ°Π· 6. ΠΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ Π·Π°ΠΊΠ°Π·Π° ΠΠ΅Π· ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ ΠΎΠΏΠ»Π°ΡΡ. ΠΡΠΈ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠΈ: β’ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π·Π°ΠΊΠ°Π· β’ Π·Π°ΠΊΠ°Π· ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΡΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ Π‘ΡΠ°ΡΡΡΡ Π·Π°ΠΊΠ°Π·Π°: β’ ΠΠΎΠ²ΡΠΉ β’ Π ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ β’ ΠΡΠΏΡΠ°Π²Π»Π΅Π½ β’ ΠΠΎΡΡΠ°Π²Π»Π΅Π½ β’ ΠΡΠΌΠ΅Π½Π΅Π½ 7. ΠΠ·Π±ΡΠ°Π½Π½ΠΎΠ΅ ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ: β’ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠ½ΠΈΠ³Ρ Π² ΠΈΠ·Π±ΡΠ°Π½Π½ΠΎΠ΅ β’ ΡΠ΄Π°Π»ΠΈΡΡ β’ ΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ·Π±ΡΠ°Π½Π½ΡΡ
8. ΠΡΠ·ΡΠ²Ρ ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ: β’ ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΎΡΠ·ΡΠ² β’ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΠΎΡΠ΅Π½ΠΊΡ 1β5 ΠΠ΄ΠΌΠΈΠ½ΠΊΠ° (Django Admin) Π Π°Π΄ΠΌΠΈΠ½ΠΊΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ: ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ β’ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ β’ Π΄Π°ΡΠ° ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΠ½ΠΈΠ³ΠΈ β’ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ β’ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β’ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ ΠΠ°ΠΊΠ°Π·Ρ β’ Π½ΠΎΠΌΠ΅Ρ Π·Π°ΠΊΠ°Π·Π° β’ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ β’ ΡΡΠΌΠΌΠ° β’ ΡΡΠ°ΡΡΡ Π‘ΠΎΡΡΠ°Π² Π·Π°ΠΊΠ°Π·Π° β’ ΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΊΡΠΏΠ»Π΅Π½Ρ ΠΡΠ·ΡΠ²Ρ Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ (Π΄Π»Ρ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ QA) ΠΡΠΆΠ½ΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ, ΡΡΠΎΠ±Ρ ΡΡΡΠ΄Π΅Π½ΡΡ ΠΌΠΎΠ³Π»ΠΈ ΠΈΡ
Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡ. UI ΠΎΡΠΈΠ±ΠΊΠΈ β 10 ΡΡΡΠΊ ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ: β’ ΠΊΠ½ΠΎΠΏΠΊΠ° Π²ΡΡ
ΠΎΠ΄ΠΈΡ Π·Π° Π³ΡΠ°Π½ΠΈΡΡ Π±Π»ΠΎΠΊΠ° β’ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ° β’ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠΉ ΡΡΠΈΡΡ β’ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ hover Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅ β’ ΠΎΠ±ΡΠ΅Π·Π°Π΅ΡΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° ΠΊΠ½ΠΈΠ³ΠΈ β’ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ²Π΅Ρ ΠΊΠ½ΠΎΠΏΠΊΠΈ β’ ΠΊΠ½ΠΎΠΏΠΊΠ° Π½Π΅Π°ΠΊΡΠΈΠ²Π½Π° Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎ, Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ β’ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΠΎΡΡΡΡΠΏ ΠΌΠ΅ΠΆΠ΄Ρ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ β’ Π½Π΅ Π°Π΄Π°ΠΏΡΠΈΡΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠΉ ΡΠΊΡΠ°Π½ β’ ΡΠ΅ΠΊΡΡ Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Π΅ΡΡΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ β 8 ΡΡΡΠΊ ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ: β’ ΡΠΎΠ²Π°Ρ ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ Π² ΠΊΠΎΡΠ·ΠΈΠ½Ρ β’ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΠ²Π°ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ 0 ΠΈΠ»ΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ β’ ΠΈΡΠΎΠ³ΠΎΠ²Π°Ρ ΡΡΠΌΠΌΠ° ΡΡΠΈΡΠ°Π΅ΡΡΡ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ β’ ΡΠΎΠ²Π°Ρ ΡΠ΄Π°Π»ΡΠ΅ΡΡΡ ΠΈΠ· ΠΊΠΎΡΠ·ΠΈΠ½Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ β’ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΡΡΡΠΎΠΉ ΠΎΡΠ·ΡΠ² β’ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠ΅ΠΉΡΠΈΠ½Π³ Π±ΠΎΠ»ΡΡΠ΅ 5 β’ Π·Π°ΠΊΠ°Π· ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π΄Π°ΠΆΠ΅ Ρ ΠΏΡΡΡΠΎΠΉ ΠΊΠΎΡΠ·ΠΈΠ½ΠΎΠΉ β’ ΠΈΠ·Π±ΡΠ°Π½Π½ΠΎΠ΅ ΠΈΠ½ΠΎΠ³Π΄Π° Π΄ΡΠ±Π»ΠΈΡΡΠ΅Ρ ΡΠΎΠ²Π°Ρ ΠΡΠΈΠ±ΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π½Π΅ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅, ΡΡΠΎΠ±Ρ ΡΠ°ΠΉΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π» ΡΠ°Π±ΠΎΡΠ°ΡΡ. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΠΎΠ±Π°Π²ΠΈΡΡ 1β2 ΡΡΠ½ΠΊΡΠΈΠΈ: ΠΡΠΎΠΌΠΎΠΊΠΎΠ΄ ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ: β’ BOOK10 β ΡΠΊΠΈΠ΄ΠΊΠ° 10% ΠΠ΅Π΄Π°Π²Π½ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅Π½Π½ΡΠ΅ ΠΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ 3β5 ΠΊΠ½ΠΈΠ³. Π§ΡΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ β’ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ° β’ Π±Π°Π·Ρ ΠΈΠ»ΠΈ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ β’ ΡΠ΅ΡΡΠΎΠ²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅: β’ 10β20 ΠΊΠ½ΠΈΠ³ β’ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ β’ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΊΠ°Π·ΠΎΠ² β’ Π΄ΠΎΡΡΡΠΏ ΠΊ Django Admin β’ ΠΊΠΎΡΠΎΡΠΊΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π Π²ΠΎΡ Π±Π°Π³ΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ: 1?? UI / UX Π±Π°Π³ΠΈ (10) BUG 1 ΠΠ° Π³Π»Π°Π²Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠ° βΠ ΠΊΠΎΡΠ·ΠΈΠ½Ρβ Π²ΡΡ
ΠΎΠ΄ΠΈΡ Π·Π° Π³ΡΠ°Π½ΠΈΡΡ ΠΊΠ°ΡΡΠΎΡΠΊΠΈ ΠΊΠ½ΠΈΠ³ΠΈ. ? BUG 2 ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ±ΡΠ΅Π·Π°Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ Π΄Π»ΠΈΠ½Π½Π΅Π΅ 30 ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². ? BUG 3 Π£ ΠΊΠ½ΠΎΠΏΠΊΠΈ βΠΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΈΠ·Π±ΡΠ°Π½Π½ΠΎΠ΅β ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ hover ΡΡΡΠ΅ΠΊΡ. ? BUG 4 Π¦Π΅Π½Π° ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π±Π΅Π· Π²Π°Π»ΡΡΡ. ? BUG 5 ΠΠ°ΡΡΠΈΠ½ΠΊΠ° ΠΊΠ½ΠΈΠ³ΠΈ ΡΠ°ΡΡΡΠ³ΠΈΠ²Π°Π΅ΡΡΡ ΠΈ ΡΠ΅ΡΡΠ΅Ρ ΠΏΡΠΎΠΏΠΎΡΡΠΈΠΈ. ? BUG 6 ΠΠ° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΊΠ°ΡΡΠΎΡΠΊΠΈ ΠΊΠ½ΠΈΠ³ Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡΡΡ Π΄ΡΡΠ³ Π½Π° Π΄ΡΡΠ³Π°. ? BUG 7 Π’Π΅ΠΊΡΡ βΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈβ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ΅Π»ΠΊΠΈΠΉ (10px). ? BUG 8 Π ΠΊΠΎΡΠ·ΠΈΠ½Π΅ ΠΊΠ½ΠΎΠΏΠΊΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠΎΠ²Π°ΡΠ° ΡΠ»ΠΈΡΠΊΠΎΠΌ Π±Π»ΠΈΠ·ΠΊΠΎ ΠΊ Π½Π°Π·Π²Π°Π½ΠΈΡ. ? BUG 9 Π ΡΠΎΡΠΌΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΏΠΎΠ»Ρ Π½Π΅ Π²ΡΡΠΎΠ²Π½Π΅Π½Ρ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ. ? BUG 10 Π Π»ΠΈΡΠ½ΠΎΠΌ ΠΊΠ°Π±ΠΈΠ½Π΅ΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠ° βΠ‘ΠΎΡ
ΡΠ°Π½ΠΈΡΡβ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π΄Π°Π»Π΅ΠΊΠΎ ΠΎΡ ΡΠΎΡΠΌΡ. ? 2?? Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ Π±Π°Π³ΠΈ (8) BUG 11 ΠΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΡΠΎΠ²Π°Ρ Π² ΠΊΠΎΡΠ·ΠΈΠ½Ρ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π½Π΅Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ. ? BUG 12 Π ΠΊΠΎΡΠ·ΠΈΠ½Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΠ²Π°ΡΠ° = 0. ? BUG 13 ΠΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΠ²Π°ΡΠ° (-1). ? BUG 14 ΠΡΠΎΠ³ΠΎΠ²Π°Ρ ΡΡΠΌΠΌΠ° Π½Π΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠΎΠ²Π°ΡΠ°. ? BUG 15 ΠΠΎΠΆΠ½ΠΎ ΠΎΡΠΎΡΠΌΠΈΡΡ Π·Π°ΠΊΠ°Π· Ρ ΠΏΡΡΡΠΎΠΉ ΠΊΠΎΡΠ·ΠΈΠ½ΠΎΠΉ. ? BUG 16 ΠΠ½ΠΎΠΏΠΊΠ° βΠΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΈΠ·Π±ΡΠ°Π½Π½ΠΎΠ΅β ΠΈΠ½ΠΎΠ³Π΄Π° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΠΎΠ²Π°Ρ Π΄Π²Π°ΠΆΠ΄Ρ. ? BUG 17 ΠΠΎΠΆΠ½ΠΎ ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΡΡΡΠΎΠΉ ΠΎΡΠ·ΡΠ² Π±Π΅Π· ΡΠ΅ΠΊΡΡΠ°. ? BUG 18 ΠΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΠΎΡΠ΅Π½ΠΊΡ ΠΊΠ½ΠΈΠ³Π΅ Π±ΠΎΠ»ΡΡΠ΅ 5. ? 3?? ΠΠ°Π³ΠΈ Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΠΈ (5) BUG 19 ΠΡΠΈ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²Π²Π΅ΡΡΠΈ email Π±Π΅Π·@.? BUG 20 ΠΠ°ΡΠΎΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΠ· 1 ΡΠΈΠΌΠ²ΠΎΠ»Π°. ? BUG 21 Π’Π΅Π»Π΅ΡΠΎΠ½ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π±ΡΠΊΠ²Ρ. ? BUG 22 ΠΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠΏΠ΅ΡΡΠΈΠΌΠ²ΠΎΠ»Ρ ΡΠΈΠΏΠ° ###@@@. ? BUG 23 ΠΠΎΠΆΠ½ΠΎ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Ρ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΌ email. ? 4?? ΠΠ°Π³ΠΈ Π»ΠΎΠ³ΠΈΠΊΠΈ (5) BUG 24 ΠΠΎΡΠ»Π΅ Π²ΡΡ
ΠΎΠ΄Π° ΠΈΠ· Π°ΠΊΠΊΠ°ΡΠ½ΡΠ° ΡΡΡΠ°Π½ΠΈΡΡ Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ°Π±ΠΈΠ½Π΅ΡΠ° Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΏΠΎ ΠΏΡΡΠΌΠΎΠΉ ΡΡΡΠ»ΠΊΠ΅. ? BUG 25 ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΆΠΎΠΉ ΠΎΡΠ·ΡΠ². ? BUG 26 ΠΡΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΡΠΎΠ²Π°ΡΠ° ΠΈΠ· ΠΊΠΎΡΠ·ΠΈΠ½Ρ ΠΎΠ½ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΈΡΡ. ? BUG 27 Π ΠΈΡΡΠΎΡΠΈΠΈ Π·Π°ΠΊΠ°Π·ΠΎΠ² ΠΈΠ½ΠΎΠ³Π΄Π° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½Π°Ρ Π΄Π°ΡΠ°. ? BUG 28 ΠΠΎΡΠ»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠΈΠ»Ρ Π΄Π°Π½Π½ΡΠ΅ Π½Π΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΡΡ ΡΡΠ°Π·Ρ. ? 5?? ΠΠ°Π³ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΊΠΈ (2) BUG 29 ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ½ΠΈΠ³Ρ Π±Π΅Π· ΡΠ΅Π½Ρ. ? BUG 30 ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π΅ΡΡΡ Π·Π°ΠΊΠ°Π·Ρ, ΠΈ Π·Π°ΠΊΠ°Π·Ρ Π»ΠΎΠΌΠ°ΡΡΡΡ.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° C#
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°. ΠΠ°ΡΡΡΠΎΠΉΠΊΠ°. Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ open vpn ΡΡΠΎΠ±Ρ Π½ΠΎΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π»ΡΡ Π² ΠΌΠΎΡΠΊΠ²Π΅.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° C#
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
Backend. Π£ΡΠΈΠ»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. Backend ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ (.NET / C#) Π² PromoOs PromoOs β ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½Π°Ρ AI-ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ½ΡΠ΅Π½Ρ-ΠΌΠ°ΡΠΊΠ΅ΡΠΈΠ½Π³Π°. ΠΡ Π΄Π΅Π»Π°Π΅ΠΌ ΡΠ»ΠΎΠΆΠ½ΠΎΠ΅ β ΠΏΡΠΎΡΡΡΠΌ, Π° ΡΡΡΠΈΠ½Ρ β Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ. ΠΡΠΎΠ΄ΡΠΊΡ ΡΠΆΠ΅ Π·Π°ΠΏΡΡΠ΅Π½, ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π½ΡΠΆΠ΅Π½ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠΈΠ»ΡΠ½ΡΠΉ backend-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ. Π§ΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠΎΠΈΡ Π΄Π΅Π»Π°ΡΡ: Β· Π Π°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π½ΠΎΠ²ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ Π½Π° .NET 9 / ASP.NET Core (Minimal API + REST) Β· ΠΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΡ
Π΅ΠΌΡ Π² PostgreSQL Β· Π Π°Π±ΠΎΡΠ°ΡΡ Ρ RabbitMQ (ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ, Π²ΡΠ³ΡΡΠ·ΠΊΠΈ, Π°ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ) Β· Π‘ΡΡΠΎΠΈΡΡ ΠΈ ΡΠ°ΡΡΠΈΡΡΡΡ API Π΄Π»Ρ ΡΡΠΎΠ½ΡΠ° ΠΈ Π²Π½Π΅ΡΠ½ΠΈΡ
ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΉ Β· Π£ΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΡΠ°Π·Π²ΠΈΡΠΈΠΈ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΈ ΠΏΡΠΈΠ½ΡΡΠΈΠΈ ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π‘ΡΠ΅ΠΊ: Β· .NET 9+ Β· ASP.NET Core (Minimal API / REST) Β· PostgreSQL Β· RabbitMQ Β· Git / CI/CD (Π½Π°ΡΡΡΠΎΠΈΠΌ ΠΏΠΎ ΠΌΠ΅ΡΡΡ) ΠΡΠΎ Π½Π°ΠΌ Π½ΡΠΆΠ΅Π½: Β· ΠΡΠ±ΠΈΡΡ ΡΠΈΡΡΡΠΉ ΠΊΠΎΠ΄, ΠΏΡΠΎΡΡΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ Π½Π°Π΄ΡΠΆΠ½ΡΠ΅ API Β· ΠΠΎΠ½ΠΈΠΌΠ°Π΅ΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ ΠΎΠ½ΠΈ Π²Π°ΠΆΠ½Ρ Β· ΠΠΎΡΠΎΠ² ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΡΠΈΡΠΌΠ΅ ΠΆΠΈΠ²ΠΎΠΉ ΠΈ ΡΠ°ΡΡΡΡΠ΅ΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Β· Π₯ΠΎΡΠ΅ΡΡ Π±ΡΡΡ Π² ΡΠΈΠ»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Β· ΠΠ΅ Π±ΠΎΠΈΡΡΡΡ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ ΠΈ ΡΠΌΠ΅Π΅ΡΡ Π΄ΠΎΠ²ΠΎΠ΄ΠΈΡΡ Π·Π°Π΄Π°ΡΠΈ Π΄ΠΎ ΡΠ΅Π»ΠΈΠ·Π° ΠΠΎΡΠ΅ΠΌΡ ΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ: Β· Π Π΅Π°Π»ΡΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΡΡΠΊΠ΅ AI, ΠΌΠ°ΡΠΊΠ΅ΡΠΈΠ½Π³Π° ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ Β· ΠΠ»ΠΎΠ±Π°Π»ΡΠ½ΡΠΉ ΡΡΠ½ΠΎΠΊ β ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΈΠ· Π ΠΎΡΡΠΈΠΈ, ΠΠ²ΡΠΎΠΏΡ, ΠΠ·ΠΈΠΈ, Π‘Π¨Π Β· ΠΠΎΠΌΠ°Π½Π΄Π° ΡΠΆΠ΅ Π½Π΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ, Π½ΠΎΠ²ΡΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Π½ΡΠΆΠ΅Π½ Π²ΡΠ΅ΡΠ° Β· ΠΠ°ΡΡΠ΅ΡΠ½ΡΠΉ ΡΠΎΡΡ ΠΈ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ΅ Π²Π»ΠΈΡΠ½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠ΄ΡΠΊΡ Β· ΠΠΎΠ»Π½Π°Ρ ΡΠ΄Π°Π»ΡΠ½ΠΊΠ°, ΡΡΠ°Π±ΠΈΠ»ΡΠ½Π°Ρ Π·Π°Π½ΡΡΠΎΡΡΡ ΠΈ Π΄ΠΎΡ
ΠΎΠ΄ Π€ΠΎΡΠΌΠ°Ρ ΡΠ°Π±ΠΎΡΡ: Β· Π£Π΄Π°Π»ΡΠ½Π½ΠΎ (Π‘ΠΠ / Π Π€) Β· ΠΠΎΠ»Π½Π°Ρ Π·Π°Π½ΡΡΠΎΡΡΡ, Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ / ΠΠ / ΡΠ°ΠΌΠΎΠ·Π°Π½ΡΡΠΎΡΡΡ β ΠΎΠ±ΡΡΠΆΠ΄Π°Π΅ΠΌΠΎ Β· ΠΠ°ΡΠΏΠ»Π°ΡΠ° β ΠΏΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ ΠΈΠ½ΡΠ΅ΡΠ²ΡΡ Π§ΡΠΎΠ±Ρ ΠΏΠΎΠΏΠ°ΡΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρ: 1. ΠΠ°ΠΏΠΈΡΠΈ: Β«Π₯ΠΎΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄ΡΒ» 2. ΠΏΡΠΈΡΠ»ΠΈ ΡΡΡΠ»ΠΊΡ Π½Π° GitHub / GitLab ΠΈΠ»ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ΄Π° / API, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡ Π΄Π΅Π»Π°Π» 3. ΠΡΠ°ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Π³Π΄Π΅ Π±ΡΠ» ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° C#
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
ΠΠ΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°. ΠΠΎΡΠ°Π±ΠΎΡΠΊΠ° ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° C#
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ ΠΠ. Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Ρ Π½ΡΠ»Ρ. 1. ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΠΠ (Π‘Π§ ΠΠΠ ) Β«Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΠ.02Β»; Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠ°ΡΡΠΈ Π‘Π§ ΠΠΠ (Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ ΠΈ ΡΠ΅ΡΡ-ΡΡΠΈΠ»ΠΈΡΡ). 2. Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠ³ΠΎ Π’Π Π½Π° ΠΈΠ·Π΄Π΅Π»ΠΈΠ΅ ΠΠ.02 Π² ΡΠ°ΡΡΠΈ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ
ΡΠ·Π»ΠΎΠ² (CPU, ΠΏΠ°ΠΌΡΡΡ, ΡΠ΅ΡΡ, USB, COM, Π²ΠΈΠ΄Π΅ΠΎ, GPIO, Π°ΡΠ΄ΠΈΠΎ) ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΠΠ‘Π’ 19.101-77. 3. Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ ΠΈΠ·Π΄Π΅Π»ΠΈΡ Π² ΡΠ°ΡΡΠΈ 6U CompactPCI Serial, ΡΠ°Π·Π½Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² Π½Π° FRONT/REAR, Π±Π°Π·ΠΎΠ²Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ COM Express ΠΈ ΠΠΠ£. 1. Π―Π·ΡΠΊ API: C (ABI ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ), Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΎΠ±Π΅ΡΡΠΊΠΈ C++ ΠΏΡΠΈ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠΈ C ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°. 2. ΠΠ°Π½Π½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°: β’ ΠΊΠΎΠ΄ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ (PASS/FAIL/ERROR); β’ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠΎΠ»Ρ (ΡΡΡΠΎΠΊΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΠ΄ ΠΎΡΠΈΠ±ΠΊΠΈ errno/Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ ΠΊΠΎΠ΄); β’ ΠΈΠ·ΠΌΠ΅ΡΡΠ΅ΠΌΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΠΏΡΡΠΊΠ½Π°Ρ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΡΠ΅ΡΠΈ, ΡΠΊΠΎΡΠΎΡΡΡ Π΄ΠΈΡΠΊΠ°, ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΠ° CPU ΠΈ Ρ.ΠΏ. β Π΅ΡΠ»ΠΈ ΡΠ΅ΡΡ ΠΈΠ·ΠΌΠ΅ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΉ); β’ Π²ΡΠ²ΠΎΠ΄ Π² ΡΡΡΡΠΊΡΡΡΡ + Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π² JSON. 3. Π‘ΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΡ: ΡΠ΅ΠΌΠ°Π½ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²Π΅ΡΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ API. 4. ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅: Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ + ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ Π² Β«Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°Β» ΠΈ/ΠΈΠ»ΠΈ Β«ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΠΒ» (ΡΠΌ. 6). 5. ΠΠΈΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅: ΠΏΡΠ°Π²Π° Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ ΡΠ±ΠΎΡΠΊΡ Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠ° (ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ° ΠΏΡΠ°Π²/Π½Π΅ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ β ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΡΠ°ΡΠ΅ΠΊ ΠΈ ΠΠ»Π΅ΠΉΠΌΠ΅ΡΡΠΈΠΊΡ).