PHP — TechCave

PHP

Стена группы

Загрузка...
Den
2 месяца назад
#

Система автоматического документирования REST-API в Laravel проектах



Преамбула

Для того, чтоб описать и задокументировать правила клиент-серверного
взаимодействия используя Rest-api можно выделить три основных метода:



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

  2. Руками составлять Google-docs/Wiki/Readme в проекте
    Удобно тем, что одиножды написанная документация не требует повторного объяснения. Её можно показать коллегам и даже иногда заказчику. Минусом данного метода является долгосрочная поддержка такой документации. Когда Api в проекте вырастает до таких размеров, что сама мысль «А когда же я обновлял документацию?» вызывает холодок по спине, тогда вы понимаете, что дальше так продолжаться не может. Формально вы можете обновлять документацию очень часто и маленькими фиксами, но это до первого отпуска.

  3. Использовать систему автодокументирования
    И вот для того, что решить минусы первых двух методов человечество придумало системы автоматического документирования. Основная идея заключается в том, что к проекту пристыковывается некий плагин, который собирает информацию по вашему коду, сам составляет документацию и обёртывает её в удобочитаемый формат. Но большинство решений по этому методу не идеальны. Давайте попробуем сделать инструмент, который поможет получить документацию нашего проекта с минимальным количеством телодвижений




Источник
Загрузка...
2 месяца назад
#

TDD в проектах на PHP [GeekBrains]



TDD — это модный и, что более важно, мощный инструмент для решения повседневных бизнес-задач. Он упростит вашу работу и поможет защитить разрабатываемый проект тестами.

Предложенный в 1999 году Кентом Бэком подход разработки через тестирование позволяет программисту быть более продуктивным и сконцентрироваться на поставленной задаче.

После вебинара вы будете знать:
— Что такое TDD.
— Как писать тесты до кода.
— Как решать бизнес-задачи и писать меньше кода.

Добьемся максимального покрытия тестами :)

Загрузка...
2 месяца назад
#

[PHP] Пишем инвестиционный сайт (HYIP). Выход. Сброс пароля. Часть #4


Загрузка...
Den
2 месяца назад
#

Обработка сигналов в PHP, или готовим вкусно



На просторах интернета, в том числе и Хабра, неоднократно поднималась тема обработки сигналов с помощью средств php, но в своем большинстве они достаточно старые, содержат неактуальную информацию, и не отвечают на часто задаваемый вопрос: «зачем?», вот с него мы и начнем.

Источник
Загрузка...
2 месяца назад
#

DevConf 2018 — голосование за доклады



18 мая 2018 в Digital October(Москва) пройдет DevConf — большая ежегодная конференция для веб-разработчиков, где обсуждают обо всем самом новом в мире программирования для веб. Программа определяется голосованием за
доклады.



В секции
BackEnd: будущее PHP, мышление агрегатами, сервис-ориентированная архитектура, немного про блокчейн, трудности переписывания проекта, tracing, profiling, etc.

В секции
FrontEnd: React, GraphQL, Node.JS, WebRTC видеозвонки, телевизоры, тесты и разработчик PhantomJs.

В секции
Storage: PostgreSQL, MySQL, ProxySQL, SphinxSearch, ClickHouse и немного(много) про сжатие данных.

Источник
Загрузка...
2 месяца назад
#

PHP может стать еще лучше



PHP слоник для привлечения внимания



Шутки про PHP — уже отдельный жанр в различных сообществах программистов. Некоторые не любят PHP, потому что {lang_name} намного лучше. А кого-то он вполне обоснованно расстраивает.



Я же PHP люблю. Не смотря на его косяки. Этот язык был создан для конкретной цели и решает он свою задачу хорошо. Схема «принял — обработал — отдал — умер» очень эффективна и решает проблему небольших утечек памяти.



В моей работе PHP используется постоянно. Так сказать, это основной backend язык, используемый в моих проектах. За время работы у меня появились некоторые пожелания и замечания. Решил поделиться с обществом. Кому интересно, добро пожаловать под кат.



Источник
Загрузка...
2 месяца назад
#

Сохранение JS и CSS ресурсов в Локальном хранилище браузера



Вопрос, стоит ли хранить javascript и css ресурсы веб-страницы в LocalStorage браузера или позволить ему самому отрабатывать кэширование, не имеет однозначного ответа. Есть плюсы и минусы. С моей точки зрения, основной плюс — скорость загрузки — перевешивает все остальное. Это очень хорошо чувствуют пользователи EDGE и 3G.

Для поклонников стандартного кэша браузеров, гордо показывающих на слово «Кэшировано» в Средствах разработчика, советую открыть Fiddler и увидеть, что по каждому кэшированному ресурсу за 304 HTTP ответом всё равно идет запрос. Затем советую зайти на что-нибудь типа pingdom.com и увидеть, что непосредственно передача данных во всем времени исполнения запроса занимает проценты. То есть толку в абсолютном значении от такого кэширования — кот наплакал, особенно если файлы небольшие.

Источник
Загрузка...
Den
2 месяца назад
#

Производительность Joomla на больших объемах контента



image

Joomla очень плохо переваривает базу данных даже с несколькими тысячами статей в таблице _content. При нескольких десятках тысяч запросы в базу стандартных модулей типа mod_articles_popular могут зависать на секунды.

Всё дело в ACL (Access Control List) — политике контроля доступа. Проверка законности доступа пользователя к материалам занимает свыше 98% времени выполнения запроса.

Источник
Загрузка...
2 месяца назад
#

[PHP] Пишем инвестиционный сайт (HYIP). Реферальная программа. Вход. Часть #3



Загрузка...
3 месяца назад
#

[PHP] Пишем инвестиционный сайт (HYIP). Структура. Валидация данных пользователей. Часть #1


Загрузка...
3 месяца назад
#

Выбираем Yii2 или laravel



Введение

Я уже писал подобную статью, но она была очень не полной и не снабженной примерами, поэтому я решил взять вторую попытку и попытаться раскрыть данный вопрос наиболее полно!

В данной статье, не будут рассматриваться все тонкости разработки на фреймворках, поскольку это не возможно уложить в рамках одной статьи. Однако, можно достаточно подробно разъяснить те нюансы, которые помогут в выборе для изучения или реализации конкретного проекта. Сравнивать будет Yii2 и Laravel. Я понимаю, что это достаточно холиварная тема, результат которой обычно гласит, что каждый хорош по своему. Я, как человек работавший с обеими, попробую разъяснить свой подход к выбору фреймворка, и постараюсь наиболее объективно показать их минусы и плюсы.

Источник
Загрузка...
3 месяца назад
#

И снова о переводе документации PHP





Предыстория

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

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

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

Источник
Загрузка...
Den
3 месяца назад
#

Внедрение предметно-ориентированного проектирования в PHP



И снова здравствуйте!

Что ж очередной «новый» курс, который стартовал в конце декабря, подходит к концу —
«Backend разработчик на PHP». Учли разные мелкие шероховатости и запускаем новый. Осталось только посмотреть на выпуск и всё, поставим очередную галочку.

А счас пока давайте посмотрим на одну интересную статью.

Поехали.

В этой статье вы узнаете, как использовать PHP для управления следующим DDD-проектом вашей компании и эффективно моделировать реальные ситуации, чтобы помочь определить вашу бизнес-логику.

Предметно-ориентированное проектирование (Domain-Driven Design, в дальнейшем — DDD) — это методология разработки программного обеспечения для проектирования сложных программных проектов с целью доставки конечного продукта, который отвечает задачам организации. Фактически, DDD способствует фокусированию проекта на развивающейся базовой модели.

DDD научит вас эффективно моделировать реальный мир в вашем приложении и использовать ООП для инкапсуляции бизнес-логики организации.



Источник
Загрузка...
3 месяца назад
#

Собственные валидации полей для Rules в одном классе



Валидация входных данных заслуженно является одним из важнейших правил во всей сфере IT. Если сузить сферу деятельности до разработки веб-сайтов, речь пойдет в основном про валидацию данных из форм.

image

Я не думаю, что многие разработчики любят проверять входные данные и делают это достаточно тщательно, поэтому в современных фреймворках, таких как
Yii 2, предусмотрены функции
rules() для моделей и классы-Валидаторы, которые хоть и не избавляют от этой рутины, но, как минимум, делают этот процесс менее нудным.

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

Источник
Загрузка...
3 месяца назад
#

Приглашаем на первую международную веб-конференцию Kolesa/Web 2018



image

Привет, Хабр! Весна пришла на планету, а вместе с ней и многочисленные митапы и конференции.

Мы продолжаем формировать IT-community в Казахстане и делиться опытом веб-разработки и использования передовых технологий.
21 апреля в г. Алматы проведем первую международную веб-конференцию Kolesa/Web 2018!

В программе
7 докладов от Колёса Крыша Маркет, Avito, Badoo, дискуссии в перерывах и море вкусных угощений.

Источник
Загрузка...
1 3 4

Авторизация

Пользователи

stopresniebots1983
tekino
templide
Seangle
Галя Рубцова
Ольга Телюкова
Zhenya
Лариса Аксиненко
Dmitry Loginov