Шаблоны разработки сетевой связи [закрываются]

Вы можете создать правило CSS, которое скрывает вложенный элемент, только если родительский элемент не найден.

.parent-item:not(:hover) .meta--reveal {
  display: none;
}
<div class="parent-item">
  <h3>title 01</h3>
  <span class="meta--reveal">
    <a class="btn" href="#">Link</a>
  </span>
</div>

<div class="parent-item">
  <h3>title 02</h3>
  <span class="meta--reveal">
    <a class="btn" href="#">Link</a>
  </span>
</div>

В противном случае ваша существующая логика работает . Вам просто не хватает второго метода, который переворачивает шоу.

  $('.parent-item').hover(function() {
    $(this).find('.meta--reveal').show();
  }, function(){
    $(this).find('.meta--reveal').hide();
  });
.parent-item .meta--reveal {
  display: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="parent-item">
  <h3>title 01</h3>
  <span class="meta--reveal">
    <a class="btn" href="#">Link</a>
  </span>
</div>

<div class="parent-item">
  <h3>title 02</h3>
  <span class="meta--reveal">
    <a class="btn" href="#">Link</a>
  </span>
</div>

36
задан Community 23 May 2017 в 12:24
поделиться

6 ответов

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

Вы создаете ряд команд для отправки к серверу от клиента. Каждая команда обрабатывается через цепочку ответственности с данными, добавленными для обработки команды правильно.

На данных отправляют, цепочка могла быть похожей на это


Command   --> Wrap some       --> Encrypt --> Send data
to send       data around 
              the command 
              (source, extra 
              information if 
              needed)

На данных получают, цепочка могла быть подобной, но наоборот

Receive Data  -->  Decrypt --> Unwrap extra data --> Execute command

Можно проверить эту статью на большую информацию о цепочке ответственности. http://www.vincehuston.org/dp/chain.html

9
ответ дан Martin 27 November 2019 в 06:16
поделиться

Я рекомендую: краткий обзор далеко сетевой протокол/s.

Первый решают то, что является функциональностью, модулями и API между ними. Тогда решите то, на чем протокол является данными, собирающимися поехать по сети.

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

3
ответ дан flybywire 27 November 2019 в 06:16
поделиться

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

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

OpenSSH является другим хорошим кандидатом; это поддерживает функцию согласования, несколько типов шифрования и de/muxing каналов.

протоколы VoIP хороши для потоковой передачи приложений: RTP и протоколы H.323

Сетевой маршрутизации хороши также: BGP (и расширения), LDP, VRRP/CARP.

0
ответ дан HUAGHAGUAH 27 November 2019 в 06:16
поделиться

Я не знаю о шаблонах, как таковых, но существует несколько "очевидных" точек выбора. Во-первых, Вы хотите использовать ASN.1 или не (это влияет на много)? Во-вторых, Вы хотите человекочитаемый протокол или двоичную единицу? В-третьих, Вы хотите какие-либо аспекты безопасности в своем протоколе?

Не то, чтобы ответ "хочет использовать ASN.1", вызовет ответ на довольно многие вопросы о дизайне протокола.

-1
ответ дан Vatine 27 November 2019 в 06:16
поделиться

Это - довольно широкий вопрос, и его обработка, вероятно, требует довольно плотной книги.

Я не знаю ни о каком подобном ресурсе сам, но позволяет, продумывают это и рассматривают то, что было бы размерами пространства шаблона сетевой связи:

модальность соединения: {основанный на соединении, без установления соединения}

модальность взаимодействия: {синхронный, асинхронный}

сложность разговора: {ответ команды, диалоговое окно}

форма сообщения: {поток свободной формы, полуструктурированный блок, полностью структурированный блок}..?

Хорошее место для запуска состоит в том, чтобы взять семейство TCP/IP протоколов, отобразить их на вышеупомянутое пространство и смотреть на реализацию (реализации) одного или нескольких экземпляров, которые занимают уникальное положение в вышеупомянутом пространстве шаблона характеристик протокола. Исходный код Вашего фаворита *отклоняет OS, было бы хорошее место для взгляда.

Реализации синтаксического анализатора, вероятно, попали бы в две широких категории: {переключенная в команду обработка, конечный автомат}.

Первый - (очевидно), более простые из двух и вероятно начального внедрения (если Вы не сделали этот вид вещи прежде).

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

(Базовая (виртуальная) ОС сетевые средства, (конечно), также значительно влияет на реализацию. Возьмите JVM, например: NIO основанная на выборе обработка канала работала бы вполне приятно с FSM.)

Надежда, которая помогает.

14
ответ дан alphazero 27 November 2019 в 06:16
поделиться

Я не изучал это полностью, но я думаю этот хороший документ:

Кроме того, этот выглядит как хорошая книга:

-1
ответ дан 27 November 2019 в 06:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: