Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/76: Рейтинг темы: голосов - 76, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 31.03.2014
Сообщений: 14

Информационная система на C#

08.04.2014, 19:26. Показов 14147. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток, уважаемые!
Быстренько опишу ситуацию и задам вопросы.
Предисловие: пишу дипломный проект - информационную систему на C# с помощью технологии ADO.NET. Сама система уже есть готовая: это курсач, который был разработан "на вырост" - сделано больше, чем требовалось. Он представляет из себя типичное MDI-приложение по работе с базой данных магазина розничной торговли.
Вопросы:
1. Прочитал, что MDI уже неактуально и старо, как мир - что думают спецы по этому поводу? Нормально ли писать ИС в многодокументном приложении или есть идеи, как это сделать более эффективно и красиво?
2. Переходить ли на WPF? Достаточно ли ресурсов WForms или эффективнее и лучше будет использовать WPF для написания ИС?
3. Выкладываю скриншот текущего состояния интерфейса. Цветовая схема пока такая, однако планирую добавить возможность менять её. Кому не сложно, выскажитесь, пожалуйста. Ваши комментарии и мнения очень ценны для меня.

Всем заранее спасибо! Надеюсь не миснул темой.
 Комментарий модератора 
Картинки и любые другие файлы загружайте на форум, во избежание их удаления или потери на сторонних ресурсах.
Миниатюры
Информационная система на C#  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.04.2014, 19:26
Ответы с готовыми решениями:

Информационная система Учета успеваемости студентов
Взял тему курсача "Информационная система Учета успеваемости студентов", полазил по форуму, и понял, что много кто делал такой же курсач....

Разработать объектную модель (мин 4 класса - информационная система)
Пришло время сдавать ЛР, а мои наработки по нулям. Увы. Может у кого есть что готовое, любые 4 класса. Разработать объектную модель...

Поисково-информационная система (база с документами-текстами)
Добрый день! Помогите,пожалуйста, написать прогу- информационную службу. Чтобы при вводе слова в запросе, по ключевым словам, выходил...

9
 Аватар для NetFR
46 / 46 / 32
Регистрация: 10.05.2013
Сообщений: 180
08.04.2014, 21:29
Тоже планирую клиент-серверное приложение для учета заказов, писать буду на WinForms, но ответ тоже интересует.
0
 Аватар для Spawn
995 / 893 / 354
Регистрация: 24.03.2014
Сообщений: 2,381
Записей в блоге: 2
08.04.2014, 21:50
Цитата Сообщение от Джошуа Посмотреть сообщение
1. Прочитал, что MDI уже неактуально и старо, как мир - что думают спецы по этому поводу? Нормально ли писать ИС в многодокументном приложении или есть идеи, как это сделать более эффективно и красиво?
Вполне себе используется. Для WinForms оно вряд ли куда денется.
Цитата Сообщение от Джошуа Посмотреть сообщение
2. Переходить ли на WPF? Достаточно ли ресурсов WForms или эффективнее и лучше будет использовать WPF для написания ИС?
Достаточно. Если не знаете WPF, то сейчас переключаться на незнакомую технологию будет крайне сложно.

Что касается интерфейса, то в случае с MDI самым неприятным, на мой взгляд, будет синхронизация данных во всех открытых окнах. В целом всё решаемо, конечно. Возможность изменения схемы лучше через готовые решения делать в Вашем случае, так как это всё побочно для дипломного проекта. С точки зрения стилей, конечно, WPF будет на порядок мощнее, но выше уже объяснил свою позицию.
1
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
08.04.2014, 21:52
Цитата Сообщение от Джошуа Посмотреть сообщение
Прочитал, что MDI уже неактуально и старо, как мир
Combobox ещё старше. Но ни кто не говорит, что его использовать "не модно".
Всему свое применение, главное - чтобы было юзабельно. Понятия "модно" и "не модно", тут как-то не сильно уместны. Другое дело, что после изобретения MDI, появились другие варианты организации интерфейса
Цитата Сообщение от Джошуа Посмотреть сообщение
как это сделать более эффективно и красиво
Эффектно и красиво - это для девочек-школьниц, для промышленных приложений должно быть легко,удобно и понятно, поскольку с этими программами работают серьёзные люди, и от изобилия розового(для некоторых черного) у них стресс начинается. По работе часто приходится зреть компы пользователей, многие до сих пор использую классическое оформление Винды(образца Win-98). Они патологически не могут сориентироваться в стиле ХР...

Лично меня MDI не устраивает тем, что окна в контейнере скрывают друг друга, кстати Devex эту проблему решил и сделал своеобразный табконтрол, на вкладках которого располагаются формы, оч удобно, но денег стоит.
Я в своих приложениях реализовал практически devex'овский подход, только я не формы делаю, а user-контролы, и затем в зависимости от надобности динамически кидаю их на вкладки общего для всего приложения табконтрола. Взаимодействие общей менюшки с контролами через интерфейсы. Подход относительно гибкий, и позволяет быстро писать и добавлять всякие доп. типы документов.

