Почему "=" означает присваивание?

Автор: admin от 11-04-2018, 18:55, посмотрело: 127

Давайте посмотрим на следующий код:



a = 1
a = a + 1
print(a)


В среде ФП часто критикуют данный момент императивного программирования: «Как так может быть, что a = a + 1? Это всё равно что сказать „1 = 2“. В мутабельном присваивании нет смысла».



Здесь мы наблюдаем несовпадение обозначения: «равно» должно обозначать «равенство», когда на практике оно обозначает «присвоить». Я согласен с этой критикой и считаю, что это неудачная нотация. Но также мне известно, что в некоторых языках вместо a = a + 1 пишут выражение a := a + 1. Почему же эта запись не является нормой?



На этот вопрос обычно отвечают «потому что так сделано в C». Но это похоже на перекладывание ответственности на кого-то другого: кто из нас знает, почему так сделано в C? Давайте разбираться вместе!



Большая четвёрка



В начале 1960-ых существовало четыре доминирующих высокоуровневых языка: COBOL, FORTRAN II, ALGOL-60, и LISP. В то время, программисты разбивали присваивание на два класса: инициализацию (initialization) — когда вы впервые определяете переменную, и переприсвоение (reassignment) — когда вы вы изменяется значение существующей переменной.

Категория: Операционные системы » Windows

 

Полезные советы IT-администратору: развертывание различных ОС с помощью Windows Deployment Services

Автор: admin от 11-04-2018, 18:55, посмотрело: 101

Мой коллега Гэри Уильямс – системный администратор с большим опытом работы – поделился советами о том, как можно использовать Windows Deployment Services для развертывания не только ОС Windows. И сегодня я предлагаю его рекомендации вашему вниманию.



Windows Deployment Services (WDS) – полезное дополнение к платформе Windows. Для развертывания виртуальных машин с гостевой ОС Windows этот инструмент можно использовать прямо «из коробки». А после нескольких ловких движений руками он вполне в состоянии справиться с задачей развертывания серверов Linux и VMware при помощи загрузочного меню Preboot eXecution Environment (PXE).



В числе этих манипуляций – парочка команд, запускаемых из командной строки. Нужно всего-навсего переключить загрузчик PXE, используемый Windows, на загрузчик для Linux. В результате создастся пункт меню, позволяющий переключать загрузку с Linux PXE на таковую для Windows в случае необходимости, а IIS будет использоваться для работы веб-интерфейса для скачивания конфигурации Linux.



Я использую настроенный WDS для развертывания Windows, CentOS и ESXi, про что и расскажу в этом посте. Думаю, что пользователи других платформ найдут здесь идеи и для их развертывания.



Полезные советы IT-администратору: развертывание различных ОС с помощью Windows Deployment Services

Категория: Операционные системы » Windows

 

Фреймворк для бессерверных приложений в AWS

Автор: admin от 11-04-2018, 07:00, посмотрело: 127

Мы решили создать небольшой фреймворк для бессерверных веб-приложений в AWS. Может более правильно назвать это не фреймворком, а заготовкой, — я не знаю. Но суть в том, чтобы создать основу для быстрой разработки бессерверных приложений в AWS. Код выложен на GitHub и открыт для любых усовершенствований, коих предстоит немало.



Фреймворк для бессерверных приложений в AWS

В статье речь пойдет о том, как разрабатывать и тестировать бессерверные приложения локально, о роутинге на фронтенде и бекенде, о сервисах Amazon и тому подобных вещах. Кому интересно, добро пожаловать под кат!

Категория: Операционные системы » Windows

 

Сбербанк Бизнес Онлайн на Windows 10 – новое решение для клиентов, или почему UWP-приложения рулят

Автор: admin от 11-04-2018, 07:00, посмотрело: 130

В октябре 2017 г. Сбербанк первым в РФ выпустил приложение для дистанционного обслуживания юрлиц на Windows 10. Константин Червоный thunderbull, отвечающий за это приложение в дивизионе «Цифровой Корпоративный Банк» Сбербанка, делится опытом этого запуска.



Сбербанк Бизнес Онлайн на Windows 10 – новое решение для клиентов, или почему UWP-приложения рулят

Категория: Операционные системы » Windows

 

Процедурная генерация лабиринтов в Unity

Автор: admin от 10-04-2018, 09:55, посмотрело: 189

