Nowoczesne Magento 1.X Workflow i narzędzia programistyczne


53

Jestem nowy w Magento Development (CE 1.6) i wciąż próbuję zdefiniować mój przepływ pracy. Obecnie rozwijam na Mac OSX 10.8 z Netbeans 7.3, ale uważam, że Netbeans jest powolny i zawiesza się na mnie. Zwykle przechodzę na Sublime Text 2, aby szybko przeglądać / edytować pliki, lub czasami po prostu ściągam Vima dla wygody.

Moje pytania :

  1. Jak wygląda nowoczesny przepływ pracy Magento 1.X?
  2. Jakie narzędzia / konfiguracje / wtyczki najlepiej pasują do rozwoju Magento?

Wiem, że jest to subiektywna rzecz i nie będzie „jednego przepływu pracy, aby rządzić nimi wszystkimi”, ale wierzę również, że wszyscy z certyfikowanych / doświadczonych programistów mieliby kilka wspólnych wyborów. Przynajmniej spodziewałbym się wiedzy sprawdzonej w bitwie.

Byłbym wdzięczny za wszelkie uwagi / opinie / sugestie.

Dziękuję Ci!


1
stackoverflow.com/questions/4609010/... prawdopodobnie powiązane pytanie SO, z podobnymi danymi wejściowymi.
B00MER

Odpowiedzi:


61

Zgadzam się, że lista jest subiektywna, ale sugeruję następujące doskonałe narzędzia, których używam na co dzień:


1
+1 dla Vinai. Jeśli chodzi o konfigurację lokalnego serwera, może dodaję Vagrant do listy, ale bardzo lubię też pakiet PHP Liip, który instaluje najnowszy PHP na OSX z przyzwoitym php.ini. Zobacz php-osx.liip.ch . W przypadku szybkich instrukcji może zajrzyj do Textmate. Nie jest tak bogaty w funkcje jak ST, ale jest darmowy ;-)
mnp

1
@ryanF prawdopodobnie jest oczywiste, ale dodam, aby upewnić się, że pracujesz na przyzwoitym sprzęcie. Znam ludzi, którzy używają Sublime wyłącznie dlatego, że nie mają wystarczająco szybkiej maszyny, aby praca z IDE jak PHP Storm była szybka.
kalenjordan

4
Byłem także użytkownikiem Netbeans, ale próba Phpstorm + Magicento sprawiła, że ​​byłem jednym szczęśliwym programistą :)
Sergei Guk

1
Na OS X PHPStorm jest dużo szybszy niż NB
Vinai

1
Właśnie utworzyłem nowy pasek narzędzi / profilera dla programistów. Może będzie pasował do
Fantus

20

Inne odpowiedzi dają dobrą listę narzędzi do pracy. Przepływ pracy będzie wysoce zależał od rodzaju projektów i zaangażowanych osób. Jeśli zaczynasz, proponuję zainwestować w:

1.) Zautomatyzuj instalację Magento
Skonfiguruj proces 1 polecenia / kliknięcia, aby zainstalować Magento, w tym przykładowe dane. Narzędzia wymienione w tym
N98-magerun
mag-CI
jumpstorm
lub własnego scenariusza. Niektóre wskazówki można znaleźć tutaj .

Pomysł na tę część polega na tym, że jesteś w stanie stworzyć nową instancję z powtarzalnymi ustawieniami bez większego wysiłku (w momencie, gdy wysiłek będzie wymagał, staniesz się niezdecydowany / leniwy, aby utworzyć nową instancję)

