- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
// генрация паролей
function generatePassword($l = 8) {
function make_seed() {
list($usec, $sec) = explode(' ', microtime());
return (float) $sec + ((float) $usec * 100000);
}
$le = split('-', 'q-w-e-r-t-y-u-i-o-p-a-s-d-f-g-h-j-k-l-z-x-c-v-b-n-m-q-W-E-R-T-Y-U-I-O-P-A-S-D-F-G-H-J-K-L-Z-X-C-V-B-N-M-7-2-1-8-6-3-8-7-2-1-6-0-9-g-s-a-d-f-k-a-k-j-w-q-h-2-7-8-1-6-3-g-d-h-m-H-U-F-G-K-J-H-A-S-G-J-G');
$password = '';
while (strlen($password)<$l) {
srand(make_seed());
$rnd = rand(0, count($le)-1);
$password.=$le[$rnd];
}
return $password;
}
Крайне хардкорный генератор случайных паролей заданной длины. Особенно гениальна строчка №7. Всем говнокоду за мой счет!
Мне больше интересна строка 10 - каковы шансы что make_seed() будет возвращать одно и то же число в быстром цикле? И не приведет ли это к тому что генератор будет сбрасываться, и rand() будет вовзвращать одно и то же значение почти всегда?
100%, точность всего до микросекунд, а пхп всяко не настолько тормозной, чтобы за микросекунду не прогнать этот цикл.
Это ж прямо говнофрактал© какой-то.
удобно. Это в ПХП всегда так?
А как удобно было с сдк, которое обновлялось на новые версии парой кликов мышки...
http://www.gamedev.ru/code/forum/?id=168969&page=3#m36
Эта идея, которая не даёт мне покоя, я её уже поднимал как-то на ГК. Первой статьёй в моём бложике будет "Why I like STL/Boost naming conventions"
иначе Тарас не оценит
С другой стороны, мне такой стиль почему-то визуально приятней чем ехал_грека::через_реку::видит_грека_в_реке_рак, и если я пишу код с использованием Qt - я придерживаюсь их стиля, а если просто на крестах - то крестобустостиля (который I don't like, but must use to style consistency).
Куда только податься не знаю, нашёл вот blogger.com гугловый и github pages, пока склоняюсь ко второму. Кто-нибудь задавался таким вопросом?
а кому уже нормально платят за энтерпрайз, писать на с++ считают ниже своего достоинства
поэтому ты нестандартный
ps я помню как у нас в конторе работал один хмырь, с вечерним образованием после морфлота, прочитал пару книжек по джаве, писал микросервлеты и считал себя элитой по сравнению с нашим сишкокрестоблядским отделом
А мне пофигу, на чём писать. Если нужды проекта требуют библиотеки на c++, обкладываемся майером, страуструпом и александреску, и пишем на C++.
Ха-ха. Не в бровь, а в глаз!
Но многие-то выздоравливают. У кого мозг берет верх над модой, а лень и обилие работы заставляет писать проще.
- через полгода весь сектор/отдел знали сикресткрест, но ни одного тикета так и не закрыли
потому что учить плюсы и на них писать одновременно не хватит светового дня
>QT avoids namespaces (sic!) and likes to use prefixes.
Необходимо писать неймспейс при использовании define из QMetaType и сигналов - потому они и бесполезны
Поправил.
> Необходимо писать неймспейс при использовании define ... и сигналов
Да, @bormand уже объяснял, но сути это не меняет - нэймспейсы Qt не использует.
Потому только готовое решение, только софткор
Но давайте посмотрим, в каком году появилось Qt (1996), и в каком году появился boost (1999) и вменяемые крестокомпиляторы... Это и будет являться ответом на половину вопросов.
1) Более-менее полноценные умные указатели в Qt появились не так давно, поэтому голые указатели - очередная дань совместимости.
2) Тут согласен, один раз даже не хватало такой фишки.
3,4,5) Какие-то извращенные желания, есть какие-то практические применения?
6) Если объекты увязаны не в полный граф, а в дерево, то паренты удобны.
7,8) Ну не было тогда вменяемых крестокомпиляторов, вот и пришлось мутить костыльный moc. В пятой наконец-то можно коннектиться к крестолямбдам.
9) Я бы назвал идиотским вот_этот_кодестайл, но раз уж стандартная_либа::написана_в_нем, то так_и_быть, приходится_юзать в некутешном_коде. Когда же пишу на Qt - глаза и душа отдыхают, все-таки жабостайл, имхо, выглядит приятней.
10) Есть такое.
прописные буквы посреди строчных в С++ выглядят именно так
как и std::vector<QuitSpace::QName>
это действительно так?
темплейты - это уже извращение?
Это из-за костыля под названием moc. Он генерит сишку с говнокодцем для каждого класса, у которых он найдет макро Q_OBJECT. Для темплейта он ее само-собой толком сгенерить не сможет.
> темплейты - это уже извращение?
Шаблонный виджет - имхо да. С QObject ситуация сложнее, там могло бы пригодиться.
яШкОлЬнИцАкОтОрАяПоЁт
P.S. Как-будто я::шк_ол_ьн_иц_а::ко_то_ра_я::по_ёт выглядит лучше.
Мудилы они сраные. Я желаю им сдохнуть.
(Хотя, сначала я куплю себе телефон на миго и только потом.)
Как тебе язык?
А язык в твоём реальном примере — диалект Вижуал Барсика.
google: inurl:"index.nsf"
SSI?
Miva?
cold fusion?
Был веб-браузер Hot Java с полной поддержкой HTML 3.2 (большая часть элементов HTML 3.x не вошла в HTML 4, но вдохновила создателей MathML и SVG). Браузер не взлетел, потому что Java — говно.
А Miva не помню.
А миву я сюда приносил. Это язык богов:
Признайся: захотелось?
А еще он платный
https://docs.miva.com/template-language/mvtcall
`gologub(`
верни текст!!!
Императивные конструкции типа циклов и условных ветвлений на XML это такая нямка
Я не помню, на каком именно хостинге это было (у Народа, у Почта.ру или у Апорта), но это был именно хостинг для статики без возможности исполнения скриптов на сервер-сайде, но вот SSI там было. Можно было собирать большой HTML из кусков и вставлять значения пельменных типа текущих времени и даты на момент запроса страницы.
PS:
nsfw тоже на нем написаны, как и гуй кмк
https://help.hcltechsw.com/dom_designer/9.0.1/appdev/H_LESSON_1_PRINTING_THE_TITLE_OF_A_DATAB ASE.html
Джавист: ха-ха, в старом говне столько ебли, у нас в джаве это не нужно.
Джавист (экстрактит интерфейс `Petuh` из класса `PetuhImpl`)
Сишник: Что ты делаешь?
Джавист: Отделяю интерфейс от имлементации, чтобы сделать его частью API, и отдать его клиентам. Сам не видишь что-ли?