Pull to refresh

Практический HTML: работаем с таблицами

Website development *
Translation
Примечание: ниже находится перевод статьи «Bring on the tables», в которой рассматривается использование таблиц по прямому назначению и некоторые методы по увеличению их доступности.

UPD: текст статьи полностью убран в связи с его неконтролируемыми преобразованиями с момента публикации.
Total votes 65: ↑60 and ↓5 +55
Views 1.6K
Comments 106

Спецификации протокола Scope

Opera
Translation
Ни разу до этого не писал переводы, если есть замечания, пожалуйста, в хабрапочту.

Сегодня мы рады представить спецификации протокола Scope. Этот протокол используется для связи Оперы с отладчиком Dragonfly. Он также используется в компании Опера для автоматизированного тестирования браузера.
Читать дальше →
Total votes 31: ↑26 and ↓5 +21
Views 1.2K
Comments 22

Правильный захват контекста в Javascript

JavaScript *
Довольно часто во многих статьях я вижу, как люди захватывают контекст this для использования в анонимной функции и удивляюсь — то, что уже стало стандартом — просто ужасная практика, которая противоречит всем канонам программирования. Вам знакома такая запись?
var self this;
Может вам тоже стоит переосмыслить этот аспект?
Читать дальше →
Total votes 113: ↑87 and ↓26 +61
Views 35K
Comments 147

Оптимизация JavaScript: Scope, Low level ES vs ES5 Array methods

JavaScript *
Сегодня мы будем тестировать 2 блока кода, выполняющие следующую операцию:
Дается массив, необходимо выбрать все элементы, степень 2 которых больше 5.

В синем углу Вариант А: Низкоуровневый код — старый и страшный (поддающийся частичной оптимизации)
  1.    for (i = 0, res = []; i < c; i++) {
  2.        t = a[i];
  3.        if (t >= 2.236067) {
  4.            continue;
  5.        } else {
  6.            res.push(t * t);
  7.        }
  8.    }

В красном углу Вариант Б: Высокоуровневый код — молодой и красивый (не поддающийся частичной оптимизации)
  1. a.map(function (t) { return t * t}).filter(function (t) { return t > 5});

Битвы будут происходить на 3 аренах.
1. AO args — Параметры объекта активации функции.
2. AO — Локальные переменные объекта активации функции.
3. Global — Глобальные переменные.

Читать дальше →
Total votes 17: ↑9 and ↓8 +1
Views 1.9K
Comments 29

Аналог scope(exit) на С++

C++ *
Прочитал, недавно, на хабре, статью про scope(exit) в языке D и проникся красотой идеи.
Ведь так часто бывает, что нужно выполнить какой-либо код по выходу из функции, а создавать каждый раз страж — утомительно, да и не всегда возможно.
Но, использую новый стандарт, в С++ можно сделать не хуже, кому интересно — прошу под кат.
Читать дальше →
Total votes 23: ↑20 and ↓3 +17
Views 5.5K
Comments 36

Понимание областей видимости или Scope в AngularJS

Website development *JavaScript *Angular *
Translation
Tutorial
В Ангуляре, дочерняя область видимости обычно прототипически наследуется от родительской. Единственным исключением является директива, в которой используется scope: { ... }, создающая «изолированную» область видимости, не наследуемую прототипически. Такая конструкция часто используется при создании директив для компонентов «многоразового использования»
Читать дальше →
Total votes 38: ↑34 and ↓4 +30
Views 77K
Comments 6

Всё, что вы хотели знать об областях видимости в JavaScript (но боялись спросить)

JavaScript *
Translation
У JS есть несколько концепций, связанных с областью видимости (scope), которые не всегда ясны начинающим разработчикам (и иногда даже опытным). Эта статья посвящена тем, кто стремится погрузиться в пучину областей видимости JS, услышав такие слова, как область видимости, замыкание, “this”, область имён, область видимости функции, глобальные переменные, лексическая область видимости, приватные и публичные области… Надеюсь, по прочтению материала вы сможете ответить на следующие вопросы:

— что такое область видимости?
— что есть глобальная/локальная ОВ?
— что есть пространство имён и чем оно отличается от ОВ?
— что обозначает ключевое слово this, и как оно относится с ОВ?
— что такое функциональная и лексическая ОВ?
— что такое замыкание?
— как мне всё это понять и сотворить?
Читать дальше →
Total votes 57: ↑47 and ↓10 +37
Views 79K
Comments 38

Тонкости Javascript/Node.js. Увеличиваем производительность в десятки раз