Цитата Сообщение от Джошуа Посмотреть сообщение
Переходить ли на WPF?
Вопрос прям как "остаться православным или перекреститься в католическую веру?". Каждый решает сам, у wpf куча преимуществ по дизайну, но, как минимум, придётся изучать новую технологию, думаю свои минусы там тоже найдутся.
Цитата Сообщение от Джошуа Посмотреть сообщение
Достаточно ли ресурсов WForms
думаю, что вполне... Сам пишу на формах, правда с использованием devex, на WPF желания перелазить нет
1
08.04.2014, 21:54

Не по теме:

Цитата Сообщение от nio Посмотреть сообщение
кстати Devex эту проблему решил и сделал своеобразный табконтрол, на вкладках которого располагаются формы
Я когда под WPF писал свой MDI интерфейс тоже делал возможность переключения в режим вкладок... реально удобно.

0
0 / 0 / 0
Регистрация: 31.03.2014
Сообщений: 14
10.04.2014, 13:35  [ТС]
Spawn, спасибо за комментарий. Насчёт синхронизации данных - да, очень неудобный момент, потому что у меня в программе после изменения чего-то идёт постоянная проверка на наличие открытой формы, связанной с изменениями, чтобы, если что, обновить её. Есть ли какой-то для этого более универсальный метод?
nio, спасибо за развёрнутый ответ, есть, над чем подумать. Возьму на вооружение идею с табконтролами, пересмотрю свой интерфейс, подумаю, что можно сделать. Реализацию вашего подхода представляю весьма смутно пока.
0
 Аватар для Spawn
995 / 893 / 354
Регистрация: 24.03.2014
Сообщений: 2,381
Записей в блоге: 2
10.04.2014, 14:24
Цитата Сообщение от Джошуа Посмотреть сообщение
Есть ли какой-то для этого более универсальный метод?
В случае с Winforms, пожалуй события уместнее всего, так как с привязками определённая напряжёнка.
0
0 / 0 / 0
Регистрация: 31.03.2014
Сообщений: 14
10.04.2014, 14:46  [ТС]
Spawn, не могли бы поподробнее расписать, что там конкретно за события должны быть? В общем виде.
Насколько понял, я должен буду создать событие, отвечающее за изменения данных в какой-то определённой форме - если оно происходит, обновлять данные в форме. Только я плохо понимаю саму механику процесса: что записать в обновляемой форме, что записать в обновляющей (там, где мы что-то поменяли).
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
10.04.2014, 16:27
Джошуа, механика событий по сути проста. К примеру в программе магазина могут быть 2 формы: одна отображает список товаров на складе, другая предназначена для расчета с покупателями. Пример конечно не самый, потому что как правило с этим работают разные пользователи и одновременно они врядли будут открыты, но всё-таки... Прикол заключается в том что эти 2 формы между собой не будут связаны никакой логикой, они всего-лишь работают с общими данными. Теперь нужно сделать для склада возможность генерировать событие изменения списка товаров на складе. При этом самому складу в принципе знать не нужно, кто работает с этим событием, он его сгенерировал и всё. Зато все подписанные на события, при его получении смогут выполнить некие действия, в данном случае обновить список товаров на складе.

Добавлено через 2 минуты

Не по теме:

на самом деле всё гораздо сложнее, формы не должны обмениваться между собой информацией об изменении данных. Данные должны быть отдельно, интерфейс отдельно, но раздление логики на слои - это уже совсем другая тема :)



Добавлено через 2 минуты
Цитата Сообщение от Джошуа Посмотреть сообщение
Только я плохо понимаю саму механику процесса
Джошуа, почитай п.2.7.2 Ответы на 7 самых частых вопросов по WinForms
1
0 / 0 / 0
Регистрация: 31.03.2014
Сообщений: 14
10.04.2014, 22:46  [ТС]
nio, спасибо, я во всём разобрался.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.04.2014, 22:46
Помогаю со студенческими работами здесь

Информационная система
Разработка информационной системы на основе баз данных и Интернет - технологий для электронных торговли оборудованием тренажерных зал.

Информационная система на C#
Помогите пожалуйста! Задание во вложенном изображении, все условие не нужно реализовывать, необходима реализация ХОТЯ БЫ указания автора,...

Информационная система
Кто поможет создать информационную систему на делфи. Подробнее удален контакт.

Информационная система
кто поможет разработать или просто подсказать какие нибудь идеи : автоматизированную информационную систему "Система управления...

Нужна информационная система
Добрый день. Нужно организовать несложную БД. Я пока не решил, буду программировать или искать готовое решение, поэтому напишу в две ветки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru