Spring Boot – szybkie tworzenie aplikacji web w Javie

Stworzenie nawet prostej aplikacji w Javie zwykle bywa czasochłonne. Trzeba stworzyć dużo plików xml zawierających konfiguracje, która zazwyczaj jest taka sama lub bardzo podobna dla każdej aplikacji, następnie uruchamianie kontenera, deployowanie aplikacji i inne powtarzalne czynności. Jednak istnieje alternatywa!

Spring Boot

Projekt ten powstał aby ułatwić wszystkim start ze Springiem, eliminuje potrzebę zabawy z tworzeniem konfiguracji xml-owej, gotową aplikację można stworzyć i uruchomić za pomocą jednej klasy. Idealnie nadaje się do projektów studenckich i szybkiego prototypowania aplikacji. Jedyne wymagania jakie stawia przed użytkownikiem to znajomość Mavena.
Continue reading Spring Boot – szybkie tworzenie aplikacji web w Javie

Testy w Django z użyciem Selenium

Tworząc nawet najprostszą aplikację bardzo szybko dochodzimy do momentu w którym “przeklikanie” głównych ścieżek w aplikacji zaczyna być bardzo czasochłonne i nużące. Wprowadzenie nowych funkcji zaczyna być irytujące. Jest to szczególnie uciążliwe w interpretowanych językach, gdzie informację o ewentualnych błędach dostajemy dopiero po wejściu na stronę lub wykonaniu jakiejś akcji. Gdzieś nawet widziałem cytat:

Kto informuje o błędach? W Javie kompilator, w PHP klient

Kolejnym problemem jest gdy mamy do przejścia jakiś dłuższy scenariusz aby sprawdzić jakąś funkcjonalność. Po kilku przejściach i rosnącym zdenerwowaniu, gdy funkcjonalność wciąż nie chce działać sprawia, że pomijamy część elementów które mogą mieć wpływ na działanie (lub nie działanie). Takie scenariusze możemy mnożyć dowolnie. Dlatego warto zastanowić się nad zautomatyzowaniem takich powtarzalnych czynności. Do tego świetnie nadaje się biblioteka Selenium, która bardzo ułatwia testowanie z użyciem prawdziwej przeglądarki.
Continue reading Testy w Django z użyciem Selenium

Django + pyenv-vierualenv + mod_wsgi

Ostatnio potrzebowałem skonfigurować Django z Pythonem w wersji innej niż tą którą posiadam w systemie. Natknąłem się na pyenv który pozwala na posiadanie kilku wersji Pythona w systemie i uruchamianie programów z którą wersją chcemy. Sama instalacja pyenv i dodanie kolejnych wersji nie nastręcza problemów jednak pojawiają się one przy konfiguracji z Django i mod_wsgi do serwera Apache.

Continue reading Django + pyenv-vierualenv + mod_wsgi

Pakowanie i rozpakowywanie plików z poziomu konsoli

Tworzenie archiwów:
tar cf nazwa_archiwum.tar katalog/
tar czf nazwa_archiwum.tar.gz katalog/
tar cjf nazwa_archiwum.tar.bz2 katalog/

Wypakowywanie archiwów:
tar xf nazwa_archiwum.tar
tar xzf nazwa_archiwum.tar.gz
tar xjf nazwa_archiwum.tar.bz2

Dodanie v w parametrach włącza verbose mode czyli wypisuje jakie pliki pakuje/wypakowuje:
tar cvf nazwa_archiwum.tar katalog/

Zliczanie facebookowych like (lubię to) przy pomocy PHP

Facebook udostępnia bardzo prosty mechanizm pozwalający nam pobrać liczbę facebookowych “lajków” dla naszej strony. Przy użyciu PHP można to zrobić w kilku linijkach. Przykładowy kod:

Dzięki temu możemy wyświetlić na stronie ile osób przyznało like lub udostępniło naszą stronę. Na tej podstawie można też wykonać jakiś prosty system ocen lub głosowanie, zabezpieczone przed wielokrotnym oddawaniem głosów.

Prezentacja: Wstęp do Spring Boot i AngularJS

Prezentacja wygłoszona na UJ i AGH w ramach Sabre Academy.

Prezentowane przykłady wraz z prezentacją znajdują się w repozytorium: https://github.com/mloza/Sabre-Academy. Samą prezentację można również pobrać tutaj: Wstęp do AngulaJS i Spring Boot