Рубрика «php» - 159

Новый язык Hack является прямым потомком PHP, основанным на его синтаксисе. Hack создан специально для виртуальной машины HHVM (Hip Hop Virtual Machine). Команда Facebook полностью перевела разработку на новый язык и называет эту миграцию большим успехом. Однако Facebook не отказывается от поддержки PHP и планирует доработать поддержку PHP5 в HHVM.
Подробная документация по языку доступна здесь (на английском языке).
Официальный сайт нового языка — http://hacklang.org/.
Новость о релизе языка.
Читать полностью »

Дорогие хабропользователи.

Эра VPS и unmanaged серверов в самом разгаре, но в то же время появляются новые платформы, которые позволяют размещать приложения за пару кликов. Платформа Appnestic — одна из таких.

Предыстория

Мне, разработчику часто не хватало инструмента, который позволил бы быстро развернуть приложение, да так чтоб не возиться с хостингом, серверами, линуксами, мариядб и прочей инфраструктурой, настроить его и передать доступ клиенту. Также не хватало удобного DNS-менеджера зон, возможности настроить приложение и передать его клиенту, управлять приложением без ssh доступов и конфигурационных файлов.

Так родилась идея Apnnestic-а — платформы, которая позволяет загружать и обновлять код и запускать приложение. Сегодня мы находимся в beta-тестировании и я с радостью приглашаю вас протестировать наше решение и рассказать о своих впечатлениях и предложениях.

Читать полностью »

PHPixie framework
Пока еще только ведутся работы над третьей версией фреймворка PHPixie, но уже можно точно сказать что он сильно изменится в лучшую (как по мне) сторону:

  • Полный переход на стандарт PSR-2
  • Поскольку фреймворк будет являть собой набор библиотек, то его компоненты можно будет использовать в любом проекте без самого PHPixie.
  • 100% покрытия кода тестами. При чем в данном случае 100% не просто фигуральное слово а реально просчитанный «code coverage», то есть отношение строк которые вызываются при исполнении тестов ко всем строкам кода, кстати у Laravel это всего-лишь 53%.

Вчера стали доступны две библиотеки которые войдут в PHPixie 3, они полностью готовы и их уже можно использовать с любым проектом. Это сделано Подробнее об этом можно почитать в посте на сайте, а я здесь опишу то что мне больше всего в них нравится.

Читать полностью »

Я хотел бы обратить внимание на одну не очевидную особенность php.
Допустим у нас есть массив с целочисленными индексами

$arr = array( $val1, $val2, ..., $valn );

Этот массив можно перебрать в цикле двумя способами

foreach($arr as $k => $v ) {...}

и

$n = count( $arr );
for($k = 0; $k < $n; $k++ ) {...}

Кажется вполне очевидным, что второй способ должен быть, если и не быстрее, то уж точно не медленнее.
Давайте разберемся.
— Нет. Никаких бенчмарков. Только код! Читать полностью »

в 0:19, , рубрики: php, phpunit, tdd, метки: , ,

Последнее время я часто сталкивался с разработкой на Ruby и Ruby on Rails. О них говорить я не собираюсь. Но после возвращения к PHP кое-чего стало очень не хватать. Одна простая утилита, оказавшаяся отличным помощником для любого разработчика, который использует тесты. autotest запускает тесты на любое изменение в кодовой базе или тестах. Я попробовал поискать в Гугле и на Гитхабе аналог для PHP. Все решения, которые я нашел, были написаны либо на Ruby, либо на серверном JavaScript, либо на bash (хотя позже все же нашел решения и на PHP, которые, тем не менее, мне не понравились по разным причинам). Я являюсь сторонником мнения, что утилиты для разработки на каком-то языке должны быть написаны на нем же. Причин тому много, одна из наиболее значимых лично для меня — это возможность легко и непринужденно вносить какие-то правки и изменения в код самой утилиты (например, когда разработчик утилиты не реагирует на баг-репорт). Руки у меня зачесались, и я попробовал написать свою версию autotest для PHP. Результат можно посмотреть на Гитхабе.
Читать полностью »

Есть ли жизнь после кода?Что происходит с кодом после того, как он написан? Во многих областях разработки ПО его жизнь только начинается. Например, в разработке для веба, приложение исполняется где-то на сервере. Значит, после написания кода встаёт задача интегрировать его в приложение и доставить на конечную машину. Именно этот процесс мы сегодня обсудим.

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

Статья написана на основе материалов внутреннего семинара компании Аори, и рассказывает о принципах деплоймента на примере процесса, построенного у нас.
Читать полностью »

На хабре не раз поднимался вопрос важности SOLID, в частности принцип открытости/закрытости кода. В данном посте я расскажу как реализовать его на PHP и через какие испытания прийдётся пройти.

Что это такое?

SOLID — это совокупность пяти основных принципов дизайна классов в ООП. Одни из них и является принцип открытости/закрытости кода. Он гласит, что программные сущности должны быть открыты для расширения, но закрыты для изменения.
Читать полностью »

Совсем скоро произойдет обновление Облачной платформы InfoboxCloud Jelastic до версии 1.9.3. Платформа Jelastic в InfoboxCloud позволяет в 1 клик получать Java, PHP и Ruby окружения, необходимые SQL и NoSQL базы данных, кэш, VDS и не только.

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

К тому же реально работающее автомасштабирование позволяет вам использовать столько ресурсов, сколько необходимо приложению в конкретный момент времени и не платить за потенциально возможный максимум необходимых ресурсов.

В этой статье мы рассмотрим, что нам готовит обновление Облачной платформы InfoboxCloud Jelastic.
InfoboxCloud Jelastic
Читать полностью »

Тема заезженная до дыр, не спорю… Вероятно, для опытных разработчиков моя статья будет мало, чем полезна. Я бы рекомендовал её к прочтению тем, кто только начал осознавать, что его коду чего-то не хватает, и что он созрел для вникания в это далёкое понятие – «паттерны». По себе помню, что довольно долгое время я путался в шаблонах, иногда даже не понимая, чем один отличается от другого. Именно этот факт стал основой для моей статьи. Примеры в ней не будут реальными. Они будут абстрактными и максимально простыми. Однако я постараюсь все примеры держать в едином контексте, чтобы можно было наглядно видеть отличия их использования в одной и той же ситуации. Я не буду нагружать классы лишним функционалом, чтобы можно было понять, какая именно часть кода имеет непосредственное отношение к шаблону. Главными героями примеров станут Factory (фабрика) и Product (продукт, производимый этой фабрикой). Возьмём это отношение за отправную точку. Возможно, в некоторых примерах это будет не очень уместно, но зато очень наглядно…

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

Дайджест интересных новостей и материалов из мира PHP № 37 (24 февраля — 9 марта 2014)

Поздравляем всех девушек и особенно PHP-разработчиц с прошедшим праздником! Всяческих вам успехов, любви и тепла!

И конечно же, вашему вниманию очередная подборка ссылок со свежими новостями, полезными инструментами и интересными материалами.

Приятного чтения!
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js