Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Workflow - poprawa wydajności - wymiana doświadczeń
ziolo
post
Post #1





Grupa: Zarejestrowani
Postów: 82
Pomógł: 20
Dołączył: 17.01.2009
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Zakładam temat(fajnie byłoby go przypiąć - pytanie do modów czy można) o wydajność workflow.

Jakie biblioteki, narzędzia, techniki, technologie wyraźnie poprawiły waszą wydajność podczas kariery programistycznej ? Można pisać o wszystkim co do głowy przyjdzie.

Myślę, że każdemu taka wymiana doświadczeń się przyda. W przyszłości wiadomo jak wszystko szybko ewoluje, co raz to nowe narzędzia dochodzą, też możnaby tu pisać.

Z mojego skromnego doświadczenia np są to:

1) Przesiadka z svn na git. Hostuje swój kod na bitbucket, wcześniej na swoim dedyku miałem serwer svn.
2) PhpStorm - narzędzie, które masakrycznie zmieniło moją wydajność pracy
3) Przesiadka z Windows na Linuxa(Ubuntu)
4) Praca na dwa monitory.
5) Pisanie testów jednostkowych.
6) Nauczenie się framoworka PHP(Ja np używam Symfony2)
7) Może głupie ale takie drobe rzeczy też są ważne - używanie przy ssh, git logowania za pomocą kluczy bez hasła. Dopiero od roku stosuje (IMG:style_emoticons/default/smile.gif)
8) Dysk SSD - ciężko mi sobie wyobrazić pracę już na zwykłym dysku.
9) Pisanie zgodnie z OOP - wzorce projektowe
10) Notism.io - swietne narzędzie do pracy grupowej
11) Nie wiem może mi coś jeszcze przyjdzie do głowy to napiszę.

W najbliższej przyszłości chcę się nauczyć w praktyce:
1) vagranta
2) angulara - przerobiłem tutorial ale jeszcze nigdy nie używałem w faktycznym projekcie, zawsze radziłem sobie z udziałem jquery - ale czasem jak strona jest (że tak to ujmę) bardziej skomplikowana dynamicznie - faktycznie dużo trzeba się napisać - i potem ciężko się do tego kodu zagląda

Ten post edytował ziolo 8.07.2014, 16:02:37
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
PrinceOfPersia
post
Post #2





Grupa: Zarejestrowani
Postów: 717
Pomógł: 120
Dołączył: 18.04.2009

Ostrzeżenie: (0%)
-----


1) kontrola wersji (GIT)
1a) od kiedy zacząłem bardziej świadomie korzystać z GITa, pracować na gałęziach itp. (kiedyś wszystko na master wrzucałem). Gałęzie niesamowicie ułatwiają organizację workflow. Można pracować nad kilkoma rzeczami naraz. Albo oddzielać "eksperymenty" od kodu produkcyjnego itp.

2) automatyzacja pracy, pisanie skryptów, które robią to, co samemu do tej pory robiłem ręcznie. Odkrycie tego, że można napisać automatyczne testy, które same będą zgłaszać błędy.

3) Odkrycie tego, że strony można budować/kompilowac. Zamiast wrzucać gołe pliki na serwer, można nastawić buildera, który np.
- skompiluje kod pośredni (np. Sass do CSS)
- zminifikuje kod wynikowy
- połączy ileś małych plików w jeden duży (przydaje się do łączenia CSS/JS czy nawet HTML).
- przekopiuje pliki w odpowiednie miejsca
etc.

4) odkrycie tego, że w wielu edytorach można tworzyć customowe snippety, które czesto są bardziej pomocne od normalnego uzupełniania składni, szczególnie jeśli pracujemy z jakimś frameworkiem, który wymaga częstego pisania tego samego w zasadzie.

5) NodeJS
pal licho, czy na backendzie będzie NodeJS, czy może Python albo PHP - ale mimo wszystko NodeJS jest fajnym środowiskiem do chociażby prototypowania/mockowania backendu.

6) koncepcja prototypowania oraz programowanie iteracyjne. Kiedyś zanim usiadłem do programowania, to planowałem, planowałem, aż zaprojektowałem "wszystko". A potem starałem się to zaprogramować. Rezultat był taki, źe nigdy "wszystkiego" nie uwzględniłem i często mi się cały projekt rozjeżdżał, bo mój projekt okazywał się dość kiepski w praktyce. Teraz więc wolę więc często najpierw zaplanować coś, potem zrobić coś na szybko jako działający prototyp, a potem wyciągnąć wnioski ze swojego prototypu i albo zrobić projekt od nowa (już w bardziej przemyślany sposó(IMG:style_emoticons/default/cool.gif) albo zrefaktoryzować, to co już napisałem (w sytuacjach kiedy pisanie od nowa by się nie opłacało).
taki trochę pseudoSCRUM.
Dzięki tego nie kończę już w wielkiej kule błota, która wynikała z tego, że miałem tylko jedną fazę planowania a potem programowanie na całego (IMG:style_emoticons/default/wink.gif)
no i dzieki temu szybciej widzę cos w działaniu, i potem mogę ocenić na ile coś ma sens.

No i jak przedmówca - przejście na Linuxa, który dużo ułatwia w porównaniu z Windowsami.

Ten post edytował PrinceOfPersia 8.07.2014, 19:42:42
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 20:10