Pull to refresh
0
0
Дмитрий Макаров @dime_makarov

Разработчик .NET

Send message

Охота на мифический MVC. Построение пользовательского интерфейса

Reading time27 min
Views40K

Детектив по материалам IT. Часть вторая


В этой части я покажу как изначально выглядело деление пользовательского интерфейса и что из себя представляли Вид и Контроллер. Попробую рассказать почему в современных GUI библиотеках используется их объединение и какие вообще интересные решения можно найти в этой области на сегодняшний день. Ссылки на первоисточники приведены в начале первой части.


Начну с Вида. Не смотря на то, что Вид определяется как модуль, отображающий Модель – "а view is a (visual) representation of its model", на практике к Виду, как правило, просто относят все графические элементы GUI, то есть Видом считается все то, что мы видим на экране ЭВМ.


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


View or Controller

Читать дальше →
Total votes 19: ↑19 and ↓0+19
Comments31

Про сахара с точки зрения химика. Химия на кухне 2

Reading time12 min
Views134K

Старинная форма фасовки сахара — «сахарная голова»
Выкладываю продолжение, как обещал. Первый пост был про соль.
Про сахар. Какие бывают сахара. Про кленовый сахар и сахар ли он? Сосульки из кленового сока — ценный дар природы. Моно- и много- сахариды. Что общего у омара, тарантула, ёлки, гриба, мёда и ракеты «Кассам». Ставим химический опыт по превращению крахмала… Как блеснуть эрудицией. Фруктоза — польза и вред, две стороны вопроса. Кто виноват в том, что от молока болит живот. Как получается, что кислое варенье меньше засахаривается. Из чего делают мёд. Из чего делают сахар. Про тростниковый сахар — едим ради его вкуса.
Всем привет! Что-то после рассказов про «белую смерть», захотелось поговорить про «сладкую». Это такой каламбур, шутка юмора. Вопрос вреда, и в данном случае, как Вы уже догадываетесь, заключается в основном, в неумеренном потреблении. Ну вот, значит, встречаются на полке много разных сортов сахара, и из местных и приезжие, и начинают выяснять, кто из них лучше… Стоп! Не допустим мордобоя, и разберемся сами.
Читать дальше →
Total votes 143: ↑140 and ↓3+137
Comments159

Про соль с точки зрения химика

Reading time10 min
Views176K
На самом деле этот пост был подготовлен еще в апреле 2014 года, я не смог тогда его опубликовать. Являлся вторым в ожидавшейся серии. Можете глянуть первый. На эту тему писать меня сподвигло желание внести немного ясности в представления о некоторых химических аспектах нашего бытия. Пользуясь тем, что химия — наука, не слишком популярная в массах, нам иногда рекламщики и пресса выдают такие перлы, что у меня не хватает слов для описания эмоций. Так что попробуем слегка рассеять туман, ну и чтоб это было интересно и актуально для наших условий. Недавно встретил похожую переводную публикацию, тоже про соль. Серьёзную и хорошо сделанную, правда, слегка не о нашей действительности.

Итак — про соль


Так в Африке ею и торгуют. Толщина кусков, вероятно определяется толщиной пласта. Слабенькие пласты.

Солить или не солить. А зачем вообще соль, может лучше без неё? Заменитель соли? Ценная соль с минералами и розового цвета — а зачем козе баян? Рекламные посты — хороший способ приготовить лапшу на уши.
Читать дальше →
Total votes 200: ↑190 and ↓10+180
Comments327

Про жиры с точки зрения химика

Reading time18 min
Views116K
КДПВ Витязь на распутье


Приветствую всех! Статью про взгляд на проблему жиров с моей, химической точки зрения я обещал написать уже давно, да больно уж вопрос непонятен. Однако, попробуем разобраться. Хотя на эту тему существует громадное количество публикаций — ясности они не приносят — так как часто противоречат и друг другу и здравому смыслу. Так что, собравшись с духом, решил рыться в материалах до момента понимания. Вас же приглашаю ознакомиться с моими изысканиями. Нам придётся копать несколько глубже обычного, постараемся разобраться с этим вопросом «с точки зрения банальной эрудиции»… в смысле — логики. На вход — факты, только факты. Причём, моя цель просто выяснить для себя этот вопрос, каких-либо других целей не имею. Меня интересует — какие жиры более полезны, какие вредны, сколько их употреблять и каких, на чём жарить, как сохраняются, разъяснить странности с маргариновыми транс-жирами(для меня объяснения изготовителей выглядят туманными и неполными). Всё это в рамках официальных рекомендаций ВОЗ и российских уполномоченных органов — то есть никакой конспирологии. Если Вам это интересно — прошу под кат.
Читать дальше →
Total votes 63: ↑61 and ↓2+59
Comments242

