</set>
<many-to-one name="EntityRegistry" class="Domain.Core.EntityRegistry" unique="true">
<column name="NI_ENTITY_REGISTRY" not-null="false" />
</many-to-one>
<property name="Name" access="property">
<column name="NAME" not-null="false" />
</property>
<property name="Granularity" access="property">
<column name="GRANULARITY" not-null="true" />
</property>
<property name="FromDate" access="property">
<column name="FROM_DATE" not-null="true" />
</property>
<property name="ToDate" access="property">
<column name="TO_DATE" not-null="true" />
</property>
<property name="Closed" access="property" type="YesNo">
<column name="CLOSED" not-null="true" />
</property>
<property name="CreatedBy" access="property">
<column name="CREATED_BY" not-null="false" />
</property>
<property name="CreatedDate" access="property" type="timestamp">
<column name="CREATED_DATE" not-null="false" />
</property>
<property name="LastModifiedBy" access="property">
<column name="LAST_MODIFIED_BY" not-null="false" />
</property>
<property name="LastModifiedDate" access="property" type="timestamp">
<column name="LAST_MODIFIED_DATE" not-null="false" />
</property>
</class>
Π‘Π»ΠΎΠΉ Π²Π΅Π±-ΡΠ»ΡΠΆΠ± ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² Π΄ΠΎΡΡΡΠΏΠ° (ServiceStack)
ΠΠ΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌΡΠ΅ Π΄Π»Ρ ΡΠ»ΠΎΡ Π²Π΅Π±-ΡΠ»ΡΠΆΠ± C#-ΡΠ°ΠΉΠ»Ρ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΄Π²ΡΡ ΡΠ±ΠΎΡΠΎΠΊ: ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ»ΡΠΆΠ± ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ΠΊ Π½ΠΈΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ.
Π ΠΈΡ. 25. ΠΠ»Π°ΡΡΡ, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠ΅ ΡΠ»ΡΠΆΠ±Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ Π΄ΠΎΠΌΠ΅Π½Π°
Π ΠΈΡ. 26. ΠΠ»Π°ΡΡ ΡΠ»ΡΠΆΠ±Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ»ΡΠΆΠ±Π°ΠΌ ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌΡΡ ΡΠΈΠΏΠΎΠ² Ρ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ, ΠΊΠ»Π°ΡΡΡ DTO Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ-ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ ΠΈ Π΄ΠΎΠΌΠ΅Π½ΠΎΠΌ, ΠΊΠ»Π°ΡΡΡ Π΄Π»Ρ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π²ΡΠ·ΠΎΠ²Π°ΠΌ ΡΠ»ΡΠΆΠ±.
Π ΠΈΡ. 27. ΠΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅ΠΌΡΠΉ ΡΠΈΠΏ ΡΠ»ΠΎΡ Π²Π΅Π±-ΡΠ»ΡΠΆΠ±
Π ΠΈΡ. 28. ΠΠ»Π°ΡΡΡ Π²ΡΠ·ΠΎΠ²Π° ΡΠΏΠ΅ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²
Π ΠΈΡ. 29. ΠΠ»Π°ΡΡΡ Π²ΡΠ·ΠΎΠ²Π° Π²Π΅Π±-ΡΠ»ΡΠΆΠ±, ΠΊΠ°ΡΠ°ΡΡΠΈΡ ΡΡ Β«ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΠΎΠ³ΠΎ Π³ΠΎΠ΄Π°Β»
Π ΠΈΡ. 30. ΠΠ»Π°ΡΡ Π°Π΄Π°ΠΏΡΠ΅ΡΠ° Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ Β«Π€ΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠΉ Π³ΠΎΠ΄Β»
Π ΠΈΡ. 31. ΠΠ»Π°ΡΡ Π°Π΄Π°ΠΏΡΠ΅ΡΠ° Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠ΅ΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Β«Π€ΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠΉ Π³ΠΎΠ΄Β»
Π Π°Π±ΠΎΡΠ°ΡΡ Ρ DTO ΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡΠΌΠΈ Π½Π΅ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΊΠΎΠΌΡΠΎΡΡΠ½ΠΎ, ΠΏΡΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅Π½ΡΠΆΠ½ΡΡ Π΄Π΅ΡΠ°Π»Π΅ΠΉ. ΠΠΎ Π΅ΡΠ»ΠΈ ΠΎΠ±Π΅ΡΠ½ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ DTO Π°Π΄Π°ΠΏΡΠ΅ΡΠ°ΠΌΠΈ, ΡΠΎ ΠΊΠΎΠ΄ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠ°Π΅ΠΌΡΠΌ ΠΈ ΠΊΠΎΡΠΎΡΠΊΠΈΠΌ.
ΠΡΠΈΠΌΠ΅Ρ ΡΠ°Π±ΠΎΡΡ Ρ DTO
CurrencyDTO curr1 = new CurrencyDTO();
curr1.Code = "RUR";
curr1.Name = "Currency 1";
UnitOfWorkDTO uow = new UnitOfWorkDTO();
uow.Save(curr1);
PersistenceRequest prq1 = new PersistenceRequest();
prq1.UnitOfWork = uow;
PersistenceResponse prr1 = client.Post<PersistenceResponse>("/Persistence", prq1);
Assert.IsFalse(prr1.CommitResult.HasError, prr1.CommitResult.Message);
ΠΡΠΈΠΌΠ΅Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π°Π΄Π°ΠΏΡΠ΅ΡΠ°ΠΌΠΈ
Currency curr1 = new Currency();
curr1.Code = "RUR";
curr1.Name = "Currency 1";
CommitResult cr1 = curr1.Save();
Assert.IsFalse(cr1.HasError, cr1.Message);
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°-ΠΊΠ»ΠΈΠ΅Π½Ρ
Π ΡΠ°ΠΌΠΊΠ°Ρ ΠΏΡΠΎΡΡΠ΅ΠΉΡΠ΅Π³ΠΎ WinForms-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠΎΡΠΌΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΡΠ΅ΡΠΊΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΡ Π³ΠΎΠ΄ΠΎΠ² ΠΈ ΠΈΡ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΎΠ². ΠΠ΅ Π²Π΄Π°Π²Π°ΡΡΡ Π² ΡΠ΅Ρ Π½ΠΈΠΊΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ ΠΊΠΎΠ΄Π°, Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡΠΈΠ΅ Ρ ΡΠ»ΡΠΆΠ± ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΡΠΈΠΏΠΎΠ².
ΠΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΏΠΈΡΠΊΠ° ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΡ Π³ΠΎΠ΄ΠΎΠ², ΠΎΡΡΠΈΠ»ΡΡΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎ Π½Π°Π·Π²Π°Π½ΠΈΡ
FiscalYearCollection years = FiscalYearCollection.GetByQuery(
"from FiscalYear where Name like: name order by Name",
new ServicesQueryParams()
AddParam("name", txtYearName.Text)
);
dgvYears.DataSource = years;
ΠΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΏΠΈΡΠΊΠ° ΡΡΡΡΠ½ΡΡ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΎΠ² Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³ΠΎΠ΄Π°
PeriodCollection periods = PeriodCollection.GetByQuery(
"from Period where FiscalYear.Id =:yearId order by FromDate",
new ServicesQueryParams()
AddParam("yearId", CurrentYear.Id),
0, 1000);
dgvPeriods.DataSource = periods;
ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΠ² ΡΠ΅ΡΠ²Π΅Ρ Π²Π΅Π±-ΡΠ»ΡΠΆΠ±, ΠΈ Π²ΠΈΠ΄ΠΈΠΌ Π½Π° ΡΠΊΡΠ°Π½Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ, ΠΊΠ°ΠΊ Π½Π° ΡΠΈΡ. 32.
Π ΠΈΡ. 32. Π€ΠΎΡΠΌΠ° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΡ Π³ΠΎΠ΄ΠΎΠ² ΠΈ ΡΡΡΡΠ½ΡΡ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΎΠ²
ΠΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ ΠΈ ΠΎΠ³Π»ΡΠ½ΡΡΡΡΡ
Π Π°ΡΡΠΌΠΎΡΡΠ΅Π½Π½Π°Ρ Π²ΡΡΠ΅ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° ΡΠ»ΠΎΡΠ² ΡΡΡΡ Π·Π²Π΅Π½Π½ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π²Π΅Π±-ΡΠ»ΡΠΆΠ±. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π΄Π°ΠΆΠ΅ Π² ΡΠ°ΠΊΠΎΠΌ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ ΠΎΠ±ΠΈΠ»ΠΈΠ΅ Π΄Π΅ΡΠ°Π»Π΅ΠΉ, ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΠΈ ΡΠ»ΡΠΆΠ΅Π±Π½ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ², ΠΏΡΠΎΠ΅ΠΊΡΠΈΠΉ ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π΄Π°ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠΎΡΡΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ.
ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΎΠ±Ρ ΠΎΠ΄Π° ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠΏΠΈΡΠ°Π½Π½Π°Ρ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠ°Π±ΡΠΈΠΊΠΈ, Π½Π΅ΡΠΎΠΌΠ½Π΅Π½Π½ΠΎ Π΄Π°Π»ΡΠΊΠ°Ρ ΠΎΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²Π° ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½Π°Ρ Π² Π½Π°Π±ΠΎΡΠ΅ ΡΠ΅Π»Π΅Π²ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ.
ΠΠ°ΠΊΠΎΠ²Π° ΠΆΠ΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ?
ΠΡΠ»ΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΠΎ 40 ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΡΡ ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΡΠΎΡΡΠΎΡΡΠ΅ΠΉ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΠΈΠ· 600 ΡΡΡΠΎΠΊ XML-ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΉ, ΠΏΠΎΡΠΎΠΆΠ΄Π°ΡΡ:
β’ ΠΎΠΊΠΎΠ»ΠΎ 3 ΡΡΡΡΡ ΡΡΡΠΎΠΊ SQL-ΡΠΊΡΠΈΠΏΡΠΎΠ² Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΡΠ΅Π»Π΅Π²ΡΡ Π‘Π£ΠΠ;
β’ ΠΏΠΎΡΡΠ΄ΠΊΠ° 10 ΡΡΡΡΡ ΡΡΡΠΎΠΊ Π΄ΠΎΠΌΠ΅Π½Π°;
β’ 1200 ΡΡΡΠΎΠΊ XML Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΈΠΉ ΠΊΠ»Π°ΡΡΠΎΠ² Π½Π° ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΡΡΡΠΊΡΡΡΡ (ΡΠ°Π±Π»ΠΈΡΡ);
β’ ΠΎΠΊΠΎΠ»ΠΎ 17 ΡΡΡΡΡ ΡΡΡΠΎΠΊ Π²Π΅Π±-ΡΠ»ΡΠΆΠ± ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ².
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠΎΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΠ»Π° ΡΡΡΠΎΠΊ ΠΌΠ΅ΡΠ°-ΠΊΠΎΠ΄Π° ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΊ ΠΊΠΎΠ΄Ρ Π΅Π³ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°Ρ ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠΊΠΎΠ»ΠΎ 600 ΠΊ 30 ΡΡΡΡΡΠ°ΠΌ ΠΈΠ»ΠΈ 1 ΠΊ 50.
ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΡΠ½Π°ΡΡΠ½Π½ΡΠΉ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ Ρ Π½Π°Π²ΡΠΊΠ°ΠΌΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΡΡΠ°ΠΏΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΡΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΎΠ³ΠΎ Π΄Π»Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌ/Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ ΠΊΠΎΠ΄Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π΅Π½ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π΅Π³ΠΎ 50 ΠΊΠΎΠ»Π»Π΅Π³, Π½Π΅ Π²Π»Π°Π΄Π΅ΡΡΠΈΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΊΠΎΠ΄Π° ΠΏΠΎ ΠΌΠΎΠ΄Π΅Π»ΡΠΌ. ΠΡΠ±ΠΎΠ΅ Π²Π½Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΌΠΎΠ΄Π΅Π»Ρ ΡΡΡ ΠΆΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Π²ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌΡΠ΅ ΡΠ»ΠΎΠΈ ΡΠΈΡΡΠ΅ΠΌΡ, ΡΡΠΎ Π΅ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΠ°Π·ΡΡΠ² ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΡΡΡΠ½ΡΠΌΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡΠΌΠΈ. ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π΅ Π½ΡΠΆΠ½Ρ ΡΠ΅ΡΡΡ. ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π΅Ρ Π΅ΡΡ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Π²Π΄Π²ΠΎΠ΅.
ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΏΡΠΈΠ½ΡΡΡ Π²ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π΄ΠΎΠ»Ρ ΡΡΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΈ ΠΏΡΠΎΡΠ΅Π³ΠΎ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΊ ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΌΡ, ΡΠΎ Π΅ΡΡΡ ΡΠ΅ΡΠ°ΡΡΠ΅ΠΌΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ Π·Π°Π΄Π°ΡΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΡΠ½ΠΈΠΆΠ°Π΅ΡΡΡ Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΎΠΌ ΡΠΈΡΡΠ΅ΠΌΡ, Π΅ΡΡΡ ΠΎ ΡΡΠΌ ΠΏΠΎΡΠ°Π·ΠΌΡΡΠ»ΠΈΡΡ Π² ΡΠΏΠΎΠΊΠΎΠΉΠ½ΠΎΠΉ ΠΎΠ±ΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅.
Cherchez le bug, ΠΈΠ»ΠΈ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ-ΡΡΠ°Π½ΡΡΠ·ΡΠΊΠΈ
ΠΡΠΎΡ ΡΠ°ΡΡΠΊΠ°Π· Ρ Π½Π°ΠΏΠΈΡΠ°Π» Π±ΠΎΠ»Π΅Π΅ 10 Π»Π΅Ρ Π½Π°Π·Π°Π΄, Π»Π΅ΡΠΎΠΌ 2001 Π³ΠΎΠ΄Π°, Π² ΠΏΠΎΠ΅Π·Π΄ΠΊΠ°Ρ Π½Π° ΠΏΡΠΈΠ³ΠΎΡΠΎΠ΄Π½ΠΎΠΌ ΠΏΠΎΠ΅Π·Π΄Π΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΠ°ΡΠΈΠΆΠ΅ΠΌ ΠΈ Moulin-Galant, Π³Π΄Π΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°Π»ΡΡ ΡΠΈΠ»ΠΈΠ°Π» IBM, ΠΈ ΠΏΠΎΠ½Π°ΡΠ°Π»Ρ ΡΠΎΠΌΠ½Π΅Π²Π°Π»ΡΡ Π² Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π΅Π³ΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π² ΠΊΠ½ΠΈΠ³Ρ. ΠΠΎ, ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅Π² ΡΡΠ°ΡΡΠΉ ΡΠ΅ΠΊΡΡ, Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ΄ΠΈΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ», ΡΡΠΎ Π΅ΡΠ»ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π°Π±Π±ΡΠ΅Π²ΠΈΠ°ΡΡΡΡ Π² Π½Π°Π·Π²Π°Π½ΠΈΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Π½Π° Β«Π½ΠΎΠ²ΡΠ΅ ΠΈ ΠΏΡΠΎΠ³ΡΠ΅ΡΡΠΈΠ²Π½ΡΠ΅Β», ΡΠΎ ΡΡΡΡ ΠΏΠΎΠ²Π΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΡΠ°Π½Π΅ΡΡΡ ΠΏΡΠ΅ΠΆΠ½Π΅ΠΉ. ΠΠ·ΠΌΠ΅Π½ΠΈΡΡΡ Π»ΠΈ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ Π΅ΡΡ ΡΠ΅ΡΠ΅Π· 10 Π»Π΅Ρ, ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ Π²ΡΠ΅ΠΌΡ.
Π₯Π°ΠΎΡ Π½Π°ΡΡΡΠΏΠ°Π΅Ρ Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Β«Π±Π°Π³Β» Π·Π½Π°ΡΡ, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, Π²ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ. ΠΡΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ, ΠΏΠΎΡΡΠ½Ρ: Β«Π±Π°Π³Β» (ΠΎΡ Π°Π½Π³Π». bug β ΠΆΡΡΠΎΠΊ) β ΡΡΠΎ Β«ΠΆΡΡΠΎΠΊ-Π²ΡΠ΅Π΄ΠΈΡΠ΅Π»ΡΒ» Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅, ΡΠΎ Π΅ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠ°, Π°Π½ΠΎΠΌΠ°Π»ΠΈΡ, ΡΠ±ΠΎΠΉ. ΠΠΎ-ΡΡΠ°Π½ΡΡΠ·ΡΠΊΠΈ ΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΠ½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΡΠ»ΠΎΠ²Π΅ΡΠΊΠΎ ΠΏΡΠΎΠΈΠ·Π½ΠΎΡΠΈΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΠΊΠ°ΠΊ Β«Π±ΡΠ³Β», Π½ΠΎ Π±ΡΠΊΠ²Π° Β«ΡΒ» ΠΏΡΠΎΠΈΠ·Π½ΠΎΡΠΈΡΡΡ Π±Π»ΠΈΠΆΠ΅ ΠΊ Π·Π²ΡΠΊΡ Β«ΠΎΒ». ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ ΡΡΠ°Π½ΡΡΠ·ΡΠΊΠΎΠΉ, ΠΊΠ°ΠΊ, ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΈ Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΠΈΠ½Π΄ΡΡΡΡΠΈΠΈ β Π³ΡΠΎΠΌΠΊΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ, Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠ±Π»Π°Π³ΠΎΡΠ°ΠΆΠΈΠ²Π°ΡΡΠ΅Π΅ Π½Π°ΡΡ Π²ΡΠ΅ΠΌΠΈΡΠ½ΡΡ Β«Π±Π°Π³ΠΎΠ΄Π΅Π»ΡΠ½ΡΒ», ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ ΡΡΠ°Π½ΡΡΠ·ΡΠΊΠΎΠΉ Π΄ΡΡΠΈ, Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΡΡΠ΅Π΅ ΡΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ°Π½Π³Π²ΠΈΠ½ΠΈΠΊΠ° ΠΏΠΎΡΠ»Π΅ ΡΠ°ΡΠΏΠΈΡΠΎΠ³ΠΎ Ρ Π΄ΡΡΠ·ΡΡΠΌΠΈ Π±ΠΎΠΊΠ°Π»Π° Π²ΠΈΠ½Π°, Π³Π°Π»Π°Π½ΡΠ½ΠΎΠ³ΠΎ ΠΈ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ ΡΠΎΡΠΎΠΏΡΡΠ΅Π³ΠΎΡΡ ΠΆΠΈΡΡ. Π Π°Π·ΡΠΌΠ΅Π΅ΡΡΡ, ΡΠ°Π½Π³Π²ΠΈΠ½ΠΈΠΊ ΡΡΠΈΡΠ°Π΅Ρ, ΡΡΠΎ Π²ΡΠ΅ ΠΏΡΠΎΠ΄ΡΠΊΡΡ Π΅Π³ΠΎ ΡΡΡΠ΄Π° Π²Π΅Π»ΠΈΠΊΠΈ ΠΈ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½Ρ, ΠΊΠ°ΠΊ Π²ΠΈΠ΄ Π½Π° Π½ΠΎΡΠ½ΠΎΠΉ ΠΠ°ΡΠΈΠΆ Ρ ΠΠΎΠ½ΠΌΠ°ΡΡΡΡΠΊΠΎΠ³ΠΎ Ρ ΠΎΠ»ΠΌΠ° ΠΈΠ»ΠΈ ΠΏΡΠ»ΡΠ½ΡΠΉ Π³ΠΎΠ±Π΅Π»Π΅Π½ Π½Π°Π΄ ΠΊΡΠΎΠ²Π°ΡΡΡ ΠΠ°ΠΏΠΎΠ»Π΅ΠΎΠ½Π° Π² Π·Π°ΠΌΠΊΠ΅ Π€ΠΎΠ½ΡΠ΅Π½Π±Π»ΠΎ.
ΠΠ΅ΡΠ²ΡΠΉ ΠΎΠΏΡΡ ΠΏΡΠΈΡΡΠ» ΠΊΠΎ ΠΌΠ½Π΅ ΡΠΆΠ΅ ΡΠ΅ΡΠ΅Π· ΠΏΠ°ΡΡ Π½Π΅Π΄Π΅Π»Ρ ΠΏΠΎΡΠ»Π΅ Π½Π°ΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΡ Π½Π° Π½ΠΎΠ²ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅. ΠΠ΅ ΡΡΠΈΡΠ°Ρ ΡΠ΅Π±Ρ ΡΠΊΡΠΏΠ΅ΡΡΠΎΠΌ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° Π‘++, ΡΠ²ΠΈΠ΄Π΅Π² ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ ΡΠ΅ΠΊΡΡΡ, Ρ ΠΎΡΡΡΠΈΠ» ΠΌΡΠ³ΠΊΠΎ Π³ΠΎΠ²ΠΎΡΡ, Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΉΡΡΠ²ΠΎ. Π‘ΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ Ρ Ρ ΡΡΠΈΠΌΠΈ ΡΠ΅ΠΊΡΡΠ°ΠΌΠΈ Π½Π΅ ΡΡΠ°Π·Ρ, ΡΠ°ΠΊ, ΠΏΡΠ΅ΠΆΠ΄Π΅ Π² ΠΊΠΎΠ½ΡΠΎΡΠ΅ ΡΡΡΠ΄ΠΈΠ»ΠΈΡΡ Π΄Π²ΠΎΠ΅ ΡΡΡΡΠΊΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ², ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎ ΡΠ°Π·Π½ΡΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ ΠΏΠΎΠΊΠΈΠ½ΡΠ» ΡΠΈΡΠΌΡ, Π° Ρ Π΄ΡΡΠ³ΠΈΠΌ, ΠΠΈΠΌΠΎΠΉ, ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π±ΠΎΠ»Π΅Π΅ Π³ΠΎΠ΄Π° Π²ΠΏΠ»ΠΎΡΡ Π΄ΠΎ Π΅Ρ Π»ΠΈΠΊΠ²ΠΈΠ΄Π°ΡΠΈΠΈ.
ΠΡΠ°ΠΊ, Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΠ»ΡΡ Π² ΡΡΠ°ΡΡΠ»ΠΈΠ²ΠΎΠΌ Π½Π΅Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ±ΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π΄Π΅Π». ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΎΡΠ΅Π½ΠΈΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠ΄Π°. Π’ΠΎ, ΡΡΠΎ Π΅Π΄ΠΈΠ½ΡΠ΅ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡ ΠΎΡΡΡΡΡΡΠ²ΠΎΠ²Π°Π»ΠΈ, Π° Java-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΡΡΠΈΠ»Ρ Π½Π΅ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠΎΡ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ Π½Π° Π‘++ Π½Π΅ ΡΠ²Π»ΡΠ»ΠΎΡΡ Π±ΠΎΠ»ΡΡΠΈΠΌ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠΌ β Π»ΡΡΡΠ΅ ΡΠ°ΠΊΠΎΠΉ ΡΡΠΈΠ»Ρ, ΡΠ΅ΠΌ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ, ΡΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΡΡΠΎ ΠΊΠΎΠ΄Π° Π½Π° Java Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ Π±ΡΠ»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ. ΠΡΠ΅ΠΆΠ½ΠΈΠ΅ Π°Π²ΡΠΎΡΡ, Π²ΠΈΠ΄ΠΈΠΌΠΎ, Π½Π΅ ΡΠΌΠΎΠ³Π»ΠΈ Π²ΡΡΠ°Π·ΠΈΡΡ ΡΠ΅Π±Ρ Π² ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π΅, Π° Π΄ΠΎ ΡΡΡΡΠΊΡΡΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ Π½Π΅ ΠΎΠΏΡΡΡΠΈΠ»ΠΈΡΡ. ΠΡΠ»ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π½Π΅ ΡΡΠ°Π·Ρ Π±ΡΠΎΡΠ°Π»ΠΎΡΡ Π² Π³Π»Π°Π·Π° Π½Π°Π»ΠΈΡΠΈΠ΅ΠΌ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΠΊΠ»Π°ΡΡΠΎΠ² Ρ ΠΏΡΡΡΡΠΌΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°ΠΌΠΈ, ΡΠΎ Π²ΡΠΎΡΠΎΠ΅ ΡΠ΅Π·Π°Π»ΠΎ Π³Π»Π°Π· ΠΎΠ±ΠΈΠ»ΠΈΠ΅ΠΌ Π²ΠΎΠ·Π²ΡΠ°ΡΠΎΠ² ΠΈΠ· ΡΠ°Π·Π½ΡΡ ΠΌΠ΅ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠΈΠΌΠΈ ΠΊΡΡΠΊΠ°ΠΌΠΈ ΠΊΠΎΠ΄Π° Π² ΠΎΠ΄Π½ΠΎΠΈΠΌΡΠ½Π½ΡΡ ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΡΡ , Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ° ΡΠ΅ΡΠ΅Π· Π±ΡΡΠ΅Ρ ΠΎΠ±ΠΌΠ΅Π½Π°, Β«copy-pasteΒ». ΠΡΠΈ Π²ΠΈΠ΄Π΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠ² ΠΊΡΠΎΠΌΠ΅ ΡΠΈΡΡΠΎ ΡΡΡΡΠΊΠΈΡ ΡΠΌΠΎΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈΠ· ΠΌΠ΅Π½Ρ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ»Π΅Π·Π°Π»ΠΎ ΡΡΠ°Π½ΡΡΠ·ΡΠΊΠΎΠ΅ Β«ΡΡΠΎ Π·Π° Π±ΠΎΡΠ΄Π΅Π»ΡΒ», Π²ΡΠ·Π²Π°Π²ΡΠ΅Π΅ ΠΏΠΎΡ Π²Π°Π»Ρ ΠΌΠΎΠ΅Π³ΠΎ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ, ΠΎΡΠΌΠ΅ΡΠ°Π²ΡΠ΅Π³ΠΎ, ΡΡΠΎ Ρ Π΄Π΅Π»Π°Ρ ΡΡΠΏΠ΅Ρ ΠΈ Π² ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΠΈ ΡΠ·ΡΠΊΠ°.
Π ΠΆΠΈΠ·Π½ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ°Π»ΠΎ-ΠΌΠ°Π»ΡΡΠΊΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° Π΅ΡΡΡ ΡΡΠ°Π΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ Π½Π΅ΠΊΠΈΠΉ ΠΏΠΎΡΠΎΠ³ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ, Π·Π° ΠΊΠΎΡΠΎΡΡΠΌ Π½Π°ΡΡΡΠΏΠ°Π΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Ρ Π½Π°Π·ΡΠ²Π°Ρ Β«ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΡΡΒ». ΠΡΠΎ Π΅ΡΡ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΏΠΎΠ»Π½ΡΠΉ Ρ Π°ΠΎΡ, Π½ΠΎ ΡΠΆΠ΅ Π΄Π°Π²Π½ΠΎ ΠΈ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΏΠΎΡΡΠ΄ΠΎΠΊ. ΠΡΠ΅ ΠΏΠΎΠΏΡΡΠΊΠΈ ΠΊΠ°ΠΊ-ΡΠΎ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, Π²ΡΡΡΠ΅ΡΠΊΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°Π΄ΠΈΠ³ΠΌΡ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ°, ΡΡΠ°Π½Π΄Π°ΡΡΡ ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΈΠ²Π½ΡΠ΅ ΠΌΠ΅ΡΡ Ρ ΡΠ΄ΠΎ-Π±Π΅Π΄Π½ΠΎ, Π½ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΎΡΡΡΠ½ΡΡΡ ΡΡΠΎΡ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΡΠΎΠ³ Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. Π ΠΈΠ΄Π΅Π°Π»Π΅ β Π΄ΠΎ ΡΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ°, ΠΊΠΎΠ³Π΄Π° ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΠΈ ΠΎΠ½Π°, ΠΏΠΎΠ±ΡΠ² Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π² ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ, ΠΏΠΎΡΠΈΡ ΠΎΠ½ΡΠΊΡ ΡΠΌΠΈΡΠ°Π΅Ρ. ΠΠ΄Π½Π° ΠΈΠ· ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΎΡΡΠΎΠΈΡ Π² ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΡΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΉ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°. ΠΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π² ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΊΠ°ΡΡΠ΅, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ²Π°ΡΡΠΈΠΊ ΠΈΠ»ΠΈ ΠΊΠ°ΠΌΠ΅Π½ΡΠΈΠΊ, Π½ΠΎ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ Π·Π°ΡΠ°ΡΡΡΡ Π½Π΅ Π·Π½Π°Π΅Ρ ΠΈ ΠΎΠ½ ΡΠ°ΠΌ. ΠΠΎ Ρ ΡΠ΄ΠΎΠΆΠ½ΠΈΠΊΠ°, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ Π²ΡΠ΅ Π΄ΠΎΡΡΠ³ΠΈΠ²Π°ΡΡ, Π° Π²ΠΎΡ Ρ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΡΡΠ΄ΠΎΠ²ΠΎΠ³ΠΎ ΠΆΡΡΠ½Π°Π»ΠΈΡΡΠ° Β«Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉΒ» Π³Π°Π·Π΅ΡΡ Π½Π΅ΠΏΠΎΡΠ²ΡΡΡΠ½Π½ΠΎΠΌΡ Π² ΡΠΎΡΡΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΡ ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ. ΠΡΠ°ΠΊΠΈΠΉ ΡΠ΄ΡΡΠ½ΡΠΉ ΡΠΏΠ»Π°Π² ΡΠ΅ΠΌΠ΅ΡΠ»Π°, Π½Π΅ΠΊΠΎΠ³ΠΎ Π±ΠΎΠ³Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΡΠΊΡΡΡΡΠ²Π°, ΡΠΎ Π²ΠΊΡΠ°ΠΏΠ»Π΅Π½ΠΈΡΠΌΠΈ Π½Π°ΡΠΊΠΈ, Π²ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠΊΡ Ρ Ρ Π°Π»ΡΡΡΠΎΠΉ, ΡΠ°Π±Π°ΡΠΊΠΎΠΉ ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΌ Π°Π²ΡΠ°Π»ΠΎΠΌ. ΠΠΎΠΏΡΡΠΊΠΈ ΠΆΠ΅ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° Π΄Π΅Π»Π°ΡΡ ΠΎΠ΄Π½ΠΎΡΠΈΠΏΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠ°Ρ ΡΠ°ΠΌΠΎΠΉ ΡΠ΅Π»ΠΈ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊ ΡΠ°ΠΌΠΎΠ³ΠΎ Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΈΠ· ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΡΡΠ΅Π΄ΡΡΠ² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΡΡΠΈΠ½Π½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΈ ΠΏΠΎΡΠΎΠΌΡ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΎΠ±ΡΠ΅ΡΠ΅Π½Ρ Π½Π° Π½Π΅ΡΠ΄Π°ΡΡ.