Объявление классов и создание объектов в Си++. (Как реализовать на Ардуино).

Поділитися
Вставка
  • Опубліковано 10 бер 2017
  • Объявление классов и создание объектов в Си++. Реализация на Ардуино. (из цикла "Изучаем Ардуино". Часть 13.)
    Чтобы лучше понять стиль и методы программирования Ардуино, я решил дополнительно изучать Си++.
    На данный момент я познакомился с созданием классов и объектов. Для закрепления своих знаний я
    попробую создать класс для аналогового датчика температуры ТМР36. Что из этого получиться - смотрите видео...
    Ссылка на видео: • Объявление классов и с...
    Ссылка на playlist "Изучаем Ардуино": • Изучение ардуино
    Ссылка на playlist "Посылки из Китая": • Посылки из Китая
    Ссылка на playlist "Мои самоделки": • Homemade Electroniсs
    Ссылка на канал: / @user-tt3pb2ry6w
    #ТМР36, #классы, #объекты
    asdfghjklqxwcev
  • Наука та технологія

КОМЕНТАРІ • 41

  • @MrRoman238
    @MrRoman238 Рік тому +1

    Очень подробно и доходчиво объяснили. Отдельное спасибо за определения класса и объекта. С первого взгляда эти сущности довольно похожи.

  • @andrii_diyvideo
    @andrii_diyvideo 6 років тому +5

    Спасибо за урок, очень доходчиво. И мне пофиг на произношение, просто хочу разобратся в классах и обьектах. Лайк, подписка!

  • @deadpehto
    @deadpehto 7 років тому +17

    Валуа это французская королевская династия, при чем тут С++?)

  • @venkospro4583
    @venkospro4583 5 років тому +1

    Я не знаток английского, но у меня чуть глаз не задёргался от вашего произношения...

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  5 років тому +3

      Тогда вам лучше не смотреть мой канал! С вами что-то случиться, а я буду чувствовать себя виноватым!

    • @victorobatsuk6927
      @victorobatsuk6927 4 роки тому +1

      А тебя че, английскому учат? Вав и окей выучил уже?

  • @androidpasha
    @androidpasha 3 роки тому +1

    Спасибо. Все понятно

  • @user-dj8nn4yk6l
    @user-dj8nn4yk6l Рік тому

    Валуа )))) после этого не мог дальше слушать .
    Я думаю лучше будет "валью"

  • @user-bb8nm9kj5v
    @user-bb8nm9kj5v 7 років тому +2

    Уроки понятные и доступные. Хорошо бы еще перед глазами видеть текст скетча для наглядности. Если не трудно, добавте скетчи в описании пожалуйста.

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  7 років тому +2

      Скачайте отсюда drive.google.com/open?id=0B7C7x3hxkaYIQ2RhR05sVklya1k

    • @user-bb8nm9kj5v
      @user-bb8nm9kj5v 7 років тому

      Спасибо!!!:)

  • @pingvin7954
    @pingvin7954 6 років тому +2

    Я по другому делаю опрос температуры. Если температура не изменилась то не выводит. А выводит если от предыдущего значения она поменялась в любую сторону.

  • @andrewandrosow4797
    @andrewandrosow4797 3 роки тому

    Хорошо что среда Ардуино поддерживает С++! Можно и про чистую архитектуру думать! Правда хватит ли ОЗУ 1..2кБайт?

  • @variator111
    @variator111 5 років тому

    Пытаюсь разобраться с понятием классов, объектов.
    Такой вопрос. Использование классов дает удобство только в плане организации кода или же добавляет некий функционал, который невозможно получить написанием "обычных" функций?

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  5 років тому +1

      Я программист - любитель, поэтому глубоко и подробно объяснить не смогу. Для меня это удобство. Например вы можете описать кнопку как класс со всеми её состояниями и функциями опроса. Это ваш метод. А физическая кнопка - это объект со свойствами класса. Объектов можете создать много. А вот если применить обычные функции под множество кнопок, то придётся заводить много переменных. Более подробно посмотрите на сайте mypractik.ru

  • @SuperLeoSG
    @SuperLeoSG 6 років тому +1

    Есть еще один Валуа, он боксер.

  • @Sh1neful
    @Sh1neful 7 років тому +2

    валуА =))))

  • @vvvzzz2688
    @vvvzzz2688 5 років тому

    не могли бы вы продолжить тему ООП для ардуино на примере библиотек.. например IRremote.h ?
    Потому что примеры которые идут с этой библиотекой - вроде как похожи на ООП? Или я ошибаюсь?
    Вообще попытался найти пояснение например по работе с этой библиотекой - но нет. все тупо берут примеры и просто их используют а хотелось бы правильно интерпретации.
    И вообще если вы в своих изучения продвинулись в вопросах ООП то хотелось бы ремейка на эту тему ... типа для "самых маленьких"...
    Спасибо.

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  5 років тому

      Доброе время суток! Долго тянул с ответом, тк не знал, как вам правильней ответить. Я больше не изучаю ардуино. То что я успел изучить, мне хватит для своих самоделок. Если вы хотите разобраться с понятием классов и библиотек применительно к МК АВР (Ардуино), то посетите сайт mypractic.ru/uroki-programmirovaniya-arduino-navigaciya-po-urokam. Мне уроки автора сильно помогли. Что касается создания библиотек посмотрите уроки 7 и 9.

    • @vvvzzz2688
      @vvvzzz2688 5 років тому +1

      @@user-tt3pb2ry6w за ссылки - спасибо..
      _Я больше не изучаю ардуино. _
      А чтоже вы изучаете? или вполне достаточно то что есть и дальше развиваться в плане программирования не особо нужно?

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  5 років тому +1

      @@vvvzzz2688 развиваться нужно. Хочу перейти на СТМ32

    • @vvvzzz2688
      @vvvzzz2688 5 років тому

      @@user-tt3pb2ry6w
      _Хочу перейти на СТМ32_
      Серьёзный шаг... Пока мало где смог найти уроки которые бы были понятны и доступны... года назад помигал на стм светодиодом.... на это ушло почти целый день чтобы поставить всякие кубы и т.д.
      Каждый раз смотрю новые уроки и с самого начала танцы с бубном по полдня с ПО...

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  5 років тому

      @@vvvzzz2688 посмотрите тот же сайт, что я порекомендовал. Автор начал выкладывать уроки СТМ32

  • @variator111
    @variator111 6 років тому

    Здравствуйте!
    В коде есть условие if (count &0x01) (Поочередное измерение датчиков).Не пойму, что оно означает. & - это ссылка?
    Можете объяснить?

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  6 років тому +1

      Здравствуйте! Это не ссылка, это логическое И. Командой if(count&0x01) проверяется младший разряд переменной count. Если 1, то выполняется команды в фигурных скобках после условия if. Если 0, то выполняются команды в скобках после else.

    • @variator111
      @variator111 6 років тому

      Благодарю!

    • @theniffex6454
      @theniffex6454 5 років тому +2

      Не логическое, а побитовое. Логическое обозначается двумя символами (&&).

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  5 років тому

      @@theniffex6454 Точно!

  • @user-et1rf3yl3q
    @user-et1rf3yl3q 3 роки тому

    До сих пор не могу вкурить для чего нужны классы. Код становится огромный. И не понятный для меня. Когда без них грамотно код в пять строчек сможно написать наверное.

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  3 роки тому +2

      А вы сможете написать код для опроса 5 кнопок ( с учётом антидребезга ) в 5 строках не используя библиотеки? Я вот не смогу. Классы придуманы для удобства программирования. В классе описывается модель. Например чем характеризуется кнопка. Выводом МК, к которому подключается, состоянием (нажата, отпущена, удерживается), временем дребезга и др. Все её состояния и характеристики описываются в классе. Но класс сам по себе физически не существует. Ему нужен физический объект. Та же кнопка. Пример записи: Button butFirst(1); Это объект butFirst класса Button, подключённый к выводу 1. Можно добавить ещё несколько кнопок. Button butSecond(2), butTrird(3) и так далее. Один раз составив класс, можно подключать множества объектов. Это удобно! Тем более, что классы прячутся в библиотеках, а библиотеки подключаются к скетчу. В скетче работаем только с результатом работы библиотеки. Скетч небольшой и читабельный

    • @anatoliyv5607
      @anatoliyv5607 Рік тому

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

  • @TheLowStar
    @TheLowStar 6 років тому +7

    Прежде чем изучать Си++ не плохо было бы сначала изучить Английский... Слух просто режет!

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  6 років тому +5

      Непонятен ваш комментарий. Если человек не владеет английским, то не должен изучать программирование? Я далеко не оратор и где-то заикаюсь, но это не повод бросить изучать Си ++. Если не понравилось, то просто поставьте дизлайк

    • @TheLowStar
      @TheLowStar 6 років тому +5

      Да нет... Сам материал очень даже понравился. Изложение материала тоже на высоте. Но когда дело доходит до произношения Английских слов - хоть уши отрывай! Очень жаль что не осталось языков программирования на кириллице. Все только на Английском языке. Выучить правильность произношения нескольких слов - не так уж и сложно! Я думаю многие со мной согласятся. Вы работаете на публику и значит должны учитывать замечания. Надеюсь на понимание)))

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  6 років тому +2

      Да, я вас понимаю. Стараюсь, но не всегда получается красиво

  • @avraamlin7022
    @avraamlin7022 5 років тому +1

    Кого вы слушаете ,ересь несёт,смотрите ролики про ООП в обьектно-ориентированных языках типо C#,java и поймёте быстрее и лучше в чем суть,а если ещё pattern (ы) почитать так вообще.

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  5 років тому +3

      Здравствуйте! Пересмотрел своё видео. Согласен, недостатки есть, особенно в произношении английских слов. Только вот «ересь» не встретил, датчики работают, температуру измеряют. Если вы заметили, я программирую в среде Arduino IDE, где применяется С++. И понятие классов и объектов применяю исключительно к микроконтроллерам. Если вы советуете меня не слушать, то дайте ссылку на сайт, где дана информация о классах и объектах на С# или Java применительно к микроконтроллерам, установленных на платах Ардуино. Буду вам благодарен. И ещё: у этого видео есть логическое продолжение ua-cam.com/video/GZ9M6WWJ878/v-deo.html

    • @avraamlin7022
      @avraamlin7022 5 років тому

      @@user-tt3pb2ry6w привет ,не обижайся на мою критику, насчёт работы кода,у меня претензии нет,и на произношение англ. слов тоже пофиг, код работает и это главное,я имел ввиду когда вы рассказываете людям об ООП,это очень обширная и глубокая тема ,и можно ввести в заблуждение людей которые хотят понять это подход,если рассказывать неправильно основные принципы ООП.К примеру люди захотят в дальнейшем перейти от c++ к C# или java они войдут в ступор тк их прежние знания могут идти вразрез с теми которые они будут получать при знакомстве с этими языками.я посмотрел комменты к ролику и многие кто вас смотрит хотят разобраться в ООП ,с понятиями классов и (обьектов=экземпляров класса).

    • @user-tt3pb2ry6w
      @user-tt3pb2ry6w  5 років тому +3

      @@avraamlin7022 Привет! Дело не в обиде. Мне кажется что вы не там поставили свой комент. Мой канал связан с программированием Ардуино, я не даю уроков, а учусь и выкладываю об этом видео. Об этом сказано в описании канала. Свою попытку в создании класса и объекта я сделал применительно к микроконтроллеру (об этом говорит название ролика). Люди, которые хотят изучать чистый язык, должны смотреть другие видео. Не мои! У меня, как бы это правильно сказать, прикладное программирование. Вот вы, например, хорошо разбираетесь в ООП. Можете создать библиотеку для тактовой кнопки? Или хотя бы описать класс под кнопку. применительно к Ардуино. А такие библиотеки существуют и тип написания такой же как у меня.
      Спасибо.