Личный опыт получения Голубой карты в Германии 2015-2016. Часть 2: Визовые вопросы

Reading time4 min
Views27K
Первая часть тут

В данной статье я хочу описать процесс сбора и подачи документов для получения национальной визы (Голубая карта получается уже на территории Германии).

Итак, пришел оригинал моего контракта, и я был готов (как мне казалось) к визиту в консульство. Его я назначил на 25 августа. В перечне необходимых документов было четко указано, что точное указание вашей специальности (слово в слово) должно присутствовать на сайте anabin.kmk.org. Вот тут получилась очень интересная ситуация.

Мой диплом инженера слово в слово отсутствовал, хотя было много аналогов. А вот мой диплом кандидата наук естественно присутствовал «kandidat techniceskich nauk». Подумав, что именно высшая ступень обучения играет роль, я решил попробовать. Но в консульстве мне дали четко понять, что голубая карта предполагает наличие высшего образования и моя ученая степень никого не интересует, и нужно делать запрос в KMK (ZAB). Но была и хорошая новость — все остальные документы в порядке и, при наличии бумаги от KMK, моя виза будет сделана за 2-3 рабочих дня.
Читать дальше →
Total votes 22: ↑20 and ↓2+18
Comments40

Личный опыт получения Голубой карты в Германии 2015-2016. Часть 1: Поиск работы

Reading time7 min
Views32K
Всем привет. В данной статье я хочу поделиться своим опытом получения голубой карты ЕС. Идеи об эмиграции у меня были всегда, я постоянно смотрел информацию о существующий программах и вариантах покинуть просторы нашей страны. Причины моих порывов сугубо личные и никому я их навязывать не хочу.

Так получилось, что в школе я изучал немецкий, и всегда считал что он мне абсолютно не пригодится в жизни. Потому учил я его без энтузиазма.
Читать дальше →
Total votes 48: ↑43 and ↓5+38
Comments79

Программирование&Музыка: понимаем и пишем VSTi синтезатор на C# WPF. Часть 1

Reading time26 min
Views50K

Занимаясь музыкальным творчеством, я часто делаю аранжировки и записи на компьютере — используя кучу всяких VST плагинов и инструментов. Стыдно признаться — я никогда не понимал, как "накручивают" звуки в синтезаторах. Программирование позволило мне написать свой синтезатор, "пропустить через себя" процесс создания звука.


Я планирую несколько статей, в которых будет пошагово рассказано, как написать свой VST плагин/инструмент: программирование осциллятора, частотного фильтра, различных эффектов и модуляции параметров. Упор будет сделан на практику, объяснение программисту простым языком, как же все это работает. Теорию (суровые выводы и доказательства) обойдем стороной (естественно, будут ссылки на статьи и книги).


Обычно плагины пишутся на C++ (кроссплатформенность, возможность эффективно реализовать алгоритмы), но я решил выбрать более подходящий для меня язык — C#; сфокусироваться на изучении самого синтезатора, алгоритмов, а не технических деталей программирования. Для создания красивого интерфейса я использовал WPF. Возможность использования архитектуры .NET дала возможность библиотека-обертка VST. NET.


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



Предстоит нелегкий путь, если вы готовы — добро пожаловать под кат.


Total votes 55: ↑54 and ↓1+53
Comments20

Пора рассказать, как я 4 года был Билайном на Хабре — и что за это время узнал про Хабр

Reading time16 min
Views62K
Вчера был очередной семинар Хабра о том, как надо делать корпоративные блоги, и я там не выдержал и рассказал эту историю.



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

Но начну с самого начала. Итак, Хабр тогда был торт — большой и зверски агрессивный, хабов не было, а корпоративные блоги были чем-то вроде раздела «тупиковый отстой». За любую ссылку или рекламу тогда почти банили. Или забивали до -50 за час, например. С корпоративным рылом в такой калашный ряд было никак нельзя.

И ещё – Билайн, как и любой сотовый оператор, имел тысячи людей, не очень довольных его существованием. Поэтому первый пункт стратегии был довольно необычным, и мало кто мог позволить себе его повторить. Всё просто: пишут исключительно технари, а маркетинг на пушечный выстрел не подходит к постам.

Технари, кстати, оказались совершенно офигенные. Только плевать они хотели на Хабр, по большому счёту. Как и везде.
Читать дальше →
Total votes 228: ↑217 and ↓11+206
Comments108

Каким должно быть настоящее электронное правительство? Эстония показывает пример

