You are on page 1of 23

Programowanie PHP 2

www.dsw.edu.pl
Prowadzenie projektu w PHP

● Zarządzanie zależnościami

www.dsw.edu.pl
Prowadzenie projektu w PHP

Prowadzenie projektu w PHP to złożony proces, który obejmuje wiele


różnych aspektów, takich jak:
1. Planowanie i organizacja - na tym etapie należy określić cele projektu,
zakres prac, harmonogram i budżet.
2. Realizacja - to najdłuższy etap projektu, podczas którego wykonywane są
prace programistyczne, testowe i wdrożeniowe.
3. Testowanie - na tym etapie sprawdzana jest poprawność działania
aplikacji.
4. Wdrożenie - aplikacja jest udostępniana użytkownikom.
5. Podtrzymanie - po wdrożeniu aplikacji konieczne jest jej utrzymanie i
aktualizacja

www.dsw.edu.pl
Prowadzenie projektu w PHP
1. Planowanie i organizacja
Na etapie planowania i organizacji projektu należy określić następujące
elementy:
● Cele projektu - należy określić, czego chce osiągnąć projekt. Cele
powinny być realistyczne, określone w czasie i możliwe do zmierzenia.
● Zakres prac - należy określić, jakie prace będą wykonywane w ramach
projektu. Zakres prac powinien być szczegółowy, aby można było go łatwo
kontrolować.
● Harmonogram - należy określić, kiedy zostaną wykonane poszczególne
prace. Harmonogram powinien być realistyczny i uwzględniać wszystkie
niezbędne zasoby.
● Budżet - należy określić, ile pieniędzy będzie potrzebnych na realizację
projektu. Budżet powinien być realistyczny i uwzględniać wszystkie
niezbędne koszty.
www.dsw.edu.pl
Prowadzenie projektu w PHP
2. Realizacja
Etap realizacji to najdłuższy etap projektu. Podczas tego etapu wykonywane
są prace programistyczne, testowe i wdrożeniowe.
● Programowanie - na tym etapie tworzony jest kod aplikacji. Kod
powinien być napisany zgodnie z dobrymi praktykami programowania,
aby był łatwy do utrzymania i skalowania.
● Testowanie - na tym etapie sprawdzana jest poprawność działania
aplikacji. Testy powinny być przeprowadzane na różnych platformach i w
różnych konfiguracjach, aby zapewnić, że aplikacja działa poprawnie w
każdych warunkach.
● Wdrażanie - na tym etapie aplikacja jest udostępniana użytkownikom.
Wdrożenie powinno być przeprowadzone w sposób bezpieczny i
niezawodny.
www.dsw.edu.pl
Prowadzenie projektu w PHP

3. Testowanie

● Testowanie to proces sprawdzania poprawności działania aplikacji.


● Testy powinny być przeprowadzane na różnych platformach
i w różnych konfiguracjach,
● Zapewniają poprawne działanie aplikacji w każdych warunkach.

www.dsw.edu.pl
Prowadzenie projektu w PHP

Rodzaje testów

Istnieją różne rodzaje testów, które można przeprowadzać na aplikacji.


Do najpopularniejszych rodzajów testów należą:
● Testy jednostkowe - sprawdzają poprawność działania pojedynczych
modułów lub funkcji aplikacji.
● Testy integracyjne - sprawdzają poprawność działania poszczególnych
modułów aplikacji, które są ze sobą połączone.
● Testy systemowe - sprawdzają poprawność działania całej aplikacji.
● Testy bezpieczeństwa - sprawdzają, czy aplikacja jest bezpieczna przed
atakami.

www.dsw.edu.pl
Prowadzenie projektu w PHP
4. Wdrożenie
● Wdrożenie to proces udostępniania aplikacji użytkownikom.
● Wdrożenie powinno być przeprowadzone w sposób bezpieczny
i niezawodny.

Metody wdrożenia aplikacji


● Wdrożenie na serwer lokalny - aplikacja jest wdrażana na serwerze
lokalnym, który jest dostępny tylko dla programistów.
● Wdrożenie na serwer testowy - aplikacja jest wdrażana na serwerze
testowym, który jest dostępny dla testerów.
● Wdrożenie na serwer produkcyjny - aplikacja jest wdrażana na
serwerze produkcyjnym, który jest dostępny dla użytkowników.

