О сайтах и не о сайтах

WebDev

Всего постов по тегу: 28

Посты про веб-разработку, в большинстве своем технического характера. Основной стек - LAMP, но использую зачастую все подряд, вплоть до C++, о чем и пишу. Заметки про Drupal и QA вынесены в отдельные теги.

WebDev Заметки на полях

Постоянно появляются какие-то мысли, ну или просто натыкаюсь на интересные решения, которыми хочется поделиться. В отдельности все это на пост явно не тянет, но вот публиковать подборочками почему бы и нет.

PHP rand() vs mt_rand()

Раньше был сторонником использования
mt_rand()
заместо
rand()
. Ну а что, работает аж в 4 раза быстрее, да и на выходе выдает не просто псевдослучайные числа, а более случайные псевдослучайные! Во всяком случае так говорит официальная документация.

Может оно так и было раньше (точнее таки да, было), но все течет, все меняется. На данный момент эти две функции работают примерно одинаково быстро (тестил), и "случайность" у них плюс/минус одинаковая, вот такого уже больше нет.

Алгоритмы используются разные, это да. Для mt_rand это Mersenne twister, для rand либо LCG (для Windows), либо LFSR (для Линукс). Но данные различия уже скорее для эстетов, лично я остаюсь при rand(), раз уж разницы особой нет.

Консольный текстовый редактор Nano

Стыдно! Который уже год сижу на Linux, а о Nano узнал буквально на днях.

Как я раньше правил конфиги? Alt+F2, gksu nautilus, а дальше искать нужный файл, открывать и править его в том же Geany. И так каждый раз... Даже ввести в консольке sudo gedit /etc/hosts руки не доходили. Стыдно-стыдно-стыдно.

Различия echo и print. Что использовать?

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

MySQL vs файлы. Скорость поиска строки по подстроке.

На днях задался вопросом целесообразности хранение строковых данных в БД вместо файлов с точки зрения скорости поиска.

Хотя, конечно, вопрос правильней поставить так — чем быстрее осуществлять поиск в массиве строк, средствами языка программирования (в данном случае php) или средствами РСУБД (MySQL)? А сравнение «MySQL vs файлы» только для наглядности, ведь данные в базах тоже хранятся в файлах (а в чем же еще?) и используется все та же файловая система.

Решил провести небольшой тест. Сгенерировал 100к строк вида

MP0bWDXN1AxhI9yCZiGpKUZObSBOSrFv6vxTYkxPLUXjUmLJui
Z53PK4xcJgteCqAZ9p9w5LhTU15wBqFrlz6VtuX3Bg83xzSwOS
Tjt0seSoBkE6BPvyBPSoJjvHcS6VfLDYlXPD1ySsImp91Lxsrg

Каждая строка при генерации писалась одновременно в файл (*.txt) и в четыре таблицы — таблицу типа MyISAM, тип данных «text», таблицу MyISAM, тип данных «varchar(100)», таблицу InnoDB, тип данных «text» и таблицу InnoDB, тип данных «varchar(100)».

LAMP. Ubuntu Linux + Apache + MySQL + PHP.

В статье рассматривается установка веб-сервера, его конфигурирование, установка необходимых расширений и библиотек, дополнительных веб-приложений и тестирование всего этого на примере установки CMS Drupal.

Статья рассчитана на начинающих пользователей Linux, поэтому содержит теоретические вставки и предполагает использование GUI там, где это возможно и оправдано.

В качестве дистрибутива Linux используется Ubuntu 10.04, хотя инструкция, надо полагать, справедлива как для других версий Ubuntu, так и для некоторых других дистрибутивов.

Двойные и одинарные кавычки в php

Я сторонник красивого и оптимизированного кода, хоть и не всегда у меня получается следовать всем правилам «хорошего тона» в программировании.

Сейчас же речь пойдет о правильном использовании двойных и одинарных кавычек в php. Перед тем, как начать писать пост, я бегло просмотрел имеющиеся у меня книги по php, и, что странно, ни в одной не увидел правильного использования кавычек. Почему – для меня загадка. Обвинять авторов в дилетантстве нет ни малейшей возможности, книги далеко не для «чайников». Может быть просто не хотели акцентировать на этом внимание, дескать кому надо, тот сам разберется.

Хороший стиль программирования

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