ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния для обслуТивания автосалона

ΠšΡƒΡ€ΡΠΎΠ²Π°ΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π›ΠΎΠ³ΠΈΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ: послС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ измСнСния происходит ΠΏΡ€ΠΎΡ…ΠΎΠ΄ ΠΏΠΎ Π²ΡΠ΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π² ΠΏΠΎΠΈΡΠΊΠ΅ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ строки. Если выдСлСнная строка Π½Π΅ Π±Ρ‹Π»Π° Π½Π°ΠΉΠ΄Π΅Π½Π°, Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚. Если ΠΆΠ΅ Π±Ρ‹Π»Π° Π½Π°ΠΉΠ΄Π΅Π½Π° выдСлСнная строка, Ρ‚ΠΎ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ся ΠΎΠΊΠ½ΠΎ рСдактирования (ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ совпадаСт с ΠΎΠΊΠ½ΠΎΠΌ добавлСния) Ρ‚ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ элСмСнта. Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ‚ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, которая… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния для обслуТивания автосалона (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

  • Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅
  • 1. Анализ исходных Π΄Π°Π½Π½Ρ‹Ρ…
  • 1.1 Π₯арактСристика Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ
  • 1.2 Анализ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области
  • 1.3 Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΈ ΠΎΠ±Ρ‰Π΅ΡΠΈΡΡ‚Π΅ΠΌΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС
  • 2. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
  • 2.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚ΠΎΠ²
  • 2.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ классов
  • 2.3 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ
  • 2.4 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ состояний
  • 3. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Π°Ρ рСализация
  • 3.1 Π”Π΅Ρ‚Π°Π»ΡŒΠ½Π°Ρ рСализация Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… частСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния
  • 3.1.1 РСализация ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния
  • 3.1.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΠ°
  • 3.2 Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния
  • 3.2.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° описания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹
  • 3.2.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° руководства ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ
  • 3.2.3 ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° испытаний
  • 3.4 ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния
  • Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅
  • Π›ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π°
  • ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ

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

ΠΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ язык, Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ для написания Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния — C# - являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΌΡ‹Ρ… ΠΌΠΎΠ»ΠΎΠ΄Ρ‹Ρ… языков программирования. ВмСстС с Ρ‚Π΅ΠΌ, ΠΎΠ½ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ большиС возмоТности для программиста.

ΠŸΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ, прСдполагаСтся Π°ΠΊΡ†Π΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΈΡΡ‚Π½Ρ‹ΠΉ внСшний Π²ΠΈΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ — ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс, удобство Π² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠΈ, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ Ρ€Π°Π·Π³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… дСйствий со ΡΡ‚ΠΎΡ€ΠΎΠ½Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

1. Анализ исходных Π΄Π°Π½Π½Ρ‹Ρ…

1.1 Π₯арактСристика Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ

НСобходимо Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС для обслуТивания автосалона со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ трСбованиями:

— Π“рафичСский интСрфСйс основной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ΡΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ стандартныС ΠΎΠΊΠΎΠ½Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Button, TextBox, DataGridViewΠΈ Ρ‚.Π΄. для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ трСбования;

— Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° Π΄ΠΈΡΠΊΠ΅. Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Ρ„Π°ΠΉΠ»Π° Π±Π°Π·Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ автоматичСски, ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Π±Π°Π·Ρ‹. Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ сущности, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠΉ, происходит Ρ‚Π°ΠΊ ΠΆΠ΅ автоматичСски, Π±Π΅Π· участия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ;

— Π“рафичСский интСрфСйс для создания, рСдактирования ΠΈ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π° Π΄Π°Π½Π½Ρ‹Ρ…. Π’Π°ΠΊ ΠΆΠ΅ прСдполагаСтся использованиС стандартных ΠΎΠΊΠΎΠ½Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌ.

— ΠŸΠΎΠΈΡΠΊ ΠΏΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠ°ΠΌ. Одним ΠΈΠ· ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΎΠΊΠ½Π° Π±Π°Π·Ρ‹ являСтся DataGridView, поиск ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π½Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚авляСт Ρ‚Ρ€ΡƒΠ΄Π°. Π’Π°ΠΊ Π² ΠΏΠΎΠ»Π΅ поиска Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти ΠΊΠ»ΡŽΡ‡ поиска, ΠΈ Π΅ΡΠ»ΠΈ хотя Π±Ρ‹ ΠΎΠ΄Π½ΠΎ совпадСниС Π½Π°ΠΉΠ΄Π΅Π½ΠΎ (Π²Π½Π΅ зависимости ΠΎΡ‚ ΠΏΠΎΠ»Ρ) строка DataGridViewΠ±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π°.

— Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ восьми сущностСй. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ΡΡ Ρ€Π°Π±ΠΎΡ‚Π° со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ сущностями:

o ΠΠ±ΡΡ‚Ρ€Π°ΠΊΡ‚Π½Ρ‹ΠΉ класс Product;

o Auto;

o Disk;

o Bus;

o Moto;

o Klient;

o Saller;

o Password;

o Π˜Π½Ρ‚СрфСйс Serialization_Deserialization.

— ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ использованиС наслСдования ΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΠ°.

Π―Π·Ρ‹ΠΊ программирования ΠΈ ΡΡ€Π΅Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ — C/C++, C#, MS VisualStudio 2005/2010. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ — ОБ Windows XP/Vista/7/2003/2008.

1.2 Анализ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области

ΠŸΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½Π°Ρ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π²Π΅Π΄Π΅Π½ΠΈΠ΅ учСтности ΠΏΡ€ΠΎΠ΄Π°ΠΆΠΈ ΠΈ ΠΏΡ€ΠΎΠΊΠ°Ρ‚Π° Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ, запчастСй, шин, дисков ΠΈ ΠΌΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Π΅Π΄Π΅Π½ΠΈΠ΅ учСтности Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ… ΠΈ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°Ρ… автосалона.

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ΡΡ Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ сущностями:

— ΠΠ²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ;

— Π”иск;

— Π¨ΠΈΠ½Π°;

— ΠœΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠ°;

— ΠšΠ»ΠΈΠ΅Π½Ρ‚;

— ΠŸΡ€ΠΎΠ΄Π°Π²Π΅Ρ†.

Π’ Π·Π°Π΄Π°Π½ΠΈΠ΅ прСдполагаСтся созданиС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… для обслуТивания автосалона со ΡΠ»Π΅Π΄ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΠΎΠΌ:

— Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…:

o Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ автомобиля:

Β· для ΠΏΡ€ΠΎΠ΄Π°ΠΆΠΈ;

Β· для ΠΏΡ€ΠΎΠΊΠ°Ρ‚Π°;

o Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°;

o Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ;

o Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ дисков;

o Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ шин;

o Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π° (Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ вошСл ΠΏΠΎΠ΄ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записью Администратора);

— ΠŸΠΎΠΈΡΠΊ ΠΏΠΎ Π»ΡŽΠ±Ρ‹ΠΌ совпадСниям ΠΊΠ»ΡŽΡ‡Π°;

— Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌ полям ΠΈ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡΠΌ (ΠΏΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°Π½ΠΈΡŽ, ΠΏΠΎ ΡƒΠ±Ρ‹Π²Π°Π½ΠΈΡŽ) Π² DataGridView, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

— Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…:

o Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π΄ΠΈΡΠΊΠ΅;

o Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅;

o Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡˆΠΈΠ½Ρ‹;

o Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΌΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠ΅;

o Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π΅;

— ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ:

o ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΌΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠ΅;

o ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡˆΠΈΠ½Π°Ρ…;

o ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ…;

o ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± Π°Π²Ρ‚омобилях;

o ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π΄ΠΈΡΠΊΠ°Ρ…;

o ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°Ρ… (Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ вошСл ΠΏΠΎΠ΄ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записью Администратора);

— Π Π°Π±ΠΎΡ‚Π° с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ:

o Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π±Π°Π·Ρ‹ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° (происходит автоматичСски);

o ΡΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π±Π°Π·Ρ‹ Π² Ρ„Π°ΠΉΠ» (происходит автоматичСски);

— Π˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ пароля (Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ вошСл ΠΏΠΎΠ΄ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записью Администратора):

o ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ пароля ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Администратора;

o ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ пароля ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°.

1.3 Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΈ ΠΎΠ±Ρ‰Π΅ΡΠΈΡΡ‚Π΅ΠΌΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС

ΠŸΡ€ΠΈ написании Π΄Π°Π½Π½ΠΎΠ³ΠΎ курсового ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° использовалось ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ стороннСС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС ΠΈ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ:

— Microsoft Visual Studio 2010 — написаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

— Microsoft Office Word 2013 — написаниС ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ записки, описания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, руководства ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ;

— Enterprise Architect 7.5 — ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ.

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС руководство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ

2. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

2.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚ΠΎΠ²

На Π΄Π°Π½Π½ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π°ΠΊΡ‚Π΅Ρ€Ρ‹, ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚Ρ‹ ΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ. ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Π²Ρ‹Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ взаимодСйствиСм Π°ΠΊΡ‚Π΅Ρ€ΠΎΠ² с ΡΠΈΡΡ‚Π΅ΠΌΠΎΠΉ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚ΠΎΠ² (Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² использования). АктСром являСтся любая ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ ΠΈΠ·Π²Π½Π΅. Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² использования ΠΈΠ»ΠΈ ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚ΠΎΠ² Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ сСрвисы ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ систСма прСдоставляСт Π°ΠΊΡ‚Π΅Ρ€Π°ΠΌ.

Π’ Π΄Π°Π½Π½ΠΎΠΉ курсовой Ρ€Π°Π±ΠΎΡ‚Π΅ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Π°ΠΊΡ‚Π΅Ρ€ΠΎΠ² Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Администратор ΠΈ ΠŸΡ€ΠΎΠ΄Π°Π²Π΅Ρ†. К ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚Π°ΠΌ ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π° относятся:

— Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…:

o Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ автомобиля;

o Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ»Π°;

o Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ шин;

o Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ дисков;

o Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°;

— ΠŸΠΎΠΈΡΠΊ ΠΏΠΎ Π»ΡŽΠ±Ρ‹ΠΌ совпадСниям Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹;

— Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎ Π»ΡŽΠ±Ρ‹ΠΌ полям Π² ΠΏΡ€ΡΠΌΠΎΠΌ ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС;

— Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π°Π½Π΅Π΅ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΡ€ΠΎΠΌΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ…;

— ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹:

o ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± Π°Π²Ρ‚омобилях;

o ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ…;

o ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡˆΠΈΠ½Π°Ρ…;

o ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π΄ΠΈΡΠΊΠ°Ρ…;

o ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΌΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ»Π°Ρ…;

— Π Π°Π±ΠΎΡ‚Π° с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ:

o Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Ρ„Π°ΠΉΠ»ΠΎΠ² Π±Π°Π· ΠΈ ΡΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ„Π°ΠΉΠ»Ρ‹ происходит автоматичСски ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹ ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ/Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ соотвСтствСнно;

К ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚Π°ΠΌ Администратора относятся всС ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚Ρ‹ ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅:

— Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°;

— Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π΅;

— ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°Ρ…;

— Π˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ пароля ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°;

— Π˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ пароля ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Администратора.

На ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ Π²Ρ‹ΡˆΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π±Ρ‹Π»Π° построСна Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚ΠΎΠ², прСдставлСнная Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ А.

2.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ классов

На Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ классов ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ всС классы, ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ всС свойства ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ классов ΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ.

ΠšΡ€Π°Ρ‚ΠΊΠ°Ρ характСристика классов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² Π΄Π°Π½Π½ΠΎΠΉ курсовой Ρ€Π°Π±ΠΎΡ‚Π΅, прСдставлСна Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 2.2.1.

Π’Π°Π±Π»ΠΈΡ†Π° 2.2.1 — ΠšΠ»Π°ΡΡΡ‹ ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΡΠ²ΠΎΠΉΡΡ‚Π²Π°

Класс

(интСрфСйс)

ΠšΡ€Π°Ρ‚ΠΊΠ°Ρ характСристикамСтодов

<>

Serialization_Deserialization

ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ классам, зависящим ΠΎΡ‚ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² сСриализации ΠΈ Π΄Π΅ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

Product

Абстрактный класс с ΠΎΡΠ½ΠΎΠ²Π½Ρ‹ΠΌΠΈ свойствами ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠΌ

Person

Абстрактный класс, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΉΡΡ Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ для классов SallerΠΈ Klient.

Auto

Класс Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ, содСрТащий свойства автомобиля, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ интСрфСйс Serialization_Deserialization

Moto

Класс ΠΌΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠ°, содСрТащий свойства ΠΌΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ интСрфСйс Serialization_Deserialization

Bus

Класс шина, содСрТащий свойства шин, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ интСрфСйс Serialization_Deserialization

Disk

Класс диск, содСрТащий свойства дисков, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ интСрфСйс Serialization_Deserialization

Klient

Класс ΠΊΠ»ΠΈΠ΅Π½Ρ‚, содСрТащий ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ интСрфСйс Serialization_Deserialization

Saller

Класс ΠΏΡ€ΠΎΠ΄Π°Π²Π΅Ρ†, содСрТащий ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π΅, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ интСрфСйс Serialization_Deserialization

Password

Класс ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, содСрТащий свойство Ρ…Π΅Ρˆ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ пароля (администратора ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΌ

2.3 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

Для модСлирования процСсса выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π² ΡΠ·Ρ‹ΠΊΠ΅ UML ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΠ°Ρ Π² Π½ΠΈΡ… графичСская нотация Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΠΏΠΎΡ…ΠΎΠΆΠ° Π½Π° Π½ΠΎΡ‚Π°Ρ†ΠΈΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ состояний, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π° ΡΡ‚ΠΈΡ… Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°Ρ… Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ обозначСния состояний ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ². КаТдоС состояниС Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ соотвСтствуСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ элСмСнтарной ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Π° ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ состояниС выполняСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ этой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

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

Π’ ΠΊΠΎΠ½Ρ‚СкстС языка UML Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ прСдставляСт собой ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… вычислСний, выполняСмых Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΎΠΌ, приводящих ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ ΠΈΠ»ΠΈ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ. На Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ отобраТаСтся Π»ΠΎΠ³ΠΈΠΊΠ° ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ² ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠΉ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΉ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡŽ состояния систСмы ΠΈΠ»ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΡŽ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ значСния.

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ для Π΄Π°Π½Π½ΠΎΠ³ΠΎ курсового ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° прСдставлСна Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π”.

2.4 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ состояний

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° состояний прСдставляСт собой Π³Ρ€Π°Ρ„ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ³ΠΎ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚Π°. На Π½Π΅ΠΉ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ состояниями ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’ ΡΠ·Ρ‹ΠΊΠ΅ UML ΠΏΠΎΠ΄ состояниСм понимаСтся абстрактный мСтакласс, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для модСлирования ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ ситуации, Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ условия. БостояниС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°Π΄Π°Π½ΠΎ Π² Π²ΠΈΠ΄Π΅ Π½Π°Π±ΠΎΡ€Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² класса ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. ИзмСнСниС ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Ρ€Π°ΠΆΠ°Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ класса ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Под дСйствиСм Π² ΡΠ·Ρ‹ΠΊΠ΅ UML ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡŽ состояния ΠΈΠ»ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Ρƒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ значСния.

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

3. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Π°Ρ рСализация

3.1 Π”Π΅Ρ‚Π°Π»ΡŒΠ½Π°Ρ рСализация Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… частСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния

3.1.1 РСализация ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния

ОписаниС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² классов

ПослС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ дСйствиС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ — это Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ Π²Π²Π΅ΡΡ‚ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ.

ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ Π²Π²ΠΎΠ΄Π° пароля провСряСтся ΠΏΠΎ Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ пароля ΠΈ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ пароля ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ PasswordIsValid (stringhash1, stringhash2) класса Password, Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π΄Π²Π° Ρ…Π΅Ρˆ-значСния. ΠŸΠ΅Ρ€Π²ΠΎΠ΅ — истинноС Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ пароля, хранящССся Π² Ρ„Π°ΠΉΠ»Π΅ Π½Π° Π΄ΠΈΡΠΊΠ΅ Π² ΠΏΠ°ΠΏΠΊΠ΅ вмСстС с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, Π²Ρ‚ΠΎΡ€ΠΎΠ΅ — ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ΅ ΠΈΠ· Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ пароля. Если Ρ…Π΅Ρˆ-значСния ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚, функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ True.

Π₯Сш-значСния ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ (Администратора ΠΈ ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°) хранятся Π² Ρ„Π°ΠΉΠ»Π΅ Π½Π° Π΄ΠΈΡΠΊΠ΅ (HashAdmin. dat — для Администратора, HashSaler. dat — для ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°), ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ся ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌgetHashSalerPassword (), для пароля ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π° ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌgetHashAdminPassword () Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ класса Password, для пароля Администратора.

Π’ ΠΊΠ»Π°ΡΡΠ΅ PasswordΡ‚Π°ΠΊ ΠΆΠ΅ содСрТится ΠΌΠ΅Ρ‚ΠΎΠ΄ NewPassword (stringnewpassword, intfl), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ измСняСт ΠΏΠ°Ρ€ΠΎΠ»ΠΈ ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π° ΠΈΠ»ΠΈ Администратора. Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π΅ΠΌΡƒ пСрСдаСтся Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ пароля ΠΈ Ρ„Π»Π°Π³ измСнСния. Если Ρ„Π»Π°Π³ Ρ€Π°Π²Π΅Π½ 0, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Администратора, Ссли 1 — ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°. ΠŸΠ°Ρ€ΠΎΠ»ΡŒ мСняСтся простой ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡΡŒΡŽ Ρ„Π°ΠΉΠ»Π°, содСрТащСго Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ пароля, Π½Π° Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ пароля.

Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ классС сущностСй описаны ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для осущСствлСния доступа ΠΊ ΡΠ²ΠΎΠΉΡΡ‚Π²Π°ΠΌ класса (Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ Π³Π΅Ρ‚Ρ‚Π΅Ρ€Ρ‹), конструктор Π΄Π°Π½Π½ΠΎΠ³ΠΎ класса ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ для сСриализации ΠΈ Π΄Π΅ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ записи ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ Π±Π°Π·Ρ‹ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°. ΠŸΡ€ΠΈ сСриализации Π΄Π°Π½Π½Ρ‹Π΅ пСрСводятся Π² Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ Π²ΠΈΠ΄, ΠΏΡ€ΠΈ дСсСриализации — Π² Π²ΠΈΠ΄, ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹ΠΉ для чтСния Ρ‚Π΅ΠΌΠΈ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ. Для использования возмоТности сСриализации ΠΈ Π΄Π΅ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹:

usingSystem.runtime. Serialization. Formatters. Binary;

usingSystem.runtime. Serialization;

using System. IO;

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ сСриализации ΠΈ Π΄Π΅ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ класса Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ интСрфСйс Serealization_Deserialization.

Π Π°Π·Π±Π΅Ρ€Π΅ΠΌ Π²Ρ‹ΡˆΠ΅Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ классаAuto (см. Π»ΠΈΡΡ‚ΠΈΠ½Π³ 3.1.1.1).

Листинг 3.1.1.1 — ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ доступа ΠΊ ΡΠ²ΠΎΠΉΡΡ‚Π²Π°ΠΌ класса

// мСтодыдоступаксвойствамкласса

publicstringgetEngineType () {returnEngineType; }

publicfloatgetEngineVolume () {returnEngineVolume; }

publicintgetGuaranteeTime () {returnGuaranteeTime; }

publicstringgetHireCost () {returnHireCost; }

publicstringgetIsHire () {returnIsHire; }

publicstringgetModel () {return Model; }

publicstringgetTransmission () {return Transmission; }

publicintgetYear () { return Year; }

publicstringgetOwner () { return Owner; }

publicstringgetSaleData () { returnSaleData; }

publicstringgetColour () { returnColour; }

publicstringgetDrive () { return Drive; }

// ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ доступа ΠΈΠ· Π°Π±ΡΡ‚Ρ€Π°ΠΊΡ‚Π½ΠΎΠ³ΠΎ класса Product

public override string getComeData () { return ComeData; }

public override string getCost () { return Cost; }

public override string getIsIt () { return IsIt; }

public override string getName () { return Name; }

// конструктор класса AutoΠ’ кСчСствС Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ принят абстрактный класс Product

public Auto (string _comedata, string _cost, string _isit, string _name, string _enginetype, float _enginevolume, int _guaranteeperiod,

string _colour, string _hirecost, string _ishire, string _model, string _transmission, int _year, string _owner, string _saledata, string _drive): base (_comedata, _cost, _isit, _name)

{

EngineType = _enginetype;

EngineVolume = _enginevolume;

GuaranteeTime = _guaranteeperiod;

HireCost = _hirecost;

IsHire = _ishire;

Model = _model;

Transmission = _transmission;

Year = _year;

Owner = _owner;

SaleData = _saledata;

Colour = _colour;

Drive = _drive;

}

/*ΠΌΠ΅Ρ‚ΠΎΠ΄ дСсСриализации Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°. ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρƒ Ρ‚ΠΈΠΏΠ° List. Π’ ΡΠ»ΡƒΡ‡Π°Π΅ Π½Π΅ ΡƒΠ΄Π°Ρ‡ΠΈ чтСния выводится ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ сообщСниС*/

publicvoidDeserialization (string file)

{

FileStreamautobasa = newFileStream (file, FileMode. OpenOrCreate);

BinaryFormatter formatter = newBinaryFormatter ();

try

{

ListAuto = (List) formatter. Deserialize (autobasa);

}

catch (SerializationException)

{

System. Windows. Forms. MessageBox. Show («ΠΠ΅ΡƒΠ΄Π°Π»ΠΎΡΡŒΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡ„Π°ΠΉΠ». «);

}

autobasa. Close ();

}

// мСтодсСриализации Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ записи Π½Π° Π΄ΠΈΡΠΊ

publicvoidSerialization ()

{

FileStreamautobasa = newFileStream (file, FileMode. Create);

BinaryFormatter formatter = newBinaryFormatter ();

formatter. Serialize (autobasa, Auto. ListAuto);

autobasa. Close ();

}

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ классы: Saller, Moto, Klient, Disk, BusΠΈAuto.

ОписаниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° ΠΎΠΊΠ½Π° смСны ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ

ПослС ΡƒΠ΄Π°Ρ‡Π½ΠΎΠ³ΠΎ Π²Ρ…ΠΎΠ΄Π° Π² ΡΠΈΡΡ‚Π΅ΠΌΡƒ ΠΏΠΎΠ΄ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записью Администратора ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π΄Π΅ΠΉΡΡ‚Π²ΠΈΠΉ:

— Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Администратора;

— Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°;

— ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Ρƒ (Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ) Π±Π°Π·Ρ‹.

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡŽ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ (Администратора ΠΈΠ»ΠΈ ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°) ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. ИзмСнСниС пароля происходит ΠΏΠΎ ΡΡ€Π΅Π΄ΡΡ‚Π²Π°ΠΌ Π²Ρ‹Π·ΠΎΠ²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° измСнСния пароля ΠΈΠ· ΠΊΠ»Π°ΡΡΠ° PasswordΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи. ΠŸΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ пароля осущСствляСтся ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π²Π²ΠΎΠ΄Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ пароля (ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ PasswordIsValid) ΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π²Π²ΠΎΠ΄Π° Π½ΠΎΠ²ΠΎΠ³ΠΎ пароля. ИзмСнСниС пароля прСдставлСно Π² Π»ΠΈΡΡ‚ΠΈΠ½Π³Π΅ 3.1.1.2.

Листинг 3.1.1.2 — ИзмСнСниС пароля

if (Password. PasswordIsValid (((NewAdminPasswordOld. Text). GetHashCode ()). ToString (), Password. getHashAdminPassword ()))

{

if (NewAdminPasswordNew1. Text == NewAdminPasswordNew2. Text)

{

Password. NewPassword (NewAdminPasswordNew1. Text, 0);

System. Windows. Forms. MessageBox. Show («ΠŸΠ°Ρ€ΠΎΠ»ΡŒΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΈΠ·ΠΌΠ΅Π½Π΅Π½»);

this. Close ();

}

else

{

System. Windows. Forms. MessageBox. Show («ΠŸΠ°Ρ€ΠΎΠ»ΠΈΠ½Π΅ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚»);

}

}

else

{

System. Windows. Forms. MessageBox. Show («ΠΠ΅Π²Π΅Ρ€Π½ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΏΠ°Ρ€ΠΎΠ»ΡŒ»);

}

ОписаниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π±Π°Π·Ρ‹ ΠΈ ΠΎΠΊΠΎΠ½, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ…ΡΡ с Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°

ΠŸΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π±Π°Π·Ρ‹ происходит Π΅Π³ΠΎ инициализация, Ρ€Π°Π·Π³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π² доступа ΠΊ Π²ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌ (ΠŸΡ€ΠΎΠ΄Π°Π²Π΅Ρ† Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€Π°Π²Π° ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Π±Π°Π·Ρƒ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†ΠΎΠ²). Π’Ρ‹Π²ΠΎΠ΄ списка Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΈ Π΄Π΅ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Π±Π°Π·Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² (см. Π»ΠΈΡΡ‚ΠΈΠ½Π³ 3.1.3.3).

Листинг 3.1.3.3 — ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ дСйствия Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π±Π°Π·Ρ‹

/*Ссли HelloWindow. flagutorization = 0, Ρ‚ΠΎ ΡΡ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π» ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ Π²Ρ…ΠΎΠ΄ ΠΏΠΎΠ΄ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записью ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΡ€Ρ‹Ρ‚ΡŒ Π±Π°Π·Ρƒ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†ΠΎΠ², вызывая ΠΌΠ΅Ρ‚ΠΎΠ΄AutosalonSaller. Dispose () */

publicAutosalonWindow ()

{

InitializeComponent ();

if (HelloWindow. flagutorization == 0)

{

AutosalonSaller. Dispose ();

}

if (HelloWindow. flagutorization == 1)

{

HelloWindow. flagutorization = 0;

}

ListAutoPrint ();

Klient. KlientDesirialization ();

}

Π’ ΠΊΠ»Π°ΡΡΠ΅ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π±Π°Π·Ρ‹ описаны ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· ListΠ² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π±Π°Π·Ρ‹, для Π²Ρ‹Π±ΠΎΡ€Π° просмотра Π½ΡƒΠΆΠ½ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Π±Π°Π·Ρ‹, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ дСйствий ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° Ρ‚Ρƒ ΠΈΠ»ΠΈ ΠΈΠ½ΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π² Π³Π»Π°Π²Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅.

Π Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· ListΠ² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π±Π°Π·Ρ‹ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ListAutoPrint () — ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π²ΠΎΠ΄Π° Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ.

Для Π½Π°Ρ‡Π°Π»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π΅ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π±Π°Π·Ρ‹ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ (BasaAuto. dat). Π”Π°Π»Π΅Π΅ Π² Ρ†ΠΈΠΊΠ»Π΅, ΠΏΠΎ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ (ΠΎΡ‚ 0-Π³ΠΎ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ) осущСствляСтся Π²Ρ‹Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π±Π°Π·Ρ‹ (DataGridView) с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° AutosalonAutoTable. Rows. Add (…), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ вывСсти Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… столбцах Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (ΠΏΠΎ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ слСва Π½Π° ΠΏΡ€Π°Π²ΠΎ). Π’Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ прСдставлСно Π² Π»ΠΈΡΡ‚ΠΈΠ½Π³Π΅ 3.1.3.4.

Листинг 3.1.3.4 — Π’Ρ‹Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ± Π°Π²Ρ‚омобилях ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π±Π°Π·Ρ‹ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ

publicvoidListAutoPrint ()

{

Auto a = new Auto ();

a. Deserialization («BasaAuto. dat»);

inttmp = Auto. ListAuto. Count;

for (inti = 0; i

{

AutosalonAutoTable. Rows. Add (Auto. ListAuto [i]. getName (), Auto. ListAuto [i]. getModel (),

Auto. ListAuto [i]. getYear (), Auto. ListAuto [i]. getEngineType (), Auto. ListAuto [i]. getEngineVolume (), Auto. ListAuto [i]. getDrive (), Auto. ListAuto [i]. getTransmission (),

Auto. ListAuto [i]. getColour (), Auto. ListAuto [i]. getGuaranteeTime (),

Auto. ListAuto [i]. getComeData (), Auto. ListAuto [i]. getSaleData (),

Auto. ListAuto [i]. getIsHire (),

Auto. ListAuto [i]. getIsIt (),

Auto. ListAuto [i]. getHireCost (),

Auto. ListAuto [i]. getCost (),

Auto. ListAuto [i]. getOwner ());

}

}

Π’Π°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ происходит Π²Ρ‹Π²ΠΎΠ΄ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ…, ΠΌΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ»Π°Ρ…, ΡˆΠΈΠ½Π°Ρ…, дисках ΠΈ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°Ρ….

ΠœΠ΅Ρ‚ΠΎΠ΄Π΄ΠΎΡΡ‚ΡƒΠΏΠ°ΠΊΠ²ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠ±Π°Π·Ρ‹AutosalonBase_Selecting (objectsender, TabControlCancelEventArgse) ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°ΡŽΡ‰ΠΈΠΉ событиС ΠΈ ΡΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ измСнСния Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ конструкции switch … caseΠΈ массива Ρ„Π»Π°Π³ΠΎΠ² int [] flag = {0,0,0,0,0}ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ нулями, Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ нСсколько Ρ€Π°Π·, осущСствляСтся Π²Ρ‹Π±ΠΎΡ€ Π½ΡƒΠΆΠ½ΠΎΠΉΠ²ΠΊΠ»Π°Π΄ΠΊΠΈ. Бвойство AutosalonBase. SelectedIndexΡ…Ρ€Π°Π½ΠΈΡ‚ Π½ΠΎΠΌΠ΅Ρ€Π° Π²ΠΊΠ»Π°Π΄ΠΎΠΊ, начиная с Π½ΡƒΠ»Ρ. Π’Π°ΠΊ, Ссли выбираСтся Π²ΠΊΠ»Π°Π΄ΠΊΠ°, опрСдСляСтся Π΅Π΅ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ Π½ΡƒΠΆΠ½ΠΎΠΉ ΠΌΠ΅Ρ‚ΠΊΠ΅ case. ΠžΡ‚ΡΡ‡Π΅Ρ‚ вСдСтся с Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π²ΠΊΠ»Π°Π΄ΠΊΠ° 0 (Π±Π°Π·Π° Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ) автоматичСски отобраТаСтся ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ ΠΎΠΊΠ½Π° Π±Π°Π·Ρ‹. Π’ Π½ΡƒΠΆΠ½ΠΎΠΉ ΠΌΠ΅Ρ‚ΠΊΠ΅ caseвызваСтся Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π²ΠΎΠ΄Π° Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ:

— ListMotoPrint () — для ΠΌΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ»ΠΎΠ²;

— ListBusPrint () — для шин;

— ListDiskPrint () — для дисков;

— ListKlientPrint () — для ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²;

— ListSallerPrint () — для ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†ΠΎΠ².

Π’Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ прСдставлСн Π² Π»ΠΈΡΡ‚ΠΈΠ½Π³Π΅ 3.1.3.5.

Листинг 3.1.3.5 — ΠœΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹

AutosalonBase_Selecting (object sender, TabControlCancelEventArgs e)

{ switch (AutosalonBase. SelectedIndex) {

case 1:

{

if (flag [AutosalonBase. SelectedIndex — 1] == 0)

{

ListMotoPrint ();

flag [AutosalonBase. SelectedIndex — 1] = 1;

}

break;

}

case 2:

{

if (flag [AutosalonBase. SelectedIndex — 1] == 0)

{

ListBusPrint ();

flag [AutosalonBase. SelectedIndex — 1] = 1;

}

break;

}

case 3:

{

if (flag [AutosalonBase. SelectedIndex — 1] == 0)

{

ListDiskPrint ();

flag [AutosalonBase. SelectedIndex — 1] = 1;

}

break;

}

case 4:

{

if (flag [AutosalonBase. SelectedIndex — 1] == 0)

{

ListKlientPrint ();

flag [AutosalonBase. SelectedIndex — 1] = 1;

}

break;

}

case 5:

{

if (flag [AutosalonBase. SelectedIndex — 1] == 0)

{

ListSallerPrint ();

flag [AutosalonBase. SelectedIndex — 1] = 1;

}

break; } }}

Π’ ΠΊΠ»Π°ΡΡΠ΅ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π±Π°Π·Ρ‹ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ Ρ€Π΅Π°ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΎΠΊ добавлСния сущности, измСнСния сущности, поиска ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π±Π°Π·Ρ‹ (ΠΎΡ‚ΠΌΠ΅Π½Π΅Π½Ρ‹ выдСлСния строк).

На ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Π±Π°Π·Ρ‹ (ΠΊΡ€ΠΎΠΌΠ΅ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ просмотра списка ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²) присутствуСт ΠΊΠ½ΠΎΠΏΠΊΠ° добавлСния сущности (автомобиля, ΠΌΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ»Π°, диска, ΡˆΠΈΠ½Ρ‹, ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°). Рассмотрим Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠ½ΠΎΠΏΠΎΠΊ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ добавлСния автомобиля ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ диска. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ автомобиля ΠΈ ΠΌΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ»Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ. ДобавлСния дисков, шин, ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†ΠΎΠ² Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ.

AutosalonButtonAddAuto_Click (objectsender, EventArgse) — ΠΌΠ΅Ρ‚ΠΎΠ΄ для описания Ρ€Π΅Π°ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ добавлСния автомобиля. Π›ΠΎΠ³ΠΈΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ (ΠΊΠΎΠ΄ прСдставлСн Π½Π° Π»ΠΈΡΡ‚ΠΈΠ½Π³Π΅ 3.1.3.6):

Π‘Π½Π°Ρ‡Π°Π»Π° вызываСтся ΠΎΠΊΠ½ΠΎ добавлСния автомобиля. Π’ ΠΊΠ»Π°ΡΡΠ΅ ΠΎΠΊΠ½Π° добавлСния автомобиля описан ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π΅Π°Π³ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΎΠΊ этого ΠΎΠΊΠ½Π° (Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ, Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ, ΠŸΡ€ΠΈΠΊΡ€Π΅ΠΏΠΈΡ‚ΡŒ покупатСля/Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°). Если Π² ΠΎΠΊΠ½Π΅ добавлСния автомобиля Π±Ρ‹Π»Π° Π½Π°ΠΆΠ°Ρ‚Π° ΠΊΠ½ΠΎΠΏΠΊΠ° «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ», Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π° врСмСнная пСрСмСнная, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ хранится ввСдСнная информация (см. Π»ΠΈΡΡ‚ΠΈΠ½Π³ 3.1.3.7). Π­Ρ‚Π° пСрСмСнная Π²ΠΈΠ΄Π½Π° Π² ΠΊΠ»Π°ΡΡΠ΅ основного ΠΎΠΊΠ½Π° Π±Π°Π·Ρ‹ ΠΈ Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ пСрСносится Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ± Π°Π²Ρ‚омобилях. Π”Π°Π»Π΅Π΅ осущСствляСтся Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ автомобиля Π² ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρƒ ListAuto (Ρ‚ΠΈΠΏΠ° List) ΠΈ ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ структуры. Π’ ΡΠ»ΡƒΡ‡Π°Π΅ наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ «ΠŸΡ€ΠΈΠΊΡ€Π΅ΠΏΠΈΡ‚ΡŒ покупатСля/Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°» вызовСтся ΠΎΠΊΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ‚Π°ΠΊ ΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ записана ΠΏΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ» Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ, Π²ΠΈΠ΄ΠΈΠΌΡƒΡŽ Π² ΠΊΠ»Π°ΡΡΠ΅ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° ΠΈ Π²Ρ‹Π²Π΅Π΄Π΅Π½Π° Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ (Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²), Π° Ρ‚Π°ΠΊ ΠΆΠ΅ сСриализована. Если ΠΆΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΡƒΠΆΠ΅ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚, Ρ‚ΠΎ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΎΠ½ΠΈ Π΅Ρ‰Π΅ Ρ€Π°Π· Π½Π΅ ΠΏΠΎΠΏΠ°Π΄ΡƒΡ‚, Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΏΠΎΠ»Π΅ Π±Π°Π·Ρ‹ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ (Π²Π»Π°Π΄Π΅Π»Π΅Ρ†).

Листинг 3.1.3.6 — ΠœΠ΅Ρ‚ΠΎΠ΄ добавлСния автомобиля Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ

publicvoidAutosalonButtonAddAuto_Click (object sender, EventArgs e)

{

AutoWindowAddautowindowadd = newAutoWindowAdd ();

autowindowadd. ShowDialog ();

if (AutoWindowAdd. tmpauto! = null)

{

Auto. ListAuto. Add (AutoWindowAdd. tmpauto);

AutosalonAutoTable. Rows. Add (AutoWindowAdd. tmpauto. getName (),

AutoWindowAdd. tmpauto. getModel (),

AutoWindowAdd. tmpauto. getYear (),

AutoWindowAdd. tmpauto. getEngineType (),

AutoWindowAdd. tmpauto. getEngineVolume (),

AutoWindowAdd. tmpauto. getDrive (),

AutoWindowAdd. tmpauto. getTransmission (),

AutoWindowAdd. tmpauto. getColour (),

AutoWindowAdd. tmpauto. getGuaranteeTime (),

AutoWindowAdd. tmpauto. getComeData (),

AutoWindowAdd. tmpauto. getSaleData (),

AutoWindowAdd. tmpauto. getIsHire (),

AutoWindowAdd. tmpauto. getIsIt (),

AutoWindowAdd. tmpauto. getHireCost (),

AutoWindowAdd. tmpauto. getCost (),

AutoWindowAdd. owner);

if ((AutoWindowAdd. flagaddklient == 1) && (KlientWindowAdd. tmpklient! = null))

{

AutoWindowAdd. flagaddklient = 0;

AutosalonKlientTable. Rows. Add (KlientWindowAdd. tmpklient. getLastName (), KlientWindowAdd. tmpklient. getFirstName (),

KlientWindowAdd. tmpklient. getPatronymic (), KlientWindowAdd. tmpklient. getSex (),

KlientWindowAdd. tmpklient. getPaspotrNum (), KlientWindowAdd. tmpklient. getPasportGive (),

KlientWindowAdd. tmpklient. getPasportDate (), KlientWindowAdd. tmpklient. getPasportID (),

KlientWindowAdd. tmpklient. getAdress ());

KlientWindowAdd. tmpklient = null;

}

AutoWindowAdd. tmpauto. Serialization («BasaAuto. dat»);

AutoWindowAdd. tmpauto = null;

}

}

Листинг 3.1.3.7 — ΠœΠ΅Ρ‚ΠΎΠ΄ Ρ€Π΅Π°ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ» Π² ΠΎΠΊΠ½Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ автомобиля

privatevoidAutoButtonAdd_Click (object sender, EventArgs e)

{

stringtmpMarka;

if (AutoMarkaAlter. Text! = «»)

{

tmpMarka = AutoMarkaAlter. Text;

}

else

{

tmpMarka = AutoMarka. Text;

}

stringtmpProkat;

if (AutoProkat. Checked)

{

tmpProkat = «Π”Π°» ;

}

else

{

tmpProkat = «ΠΠ΅Ρ‚» ;

}

stringtmpIsIt;

if (AutoSale. Checked)

{

tmpIsIt = «Π”Π°» ;

}

else

{

tmpIsIt = «ΠΠ΅Ρ‚» ;

}

tmpauto = newAuto (AutoComeData. Text, AutoPriceSale. Text,

tmpIsIt, tmpMarka, AutoEngineType. Text,

(float) AutoVolumeEngeen. Value,

(int) AutoGaranteePeriod. Value,

AutoColour. Text, AutoPriceProkat. Text,

tmpProkat,

AutoModel. Text, AutoTransmission. Text,

(int) AutoYear. Value, owner,

AutoWindowAddDataSale. Text, AutoDrive. Text);

this. Close ();

}

Π—Π΄Π΅ΡΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ owner — Π²Π»Π°Π΄Π΅Π»Π΅Ρ† опрСдСляСтся, Ссли Π±Ρ‹Π»ΠΎ Π²Ρ‹Π·Π²Π°Π½ΠΎ ΠΎΠΊΠ½ΠΎ добавлСния ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ AutoKlientButtonAdd_Click (objectsender, EventArgse), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ описываСт Ρ€Π΅Π°ΠΊΡ†ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ добавлСния ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π’ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ownerΠ·Π°ΠΏΠΈΡˆΡƒΡ‚ΡΡ имя, фамилия ΠΈ ΠΎΡ‚чСство Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° (Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°) автомобиля.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ диска ΠΈΠΌΠ΅Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ структуру. ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ добавлСния диска появляСтся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ. По Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ» Π² ΠΎΠΊΠ½Π΅ добавлСния диска происходит Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌΠΈ значСниями. Π­Ρ‚Π° врСмСнная пСрСмСнная Π²ΠΈΠ΄Π½Π° Π² ΠΊΠ»Π°ΡΡΠ΅ основного ΠΎΠΊΠ½Π° Π±Π°Π·Ρ‹ ΠΈ Π΅ΡΠ»ΠΈ ΠΎΠ½Π° Π±Ρ‹Π»Π° ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π° (Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π° значСниями), Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρƒ ListDiskΡ‚ΠΈΠΏΠ° List ΠΈ Π² Π³Π»Π°Π²Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅ Π±Π°Π·Ρ‹ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ добавляСтся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ строка с Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΎ Π΄ΠΈΡΠΊΠ΅. ПослС Ρ‡Π΅Π³ΠΎ происходит сСрилизация структуры ListDisk. Π’Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ листинги 3.1.3.8 ΠΈ 3.1.3.9.

Листинг 3.1.3.8 — ΠœΠ΅Ρ‚ΠΎΠ΄ Ρ€Π΅Π°ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ добавлСния диска

privatevoidAutosalonWindowDiskButtonAdd_Click (object sender, EventArgs e)

{

DiskWindowAdddiskwindowadd = newDiskWindowAdd ();

diskwindowadd. ShowDialog ();

if (DiskWindowAdd. tmpdisk! = null)

{

Disk. ListDisk. Add (DiskWindowAdd. tmpdisk);

AutosalonDiskTable. Rows. Add (DiskWindowAdd. tmpdisk. getName (),

DiskWindowAdd. tmpdisk. getET (),

DiskWindowAdd. tmpdisk. getPSD (),

DiskWindowAdd. tmpdisk. getSum (),

DiskWindowAdd. tmpdisk. getRimWidth (),

DiskWindowAdd. tmpdisk. getDiameterCentreOpening (),

DiskWindowAdd. tmpdisk. getDiam (),

DiskWindowAdd. tmpdisk. getType (),

DiskWindowAdd. tmpdisk. getComeData (),

DiskWindowAdd. tmpdisk. getCount (),

DiskWindowAdd. tmpdisk. getCost ());

DiskWindowAdd. tmpdisk. Serialization («BasaDisk. dat»);

DiskWindowAdd. tmpdisk = null;

}

}

Листинг 3.1.3.9 — ΠœΠ΅Ρ‚ΠΎΠ΄ класса ΠΎΠΊΠ½Π° добавлСния диска, Ρ€Π΅Π°Π³ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ»

publicvoidDiskButtonAdd_Click (object sender, EventArgs e)

{ stringtmpMarka;

if (DiskProducerAlter. Text! = «»)

{tmpMarka = DiskProducerAlter. Text; }

else

{

tmpMarka = DiskProducerEnter. Text;

}

stringtmpIsIt;

if (DiskSale. Checked)

{

tmpIsIt = «Π”Π°» ;

}

else

{

tmpIsIt = «ΠΠ΅Ρ‚» ;

}

tmpdisk = newDisk (DiskComeData. Text, DiskPriceSale. Text,

tmpIsIt, tmpMarka, (int) DiskDiam. Value,

DiskType. Text, (float) DiskRimWidth. Value,

(int) DiskSum. Value, (int) DiskPSD. Value,

(float) DiskDiameterCentreOpening. Value,

(float) DiskET. Value, (int) DiskCount. Value);

this. Close ();

}

AutosalonWindowButtonSearch_Click (object sender, EventArgs e) — Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ описываСт дСйствия ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ поиска ΠΏΠΎ Π±Π°Π·Π΅. ΠŸΠΎΠΏΡ€ΠΎΡΡ‚Ρƒ — осущСствляСт поиск ΠΏΠΎ Π»ΡŽΠ±Ρ‹ΠΌ совпадСниям ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Π±Π°Π·Ρ‹. Если совпадСниС Π½Π°ΠΉΠ΄Π΅Π½ΠΎ, выдСляСтся строчка, с Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΌ совпадСниСм. Π”Π°Π½Π½ΠΎΠ΅ прСдставлСно Π² Π»ΠΈΡΡ‚ΠΈΠ½Π³Π΅ 3.1.3.10 Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ поискС Π² Π±Π°Π·Π΅ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ. Поиск Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π±Π°Π·Ρ‹ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½.

Листинг 3.1.3.10 — Поиск ΠΏΠΎ Π±Π°Π·Π΅

if (search! = «»)

{

for (inti = 0; i

{

for (int j = 0; j

{

if (AutosalonAutoTable. Rows [i]. Cells [j]. Value! = null)

{

if (AutosalonAutoTable. Rows [i]. Cells [j]. Value. ToString () == search)

{

AutosalonAutoTable. Rows [i]. Selected = true;

isfind = 1;

}

}

}

}

}

По ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠ΅ поиска, Ссли совпадСниС Π±Ρ‹Π»ΠΎ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ Ρ„Π»Π°Π³Ρƒ isfind приравниваСтся 1 ΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ поиска Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ сообщСниС ΠΎΠ± ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠ΅ поиска. Если совпадСний Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ — isfind равняСтся 0 ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ся сообщСниС ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ совпадСний Π½Π΅ Π±Ρ‹Π»ΠΎ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ.

AutosalonWindowButtonRefresh_Click (objectsender, EventArgse) — ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰ΠΈΠΉ Π·Π° Ρ€Π΅Π°ΠΊΡ†ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ обновлСния Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (ΠΎΡ‚ΠΌΠ΅Π½Π° выдСлСния всСх строк). Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ прСдставлСн Π² Π»ΠΈΡΡ‚ΠΈΠ½Π³Π΅ 3.1.3.10 Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π±Π°Π·Ρ‹ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ. ΠŸΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ построчный ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Ссли Π½Π°ΠΉΠ΄Π΅Π½Π° выдСлСнная строка — Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ снимаСтся.

Листинг 3.1.3.10 — ОбновлСниС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ)

for (inti = 0; i

{

if (AutosalonAutoTable. Rows [i]. Selected)

{

AutosalonAutoTable. Rows [i]. Selected = false;

}

}

AutosalonWindowButtonChange_Click (object sender, EventArgs e) — ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ события наТатия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ измСнСния элСмСнта. Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ для всСх Ρ‚Π°Π±Π»ΠΈΡ† ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ (ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ², Ρ‚.ΠΊ. Π΅Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΎ).

Π›ΠΎΠ³ΠΈΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ: послС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ измСнСния происходит ΠΏΡ€ΠΎΡ…ΠΎΠ΄ ΠΏΠΎ Π²ΡΠ΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π² ΠΏΠΎΠΈΡΠΊΠ΅ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ строки. Если выдСлСнная строка Π½Π΅ Π±Ρ‹Π»Π° Π½Π°ΠΉΠ΄Π΅Π½Π°, Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚. Если ΠΆΠ΅ Π±Ρ‹Π»Π° Π½Π°ΠΉΠ΄Π΅Π½Π° выдСлСнная строка, Ρ‚ΠΎ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ся ΠΎΠΊΠ½ΠΎ рСдактирования (ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ совпадаСт с ΠΎΠΊΠ½ΠΎΠΌ добавлСния) Ρ‚ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ элСмСнта. Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ‚ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, которая соотвСтствуСт Π΄Π°Π½Π½ΠΎΠΉ строкС. Окно рСдактирования вызовСтся с Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹ΠΌΠΈ полями (Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Ρ‚ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, которая хранится Π² Π΄Π°Π½Π½ΠΎΠΉ строкС). ПослС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ» Π² ΠΎΠΊΠ½Π΅ рСдактирования, (Ссли Π΄Π°Π½Π½Ρ‹Π΅ Π±Ρ‹Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹) ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ записи Π² ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π΅ ListObject (Object-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ) сСриализация ListObject ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ записи Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅. ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π° любая информация, связанная с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ.

3.1.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΠ°

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ стандартных Ρ„ΠΎΡ€ΠΌ, прСдоставляСмых срСдой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ MicrosoftVisualStudio 2010.

Π‘Ρ‹Π»ΠΈ задСйствованы Ρ‚Π°ΠΊΠΈΠ΅ элСмСнты ΠΊΠ°ΠΊ:

— ComboBox — для прСдоставлСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²Ρ‹Π±ΠΎΡ€Π° Π²ΠΎΠ·ΠΌΠΎΠ΄Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΄Π°Π½Π½Ρ‹Ρ…;

— Label — для тСкстовой ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ мСста, поля ΠΈ Ρ‚. Π΄.;

— MascedTextBox — для маскировки Π²Π²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ пароля;

— TextBox — для Π²Π²ΠΎΠ΄Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ тСкста;

— Button — ΠΊΠ½ΠΎΠΏΠΊΠ°;

— PictureBox — для Π²Ρ‹Π²ΠΎΠ΄Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ;

— DataGridView — для Π²Ρ‹Π²ΠΎΠ΄Π° самой Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…;

— TabControl — для Π²ΠΊΠ»Π°Π΄ΠΊΠΈ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π±Π°Π·Ρ‹;

— DateTimePacker — Π²Π²ΠΎΠ΄ Π΄Π°Ρ‚Ρ‹;

— CheckBox — Π²Ρ‹Π±ΠΎΡ€, Π² Π²ΠΈΠ΄Π΅ «Π³Π°Π»ΠΎΡ‡ΠΊΠΈ» ;

— NumericUpDown — Π²Π²ΠΎΠ΄ числовых Π΄Π°Π½Π½Ρ‹Ρ….

ПослС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ открываСтся ΠΎΠΊΠ½ΠΎ «AUTOSALON — HelloWindow» (см. Ρ€ΠΈΡ. 3.2.1) Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ прСдлагаСтся Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ имя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (Администратор ΠΈΠ»ΠΈ ΠŸΡ€ΠΎΠ΄Π°Π²Π΅Ρ†) ΠΈ Π²Π²Π΅ΡΡ‚ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. Π’Ρ‹Π±ΠΎΡ€ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ элСмСнта ConboBox. Π’Π²ΠΎΠ΄ пароля Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΏΠΎΠ»Π΅ — MascedTextBox. Для ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ Π²Ρ…ΠΎΠ΄Π° Π² ΡΠΈΡΡ‚Π΅ΠΌΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π’Ρ…ΠΎΠ΄» (элСмСнт Button). Если ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π²Π²Π΅Π΄Π΅Π½ Π½Π΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ, Ρ‚ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚. Π£ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Сля имССтся Π½Π΅ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ количСство ΠΏΠΎΠΏΡ‹Ρ‚ΠΎΠΊ ввСсти Π²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΈ Π²ΠΎΠΉΡ‚ΠΈ Π² ΡΠΈΡΡ‚Π΅ΠΌΡƒ.

Рис.3.1.1 - Окно " AUTOSALON - Hello Window"

ΠžΡ‚ΡΡŽΠ΄Π° ΠΈ Π΄Π°Π»Π΅Π΅ всС изобраТСния, вставлСнныС Π² ΠΎΠΊΠ½ΠΎ, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ PictureBox.

ВсС тСкстовыС ΠΌΠ°Ρ‚ΠΊΠΈ ΠΏΠΎΠ»Π΅ΠΉ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Label.

Если Π±Ρ‹Π»Π° Π²Ρ‹Π±Ρ€Π°Π½Π° учСтная запись Администратора ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ принят, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ ΠΎΠΊΠ½ΠΎ Π²Ρ‹Π±ΠΎΡ€Π° дСйствий для администратора, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΎ Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 3.1.2 Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ дСйствиС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ComboBox:

— Π˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ пароля ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Администратора;

— Π˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ пароля ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°;

— ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ (Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅) Π±Π°Π·Ρ‹.

Рис.3.1.2 - Окно Π²Ρ‹Π±ΠΎΡ€Π° дСйствий Администратора

Для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° Π½ΡƒΠΆΠ½ΠΎΠ΅ дСйствиС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ» (элСмСнт Button).

Если ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ «Π˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ пароля ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Администратора» ΠΈΠ»ΠΈ «Π˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ пароля ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°», Ρ‚ΠΎ ΠΎΡ‚кроСтся ΠΎΠΊΠ½ΠΎ измСнСния пароля, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ прСдставлСно Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 3.1.3.

Рис.3.1.3 - Окно измСнСния пароля

Π’ ΠΎΠΊΠ½Π΅ измСнСния пароля задСйствованы Ρ‚Π°ΠΊΠΈΠ΅ элСмСнты ΠΊΠ°ΠΊ TextEdit ΠΈ Button.

Если ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚ «ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ (Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅) Π±Π°Π·Ρ‹», Ρ‚ΠΎ ΠΏΠΎΡΠ²ΠΈΡ‚ся основноС ΠΎΠΊΠ½ΠΎ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… (см. Ρ€ΠΈΡ. 3.1.4).

Рис.3.1.4 - Π“Π»Π°Π²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π±Π°Π·Ρ‹

Π’Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Ρ‹ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ°Ρ… TabControl. Π‘Π°ΠΌΠ° Ρ‚Π°Π±Π»ΠΈΡ†Π° отобраТаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ DataGridView. Π’ Π³Π»Π°Π²Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅ Π±Π°Π·Ρ‹ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ элСмСнты Buttonдля добавлСния, рСдактирования ΠΈ ΠΏΠΎΠΈΡΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ добавлСния, (см. Ρ€ΠΈΡ. 3.1.5−3.1.10) Π½Π° ΡΠΊΡ€Π°Π½Π΅ появится ΠΎΠΊΠ½ΠΎ для добавлСния элСмСнта, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ TextBox, Button, ComboBox, DateTimePacker, CheckBox, NumericUpDown.

Рис.3.1.5 - Окно добавлСния автомобиля

Рис.3.1.6 - Окно добавлСния ΠΌΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ»Π°

Рис.3.1.7 - Окно добавлСния шин

Рис.3.1.8 - Окно добавлСния дисков

Рис.3.1.9 - Окно добавлСния ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

Рис.3.1.10 - Окно добавлСния ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°

3.2 Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния

3.2.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° описания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Богласно Π“ΠžΠ‘Π’ 19.402 Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° информация ΠΎΠ± ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ ΠΈ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΌ для функционирования ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π”ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ классы Ρ€Π΅ΡˆΠ°Π΅ΠΌΡ‹Ρ… Π·Π°Π΄Π°Ρ‡ ΠΈ/ΠΈΠ»ΠΈ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ограничСниях Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. Π”ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ описаниС логичСской структуры ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

НСобходимо ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΡ‹ Π­Π’Πœ ΠΈ ΡƒΡΡ‚ройств, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, способы Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… носитСлСй Π΄Π°Π½Π½Ρ‹Ρ….

Π”ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€, организация ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

ОписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ прСдставлСно Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

3.2.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° руководства ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

Богласно Π“ΠžΠ‘Π’ 19.505 руководство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ свСдСния ΠΎ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΡƒΡŽ для понимания Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π΅Π΅ ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚Π°Ρ†ΠΈΠΈ. Π”ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ условия, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ/ΠΈΠ»ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ состав Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… срСдств ΠΈ Ρ‚. ΠΏ.).

Π”ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ описана ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π°Ρ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ, запуск, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ описаниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ осущСствляСт Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΡΡ‚ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

Руководство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ прСдставлСно Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

3.2.3 ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° испытаний

Одним ΠΈΠ· Ρ‚Сстов Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π±Ρ‹Π»Π° Π·Π°ΠΌΠ΅Π½Π° стандартного Ρ„Π°ΠΉΠ»Π° Π±Π°Π·Ρ‹ Π½Π° Ρ„Π°ΠΉΠ» Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ содСрТания (Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 690ΠΌΠ± ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 2 ΠΊΠ±), Π½ΠΎ Ρ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ данная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°. ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ Ρ„Π°ΠΉΠ» сбоя Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ, Π° Π±Ρ‹Π»ΠΎ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ сообщСниС ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Π±Π°Π·Ρ‹.

ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ удалСния Ρ„Π°ΠΉΠ»Π° Π±Π°Π·Ρ‹ Π²ΠΎ Π²Ρ€Π΅ΠΌΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„Π°ΠΉΠ»Π° Π±Ρ‹Π» ΡƒΠ΄Π°Π»Π΅Π½, ΠΎΠ΄Π½Π°ΠΊΠΎ Ρ€Π°Π±ΠΎΡ‚Π° прилоТСния Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠΈΠ»Π°ΡΡŒ ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅ ΠΏΠΎΡ‚Π΅Ρ€ΡΠ»ΠΈΡΡŒ ΠΈΠ·-Π·Π° использования структуры List.

ΠŸΡ€ΠΈ размСрности Π±Π°Π·Ρ‹ ΡΠ²Ρ‹ΡˆΠ΅ 10 000 элСмСнтов Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ (Ρ‡Ρ‚ΠΎ соотвСтствуСт ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ 51 ΠΊΠ±) Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΠ΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΏΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π“Ρ€Π°Ρ„ΠΈΠΊΠΈ быстродСйствия, Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π¦ΠŸ ΠΈ Ρ…Ρ€ΠΎΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ использования физичСской памяти ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ размСрности Ρ„Π°Π»ΠΎΠ² Π±Π°Π·Ρ‹ Π² 10 000 элСмСнтов прСдставлСн Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 3.1.11.

Рис.3.1.11 - Π“Ρ€Π°Ρ„ΠΈΠΊΠΈ быстродСйствия, Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ЦП ΠΈ Ρ…Ρ€ΠΎΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ использования физичСской памяти

3.4 ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния

По ΠΌΠ΅Ρ€Π΅ написания Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ тСсты Π½Π°Π΄ написанным ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΠΎΠΌ. ВсС Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Π΅ ошибки Π±Ρ‹Π»ΠΈ исправлСны, ΠΎΠ΄Π½Π°ΠΊΠΎ это Π½Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ отсутствиС ошибок Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.

Π”Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ… ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… ΠΈ ΠΈΡ… ΠΈΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ прСдставлСны Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 3.4.1.

Π’Π°Π±Π»ΠΈΡ†Π° 3.4.1 — Ошибки ΠΈ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΎΠ± ΠΈΡ… ΠΈΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ.

Ошибка

Π”Π°Ρ‚Π°

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΊΠ° ΠΎΠ± ΠΈΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ

Ошибка ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ открытия ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ„Π°ΠΉΠ»Π° с Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ пароля.

30.11.2012 Π³.

Ошибка исправлСна.

Ошибка ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°. Если Ρ„ΠΎΡ‚ΠΎ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, осущСствляСтся Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ поля Ρ„ΠΎΡ‚ΠΎ послСднСго Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°.

30.11.2012 Π³.

Ошибка исправлСна.

Ошибка ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ добавлСния Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Ρ„ΠΎΡ‚ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π° вмСсто Ρ„Π°ΠΉΠ»Π° изобраТСния любого Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°

7.12.2012 Π³.

Ошибка исправлСна.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ Π΄Π°Π½Π½Ρ‹ΠΌ курсовым ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Π±Ρ‹Π»Π° создана ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая позволяСт ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ автосалоны. Данная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Windows XP/Vista/7/2003/2008.

Π‘Ρ‹Π»ΠΈ Π·Π°ΠΊΡ€Π΅ΠΏΠ»Π΅Π½Ρ‹ практичСскиС Π½Π°Π²Ρ‹ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠΌ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ.

Π‘Ρ‹Π»ΠΈ ΠΈΠ·ΡƒΡ‡Π΅Π½Ρ‹ основныС возмоТности языка ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования C#, Π² Ρ‡Π°ΡΡ‚ности Ρ€Π°Π±ΠΎΡ‚Π° с ΠΎΠΊΠ½Π°ΠΌΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ стандартных шаблонов ΠΎΠΊΠΎΠ½Π½ΠΎΠ³ΠΎ интСрфСйса.

1. Π€ΠΎΡ€ΡƒΠΌ программистов ΠΈ ΡΠΈΡΠ°Π΄ΠΌΠΈΠ½ΠΎΠ² CyberForum.ru // Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹ΠΉ рСсурс: URL: http://www.cyberforum.ru/

2. Π―Π·Ρ‹ΠΊ UML. Руководство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ // Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹ΠΉ рСсурс: URL: http://sitemonitor.ru/doc/UML_HTM/index. htm

3. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ…, Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΈ Π°Π½Π°Π»ΠΈΡ‚ичСских систСм // Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹ΠΉ рСсурс: URL: http://www.info-system.ru

4. ΠšΡƒΡ…Ρ‚Π° Π‘. Π’. Бтандартизация ΠΈ ΡΠ΅Ρ€Ρ‚ификация ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Π£Ρ‡Π΅Π±Π½ΠΎ-мСтодичСский комплСкс для студСнтов ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ 1−40 01 01 «ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ»

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ А

ОписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ΠžΠ‘Π©Π˜Π• Π‘Π’Π•Π”Π•ΠΠ˜Π―

ΠžΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°: ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π΅ вСсти ΡƒΡ‡Π΅Ρ‚ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ, дисков, шин, ΠΌΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ, ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†ΠΎΠ² ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² автосалона.

НаимСнованиС: «Autosalon» .

Π‘Ρ‚ΠΎΡ€ΠΎΠ½Π½Π΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ для функционирования ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

— ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма Windows XP/Vista/7/2003/2008;

— Framework.net 4.

Π―Π·Ρ‹ΠΊ программирования Для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния использовался язык программирования C#.

Π”.1 Π€Π£ΠΠšΠ¦Π˜ΠžΠΠΠ›Π¬ΠΠžΠ• ΠΠΠ—ΠΠΠ§Π•ΠΠ˜Π•

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Autosalon ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для вСдСния учСтности Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ² автосалона (Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ, ΠΌΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ, шин, дисков), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†ΠΎΠ².

Π•Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² ΡΠ΅Π±Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…:

— Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ автомобиля;

— Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ дисков;

— Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ шин;

— Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ;

— Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°;

— Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°.

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹:

— ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± Π°Π²Ρ‚омобилях;

— ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ…;

— ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡˆΠΈΠ½Π°Ρ…;

— ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π΄ΠΈΡΠΊΠ°Ρ…;

— ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΌΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠ΅;

— ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°Ρ….

Поиск Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ Π»ΡŽΠ±Ρ‹ΠΌ совпадСниям Π±Π°Π·Ρ‹. Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎ Π»ΡŽΠ±ΠΎΠΌΡƒ столбцу Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹ Π² ΠΏΡ€ΡΠΌΠΎΠΌ ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС. Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ элСмСнтов Π±Π°Π·Ρ‹ (ΠΊΡ€ΠΎΠΌΠ΅ рСдактирования ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²):

— Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ ΡˆΠΈΠ½Π°Ρ…;

— Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ± Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅;

— Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ Π΄ΠΈΡΠΊΠ°Ρ…;

— Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ ΠΌΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠ΅;

— Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°Ρ….

АвтоматичСскоС сохранСниС Π² Ρ„Π°ΠΉΠ» ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π±Π°Π·Ρ‹ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°

Π”.2 ΠžΠŸΠ˜Π‘ΠΠΠ˜Π• Π›ΠžΠ“Π˜Π§Π•Π‘ΠšΠžΠ™ БВРУКВУРЫ

Алгоритм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

1. ΠŸΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ открываСтся ΠΎΠΊΠ½ΠΎ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись (Администратор ΠΈΠ»ΠΈ ΠŸΡ€ΠΎΠ΄Π°Π²Π΅Ρ†) ΠΈ Π²Π²Π΅ΡΡ‚ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ пароля провСряСтся ΠΏΠΎ Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ:

1) ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅Ρ‚ΡΡ Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ пароля ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ (истинного) пароля;

2) Если Ρ…Π΅Ρˆ-значСния ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ ΡˆΠ°Π³Ρƒ 2.

3) Если Ρ…Π΅Ρˆ-значСния Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚, ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ Π²Π²ΠΎΠ΄Π° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ пароля.

2. Если Π±Ρ‹Π»Π° Π²Ρ‹Π±Ρ€Π°Π½Π° учСтная запись Администратора ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π²Π²Π΅Π΄Π΅Π½ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρ‚ΠΎ Π½Π° ΡΠΊΡ€Π°Π½Π΅ появляСтся ΠΎΠΊΠ½ΠΎ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ дСйствиС, доступноС Администратору:

— Π˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ пароля ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Администратора;

— Π˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ пароля ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°;

— ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ (Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅) Π±Π°Π·Ρ‹.

3. Если Π²Ρ‹Π±Ρ€Π°Π½ΠΎ дСйствиС смСны пароля, Ρ‚ΠΎ Π½Π° ΠΏΠΎΡΠ²Π»ΡΠ΅Ρ‚ся ΠΎΠΊΠ½ΠΎ смСны пароля:

1) Π’Π²ΠΎΠ΄ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ пароля;

2) Π’Π²ΠΎΠ΄ Π½ΠΎΠ²ΠΎΠ³ΠΎ пароля;

3) ΠŸΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ пароля;

4) Если Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ совпадаСт с Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ 4); Ссли Π½Π΅Ρ‚ — Π²Ρ‹Π²ΠΎΠ΄ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ сообщСния ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ Π²Π²ΠΎΠ΄Π° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ пароля;

5) ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π΅ΠΉ Π²Π²ΠΎΠ΄Π° Π½ΠΎΠ²ΠΎΠ³ΠΎ пароля;

6) Если ΠΏΠ°Ρ€ΠΎΠ»ΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚, смСна пароля; Ссли Π½Π΅Ρ‚ — Π²Ρ‹Π²ΠΎΠ΄ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ сообщСния ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ Π²Π²ΠΎΠ΄Π° ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΡ… ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ.

4. Если Π²Ρ‹Π±Ρ€Π°Π½ΠΎ дСйствиС просмотра (рСдактирования) Π±Π°Π·Ρ‹ появляСтся Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π±Π°Π·Ρ‹.

1) ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π²ΠΊΠ»Π°Π΄ΠΎΠΊ Π±Π°Π·Ρ‹ осущСствляСтся дСсСриализация ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ„Π°ΠΉΠ»Π° Π±Π°Π·Ρ‹:

