Розробка серверної електронної таблиці в Visual C # (Sharp)

Розробка серверної електронної таблиці повинна задовольняти наступним вимогам

•&nbsp&nbsp Продуктивність Де тільки можливо, конструкція не повинна бути збитковою з точки зору продуктивності

•&nbsp&nbsp Зручність у використанні Серверна електронна таблиця повинна бути легко програмованої на мові С # Із занадто складною або незручною у ісполованіі електронною таблицею не можна буде працювати належним чином, що яяется потенційним джерелом помилок

•&nbsp&nbsp Сопровождаемост. Серверна реалізації електронної таблиці повинна проставляти певні можливості супроводу В іншому випадку в код можуть поступово просочуватися помилки, що буде перешкодою в ефект використання таблиці

Серед перерахованих вимог відсутня вимога розширюваності Сама по собі електронна таблиця не є розширюваної, т к вона реалізує опреленного парадигму, а саме двовимірний документ, що містить числа і опаціі над ними

Якщо ж вам цікаво походження коду електронної таблиці, то це частина коду даного додатку моєї власної системи торгівлі цінними багами

ПРИМІТКА

Може т здатися привабливі м додавання до електронної таблиці коду дл я доповни – тільних можливостей, але ця мета не варто переслідування Іноді лучш е вирішити проблему і відкласти роздуми над удосконаленням парадигми на слующі й раз Я бачив випадки, коли розробники займалися обдумування м парігм, не доводив і до кінця роботу над кодом, який потім ставав архаїчним з причини якоїсь нерозглянутих парадигми

Для даного прикладу визначені три приклади:

• DevspaceTraderCommon-бібліотека класу, яка є укарочеой версією моєї бібліотеки додатки для торгівлі цінними паперами

Явирішив включити цю бібліотеку, щоб дати читачам уявлення, як виглядає бібліотека виробничого типу

• ServerSideSpreadsheet – бібліотека класу, що представляє реалізацію серверної таблиці

• Testserversidespreadsheet-консольний додаток для тестування збір-

ки ServerSideSpreadsheet

Первісна реалізація електронної таблиці дає нам хорошу відправну точку Застосування лямбда-вирази для обчислення стану осередку дозволяє з легкістю створити електронну таблицю, що містить числа Менш прівлекельним аспектом є факт, що клас Spreadsheet представляє лише одну таблицю Порівняно, більшість додатків для створення електронних таіц, наприклад Microsoft Excel, дозволяє створювати кілька таблиць

Тому для вирішення даної проблеми наша серверна таблиця буде заснована на двох концепціях: книзі (Workbook) і аркуші (Worksheet) (рис 111)

Рис 111 Електронна таблиця на основі типів книги і листа

Тип книги подібний класу колекції типу листа Тип листа є окремою таблицею фіксованого розміру, що є відповідальною за зберігання відбудуться, а обчислення в комірках звертаються до окремих лямбда-виразів

Книгу і лист можна визначити як інтерфейси або класи Але що було б Лує Припустимо, що книга визначена як інтерфейс, а потім реалізована як клас Даний підхід привязує нас до компонентної архітектурі, дозволяючи реізовать множинні типи книг Але необхідність реалізації множествеих типів книг виглядає досить малоймовірною Так навіщо ж використовувати іерфейси Тому що інтерфейси краще вписуються у ширший контекст

Припустимо, наприклад, що ви хочете мати можливість програмним чином раелять ваше завершене додаток між множинними машинами Завдання

виклику одним компютером функціональності NET на іншому компютері явлтся майже тривіальної, але для кращої продуктивності і більш економного витрачання ресурсів необхідно застосовувати інтерфейси

Джерело: Гросс К С # 2008: Пер з англ – СПб: БХВ-Петербург, 2009 – 576 е: ил – (Самовчитель)

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*