konto usunięte

Temat: Kupiłem IDE

To nawet KDevelop ma. Ktoś w końcu powie co ma ten phpStorm że go warto kupić?

W KDevelop brakuje mi:
- refactoringu
- debugera
- podpowiadania metod z namespace
- podpowiadania metod na argumentach przesyłanych do funkcji
- podpowiadania metod na obiektach zwracanych przez funkcje

Wiecie, KDevelop to ide do c++, tam każda funkcja zwraca jawnie jakiś typ i oni na tym bazują, a w php nie.
Bartłomiej Jończy

Bartłomiej Jończy iOS / Java EE
Developer

Temat: Kupiłem IDE

Kdevelop był chwilowym romansem, ale też mnie rozczarował niestety. Ciekawe, że jakiego IDE bym nie próbował, zawsze w końcu wracam do netbeans. Eclipse jest fajny do javy, ale kiedy już przyjdzie robić coś z szablonami JSF to też wymięka (a netbeans radzi sobie świetnie). W netbeans jedyne co mnie drażni to interfejs, który trochę wygląda jak sprzed 10 lat.

konto usunięte

Temat: Kupiłem IDE

Przemek Czekaj:
Wiecie, KDevelop to ide do c++, tam każda funkcja zwraca jawnie jakiś typ i oni na tym bazują, a w php nie.

W phpSormie mocno wspierają phpDoc'a. Więc jeśli metoda ma odpowiedni komentarz, będzie uwzględniony w podpowiadaniu (i sprawdzaniu poprawności kodu). To samo tyczy się parametrów obiektu.
Przykładowo

class Foo {
/** @var \Foo */
protected $Foo;
}

I od tego momentu, odwołując się do $this->Foo, będzie podpowiadać jego metody. Niezależnie od tego czy $this->Foo jest przypisany jawnie, czy nie (np. z dependency containera).

@Darek - nie wspominałem o pasku aplikacji.
Dodatkowo plugin o którym pisałem, pozwalał na definiowanie co ma być w zakładce pokazywane: ścieżka względem projektu (z określeniem jak głęboko wstecz ma być) namespace zamiast ścieżki itd. Trochę możliwości miał - ale nie bawiłem się nim, dla mnie zbędny bajer.

konto usunięte

Temat: Kupiłem IDE

Michał Wachowski:
Przemek Czekaj:
Wiecie, KDevelop to ide do c++, tam każda funkcja zwraca jawnie jakiś typ i oni na tym bazują, a w php nie.

W phpSormie mocno wspierają phpDoc'a. Więc jeśli metoda ma odpowiedni komentarz, będzie uwzględniony w podpowiadaniu (i sprawdzaniu poprawności kodu). To samo tyczy się parametrów obiektu.
Przykładowo

class Foo {
/** @var \Foo */
protected $Foo;
}

Do tego można podać kilka typów np w ten sposób:

@var \Foo - zmienna jest typu Foo
@var \Foo | \Bar - zmienna jest typu Foo lub Bar
@var \Foo | \Bar[] - zmienna jest typu Foo lub tablicą której elementy są typu \Bar

Przy czym ten ostatni zapis (mimo że nie stosuję z uwagi na to że nie praktykuję wrzucania do zmiennej różnych typów na ogół) sprawia że jak użyjesz zmienną $Foo jako $Foo-> to podpowie metody i atrybuty Foo a jak użyjesz ją w ten sposób $Foo[1]-> to zacznie podpowiadać z typu Bar.
Ogólnie warto dokumentować kod. Dodam że nie ma problemu by w środku skryptu jakąś zmienną określić komentarzem.
I od tego momentu, odwołując się do $this->Foo, będzie podpowiadać jego metody. Niezależnie od tego czy $this->Foo jest przypisany jawnie, czy nie (np. z dependency containera).

@Darek - nie wspominałem o pasku aplikacji.
Dodatkowo plugin o którym pisałem, pozwalał na definiowanie co ma być w zakładce pokazywane: ścieżka względem projektu (z określeniem jak głęboko wstecz ma być) namespace zamiast ścieżki itd. Trochę możliwości miał - ale nie bawiłem się nim, dla mnie zbędny bajer.

No to fajny plugin. Mi właśnie chodzi o dynamiczne dostosowanie tego. Jak to wprowadzą ( a jak mówiłem oznaczyli że pojawi się taka funkcjonalność w wersji 3.0 o jakiej pisałem) to właściwie przed każdym plikiem projektu będę miał nazwę modułu z jakim pracuję :-D Żyć nie umierać.

