Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 06.07.2018, 13:32   #31
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

Цитата:
Сообщение от Мaкс Посмотреть сообщение
Вы же просили написать написать без интерфейсов функции
Я просил написать:
1.
а) Класс Логгер в файл с 3 функциями: конструктор с открытием файла (можете просто комментарием написать), деструктор с закрытием файла, метод Log(строка) для записи в файл.
б) Функцию, которая принимает логгер в параметр и логирует что-то через него.
2.
а) Класс Логгер в БД с 3 функциями: конструктор с соединением с БД (можете просто комментарием), деструктор с закрытием соединения, меетод Log(строка) для записи в БД.
б) Что-то сделать с функцией или написать вторую или ... чтобы можно было использовать оба класса и в рантайме переключаться между ними.
3. Все тоже самое для мок-объекта...
p51x вне форума
Старый 06.07.2018, 13:33   #32
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

Цитата:
Сообщение от Мaкс Посмотреть сообщение
И что мне делать с этим логгером?
Вы не отличаете класс от функции?
p51x вне форума
Старый 06.07.2018, 13:38   #33
Мaкс
Форумчанин
 
Регистрация: 12.06.2018
Сообщений: 831
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Вы не отличаете класс от функции?
Если лог это функция, если функция это метод, то различаю.
Мaкс вне форума
Старый 06.07.2018, 13:52   #34
Мaкс
Форумчанин
 
Регистрация: 12.06.2018
Сообщений: 831
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Я просил написать:
1.
а) Класс Логгер в файл с 3 функциями: конструктор с открытием файла (можете просто комментарием написать), деструктор с закрытием файла, метод Log(строка) для записи в файл.
б) Функцию, которая принимает логгер в параметр и логирует что-то через него.
2.
а) Класс Логгер в БД с 3 функциями: конструктор с соединением с БД (можете просто комментарием), деструктор с закрытием соединения, меетод Log(строка) для записи в БД.
Необходимо прочитать:
Цитата:
Сообщение от p51x Посмотреть сообщение
Это просто класс с методом Log(строка) и парой еще каких-нибудь, типа в одном - открыть и закрыть файл, а в другом подключиться к базе и отключиться от нее.
Каким образом написать выделенное в программу?
Мaкс вне форума
Старый 06.07.2018, 13:55   #35
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
(можете просто комментарием написать)
Вы посты читаете?
p51x вне форума
Старый 06.07.2018, 14:22   #36
Мaкс
Форумчанин
 
Регистрация: 12.06.2018
Сообщений: 831
По умолчанию

Я только что узнал, есть 2-ой способ реализации интерфейса, он выглядит так:
Код:
void IOne.Math()
    {
        C = A + B;
    }
Есть ли смысл так делать?
Мaкс вне форума
Старый 06.07.2018, 14:24   #37
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

Т.е. вы уже разобрались с тем, зачем вам интерфейсы? И что это вообще?
p51x вне форума
Старый 06.07.2018, 14:26   #38
Мaкс
Форумчанин
 
Регистрация: 12.06.2018
Сообщений: 831
По умолчанию

Нет, не разобрался, думал это связанно с этим; Это 2-ой способ реализации интерфейсов, вот ссылка где это взял.
Мaкс вне форума
Старый 06.07.2018, 14:31   #39
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

Цитата:
Сообщение от Мaкс Посмотреть сообщение
Нет, не разобрался, думал это связанно с этим;
С чем с этим? Что такое интерфейс и зачем он нужен связано с конкретной реализацией метода? У вас есть конкретная простая задачка, а вы бегаете что-то ищите. Возьмите стандарт на C# там еще и не такое можете найти.
p51x вне форума
Старый 06.07.2018, 14:51   #40
Baburek
Форумчанин
 
Аватар для Baburek
 
Регистрация: 12.12.2010
Сообщений: 205
По умолчанию

Мaкс, интерфейс служит для описания, но не содержит в себе реализации. Реализацию он оставляет на долю класса реализующего этот интерфейс.

Классический пример:
1. У нас есть интерфейс Автомат, содержащий метод работай()(еще раз, он не описывает реализацию этого метода).
2. У нас есть классы КофеМашина и СтиральнаяМашина. Они реализуют интерфейс Автомат и содержат метод работай(). Но у каждого из этих классов он свой. Согласитесь, что команда "работай" для кофе машины отличается от той же команды для стиральной машины.

Вам привели четкий пример Логера. Попытайтесь понять разницу между логером в файл и логером в базу.

Последний раз редактировалось Baburek; 06.07.2018 в 14:53.
Baburek вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
рассчитать CRC16. с текстовыми и бинарными файлами работает без проблем. Если же подсунуть ей exe файл, то вылетает. ilyakonst Общие вопросы C/C++ 4 12.04.2016 17:01
если Edit1 ='Рис', Edit2 ='10', Edit3 ='6', то автоматически заполняется Edit4 ='100'. Какой оператор лучше использовать? Юрий9 БД в Delphi 7 26.02.2016 18:04
Какой фреймворк изучить для интерфейсов БД Goretsv PHP 4 17.07.2012 03:49
Объясните смысл интерфейсов MyLastHit C# (си шарп) 8 22.11.2011 18:43
Есть ли смысл в использовании предкомпилированных заголовков, если я в них ничего не добавляю? TwiX Visual C++ 4 19.09.2011 14:15