JavaScript *Node.JS *
Sandbox

Вступление


Появилась необходимость обмениваться сообщениями между сервером и клиентом в бинарном виде, но в формате JSON в конечном итоге. Начал я гуглить, какие существуют библиотеки упаковки в бинарный вид. Пересмотрел немало: MesssagePack, Bson, protobuf, capnproto.org и другие. Но эти все библиотеки позволяют паковать и распаковывать готовые бинарные пакеты. Не очень копался, возможно ли делать парсер входящего трафика по кускам. Но суть не в этом. С такой задачей никогда не сталкивался и решил поиграться с нодой и сделать свой. Куда же без костылей и велосипедов? И вот с какими особенностями Node.js я столкнулся…
Читать дальше →
Total votes 47: ↑35 and ↓12 +23
Views 43K
Comments 38

История моего участия в Ubuntu Scope Showdown 2016

Development of mobile applications *

15 января 2016 года был аннонсирован ежегодный конкурс Ubuntu Scope Showdown! Участникам предлагалось в течение шести недель разработать с нуля и опубликовать в магазине приложений свой скоуп для Unity 8 (официальный перевод слова scope как «линза» совсем не радует, поэтому пусть будет просто скоуп). За эти полтора месяца было разработано порядка 15 скоупов, еще полтора месяца шло голосование жюри (в три раза дольше заявленных двух недель). В результате победителями оказались Roman Shchekin, Ricardo Silva, Michael Weimann и Pieter Engelbrecht. О своем же опыте участия я бы хотел рассказать под хабракатом.
Читать дальше →
Total votes 12: ↑11 and ↓1 +10
Views 4K
Comments 3

Какие возможности предоставляет Spring для кастомизации своего поведения

OTUS corporate blog Website development *Programming *Java *Industrial Programming *
Всем привет. На связи Владислав Родин. В настоящее время я являюсь руководителем курса «Архитектор высоких нагрузок» в OTUS, а также преподаю на курсах, посвященных архитектуре ПО.

Помимо преподавания, я занимаюсь написанием авторского материала для блога OTUS на хабре и сегодняшнюю статью хочу приурочить к запуску курса «Разработчик на Spring Framework», на который прямо сейчас открыт набор.




Введение


С точки зрения читателя код приложения, использующего Spring, выглядит достаточно просто: объявляются некоторые bean'ы, классы размечаются аннотациями, а дальше bean'ы inject'ятся куда нужно, все прекрасно работает. Но у пытливого читателя возникает вопрос: «А как это работает? Что происходит?». В этой статье мы попытаемся ответить на данный вопрос, но только не ради удовлетворения праздного любопытства.

Spring framework известен тем, что он является достаточно гибким и предоставляет возможности для настройки поведения framework'а. Также Spring «изобилует» рядом достаточно интересных правил на применение некоторых аннотаций (например, Transactional). Для того, чтобы понять смысл этих правил, уметь их выводить, а также понимать что и как можно настраивать в Spring'е, необходимо понять несколько принципов работы того, что находится у Spring'а под капотом. Как известно, знание нескольких принципов освобождает от знания множества фактов. Я предлагаю ознакомиться с этими принципами ниже, если вы их, конечно, еще не знаете.
Читать дальше →
Total votes 16: ↑15 and ↓1 +14
Views 3.1K
Comments 2

JavaScript: область видимости простыми словами

Website development *JavaScript *Programming *
Translation
Доброго времени суток, друзья!

Область видимости — важная концепция, определяющая доступность переменных. Данная концепция лежит в основе замыканий, разделяя переменные на глобальные и локальные.

В этой статье я постараюсь простыми словами объяснить, что такое область видимости в JavaScript.
Читать дальше →
Total votes 8: ↑8 and ↓0 +8
Views 48K
Comments 5

Подключение внешнего L2-сегмента к Cisco ACI с помощью EPG и L2Out

IT Infrastructure *Cisco *Network technologies *
Translation

Сегодня я хотел бы поделиться своим опытом настройки связности Cisco ACI с внешним L2-сегментом. Как известно, есть два подхода к решению этой задачи: классифицировать внешний сегмент в отдельную EPG или же использовать объект External Bridged Network, также известный как L2Out.

Читать далее
Total votes 1: ↑1 and ↓0 +1
Views 1.3K
Comments 0

Scope в управлении проектами

OTUS corporate blog Project management *
Translation

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

Читать далее
Total votes 10: ↑6 and ↓4 +2
Views 1.6K
Comments 3