Swoją drogą do użytkowników Eclipse. Ten dziad nadal zaczyna mulić w dużych projektach ? Czy już go poprawili ?Dariusz Półtorak edytował(a) ten post dnia 03.12.11 o godzinie 11:43

konto usunięte

Temat: Kupiłem IDE

Dariusz Półtorak:

Ogólnie warto dokumentować kod. Dodam że nie ma problemu by w środku skryptu jakąś zmienną określić komentarzem.
Mi się nie udało jeszcze przypisać czegoś takiego, by phpStorm podpowiadał poprawnie, w takich sytuacjach


/** że co tu powinno być, by podpowiadał? */
$Foo = $Container->getComponent('Foo');
$Foo->

/** że co tu powinno być, by podpowiadał? */
$Bar = $Container->getComponent('Bar');
$Bar->


Ale możliwe, że tu wychodzą braki w znajomości phpDoc'a :)Michał Wachowski edytował(a) ten post dnia 03.12.11 o godzinie 12:30

konto usunięte

Temat: Kupiłem IDE

Michał Wachowski:
Dariusz Półtorak:

Ogólnie warto dokumentować kod. Dodam że nie ma problemu by w środku skryptu jakąś zmienną określić komentarzem.
Mi się nie udało jeszcze przypisać czegoś takiego, by phpStorm podpowiadał poprawnie, w takich sytuacjach


/** że co tu powinno być, by podpowiadał? */
$Foo = $Container->getComponent('Foo');
$Foo->

/** że co tu powinno być, by podpowiadał? */
$Bar = $Container->getComponent('Bar');
$Bar->


Ale możliwe, że tu wychodzą braki w znajomości phpDoc'a :)

Robisz to w ten sposób:
/** @var Foo $Foo */
$Foo = $Container->getComponent('Foo');
$Foo->

Po typie trzeba mu jeszcze nazwę zmiennej podać. Od tego momentu będzie ją traktował jako zmienną typu Foo. Dla programisty to też świetna sprawa bo od razu wie co ów getComponent zwróci i nawet nie będzie musiał skakać po plikach żeby sprawdzić interfejs i parametry bo podpowiadanie śmiga jak należy.
Alan Gabriel B.

Alan Gabriel B. Software Engineer,
IFX

Temat: Kupiłem IDE

Dariusz Półtorak:
/** @var Foo $Foo */
$Foo = $Container->getComponent('Foo');
$Foo->


/* @var $Foo Foo */


też zadziała.

konto usunięte

Temat: Kupiłem IDE

Alan Gabriel B.:
Dariusz Półtorak:
/** @var Foo $Foo */
$Foo = $Container->getComponent('Foo');
$Foo->


/* @var $Foo Foo */


też zadziała.
Zadziałać zadziała, ale zgodne z phpDoc'em już nie będzie.
Alan Gabriel B.

Alan Gabriel B. Software Engineer,
IFX

Temat: Kupiłem IDE

Michał Wachowski:
Zadziałać zadziała, ale zgodne z phpDoc'em już nie będzie.

Bo niby nie wygeneruje dokumentacji z tego???
To już nie jest phpDoc.

konto usunięte

Temat: Kupiłem IDE

Michał Wachowski:
Alan Gabriel B.:
Dariusz Półtorak:
/** @var Foo $Foo */
$Foo = $Container->getComponent('Foo');
$Foo->


/* @var $Foo Foo */


też zadziała.
Zadziałać zadziała, ale zgodne z phpDoc'em już nie będzie.

Z tego co wiem to automatyczne narzędzia do generowania dokumentacji nie wyciągają tego z kodu więc nie ma się raczej co przejmować. A działać działa.

Bardzo fajna sprawa bo sobie wstawiam typ spodziewanego obiektu i dalej przez resztę skryptu mam ładne podpowiadanie :-D
Daniel Częstki

Daniel Częstki senior php developer

Temat: Kupiłem IDE

A mi jeszcze bardzo odpowiada sam edytor np. Rysowanie pionowych linii pokazujących wcięcia tekstu.Lubie mieć porządek w kodzie i bardzo ułatwia to pracę.

Edytor fajnie pokazuje początki i końce znaczników html i klamr.
Adam Krupa

Adam Krupa Senior Software
Developer, Lethe

Temat: Kupiłem IDE

Mam pytanie, bo nie mogę tego znaleźć - zainstalowałem sobie nową wersję. Wcześniej przy otwieraniu projektów nowy otwierał się w nowym oknie a teraz otwarty projekt się zamyka i na jego miejsce otwiera się nowy. Wiecie może gdzie to zmienić?
I jeszcze jedna sprawa - mam kod z templatkami i chcę żeby przy użyciu nie był on przeformatowany. Odznaczam opcję w ustawieniach i działa tylko dla wybranego projetku mimo, że są to ustawienia ogólne. Czy jest na to jakiś sposób?