2) Если дСсСриализация ΠΏΡ€ΠΎΡˆΠ»Π° ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ (Ρ„Π°ΠΉΠ» сущСствуСт) — запись дСсСриализованных Π΄Π°Π½Π½Ρ‹Ρ… Π² ΡΡ‚Ρ€ΡƒΠΊΡƒΡ‚ΡƒΡ€Ρƒ Ρ‚ΠΈΠΏΠ° List ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ 3); Ссли Π½Π΅Ρ‚ — Π²Ρ‹Π²ΠΎΠ΄ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ сообщСния ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° Π±Π°Π·Ρ‹;

3) Π’Ρ‹Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ.

5. ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ дСйствия добавлСния элСмСнта Π² Π³Π»Π°Π²Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅ Π±Π°Π·Ρ‹ ΠΈΠ»ΠΈ Π΄ΠΎΡ‡Π΅Ρ€Π½Π΅ΠΌ ΠΎΠΊΠ½Π΅ появляСтся ΠΎΠΊΠ½ΠΎ для добавлСния ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ элСмСнта (автомобиля, ΠΌΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ»Π°, шин, дисков, ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°):

1) Π‘Ρ‡ΠΈΡ‚Ρ‹Π²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ»Π΅ΠΉ;

2) Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ экзСмпляра ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ°;

3) Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ значСниями ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ конструктора класса;

4) Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρƒ Ρ‚ΠΈΠΏΠ° List;

5) Π’Ρ‹Π²ΠΎΠ΄ (ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, Ссли Π²Ρ‹Π±Ρ€Π°Π½ΠΎ дСйствиС измСнСния — см. ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½ΠΈΠΆΠ΅) Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π±Π°Π·Ρ‹.

6. ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ дСйствия измСнСния Π΄Π°Π½Π½Ρ‹Ρ… открываСтся ΠΎΠΊΠ½ΠΎ измСнСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ся шаги дСйствия 5.

7. ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ дСйствия поиска (Ссли ΠΊΠ»ΡŽΡ‡ поиска Π²Π²Π΅Π΄Π΅Π½) происходит поиск ΠΏΠΎ Π²ΡΠ΅ΠΌ совпадСниям Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹:

1) ΠŸΡ€ΠΎΡ…ΠΎΠ΄ ΠΏΠΎ ΡΡ‡Π΅ΠΉΠΊΠ°ΠΌ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹; Ссли Ρ‚Π°Π±Π»ΠΈΡ†Π° Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»Π°ΡΡŒ — Π²Ρ‹Π²ΠΎΠ΄ сообщСния ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°Ρ… поиска;

2) Если ΠΊΠ»ΡŽΡ‡ совпадаСт со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ячСйки Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ строчку; Ссли Π½Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ 1)

8. Если Π²Ρ‹Π±Ρ€Π°Π½ΠΎ дСйствиС обновлСния Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹ происходит ΠΏΡ€ΠΎΡ…ΠΎΠ΄ ΠΏΠΎ Π²ΡΠ΅ΠΉ Π±Π°Π·Π΅ ΠΈ ΡΠ½ΡΡ‚ΠΈΠ΅ выдСлСния с Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… строк:

1) ΠŸΡ€ΠΎΡ…ΠΎΠ΄ ΠΏΠΎ ΡΡ‚Ρ€ΠΎΠΊΠ°ΠΌ; Ссли Ρ‚Π°Π±Π»ΠΈΡ†Π° Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»Π°ΡΡŒ Π²Ρ‹Ρ…ΠΎΠ΄ ΠΈΠ· Ρ†ΠΈΠΊΠ»Π° ΠΏΡ€ΠΎΡ…ΠΎΠ΄Π° ΠΏΠΎ ΡΡ‚Ρ€ΠΎΠΊΠ°ΠΌ;

2) Если тСкущая строка Π²Ρ‹Π΄Π΅Π»Π΅Π½Π° — ΡΠ½ΡΡ‚ΡŒ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅; ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ 1).

9. Если Π±Ρ‹Π»Π° Π²Ρ‹Π±Ρ€Π°Π½Π° учСтная запись ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π° ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π²Π²Π΅Π΄Π΅Π½ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ, Ρ‚ΠΎ Π½Π° ΡΠΊΡ€Π°Π½Π΅ появляСтся Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π±Π°Π·Ρ‹, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹ дСйствия 4 — 8.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

ΠŸΡ€ΠΈ написании ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ использовались ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² ΡΠΈΡΡ‚Π΅ΠΌΠ½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ…. Для создания ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса Π±Ρ‹Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ стандартныС возмоТности срСды MicrosoftVisualStudio 2010 создания ΠΎΠΊΠΎΠ½ прилоТСния с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Ρ„ΠΎΡ€ΠΌ.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ Π²Ρ…ΠΎΠ΄Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ осущСствляСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° коррСктности Π²Π²ΠΎΠ΄Π° пароля ΠΏΠΎ ΡΡ€Π΅Π΄ΡΡ‚Π²Π°ΠΌ получСния Ρ…Π΅Ρˆ-значСния Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ пароля ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ.

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ смСны пароля Администратором осущСствляСтся ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΎΠΊΠ½Π° смСны пароля ΠΈ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ности Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… смСна пароля Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Π° ΠΈΠ»ΠΈ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Π°. ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ смСны пароля ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ понадобится ввСсти Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎ Π΄Π²Π° Ρ€Π°Π·Π° Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ поля.

ΠŸΡ€ΠΈ просмотрС Π±Π°Π·Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ Π»ΡŽΠ±ΠΎΠΌΡƒ ΠΈΠ· ΡΡ‚ΠΎΠ»Π±Ρ†ΠΎΠ² ΠΏΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°Π½ΠΈΡŽ ΠΈΠ»ΠΈ ΡƒΠ±Ρ‹Π²Π°Π½ΠΈΡŽ.

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ добавлСния элСмСнта Π² Π±Π°Π·Ρƒ открываСтся ΠΎΠΊΠ½ΠΎ для добавлСния ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ элСмСнта. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти значСния Π² ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ поля ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ» .

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ измСнСния элСмСнта Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ строку, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ элСмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ». ΠŸΡ€ΠΈ этом откроСтся ΠΎΠΊΠ½ΠΎ измСнСния элСмСнта ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Π² Π½Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹Π΅ значСния.

