Deployer - Prosty i szybki deploy w PHP

Łukasz Piotrowski Komentarzy 0

Wielu developerów boryka się z deployem swojej aplikacji na serwery produkcyjne.

Jedni wgrywają wszystkie pliki przez FTP, inni po SSH, a Ci bardziej zaawansowani robią git pull.

Do tego zazwyczaj dochodzi uruchomienie różnych procesów począwszy od instalacji pakietów Composer, aż po minifikację plików CSS i JS.

Problem rodzi się gdy nasza strona przestaje działać, odwiedzający się denerwują a my w pocie czoła i pośpiechu próbujemy dojść co się zepsuło.

Jeśli więc Deploy jest Twoim koszmarem lub chciałbyś aby to było jak najprostsze to czytaj dalej...


Kategorie: PHP Serwery

PHP7 - Type Hints & Return Types

Łukasz Piotrowski Komentarzy 0

PHP7 wprowadza wiele nowinek i smaczków do języka które już były znane w innych. Omawiałem już Anonymouse Class, Operator <=> oraz Grupowanie "use".

Dziś zajmiemy się kolejnym mega feature który pozwala nam na jeszcze większą kontrolę nad tym co piszemy i czego oczekujemy: Type Hints oraz Return Types.

Do dzieła...


Kategorie: PHP

PHP7 - Anonymous Class

Łukasz Piotrowski Komentarzy 0

PHP5 przyniosło nam w swojej rewolucji względem starego poczciwego funkcje anonimowe.

W wielkim skrócie to możliwość zadeklarowania funkcji bez nazwy i przypisanie i np. przypisanie jej do zmiennej.

Anonymous Class działają na podobnej zasadzie. A do czego nam to? Zaraz się przekonacie...


Kategorie: PHP
Tagi: PHP7 PHP Redis

PHP7 - Grupowanie namespace "use"

Łukasz Piotrowski Komentarzy 0

Wiele razy spotkaliśmy się z gdy w naszym pliku deklaracja use rozrastała się do dość sporych rozmiarów. Wtedy całość przypominała coś takiego:

<?php

namespace Procest\Command;

use Project\Commnad\Builder;
use Project\Commnad\Client;
use Project\Commnad\Server;
use Project\Controller\Services\Client1;
use Project\Controller\Services\Client2;
use Project\Controller\Services\Client3;

PHP7 ma na to radę...


Kategorie: PHP

PHP7 - Spaceship operator "<=>"

Łukasz Piotrowski Komentarzy 0

Spaceship operator to nowy twór dodany w PHP7.

Działanie

Jest to operator porównania zwracający -1, 0, 1:

<?php

$a = 1;
$b = 2;
echo $a <=> $b; // -1

$a = 2;
echo $a <=> $b; // 0

$a = 3;
echo $a <=> $b; // 1

Kategorie: PHP

PHP Community Driven Standards - Standardy dla wszystkich przez wszystkich

Łukasz Piotrowski Komentarzy 0

Wczoraj na GitHub pojawił się projekt społeczności pod nazwą PHP Community Driven Standards. Jest to bardzo dobra (acz dopiero świeża) alternatywa dla FIG (Framework Interoperability Group)


Kategorie: PHP

PHP Code Coverage bez PHPUnit

Łukasz Piotrowski Komentarzy 0

Czasami jest taka sytuacja że dostajemy kod w spadku lub do modyfikacji. Trzeba się w ten kod wgryźć, zrozumieć jak działa. Prosta sprawa jeśli jest to jakiś framework, jeśli mamy testy, jeśli kod jest czytelny.

Ale co w przypadku ukochanego przez wszystkich programistów "Spagetti"?

Tutaj przyjdzie nam z pomocą paczka PHP_CodeCoverage. Dzięki niej w bardzo prosty sposób wygenerujemy sobie metryki który kod został uruchomiony przy jakimś requeście. Podobnie to wygląda do Code Coverage podczas uruchamiania Testów Jednostkowych.

Do dzieła!


Kategorie: PHP

TDD Code Kata #3 - Anagramy

Łukasz Piotrowski Komentarzy 0

Ze słowem anagram nie jeden z Was się spotkał. A jeśli się nie spotkaliście to zachęcam do odwiedzenia Wujka Google lub Cioci Wikipedii.

Dzisiejsze zadanie będzie proste. A przynajmniej tak ma się wydawać. Lecimy...


Kategorie: PHP Code Kata

TDD Code Kata #2 - Kalkulator Stringu

Łukasz Piotrowski Komentarzy 0

Dziś zaczynamy swoją przygodę z Code Kata. Przed wami pierwsze ćwiczenie które będziecie realizować.

Wg. poprzedniej części zajmiemy się ćwiczeniem zarówno TDD jak i pogłębianiem swojej wiedzy, doświadczenia, odkrywania nowych torów naszego umysłu.


Kategorie: PHP Code Kata

TDD Code Kata #1 - Wprowadzenie

Łukasz Piotrowski Komentarzy 0

Czym jest Code Kata?

Są to ćwiczenia programistyczne które wykonuje się regularnie. Najczęściej ćwiczy się jedno zadanie przez kilka/kilkanaście dni.

Za każdym razem należy starać się aby rozwiązania prowadziły do otrzymania takiego samego wyniku, jednak nie wymaga aby był to taki sam kod. Do rozwiązania możemy dojść różnymi drogami, lecz zawsze należałoby wybierać najlepsze, najbardziej optymalne, wydajne.


Kategorie: PHP Code Kata
Tagi: TDD PHP Code Kata
Top