• Учимся стандарту проектирования — Entity Relationship

    Здравствуйте. Данная статья посвящена одной из самых популярных, а также и многим знакомой, модели проектирования — ER(Entity Relationship), которая была предложена учёным, в области информатики — Питером Ченом, в 1976 году.

    image

    По ходу статьи простым языком на простых примерах из жизни — мы с Вами разработаем разные варианты диаграммы, которые будут зависеть от их типа связи. Начнём!

    Объектно Ориентированное Проектирование


    В первую очередь, хотелось бы сказать пару слов об ООП(Объектно Ориентированном Программировании/Проектировании), чтобы не было проблем с пониманием парадигмы самой диаграммы. Мне удобнее абстрагировать эту модель с принципом ООП, где сущность — объект, атрибуты — его характеристики, а связи — что-то вроде посредника(в некоторых случаях — как метод).

    Быстрый старт


    Главный плюс модели проектирования Entity Relationship — это то, что она универсальна. Вы можете проектировать БД(Базы данных), работу какой-либо программы, принципы взаимодействия и др.

    Что нужно знать на старте изучения?

    — Нужно знать на старте то, что основная работа проводится над взаимоотношением сущности и связи. Для более легкого восприятия, стоит запомнить, что сущность — существительное, которое находится в прямоугольнике, а связь — глагол, который находится в ромбе. Приведём пример:

    image

    Думаю, Вы поняли, что к чему. Наш Программист учит Python. Вроде, всё логично. Но вот, только, что это за единички в примере?

    — Это показатель типа связи! В данном примере используется вид связи — Один к одному:

    $$display$$1:1$$display$$


    К видам связи мы ещё вернёмся, но чуть позже!

    P.S. Надеюсь, Вы заинтересованы. Такие диаграммы Вы можете создавать в редакторе диаграмм — Dia.
    Читать дальше →
  • Как назвать: политика конфиденциальности и политика приватности

      Английскую версию политики приватности – privacy policy – ошибочно переводят как «политика конфиденциальности». В чем здесь ошибка?

      «Политика конфиденциальности» – это переводческая традиция, которую вы можете встретить даже на русскоязычных версиях таких платформ как Google и Apple. Однако, конфиденциальность – это один из принципов информационной безопасности. Согласно этому принципу, ваша информация защищена от несанкционированного доступа.
      Читать дальше →
    • Протокол SPBm как основа Extreme Automated Campus

        Решения компании Extreme Networks «Extreme Automated Campus» обеспечивают возможность одновременного использования множества путей передачи и быстрого восстановления в случае аварии. Сеть, состоящая из множества физических коммутаторов, представляет собой один распределённый. Трафик, при этом, всегда идет по кратчайшему доступному пути.
        «Extreme Automated Campus» — это в основе своей построение Ethernet Fabric на основе симбиоза стандартов IEEE 802.1ah, 802.1aq и RFC6329. Как это работает, почему это легко и удобно инсталлируется, масштабируется и администрируется раскроем в нашей статье.

        image
        Читать дальше →
      • Записки IoT-провайдера: девять проблем Интернета Вещей, или почему ему на Руси нехорошо

          Здравствуйте, уважаемые любители Интернета Вещей!

          Эта статья отличается от моих предыдущих. Здесь не про решения и кейсы. Я написал про девять проблем IoT, которые портят нам жизнь.

          Предлагаю присоединиться к моим размышлениям и вместе спрогнозировать будущее Интернета Вещей.


          Читать дальше →
        • HTTP/3: от корней до кончиков

          • Перевод
          Протокол прикладного уровня HTTP лежит в основе интернета. Он начал свою жизнь в 1991 году как HTTP/0.9, а к 1999 году превратился в HTTP/1.1, который был стандартизирован Инженерным советом Интернета (IETF).

          HTTP/1.1 долго всех удовлетворял, но растущие потребности Сети потребовали апгрейда — и в 2015 году приняли HTTP/2. На этом история не закончилась: совсем недавно IETF анонсировал новую версию HTTP/3. Для некоторых это стало неожиданностью и вызвало некоторое замешательство. Если вы не отслеживаете работу IETF, может показаться, что HTTP/3 появился из ниоткуда. Тем не менее, мы можем отследить его происхождение по истории экспериментов и эволюции веб-протоколов, в частности, транспортного протокола QUIC.

          Если вы не знакомы с QUIC, мои коллеги по Cloudflare довольно подробно осветили разные аспекты: например, см. статьи о реальных недостатках современного HTTP и подробности о протоколе транспортного уровня. Мы собрали эти и другие материалы на сайте cloudflare-quic.com. А если интересно, обязательно ознакомьтесь с quiche: это наша собственная реализация QUIC, написанная на Rust с открытым исходным кодом.
          Читать дальше →
        • Почему шаблон политики приватности вам не подойдет?

          Копирование и генерирование политики приватности


          Копирование шаблонной политики приватности или использование генераторов (автоматическое составление) – весьма распространенная практика. Действительно, в некоторых случаях это может сэкономить время, если речь идет о копировании повторяющейся информации, которая универсальна для многих сайтов. Но это правда лишь при условии, что вы копируете ее из надежного источника или используете качественный генератор.

          Копирование


          Если вы все же копируете шаблонную политику приватности, то вам нужно перепроверить соответствие данного документа статьям 13 и 14 GDPR (General Data Protection Regulation — Общий Регламент Европейского Союза по защите персональных данных), а также изменить пункты, индивидуальные для каждой компании:

          1. Цели обработки
          2. Законные основания для обработки
          3. Сроки обработки

          Сложно найти политику приватности, которая бы соответствовала всем процессам в вашей компании и одновременно GDPR. Большинство политик приватности, даже европейских компаний, не соответствуют GDPR.

          Скопированная политика приватности может содержать в себе обработки персональных данных, которых в компании нет и быть не может. Это создает большие проблемы при реализации прав субъектов данных. Например, пользователь вашего сервиса захочет реализовать свое право на переносимость данных, но вы его реализовать не в состоянии.
          Читать дальше →
        • Успехи и неудачи при создании своего проекта (стартапа)

          Привет, друзья. Решил сегодня написать не о конкретном техническом решении, а о том, зачем эти технические решения вообще нужны. Слово «Стартап» уже порядком набило оскомину, поэтому буду употреблять «Свой проект». В статье будет много философии и аналитики. Так как без этого рассчитывать на успех сложно. Итак, сегодня я поделюсь с вами своим опытом, и опытом многих моих коллег, которые пытались спрыгнуть с корпоративной галеры и подняться на своем проекте.
          Читать дальше →
        • Есть мнение: IPv6 провалился — кто и почему так считает

            IPv6 появился ещё в середине 90-х и должен заменить собой IPv4. Спустя почти 30 лет IPv4 никуда не делся, а на новую версию IP-протокола перешла лишь пятая часть пользователей интернета. Для некоторых экспертов такое положение вещей стало поводом усомниться в перспективах IPv6. Чем обосновано их мнение, и кто с ним не согласен, — рассказываем далее.

            Читать дальше →
          • Как упростить развертку облачных приложений — представлена новая открытая спецификация

              Microsoft и Docker разработали открытую спецификацию Cloud Native Application Bundle (CNAB). Она описывает универсальный способ упаковки контейнерных приложений для работы в гибридных средах. Далее расскажем, зачем понадобилась CNAB и что она собой представляет.

              Читать дальше →
              • +10
              • 2,2k
              • 3
            • Новые ключевые слова в Java

                В ближайшем будущем в языке Java появятся новые фичи, над которыми сейчас идет работа в рамках проектов Valhalla, Panama и Loom. Расширение языка — дело непростое, тем более — языка, в котором акцент делается на обратную совместимость; поэтому для того, чтобы их интеграция в Java прошла органично, архитекторам языка приходится решать накопившиеся фундаментальные вопросы.

                Вчера (8 января) Брайан Гетц, работающий в Oracle на должности Java Language Architect, опубликовал в рассылке Project Amber письмо «Нам нужно больше ключевых слов, капитан!», в котором предложил способ решения проблемы добавления в язык новых ключевых слов. Вследствие чего в языке могут появиться такие ключевые слова, как non-null, non-final, eventually-final и this-return (полный список ждет вас под катом в конце поста).

                Поскольку в прошлом эта проблема возникала в языке нечасто, обычно над ней особо не задумывались и «старались как можно быстрее свалить с шеи»; из-за недостатков уже существующих подходов в будущем их применение будет проблематичным, и в связи с этим было решено сработать на упреждение. Предлагаемое решение: попытаться расширить набор лексических форм, которые можно использовать в качестве ключевых слов: разрешить ключевые слова, разделенные дефисом, в составе которых будет использоваться одно (или более) уже существующее ключевое слово или зарезервированный идентификатор.

                Важное замечание: Брайн отмечает, что новые ключевые слова приведены исключительно в качестве иллюстративного примера, и что заострять на них свое внимание не стоит. Однако, очевидно, что перед нами продуманная демонстрация того, как синтаксис языка может измениться в будущем — в письме автор упоминает, что эта идея поможет добавить в Java многие желаемые недостающие языковые конструкции.
                Читать дальше →

              Самое читаемое