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.

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
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