Pull to refresh
54
0
Константин @kstep

Инженер-программист

Send message
Если же брать объявление простых перменных, то никакого поведения, похожего на hoisting с ними нет и в помине. Да, переменные (объявленные через let) могут быть объявлены раньше, чем проинициализированы, но не могут использоваться до инициализации, и не могут быть использованы до объявления. То есть вот такой фокус:
fn main() {
    println!("{}", a);
    let a = 123;
}

не пройдёт. Будет ошибка компиляции.
В JS объявление переменных и их инициализирование разделены, то есть hoisting выносит наверх функции объявление переменной, но инициализация её значением происходит там, где стоит var. С константами в Rust немного по другому: они объявляются на уровне блока (а не функции) и время инициализации строго привязано ко времени объявления. Объявленных и неинициализированных констант (как и статиков) быть не может. Просто объявление-инициализация констант происходит на один проход раньше, чем подстановка значений констант в места использования.
Вы имеете в виду так называемый variable hoisting. Что ж, чем то поведение JS похоже в этом плане Rust, но механизмы в Rust совершенно другие действуют. В общем виде у Rust нету hoisting, как это есть в JS,
Вроде у нас 2016 год на дворе. Почему, боже, ну почему подавляющее большинство ERP/CRM систем выглядят как говно из 80-х?
В этом плане крейт cargo-edit очень удобен: не нужно лезть на crates.io проверять какая последняя вресия крейта, который хочешь добавить в зависимости.
Это не значит, что иметь проблемы со здоровьем весело. Когда они накапливаются, радость от жизни и правда сильно уменьшается, вплоть до нуля. Что отражается в том числе и на работе, так как она часть жизни. Банально трудно сосредоточиться на чём-то, когда у тебя то лапы ломит, то хвост отваливается. Понятно, что с возрастом всё больше нужно заботиться о здоровье, но ситуации бывают разные, как и люди.
Слово «бысть» как-то не внушает доверие к качеству словаря.
Очень важная тема, кстати. Про слепых программистов уже написано довольно много, а вот про глухих как-то обычно не пишут. Наверное потому, что потеря зрения для программиста гораздо более болезненна, чем потеря слуха. Однако в целом это не менее важная тема.
Ну эта опция не только для хабра полезна, многие сайты страдают тем же.
Если подменят сертификат сайта по пути ко мне, у меня будет ругаться браузер на не доверенный сертификат. А чтобы не ругался, атакующим ещё нужно и как-то добавить свой корневой сертификат мне в браузер как доверенный, что не так просто.
Дело не в том, как ломается, понятно что ломается домен. Дело в том, что если все сайты будут по HTTPS, то отличить те, которые стоит ломать, от тех, которые ломать не интересно.
Так я про эти разделы и говорю. Вы внимательно читали? Лично мне стрёмно на такой странице [HTTP] вводить личные платёжные данные. Ну и формы для ввода личных данных (паспортных) данных тоже к этому относятся.
А профит в том, что когда шифруется только критичные данные, это привлекает внимание: «что-то у них всё открыто, а вот тут и тут шифруются, значит там что-то интересное, можно ломать!» А вот если шифруется всё без разбора, то выбрать, где контент важный/чувствительный, а где просто развлекательный атакующему уже не так просто.
Ну так у них форма оплаты какая-то стрёмная, без HTTPS. Может, конечно, скрипт/ифрейм и по https у них грузится, но в итоге браузер ругается на некошерный смешанный контент. Лично мне стрёмно на такой странице вводить личные платёжные данные: хз какой там скрипт MitM подменит? А попытка насильно загрузить их сайт по HTTPS ручной заменой схемы в адресной строке приводит к полной не функциональности сайта, поскольку куча скриптов и стилей грузятся по абсолютным ссылкам с HTTP. Я зарёкся у них что-то покупать, пока не сделают нормальное шифрование. Не доверяю я таким конторкам. Ещё мне встречался сайт бронирования авиабилетов, который требовал полных паспортных данных и работал только по HTTP. Хотелось материться, просто.
Да, аналогично. Я поднимал прозрачный проксик на основе nginx у себя дома (вот такой я извращенец), без подмены сертификата — никак.
Для развлекательного контента может и HTTP ок, не спорю. Но вот когда доходит до оплаты, я лично стремаюсь вводить номер кредитки на криво сделанном сайте без нормально настроенного HTTPS (не будем тыкать пальцем).
Вопрос масштабирования на мобилке я давно решил, включив опцию «Принудительно изменять масштаб» в спецвозможностях хрома:
Скрытый текст

Меня больше достаёт невозможность комментировать и голосовать, приходится переключаться на десктопный режим.
Это прекрасно! Особенно та часть, в которой она занимается анализом внешности. Теперь я понял, наконец-то, почему иногда не проходят собеседования вполне себе компетентные люди. Да у них форма ушей не та и подбородок выдвинут! Нет слов.
Да, не путайте подключаемые сторонние библиотеки, и код, который контрибутиться ко мне в проект. Если мне в какой-то мой проект придёт PR с новой фичей/багфиксом, то это претендент на включение в мой код, и должен соответствовать правилам проекта. Если я включаю стороннюю библиотеку как зависимость, то это чужой код, и автор библиотеки мне ничего не должен. В общем принцип простой: не лезь в чужой монастырь со своим уставом, и в Тулу со своим самоваром.

Information

Rating
Does not participate
Date of birth
Registered
Activity