www.dsw.edu.pl
Prowadzenie projektu w PHP
5. Podtrzymanie
● Po wdrożeniu aplikacji konieczne jest jej utrzymanie i aktualizacja.

Utrzymanie
● Utrzymanie to proces rozwiązywania problemów i błędów w aplikacji.
● Utrzymanie powinno być przeprowadzane regularnie, aby zapewnić, że
aplikacja działa poprawnie.

Aktualizacja
● Aktualizacja to proces wprowadzania nowych funkcji lub poprawek do
aplikacji.
● Aktualizacje powinny być przeprowadzane regularnie, aby zapewnić, że
aplikacja jest aktualna i spełnia potrzeby użytkowników.
www.dsw.edu.pl
Zarządzanie zależnościami w PHP

● Zarządzanie zależnościami to proces identyfikowania


i zarządzania zależnościami między modułami lub
bibliotekami w projekcie.
● Dzięki odpowiedniemu zarządzaniu zależnościami
można:

○ poprawić spójność i wydajność projektu,

○ ułatwić jego rozwój i utrzymanie

www.dsw.edu.pl
Zarządzanie zależnościami w PHP

W PHP zarządzanie zależnościami można zrealizować na kilka sposobów:


● Za pomocą plików composer.json - jest to najpopularniejszy sposób
zarządzania zależnościami w PHP. Composer to narzędzie, które pozwala
na zarządzanie zależnościami w projektach PHP.
● Za pomocą pakietów NuGet - NuGet to pakiet narzędzi do zarządzania
zależnościami w projektach .NET. Można go również wykorzystać do
zarządzania zależnościami w projektach PHP.
● Za pomocą pakietów NPM - NPM to pakiet narzędzi do zarządzania
zależnościami w projektach JavaScript. Można go również wykorzystać do
zarządzania zależnościami w projektach PHP.

www.dsw.edu.pl
Zarządzanie zależnościami w PHP
Korzyści z zarządzania zależnościami w PHP

● Poprawa spójności projektu - dzięki zarządzaniu zależnościami


można zapewnić, że wszystkie moduły i biblioteki w projekcie będą
kompatybilne ze sobą.
● Ułatwienie rozwoju i utrzymania projektu - zarządzanie
zależnościami pozwala na łatwe instalowanie i aktualizację
modułów i bibliotek w projekcie.
● Zmniejszenie ryzyka błędów - zarządzanie zależnościami
pomaga w identyfikacji i eliminacji potencjalnych błędów
w projekcie.

www.dsw.edu.pl
Zarządzanie zależnościami w PHP

Co to jest Composer?

● Composer to nic innego jak aplikacja uruchamiana z wiersza


poleceń (tzw. CLI - Command Line Interface), napisana w języku
PHP.
● Przeznaczona jest do zarządzania bibliotekami i skryptami dla
tegoż języka.
● Pierwsze prace nad jego powstaniem zaczęto w 2011 i po niecałym
roku udało się je sfinalizować, wypuszczając pierwsze oficjalne
wydanie w wersji alpha1 (03.2012)

www.dsw.edu.pl
Zarządzanie zależnościami w PHP

Kiedy nie korzystać z Composer ?


● Istnieje jeden przypadek, kiedy nie istnieje potrzeba, żeby korzystać
z Composera - wtedy, kiedy nie mamy ani jednej zależności do żadnej
biblioteki.
● W dzisiejszych czasach ciężko wyobrazić sobie taki projekt, który w
żadnym stopniu nie skorzystałby z osiągnięć innych programistów
i implementował poszczególną funkcjonalność od zera.
● W związku z powyższym, a także ze względu na łatwość używania
i instalacji, z Composera warto korzystać w każdej sytuacji.
● Daje on w łatwy sposób możliwość pobrania, zaktualizowania, czy
rozwiązania zależności dla potrzebnej do naszego projektu biblioteki.

www.dsw.edu.pl
Zarządzanie zależnościami w PHP