Reading time5 min
Views28K
Система «электронного гражданства», онлайн-голосование, госуслуги в сети и многое другое — это современная Эстония



Два года назад Эстония анонсировала новую государственную программу: введение так называемого статуса «электронного гражданина» для граждан любых других государств. Став «электронным гражданином» Эстонии, любой иностранец получает большое количество возможностей по ведению бизнеса не только в этой стране, но и по всему миру. Среди них — открытие счета в эстонском банке, регистрация компании, получение электронной подписи для верификации своих документов в любой точке мира.

Регистрация компании на государственном онлайн-сервисе занимает всего лишь пару часов (рекорд – 18 минут). Для того, чтобы заполнить заявку, необходимо загрузить свою фотографию и коротко описать причины, которые побуждают человека запрашивать новый статус. После отправки заявки эта электронная форма проходит проверку в правоохранительных органах Эстонии. Если все хорошо, кандидата приглашают на встречу с представителями консульства (встреча может происходить в любом городе любой страны, где есть консульство Эстонии). И затем, если встреча прошла без проблем (а так обычно и бывает), через месяц кандидат на «электронного гражданина» получает свои документы.
Читать дальше →
Total votes 26: ↑20 and ↓6+14
Comments50

Торговля на бирже в вопросах и ответах: счета, страховки и сравнение с банками

Reading time5 min
Views30K


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

Поэтому мы решили собрать ответы на наиболее часто встречающиеся вопросы новичков в один топик.
Читать дальше →
Total votes 16: ↑13 and ↓3+10
Comments4

Давайте уже разберемся в DNS

Reading time8 min
Views438K

image
Внимательный читатель найдет на этой картинке IPv6


Люди часто озадачены доменами. Почему мой сайт не работает? Почему эта хрень поломана, ничего не помогает, я просто хочу, чтобы это работало! Обычно, вопрошающий или не знает про DNS, или не понимает фундаментальных идей. Для многих DNS — страшная и непонятная штука. Эта статья — попытка развеять такой страх. DNS — это просто, если понять несколько базовых концепций.


Что такое DNS


DNS расшифровывается как Domain Name System. Это глобальное распределенное хранилище ключей и значений. Сервера по всему миру могут предоставить вам значение по ключу, а если им неизвестен ключ, то они попросят помощи у другого сервера.


Вот и все. Правда. Вы или ваш браузер запрашивает значение для ключа www.example.com, и получает в ответ 1.2.3.4.

Читать дальше →
Total votes 52: ↑48 and ↓4+44
Comments36

Поиск работы за рубежом: дайджест полезных материалов для потенциальных ИТ-экспатов

Reading time4 min
Views59K


Вопрос о поиске работы за границей при нынешней нестабильной экономической ситуации в России стоит перед многими ИТ-специалистами довольно остро. Недавний опрос мэрии Иннополиса и рекрутингового портала HeadHunter показал, что около 13% российских ИТ-спецалистов готовы стать «трудовыми мигрантами». Но так ли просто найти работу за рубежом и настолько ли «там» все лучше, чем «здесь» — чтобы с этим разобраться я изучил много интересных материалов. Свое мнение афишировать не буду, лучше поделюсь полезным дайджестом материалов о поиске работы в разных странах и решения возникающих по ходу дела задач и вопросов.
Читать дальше →
Total votes 40: ↑27 and ↓13+14
Comments61

Создание веб-сайта. Курс молодого бойца

Reading time24 min
Views818K
Как-то меня попросили провести небольшой семинар в лицее, где я когда-то учился, по созданию веб-сайта. В процессе написания речи я подумал, что она может вылиться в материал, который, возможно, будет полезен многим начинающим в области веб-дизайна, вёрстки веб-страниц и пр. Я не претендую на истину в первой инстанции и всё изложенное носит чисто личностный взгляд на работу с дизайном и кодом. Статья даёт поверхностный взгляд на понятия и средства, которые, на мой взгляд, могут стать неплохим стартом для того, кто готов идти дальше.
Читать дальше →
Total votes 86: ↑77 and ↓9+68
Comments46

Про модель, логику, ООП, разработку и остальное

