Helo, jestem Łukasz i razem z żoną prowadzimy Piernikarnie Cafe w Piszu na mazurach. Ten Blog to moje miejsce do zapisywania tego co warto jest zapamiętać. Być może przyda Ci się coś co postanowiłem zachować dla potomności :-)
Pokazywanie postów oznaczonych etykietą install pakietów.. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą install pakietów.. Pokaż wszystkie posty
wtorek, 5 maja 2020
Ścieżka która gdzieś prowadzi, albo notatki ze zbierania informacji jak pisać komentarz do commit'ów
Pracuje teraz dużo z PHPUNIT i projektem do którego podchodzę od kilku lat.
Mam trochę problemów z tym jak to wygląda i co zrobić...
W czasie opieki nad dziećmi włączyłem sobie YouTube by poukładać sobie to w głowie...
na początek...
Programowanie obiektowe w języku PHP5 / Moduł 7. Testowanie jednostkowe / Cz. 1
Potem pomyślałem, że przypomnę sobie SOLID. Było na tej samej playlist...
Programowanie obiektowe w języku PHP5 / Moduł 5. SOLID / Cz. 1
OK spoko. Polecam, ale może inaczej i ...
SOLID - co się za nim kryje?
potem trochę dla rozrywki...
5 grzechów początkującego programisty
hmm coś zaświtało...
3 zasady GIT Commitów - DevGuide
pomyślałem:
- Dobry temat zawsze się starałem by moje commity były użyteczne, ale jakoś nie szukałem informacji na ten temat.
#git Komentarze dobre praktyki - Kurs gita po polsku #6/12
potem propozycja od algorytmu Youtube...
Jak pisać lepiej - 17 wskazówek, które przydadzą się [...]
Wziąłem zeszyt, zrobiłem notatki, po googlowałem:
https://dev.to/gaelthomas/a-beginner-s-guide-to-git-how-to-write-a-good-commit-message-2j49
http://udacity.github.io/git-styleguide/
https://github.com/angular/angular/blob/master/CONTRIBUTING.md#-coding-rules
Głowa pełna, są notatki i myślę, że mogę to z niej wyjąć i poukładać.
Zapowiada się coś wartościowego, a na pewno coś co mam nadzieję zacznę używać.
---------------------
Jeśli chcesz coś dodać, napisz komentarz.
Pozdrawiam
piątek, 14 czerwca 2019
Grunt - podsumowanie mojej zabawy z pakietami do automatyzowania pracy
Skoro ostatnio odrzuciłem na razie używanie generatorów, to może napiszę czego się nauczyłem?
mamy 2 pliki:
package.json
{
"name": "project",
"title": "file_project",
"version": "0.0.1",
"homepage": "localhost",
"author": {name:"Born-kes"}
}
i Gruntfile.js
...
to w tym drugim, mogę korzystać z danych zadeklarowanych w innym miejscu:
np.
To wygląda zachęcająco.
Przeładowuje on Tasksi po każdej modyfikacji i może "piszczeć" jak któryś task coś znajdzie np.zrobimy literówkę, albo coś przestało działać...
grunt-contrib-htmlmin - minifikuje pliki HTML
grunt-contrib-cssmin - minifikuje pliki CSS
grunt-contrib-connect umnie strasznie zamula, ale odświerzanie okna przeglądarki po każdej modyfikacji to fajny bajer jak się ma dwa monitory.
grunt-usemin - pozwala podmieniać fragmenty kodu , np używać tagów w HTML do generowania strony bez potrzeby generowania jej przez serwer www.
grunt-eslint jest chyba lepiej wspierany (od grunt-contrib-jshint) , będę starał się go lepiej poznać. Kontroluje semantycznosć kodu, czyli między innymi literówki i poprawność.
grunt-contrib-concat pozwala łączyć pliki, ale szału niema, jeszcze nie jestem na etapie by każdy fragmęt kodu (funkcjonalność, zadanie) mieć w innym pliku.
grunt-karma - pozwala pisać testy jednostkowe.
Ciekawostka może ktoś skorzysta, szkoda mi trochę czasu na takie zabawy.
Jak coś jeszcze znajdę to dopiszę do listy
mamy 2 pliki:
package.json
{
"name": "project",
"title": "file_project",
"version": "0.0.1",
"homepage": "localhost",
"author": {name:"Born-kes"}
}
i Gruntfile.js
...
to w tym drugim, mogę korzystać z danych zadeklarowanych w innym miejscu:
np.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
concat: {
dist: {
src: ['
<%= pkg.
title %>
/*.js', 'test/{,*/}*.js'],
dest: 'dist/<%= pkg.name %>.js'
}
},
uglify: {
dist: {
src: '<%= concat.dist.dest %>',
dest: 'dist/<%= pkg.name %>.min.js'
}
},
Wniosek jak tego użyć?
Daje to wrażenie, że można mieć powiedzmy już gotowe konfiguracje i dołączać je grunt.file.readJSON do projektu, a większość zmian opiera się o plik package.json.To wygląda zachęcająco.
Faworyt:
Chyba najczęściej używanym pakietem jest grunt-contrib-watch - obserwator projektu.Przeładowuje on Tasksi po każdej modyfikacji i może "piszczeć" jak któryś task coś znajdzie np.zrobimy literówkę, albo coś przestało działać...
Zmniejszanie plików
grunt-contrib-uglify minimalizuje plik usuwając zbędne białe znaki i czasem nazwy zmiennych by skrócić kod. Szybko działa i pozwala mieć fajny przejrzysty kod z tysiącem komentarzy, a na boku tworzy kod czysty od naszych komentarzy i spakowany (zminifikowany).grunt-contrib-htmlmin - minifikuje pliki HTML
grunt-contrib-cssmin - minifikuje pliki CSS
grunt-contrib-connect umnie strasznie zamula, ale odświerzanie okna przeglądarki po każdej modyfikacji to fajny bajer jak się ma dwa monitory.
grunt-usemin - pozwala podmieniać fragmenty kodu , np używać tagów w HTML do generowania strony bez potrzeby generowania jej przez serwer www.
Pilnowanie składni i poprawności kodu
grunt-contrib-jshint pozwala mieć konfiguracje w pliku w projekcie ( plik .jshint ), nie wiem co na to praktycy, ale chyba porządkuje kod.grunt-eslint jest chyba lepiej wspierany (od grunt-contrib-jshint) , będę starał się go lepiej poznać. Kontroluje semantycznosć kodu, czyli między innymi literówki i poprawność.
grunt-contrib-concat pozwala łączyć pliki, ale szału niema, jeszcze nie jestem na etapie by każdy fragmęt kodu (funkcjonalność, zadanie) mieć w innym pliku.
grunt-karma - pozwala pisać testy jednostkowe.
Ciekawostka
NodeJS ma jeszcze dostęp do phpUnit od composera. Czytałem, że composer potrafi używać pakietów nodejs :-) - na stonie o drupalu 8, jest duży poradnik.Ciekawostka może ktoś skorzysta, szkoda mi trochę czasu na takie zabawy.
Jak coś jeszcze znajdę to dopiszę do listy
środa, 22 maja 2019
Notatka: instalacja narzędzi dla programistów
-------------------------------------------
Grunt / Glup (alternatywa)
- wykonuje listę tasków (zadań) napisanych w js.
minifikuje kod, łączy pliki, podmienia tagi na tekst, śledzi zmiany w plikach, powtarza testy.
-------------------------
front-end
https://bower.io/
śledzi pakiety które chcesz mieć w projekcie i ściąga potrzebną wersje, albo aktualizuje.
-------------------------
http://yeoman.io/
- Tworzy i rozbudowuje szkielet aplikacji - korzysta z gotowych generatorów
(aplikacje/strony mobilne, rozszerzenia firefox'a/chroma, wordpress itp),
tworzy też procedury dla Grunt'a/Glup'a i zestawy testów jednostkowych.
-------------------------
Instalacja w cmd:
Czy masz zainstalowanego nodejs ?
nie:
- pobierz z https://nodejs.org
tak:
sprawdzamy wersje nodejs & npm
npm --version
Czy masz plik package.json
Nie:
{
- generate file package.json
npm init
- zainstaluj grunt globalnie
npm install -g grunt-cli
- zainstaluj grunt'a i modułów w projekcie
npm install grunt --save-dev grunt-contrib-connect grunt-contrib-watch --save-dev
- instal karma :supports test-driven development i moduły
npm install karma grunt-karma karma-jasmine jasmine-core karma-browser-reporter karma-story-reporter --save-dev
- instal launcher for browsers to test for karma
npm install karma-chrome-launcher karma-cli karma-firefox-launcher karma-ie-launcher karma-phantomjs-launcher karma-script-launcher --save-dev
}
Tak:
npm install
- Tworzymy pliki config
* gruntfile.js
* karma.config.js
zapomniałem o Composer jest dla php
https://getcomposer.org/
Tu za instalacje odpowiada w CMD
Grunt / Glup (alternatywa)
- wykonuje listę tasków (zadań) napisanych w js.
minifikuje kod, łączy pliki, podmienia tagi na tekst, śledzi zmiany w plikach, powtarza testy.
-------------------------
front-end
https://bower.io/
śledzi pakiety które chcesz mieć w projekcie i ściąga potrzebną wersje, albo aktualizuje.
-------------------------
http://yeoman.io/
- Tworzy i rozbudowuje szkielet aplikacji - korzysta z gotowych generatorów
(aplikacje/strony mobilne, rozszerzenia firefox'a/chroma, wordpress itp),
tworzy też procedury dla Grunt'a/Glup'a i zestawy testów jednostkowych.
-------------------------
Instalacja w cmd:
Czy masz zainstalowanego nodejs ?
nie:
- pobierz z https://nodejs.org
tak:
sprawdzamy wersje nodejs & npm
npm --version
Czy masz plik package.json
Nie:
{
- generate file package.json
npm init
- zainstaluj grunt globalnie
npm install -g grunt-cli
- zainstaluj grunt'a i modułów w projekcie
npm install grunt --save-dev grunt-contrib-connect grunt-contrib-watch --save-dev
- instal karma :supports test-driven development i moduły
npm install karma grunt-karma karma-jasmine jasmine-core karma-browser-reporter karma-story-reporter --save-dev
- instal launcher for browsers to test for karma
npm install karma-chrome-launcher karma-cli karma-firefox-launcher karma-ie-launcher karma-phantomjs-launcher karma-script-launcher --save-dev
}
Tak:
npm install
- Tworzymy pliki config
* gruntfile.js
* karma.config.js
zapomniałem o Composer jest dla php
https://getcomposer.org/
Tu za instalacje odpowiada w CMD
phar i wget
wget https://phar.phpunit.de/phpunit-6.5.phar
php phpunit-6.5.phar --version
ale opisze bardziej innym razem
.
plik
config phpunit
phpunit.xml
Subskrybuj:
Posty (Atom)