Instalacja Composer
● Instalacja Composera jest względnie prosta pod warunkiem, że
posiadamy w swoim systemie (lub w odpowiednim kontenerze, jeśli
korzystamy np. z rozwiązań typu Docker) zainstalowany PHP w wersji
minimum 5.3.2.
● Sam proces jest zróżnicowany w zależności od używanego systemu
operacyjnego.
● Szczegółowa instalacja znajduje się na oficjalnej stronie.

www.dsw.edu.pl
Zarządzanie zależnościami w PHP

Instalacja Composer dla systemu Windows

● Dla systemu Windows najprostszym rozwiązaniem jest pobrać


i uruchomić plik Composer-Setup.exe, a następnie przejść cały proces
instalacyjny.
● https://getcomposer.org/Composer-Setup.exe

www.dsw.edu.pl
Zarządzanie zależnościami w PHP
Obsługa Composer
● Composer, jak wiele tego
typu aplikacji, oferuje
szereg funkcjonalności
● Szczegółowe informacją
można znaleźć w oficjalnej
dokumentacji.
● Aby wywołać listę
funkcjonalności należy w
terminalu wpisać

www.dsw.edu.pl
Zarządzanie zależnościami w PHP

Inicjalizacja projektu
● Z pomocą tej komendy inicjalizujemy
nowy projekt korzystający z
Composera.
● Po jej wykonaniu tworzy nam się
plik composer.json, w którym
przechowywane są wszystkie nasze
dane dotyczące projektu, takie jak
nazwa projektu, dane o autorze i co
najważniejsze wszystkie biblioteki
przez niego używane

www.dsw.edu.pl
Zarządzanie zależnościami w PHP

Dodawanie, usuwanie i aktualizacja biblioteki


● Schemat wszystkich tych komend pozostaje ten sam.
● Zmienia się w zasadzie słowo kluczowe dla danej operacji:

○ require - do dodania,

○ remove - do usunięcia,

○ update - do aktualizacji pakietu.


● Aby np. dodać nową bibliotekę jako zależność do naszego projektu (w tle
rozwiązywane są także zależności dla pobieranej przez nas biblioteki)

composer require <vendor name>/<project name>

www.dsw.edu.pl
Zarządzanie zależnościami w PHP
● Załóżmy scenariusz, w którym
tworzymy aplikację do
generowania faktur w postaci
plików .pdf, które potem
wysyłane są na maila.
● Oczywiście nie chcemy pisać
wszystkiego od zera, tylko łatwo
dołączyć potrzebne nam
biblioteki, a zatem użyjemy
Composera.
● Jako pierwszą skompletujemy
sobie bibliotekę do PDF np.
dompdf
www.dsw.edu.pl
Zarządzanie zależnościami w PHP
● Czas na obsługę wysyłki wiadomości e-mail.
● Tu również skorzystamy z gotowego rozwiązania - PHPMailer.
● Zanim tego dokonamy, przyjmijmy, że z jakiegoś powodu mamy złe
doświadczenie w pracy z tą biblioteką w najnowszej wersji 6, ale za to
pracowaliśmy bardzo dużo z wersją 5.
● Dołączamy to czego potrzebujemy, definiując konkretną wersję główną

www.dsw.edu.pl
Instalacja istniejącego projektu
● Jeżeli posiadamy już jakiś istniejący projekt, to wystarcza nam jedna
komenda do zainstalowania wszystkich tych samych pakietów, które ktoś
opublikował dla swojej aplikacji
● lista zainstalowanych wersji pakietów zapisywana jest
w pliku composer.lock

www.dsw.edu.pl
Ćwiczenie 1
Stworzenie aplikacji PHP z wykorzystaniem biblioteki zewnętrznej
● Celem tego ćwiczenia jest stworzenie aplikacji PHP z wykorzystaniem
biblioteki zewnętrznej.
● Biblioteka zewnętrzna to pakiet PHP, który można zainstalować za
pomocą Composera
● Wykorzystaj biblitekę guzzlehttp/guzzle i odczytaj zawartość strony
https://www.google.com

www.dsw.edu.pl

You might also like