konto usunięte

Temat: Kupiłem IDE

Adam Krupa:
Mam pytanie, bo nie mogę tego znaleźć - zainstalowałem sobie nową wersję. Wcześniej przy otwieraniu projektów nowy otwierał się w nowym oknie a teraz otwarty projekt się zamyka i na jego miejsce otwiera się nowy. Wiecie może gdzie to zmienić?

O ile dobrze pamiętam to pojawia się popup który się o to pyta.

I jeszcze jedna sprawa - mam kod z templatkami i chcę żeby przy użyciu nie był on przeformatowany. Odznaczam opcję w ustawieniach i działa tylko dla wybranego projetku mimo, że są to ustawienia ogólne. Czy jest na to jakiś sposób?

Masz osobne ustawienia dla projektu i osobne ustawienia dla IDE. Zapewne skonfigurowałeś to sobie przy ustawieniach projektu co działa tylko dla tego który masz otwarty.
Adam Krupa

Adam Krupa Senior Software
Developer, Lethe

Temat: Kupiłem IDE

Dariusz Półtorak:
O ile dobrze pamiętam to pojawia się popup który się o to pyta.
Po zainstalowaniu nowej wersji popup się nie wyświetla a projekt mi się sam zamyka i w jego miejsce otwiera nowy mimo że wcześniej było ustawione inaczej.
Masz osobne ustawienia dla projektu i osobne ustawienia dla IDE. Zapewne skonfigurowałeś to sobie przy ustawieniach projektu co działa tylko dla tego który masz otwarty.
Dla danego projetku nie ma ustawień templatek. Są to ustawienia ogólne, które też edytowałem.Adam Krupa edytował(a) ten post dnia 07.12.11 o godzinie 12:38
Adam Krupa

Adam Krupa Senior Software
Developer, Lethe

Temat: Kupiłem IDE

Adam Krupa:
Po zainstalowaniu nowej wersji popup się nie wyświetla a projekt mi się sam zamyka i w jego miejsce otwiera nowy mimo że wcześniej było ustawione inaczej.

Z tym sobie poradziłem - za wyświetlanie tego popupa odpowiedzialny jest plik ide.general.xml i opcja confirmOpenNewProject. Został jeszcze jeden problem ;)

konto usunięte

Temat: Kupiłem IDE

Adam Krupa:
Mam pytanie, bo nie mogę tego znaleźć - zainstalowałem sobie nową wersję. Wcześniej przy otwieraniu projektów nowy otwierał się w nowym oknie a teraz otwarty projekt się zamyka i na jego miejsce otwiera się nowy. Wiecie może gdzie to zmienić?
I jeszcze jedna sprawa - mam kod z templatkami i chcę żeby przy użyciu nie był on przeformatowany. Odznaczam opcję w ustawieniach i działa tylko dla wybranego projetku mimo, że są to ustawienia ogólne. Czy jest na to jakiś sposób?

File > Settings > General > Confirm window to open project in

konto usunięte

Temat: Kupiłem IDE

Każdy kolega ma swoje przyzwyczajenia. Ja z kolei nie mogę żyć bez Dreamweaver'a.
Dyskusja jak na temat tego co się komu podoba, a o gustach się nie dyskutuje...

I tak pewnie ktoś na mnie naskoczy, że jest lipny, a jego xxx jest super...
Wtedy odniosę się znów do: o gustach... hehe...
Taka jest prawda, jak sie ktoś przyzwyczai to nie ma chu..ja na marysię. Weź se pan pare triali, OpenSource'ów i se popatrz, bo NIKT tu ci nie powie który naj...

konto usunięte

Temat: Kupiłem IDE

Od jakiegoś czasu phpStorm jest w v3.0.1
Z fajnych rzeczy - ścieżka gdzie obecnie grzebany plik jest - Dariusz będzie ucieszony :)
Z niefajnych rzeczy - dodali sprawdzanie poprawności phpDoc'a, jeno jakieś kulawe.

/**
* @throws \Exception <- a tu [i]nie znalazł klasy[/i]
*/
function foo() {
throw new \Exception('foofoofoofoo'); <-- tu ok
}


Weird...

konto usunięte

Temat: Kupiłem IDE

---[duplikat]Michał Wachowski edytował(a) ten post dnia 04.02.12 o godzinie 02:14

konto usunięte

Temat: Kupiłem IDE

---[duplikat]Michał Wachowski edytował(a) ten post dnia 04.02.12 o godzinie 02:15

Następna dyskusja:

IDE 4 Linux




Wyślij zaproszenie do