Рубрика «Программирование» - 383

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год

Computer Systems Security — это курс о разработке и внедрении защищенных компьютерных систем. Лекции охватывают модели угроз, атаки, которые ставят под угрозу безопасность, и методы обеспечения безопасности на основе последних научных работ. Темы включают в себя безопасность операционной системы (ОС), возможности, управление потоками информации, языковую безопасность, сетевые протоколы, аппаратную защиту и безопасность в веб-приложениях.

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Лекция 2: «Контроль хакерских атак» Часть 1 / Часть 2 / Часть 3
Лекция 3: «Переполнение буфера: эксплойты и защита» Часть 1 / Часть 2 / Часть 3Читать полностью »

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год

Computer Systems Security — это курс о разработке и внедрении защищенных компьютерных систем. Лекции охватывают модели угроз, атаки, которые ставят под угрозу безопасность, и методы обеспечения безопасности на основе последних научных работ. Темы включают в себя безопасность операционной системы (ОС), возможности, управление потоками информации, языковую безопасность, сетевые протоколы, аппаратную защиту и безопасность в веб-приложениях.

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Лекция 2: «Контроль хакерских атак» Часть 1 / Часть 2 / Часть 3
Лекция 3: «Переполнение буфера: эксплойты и защита» Часть 1 / Часть 2 / Часть 3Читать полностью »

Привет! Я — Михаил Баранников, Android Team Lead в e-Legion и участник Программного комитета MBLT DEV 2018. Пока вы наслаждаетесь отпуском или наличием кондиционера в офисе, мы отбираем доклады предстоящей конференции.

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

Новости конференции MBLT DEV 2018: Android-трек - 1
Читать полностью »

PVS-Studio и SAST

До недавнего времени в своих статьях мы позиционировали PVS-Studio как инструмент для выявления ошибок в коде. При этом мы почти не рассматривали PVS-Studio в контексте безопасности. Попробуем немного исправить эту ситуацию и взглянем на инструмент с точки зрения тестирования защищённости приложений и DevSecOps практик.
Читать полностью »

Когда я, так сказать, прошёлся по Интернету, я заметил одну интересную особенность. Все парадигмы программирования, где-либо обсуждаемые, воспринимаются людьми совершенно спокойно. Если, например, говорят про процедурное программирование, то говорят про него абсолютно спокойно. То же самое — про модульное программирование. Декларативное программирование — никаких бурь, волнений или холиваров. Функциональное программирование — то же самое.

И только вокруг ООП не утихают бури.Читать полностью »

Доброго времени суток!

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

Подумав минут 30 над этой проблемой, загуглив какие ещё есть виды сортировок, наткнулся на сортировку подсчётом. И пришёл к выводу, что её можно улучшить, что и постарался сделать.

Итак. Берём сортировку подсчётом и деревом.

Строим дерево Пар (Ключ, Количество), где Ключ отвечает за элемент массива, а Количество — количество повторений этого эл-та массива. Дерево, естественно, сбалансированное, АВЛ или чёрно-красное, но у АВЛ слишком жёсткие требования, так что второй вариант предпочтительнее.

Далее всё логично. Добавляем все элементы массива в Пару, а Пару ищем в дереве (чтобы избежать пересоздания объектов используем заранее созданную Пару, у которой меняем Ключ. Здесь Количество нас не интересует, поскольку мы ищем соответствие исключительно по Ключу). Если такой Ключ уже есть, увеличиваем Количество, иначе добавляем новую Пару (Ключ, 1).

Переписываем массив, удаляя каждый раз вершину и записывая Ключ столько раз, сколько у него Количество.
Читать полностью »

Инструкция по установке префикса для сканера MINDEO CS2190 для работы с 1С Предприятие в режиме разрыва клавиатуры.

Установка префикса для сканера MINDEO CS2190 для работы с 1С в режиме разрыва клавиатуры - 1

Рассмотрим настройку сканера MINDEO CS2190 с USB кабелем для работы с 1С Предприятие в режиме разрыва клавиатуры или имитации клавиатуры.

Сам сканер легко подключается к компьютеру в любой порт USB, и Windows быстро и легко сама устанавливает необходимые драйвера. После чего сканер готов работе, и это можно проверить сканированием в блокнот. Но для работы сканера с 1С, которая находится еще удаленно на терминале, придется немного изменить настройки сканера.
Читать полностью »

Блиц о микросервисах - 1

Идея микросервисов не нова. Те, кто постарше, возможно, работали еще с EJB в эпоху их расцвета. Да что там, уже Сэмюэль Кольт использовал модульный подход для производства своих револьверов. Стандартные, прецизионно изготовленные детали его пистолетов были взаимозаменяемы, что существенно упрощало как производство, так и обслуживание. Так почему бы и инфраструктуре не быть модульной?

Принципиальных возражений тому нет, да и сама идея лежит на поверхности. Но популярной тема микросервисов стала сравнительно недавно. И тому есть причина.
Читать полностью »

Сегодня платформа .NET является по-настоящему универсальным инструментом – с её помощью можно решать широчайший круг задач, включая разработку прикладных приложений для популярных операционных систем, таких, как Windows, Linux, MacOS, Android и iOS.

В настоящей статье рассмотрим архитектуру кроссплатформенных .NET приложений с использованием шаблона проектирования MVVM и реактивного программирования. Познакомимся с библиотеками ReactiveUI и Fody, научимся реализовывать интерфейс INotifyPropertyChanged с помощью атрибутов, затронем основы AvaloniaUI, Xamarin Forms, Universal Windows Platform, Windows Presentation Foundation и .NET Standard, изучим эффективные инструменты для модульного тестирования слоёв модели и модели представления приложения.

Материал является адаптацией статей "Reactive MVVM For The .NET Platform" и "Cross-Platform .NET Apps Via Reactive MVVM Approach", опубликованных автором ранее на ресурсе Medium. Читать полностью »

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год

Computer Systems Security — это курс о разработке и внедрении защищенных компьютерных систем. Лекции охватывают модели угроз, атаки, которые ставят под угрозу безопасность, и методы обеспечения безопасности на основе последних научных работ. Темы включают в себя безопасность операционной системы (ОС), возможности, управление потоками информации, языковую безопасность, сетевые протоколы, аппаратную защиту и безопасность в веб-приложениях.

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Лекция 2: «Контроль хакерских атак» Часть 1 / Часть 2 / Часть 3Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js