Процедурная генерация лабиринтов в Unity


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


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



В этом туториале вы научитесь следующему:




  • Процедурно генерировать уровни на примере создания игры про бег в лабиринте.

  • Генерировать данные лабиринтов.

  • Использовать данные лабиринтов для построения меша.



Приступаем к работе



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



Процедурная генерация лабиринтов в Unity

Однако в большинство игр приятнее играть, когда лабиринты неидеальны и в них есть петли. Они должны быть обширными и состоящими их открытых пространств, а не из узких извилистых коридоров. Это особенно справедливо для жанра rogue-like, в котором процедурные уровни являются не столько «лабиринтами», а скорее подземельями.



Процедурная генерация лабиринтов в Unity

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

Категория: Операционные системы » Windows

 

Заблуждения об автоматическом тестировании

Автор: admin от 10-04-2018, 09:55, посмотрело: 72

Здравствуйте, меня зовут Дмитрий Карловский и это продолжение традиционной рубрики "Почему мы так не любим писать тесты?". Короткий ответ: потому, что получаемые от них бонусы не перевешивают затрачиваемых усилий. Если это так, значит мы делаем что-то не правильно. Давайте разберёмся что же могло пойти не так..



Заблуждения об автоматическом тестировании



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

Категория: Операционные системы » Windows

 

UL 3223: представлен новый стандарт сертификации ЦОД

Автор: admin от 10-04-2018, 09:55, посмотрело: 86

Компания по сертификации в области техники безопасности Underwriters Laboratories (UL) представила новый стандарт для оценки надежности дата-центров — UL 3223. Он описывает критерии, соблюдение которых позволит владельцам ЦОД снизить риск сбоев в работе предприятия. Подробнее о стандарте — расскажем далее.



UL 3223: представлен новый стандарт сертификации ЦОД

Категория: Операционные системы » Windows

 

Sysmon для безопасника. Расширяем возможности аудита событий в Windows

Автор: admin от 10-04-2018, 09:55, посмотрело: 184

Технические специалисты, которые, расследуя ИБ-инциденты или устраняя неполадки при траблшутинге, хоть раз пытались найти в логах операционных систем семейства Microsoft Windows реально важную для них информацию, знают, что в журналы аудита событий попадает далеко не все, что нужно. Можно ли исправить эту ситуацию без дополнительных финансовых вложений с использованием инструментов, гарантированно совместимых с Windows-средой? Разумеется, можно!



Sysmon для безопасника. Расширяем возможности аудита событий в Windows

Категория: Операционные системы » Windows

 

Оценка человеческого капитала ИТ-компании с использованием критериев SFIA

Автор: admin от 9-04-2018, 11:50, посмотрело: 105

Что является главным ресурсом любой компании? Согласно современным представлениям — это, конечно, люди. Да, очень часто это могут быть лишь формальные заявления, профанация — человек превыше всего, ориентация на персонал, люди наше всё и так далее.



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



Оценка человеческого капитала ИТ-компании с использованием критериев SFIA


Не секрет, что ИТ-сфера наиболее зависима от качества персонала. И если в условном ритейле (да, да, я знаю, что с этим можно поспорить) за счет грамотной настройки всех процессов можно в значительно степени нивелировать влияние персонала, то сделать то же самое, скажем, в разработке программного обеспечения намного сложнее.

Категория: Операционные системы » Windows

 

Веб установщик на чистом WINAPI с поддержкой Hi DPI и векторным лого

Автор: admin от 9-04-2018, 11:50, посмотрело: 106

В наше время это, наверно, одно из основных применений для приложений написанных на чистом WINAPI. Писать что-то серьёзнее нескольких простых окон на чистом WINAPI уже не так весело, а вот маленький установщик – самое то.



Так как на дворе 2018 год, писать просто приложение как-то не очень. Давайте уж соответствовать веяниям времени – установщик будет с поддержкой Hi DPI режимов. Даже в ноутбуках уже 4К экраны не редкость, чего уж говорить про десктопы. Ну и так как установщик — это то, что должно быстро загрузиться будем экономить на том, что действительно не сложно сделать и самому. Ну и попробуем схитрить чтобы использовать векторную графику без дополнительных библиотек – нам же нужен красивый логотип!



Веб установщик на чистом WINAPI с поддержкой Hi DPI и векторным лого

Категория: Операционные системы » Windows

 
Назад Вперед