2.) Opracuj i przetestuj z instancją skonfigurowaną w 1.).
Podczas programowania napotkałem dwa sposoby myślenia:
a.) Magento Core jest częścią twojego projektu
Wielu ludzi używa modmana tutaj, aby trzymać swoje pliki poza strukturą folderów Magento, więc koniecznie sprawdź to.
b.) Projekt zawiera tylko pliki rozszerzeń / motywów
Zarówno Phpstorm, jak i Netbeans pozwalają na wdrożenie podczas zapisywania w określonej lokalizacji (folder główny Magento, może być również instancją online za pośrednictwem FTP). Korzystając z Magicento dla Phpstorm, możesz naprawić wady tego podejścia (podpowiedzi klasowe, widzenie dziedziczenia, automatyczne uzupełnianie ...) Mam przeczucie, że jeśli rozwijasz się dla jednego konkretnego klienta, wybrałbyś 1.) z celem Zainstalowana wersja Magento, a jeśli zamierzasz obsługiwać wiele wersji Magento, wybierz 2.)

3.) Udostępnij kod zespołowi we
wdrożeniu w środowisku, w którym można przetestować kod w połączeniu z pracą współpracowników

4.) Rozpocznij proces kontroli jakości / wdrażania

Ogólnie
używaj rozproszonego systemu kontroli wersji (git, mercurial, ...)
obejmują testy (testy jednostkowe , integracja )
zautomatyzuj to, co możesz
dużo czytać - śledź kilku ekspertów tutaj, którzy swobodnie dzielą się swoją wiedzą (sprawdź ich osobiste blogi / github konta). Najczęściej oszczędza to dużo czasu i uczysz się szybciej niż próbując odkryć to wszystko samemu.

Happy Coding!


Dziękuję za szczegółową odpowiedź. Doceniam wkład dotyczący wskazówek dotyczących opracowania dobrego przepływu pracy. Wezmę pod uwagę cały twój wkład. Jeszcze raz dziękuję!
ryanF

13

Osobiście lubię:

  • wszystkie rzeczy, które Vinai już powiedziała
  • Sourcetree, który obsługuje git-flow
  • mage-ci do instalacji szybkich nowych Magentos
  • Pasek narzędzi MGT Developer z kilkoma poprawkami ode mnie (auto-aktywny i gotowy na modmana)
  • Ecomdev_PHP Jednostka do testowania jednostkowego (gałąź programistów!)

dziękuję za dodanie do tej listy! Oferowane tutaj bardzo fajne narzędzia. Doceniam również link do ulepszonego paska narzędzi MGT Developer. Bardzo fajnie jest uzyskać wgląd w to, czego używają specjaliści z branży.
ryanF

11

Mogę doradzić następujące narzędzia do rozwoju Magento.
1. PhpStorm - doskonałe i sprytne IDE dla programistycznych aplikacji PHP.
2. magicento plugin dla PhpStorm. Bardzo przydatna wtyczka do automatyzacji rozwoju Magento.
3. Pasek narzędzi debugowania dla sklepu Magento.
4. Zaawansowany pasek narzędzi dla programistów sklepu Magento.

Świetne źródła i tutki tutaj:
http://alanstorm.com/category/magento
http://inchoo.net/
http://magebase.com/category/magento-tutorials/
http://fishpig.co.uk/ blog /


Dziękujemy za opinie. Wygląda na to, że PhpStorm IDE jest obecnie popularny, szczególnie z wtyczką Magicento. Myślę, że wtyczki Magento (# 3 i # 4) są naprawdę fajne. Jeśli chodzi o linki do samouczków, już je spotkałem (dziękuję za potwierdzenie, że są to dobre źródła!), I tak, materiał Alana Storma również jest dla mnie najważniejszy.
Przekonałem

8

Dodałbym jeszcze jedną rzecz do listy:

Podczas opracowywania usług internetowych dla Magento, na przykład przy użyciu interfejsu API SOAP, narzędzie to pomoże ci łatwo wykonywać żądania i pisać powtarzalne kroki w celu przetestowania przepływów pracy (logowanie, pobieranie zamówień, pobieranie szczegółów pierwszego zamówienia, tworzenie faktury):

http://www.soapui.org/


3

Jeszcze jeden zupełnie nowy pasek narzędzi / profiler dla programistów oparty na niesamowitym internetowym narzędziu do symfony i pokazuje prawie wszystko, od brakujących tłumaczeń po zapytania do bazy danych i czas renderowania poszczególnych bloków itp.

https://github.com/ecoco/magento_profiler

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.