ΠŸΡ€ΠΈ ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»Π΅Π½ΠΈΠΈ ΠΊ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŽ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° ΠΈΠ»ΠΈ покупатСля ΠΈ ΠΊ ΠΌΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ»Ρƒ покупатСля открываСтся ΠΎΠΊΠ½ΠΎ добавлСния покупатСля, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти Π½ΡƒΠΆΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ» .

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ поиска, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти ΠΊΠ»ΡŽΡ‡ поиска ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠŸΠΎΠΈΡΠΊ» .

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ установлСнноС ПО, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² ΠΏΡƒΠ½ΠΊΡ‚Π΅ «ΠžΠ±Ρ‰ΠΈΠ΅ свСдСния» .

Π”.3 Π˜Π‘ΠŸΠžΠ›Π¬Π—Π£Π•ΠœΠ«Π• Π’Π•Π₯ΠΠ˜Π§Π•Π‘ΠšΠ˜Π• БРЕДБВВА

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ (стационарный ΠΈΠ»ΠΈ Π½ΠΎΡƒΡ‚Π±ΡƒΠΊ) со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ систСмными трСбованиями:

— ΠžΠ‘ Windows XP;

— 256 ΠΌΠ± ΠžΠ—Π£;

— 15 ΠΌΠ± ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ мСста Π½Π° ΠΆΠ΅ΡΡ‚ΠΊΠΎΠΌ дискС для установки прилоТСния;

— ΠšΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°;

— ΠœΡ‹ΡˆΡŒ;

— ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€.

Π”.4 Π’Π«Π—ΠžΠ’ И Π—ΠΠ“Π Π£Π—ΠšΠ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΄Π²ΠΎΠΉΠ½Ρ‹ΠΌ ΠΊΠ»ΠΈΠΊΠΎΠΌ Π»Π΅Π²ΠΎΠΉ клавиши ΠΌΡ‹ΡˆΠΈ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΌΡƒ Ρ„Π°ΠΉΠ»Ρƒ «Autosalon. exe». Если создан ярлык сущСствуСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ запуска Ρ‡Π΅Ρ€Π΅Π· Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ ΠΊΠ»ΠΈΠΊ Π»Π΅Π²ΠΎΠΉ клавишСй ΠΌΡ‹ΡˆΠΈ ΠΏΠΎ ΡΡ€Π»Ρ‹ΠΊΡƒ.

Π”.5 Π’Π₯ΠžΠ”ΠΠ«Π• ДАННЫЕ

Никакая ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния Π½Π΅ Ρ‚рСбуСтся. Π€Π°ΠΉΠ»Π° Π±Π°Π·Ρ‹, Ссли ΠΎΠ½ΠΈ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π² ΠΏΠ°ΠΏΠΊΠ΅ с ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ, Π±ΡƒΠ΄ΡƒΡ‚ созданы.

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ (Ρ„Π°ΠΉΠ»Π° Π±Π°Π·Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *. dat) Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ с ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ² прилоТСния.

Π”.6 Π’Π«Π₯ΠžΠ”ΠΠ«Π• ДАННЫЕ

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ Ρ„Π°ΠΉΠ»Π°, с ΡΠΎΡ…Ρ€Π°Π½Π΅Π½Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π‘

Руководство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

Π•.1 ΠΠΠ—ΠΠΠ§Π•ΠΠ˜Π• ΠŸΠ ΠžΠ“Π ΠΠœΠœΠ«

Данная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для обслуТивания автосалона — вСдСния ΡƒΡ‡Π΅Ρ‚Π° поступлСния ΠΈ ΠΏΡ€ΠΎΠ΄Π°ΠΆΠΈ:

Ρ• АвтомобилСй;

Ρ• ΠœΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ»ΠΎΠ²;

Ρ• Π¨ΠΈΠ½;

Ρ• Дисков.

Π’Π°ΠΊ ΠΆΠ΅ ΠΊ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΡΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ относятся Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡƒΡ‡Π΅Ρ‚Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΊΡƒΠΏΠΈΠ²ΡˆΠΈΡ… Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΠΈ ΠΈΠ»ΠΈ ΠΌΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ», ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ², Π²Π·ΡΠ²ΡˆΠΈΡ… Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ Π½Π°ΠΏΡ€ΠΎΠΊΠ°Ρ‚. Π₯Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π°Ρ… автосалона.

Π•.2 Π£Π‘Π›ΠžΠ’Π˜Π― Π’Π«ΠŸΠžΠ›ΠΠ•ΠΠ˜Π― ΠŸΠ ΠžΠ“Π ΠΠœΠœΠ«

Данная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ минимальной ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠ΅ΠΉ:

— ΠžΠ‘ Windows XP;

— 256 ΠΌΠ± ΠžΠ—Π£;

— 15 ΠΌΠ± ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ мСста Π½Π° ΠΆΠ΅ΡΡ‚ΠΊΠΎΠΌ дискС для установки прилоТСния;

— ΠšΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°;

— ΠœΡ‹ΡˆΡŒ;

— ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€.

Π•.3 Π’Π«ΠŸΠžΠ›ΠΠ•ΠΠ˜Π• ΠŸΠ ΠžΠ“Π ΠΠœΠœΠ«

Запуск ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Запуск ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ осущСствляСтся ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ исполняСмого Ρ„Π°ΠΉΠ»Π° «Autosalon. exe» .

ПослС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись ΠΈ Π²Π²Π΅ΡΡ‚ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ.

Π’Ρ…ΠΎΠ΄ ΠΏΠΎΠ΄ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записью Администратора

ΠŸΡ€ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΌ Π²Π²ΠΎΠ΄Π΅ пароля ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Администратора Π½Π° ΡΠΊΡ€Π°Π½Π΅ появится ΠΎΠΊΠ½ΠΎ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ дСйствий для Администратора. Администратор ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия:

Ρ• ИзмСнСниС пароля ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Администратора;

Ρ• ИзмСнСниС пароля ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°;

Ρ• ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ (Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅) Π±Π°Π·Ρ‹.

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ дСйствия измСнСния пароля Π½Π° ΡΠΊΡ€Π°Π½Π΅ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° появится ΠΎΠΊΠ½ΠΎ измСнСния пароля, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ввСсти Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ Π²Π²ΠΎΠ΄ Π½ΠΎΠ²ΠΎΠ³ΠΎ пароля Π΄Π²Π° Ρ€Π°Π·Π°. ΠŸΡ€ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π²Ρ‹ΡˆΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ появится сообщСниС ΠΎΠ± ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ смСнС пароля. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС появится сообщСниС ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ошибкС.

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ дСйствия просмотра (рСдактирования) Π±Π°Π·Ρ‹ Π½Π° ΡΠΊΡ€Π°Π½Π΅ появится основноС ΠΎΠΊΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ — Π²ΠΊΠ»Π°Π΄ΠΊΠΈ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π±Π°Π·Ρ‹.

Для добавлСния элСмСнта Π² Π°ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ добавлСния. Π”Π°Π»Π΅Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти Π½ΡƒΠΆΠ½Ρ‹Π΅ значСния Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ поля ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ» .

Для измСнСния элСмСнта Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Π±Π°Π·Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡƒΡŽ строку ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ». Π”Π°Π»Π΅Π΅ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ значСния Π² Π½ΡƒΠΆΠ½Ρ‹Ρ… полях ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ». Для добавлСния покупатСля ΠΊ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŽ ΠΈΠ»ΠΈ ΠΌΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ»Ρƒ, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° ΠΊ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π² ΠΎΠΊΠ½Π΅ добавлСния/рСдактирования автомобиля ΠΈΠ»ΠΈ ΠΌΠΎΡ‚ΠΎΡ†ΠΈΠΊΠ»Π°. Для удалСния Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° автомобиля Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π² ΠΎΠΊΠ½Π΅ рСдактирования автомобиля Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π£Π΄Π°Π»ΠΈΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°» .

Для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° Π½ΡƒΠΆΠ½ΡƒΡŽ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Π±Π°Π·Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ.

Для поиска элСмСнтов, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‰ΠΈΡ… Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΊΠ»ΡŽΡ‡Ρƒ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΏΠΎΠ»Π΅ — «ΠšΠ»ΡŽΡ‡ поиска» ввСсти ΠΊΠ»ΡŽΡ‡ ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠŸΠΎΠΈΡΠΊ». Π’ ΡΠ»ΡƒΡ‡Π°Π΅, Ссли Π±Ρ‹Π»ΠΈ Π½Π°ΠΉΠ΄Π΅Π½Ρ‹ совпадСния Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ строки.

Для ΠΎΡ‚ΠΌΠ΅Π½Ρ‹ выдСлСния строк/строки Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ» .

Π’Ρ…ΠΎΠ΄ ΠΏΠΎΠ΄ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записью ΠŸΡ€ΠΎΠ΄Π°Π²Ρ†Π°

ΠŸΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΏΠΎΠ΄ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записью ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†Π° Π½Π° ΡΠΊΡ€Π°Π½Π΅ откроСтся ΠΎΠΊΠ½ΠΎ основной Π±Π°Π·Ρ‹. ВсС манипуляции с ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ манипуляциям с ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ Π±Π°Π·Ρ‹ Администратора, с Ρ‚Π΅ΠΌ лишь ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠŸΡ€ΠΎΠ΄Π°Π²Π΅Ρ† Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ доступа ΠΊ Π±Π°Π·Π΅ ΠΏΡ€ΠΎΠ΄Π°Π²Ρ†ΠΎΠ².

Π”Ρ€ΡƒΠ³ΠΈΠ΅ дСйствия ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ элСмСнтов Π² Ρ„Π°ΠΉΠ» происходит автоматичСски ΠΏΡ€ΠΈ ΠΈΡ… Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