Reading time29 min
Views109K
Часто ли вы задумываетесь – почему что-то сделано так или иначе? Почему у вас микросервисы или монолит, двухзвенка или трехзвенка? Зачем вам многослойная архитектура и сколько у вас вообще слоев? Что такое бизнес-логика, логика приложения, презентационная логика и почему все так разделено? Посмотрите на свое приложение – как оно вообще спроектировано? Что в нем и где находится, почему это сделано именно так?
Потому что так написано в книжках или так говорят авторитетные личности? Какие ВАШИ проблемы решает тот или иной подход/паттерн?
Даже то, что на первый взгляд кажется очевидным, порой бывает очень сложно объяснить. А иногда, в попытке объяснения, приходит понимание того, что очевидные мысли были и вовсе ошибочны.
Давайте попробуем взять какой-нибудь пример и изучить на нем эти вопросы со всех сторон.
Читать дальше →
Total votes 55: ↑51 and ↓4+47
Comments34

Строение двигателей

Reading time7 min
Views128K
Недавно наткнулся на прекрасный сайт (англ.), который по полочкам размусоливает и показывает строение большинства типов двигателей. Попытаюсь вольно и сжато пересказать самое на мой взгляд главное, совсем по пальцам и как для самых маленьких. Конечно можно было бы позаимствовать точные определения из авторитетных источников, но такой любительский перевод обещает быть единственным в своем роде :)

А можете ли Вы сходу объяснить Вашей девушке, в чем отличие бензинового двигателя от дизельного? Четырёхтактного и двухтактного движков? Нет? Тогда приглашаю под кат.

Читать дальше →
Total votes 249: ↑220 and ↓29+191
Comments142

Пишем своё расширение для браузера Mozilla Firefox

Reading time5 min
Views61K
Итак, после обновления Firefox до 19 версии, полностью отвалилось горячо любимое расширение Яндекс.Бар. Не забуду напомнить, что Яндекс.Бар был заменен Яндекс.Элементами, которые понравились чуть больше, чем никому, поэтому и получили свои заслуженные 2 бала из 5ти.

Почему не понравились? Заменили адресную строку, стало неудобно просматривать почту, заменили закладки и убрали корректор адресной строки (под предлогом установки Punto Switcher, который может и хорош для обычного работника, но никак не для программиста. Поэтому и был удален почти сразу же, как установлен. Да и если можно было бы настроить, то всё равно желание пропало).

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

Читать дальше →
Total votes 49: ↑37 and ↓12+25
Comments48

Цифровое добро (прямые электронные платежи в руках музыкантов, художников и других творцов)

Reading time5 min
Views19K
Для специалистов: ничего революционного в посте нет. Статья будет полезна людям, не особо искушенным в информационных технологиях, например, музыкантам.

Уже много лет все ждут полноценного прихода PayPal в Россию. Думаю, многие заметили, что наконец, это свершилось. Но сразу возникает вопрос: «А зачем этот PayPal нам, собственно, нужен?». Вопрос справедлив, учитывая наличие таких сервисов как WebMoney, Яндекс.Деньги, Visa Qiwi Wallet, ROBOKASSA и других.

Есть такой замечательный человек, как Фёдор Чистяков (лидер групп «Ноль» и «Чистяков-Бэнд»). У себя в блоге он написал пост про PayPal с точки зрения музыканта. По его личной просьбе я решил написать этот пост на Хабре. Буду говорить о музыкантах, но всё это можно переложить и на другие сферы культуры.
Читать дальше →
Total votes 19: ↑18 and ↓1+17
Comments52

Замыкания в C#

Reading time2 min
Views62K
Перед прочтением статьи, ответьте на следующий вопрос — что будет напечатано, после исполнения следующего кода?

P p = Console.WriteLine; // P объявлен как delegate void P();
foreach (var i in new [] { 1, 2, 3, 4 }) {
  p += () => Console.Write(i);
}
p();
Элементарно?
Total votes 65: ↑53 and ↓12+41
Comments43

Разбираем x.509 сертификат

Reading time11 min
Views218K

Привет, %username%!

Так уж вышло, что несмотря на относительно неплохое понимание инфраструктуры открытых ключей, содержимое *.crt файлов всегда оставалось для меня полнейшей загадкой.
Нет, не поймите неправильно. Я знаю, что x.509 сертификат содержит информацию о владельце, открытый ключ, сведения об удостоверяющем центре и электронную цифровую подпись. Но при установке очередного сертификата меня всегда мучило любопытство.
Чем отличается идентификатор ключа от отпечатка? Какие данные сертификата подписываются, а какие нет? И что за структура данных позволяет хранить всю эту информацию, сводя избыточность к минимуму.
Но вот наконец-то любопытство перебороло лень и в данном посте я постараюсь описать структуру x.509 сертификатов и ответить на эти и другие вопросы.
Читать дальше →
Total votes 79: ↑75 and ↓4+71
Comments31

Information

Rating
Does not participate
Location
Лимассол, Government controlled area, Кипр
Date of birth
Registered
Activity