-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!news.supermedia.pl!plix.pl!newsfeed2.plix.pl!feed.xsnews.nl!border-3.a
ms.xsnews.nl!xlned.com!feeder7.xlned.com!news2.euro.net!feeds.phibee-telecom.ne
t!zen.net.uk!dedekind.zen.co.uk!newsfeed.neostrada.pl!unt-exc-02.news.neostrada
.pl!opal.futuro.pl!not-for-mail
From: Marcin Biegan <a...@u...lama.net.pl>
Newsgroups: pl.comp.programming
Subject: Re: Programowanie a system operacyjny
Date: Wed, 09 Jan 2013 01:27:10 +0100
Organization: Pro Futuro
Lines: 121
Message-ID: <kcidgq$u65$1@opal.futuro.pl>
References: <kcgt7u$4un$1@speranza.aioe.org> <o...@s...asus>
<s...@j...net> <kci839$i6n$1@opal.futuro.pl>
<s...@j...net>
NNTP-Posting-Host: 91-142-204-144.multi-play.net.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: opal.futuro.pl 1357691226 30917 91.142.204.144 (9 Jan 2013 00:27:06 GMT)
X-Complaints-To: u...@f...pl
NNTP-Posting-Date: Wed, 9 Jan 2013 00:27:06 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.0.10) Gecko/20070221
Thunderbird/1.5.0.10 Mnenhy/0.7.4.666
In-Reply-To: <s...@j...net>
X-Antivirus: avast! (VPS 130108-0, 2013-01-08), Outbound message
X-Antivirus-Status: Clean
Xref: news-archive.icm.edu.pl pl.comp.programming:201598
[ ukryj nagłówki ]On 2013-01-09 00:43, Stachu 'Dozzie' K. wrote:
>> to funkcje daje IDE, żebym w ogóle rozważał jego użycie?
>>
>> http://www.jetbrains.com/idea/features/index.html (nie używam, ale mają
>>
>> Gdybym miał wybierać, to chyba głównie:
>> - automatyczny refactoring
>
> Chciałeś powiedzieć: "automatyczna zmiana nazw funkcji, zmiennych
> i typów danych". Z refaktoryzacją to ma tyle wspólnego, co sprężyna
> z amortyzatorem.
http://www.jetbrains.com/idea/features/refactoring.h
tml
Nie, gdybym chciał napisać "automatyczna zmiana nazw", to bym tak napisał.
Zresztą, automatyczna zmiana nazwy przez coś, co rozumie semantykę języka to i
tak więcej, niż daje zwykły edytor, czy sed.
> Nie zadziała dla wszystkich języków, których używam (sh? GNU make?
> LaTeX? cfengine? Template::Toolkit?), więc i tak muszę sobie radzić
> inaczej. Po co mi w takim razie dwie strategie zmianę identyfikatorów?
Jak pisałem - nie do wszystkiego jest dobre IDE, ale to nie znaczy, że
wszystkie IDE są nic niewarte.
>> - context-aware http://en.wikipedia.org/wiki/Content_assist
>
> Czyli uzupełnianie nazw funkcji/metod i zmiennych/pól. Super.
> Rzeczywiście mi się to przydaje tylko na zajęciach z wyklikiwania
> webaplikacji pod ASP.NET, a i to tylko do tego, żebym się jak najdalej
> trzymał od .NET.
>
>> - spójne zachowanie i wygląd dla narzędzi do różnych rzeczy (od edycji kodu do
>> przeglądania bazy danych)
>
> Bazę danych nie tylko przeglądam, ale też filtruję (i niekoniecznie SQL
> jest wtedy najwygodniejszy), a potem zapisuję do pliku, który jest
> używany przez inne programy. Sama klikana tabelka to naprawdę kiepski
> argument. Lepiej mi się sprawdza klient z wiersza poleceń albo
> recs-fromdb z modułu App::RecordStream.
Nie chodziło o przeglądarkę do bazy, tylko o to, że we wszystkich narzędziach
działają te same skróty klawiszowe, menu są w podobnych miejscach, czy można
używać wspólnej konfiguracji. I są one, jak nazwa wskazuje, zintegrowane ze sobą.
>> > Uzupełnianie nazw metod i pól już wypróbowałem, potrzebne mi tylko
>> > w przypadku, gdy absolutnie nie chcę pracować w danym języku z danym
>> > frameworkiem;
>>
>> Dlaczego? Przecież lepiej nie stukać w klawiaturę, jeżeli może to za Ciebie
>> zrobić automat...
>
> Pff. I to ma być taki killer-ficzer? Coś, co z niezłym przybliżeniem
> emuluję sobie powtarzaniem rozpoczętego słowa w edytorze (^P/^N w Vimie)?
No ale przecież nie chodzi o powtarzanie słowa, tylko o to, że IDE prezentuje
listę poprawnych syntaktycznie i semantycznie propozycji. Dodatkowo np.
sortowanych po częstości używania.
I jest to właśnie killer-feature.
Chcesz zobaczy listę pól w zmiennej x? Wciskasz jakąś kombinację i się
wyświetla. Wciskasz (w eclipse) alt+t na wywołaniu metody i pokazuje się
hierarchia typów po kliknięciu w którą otwiera się odpowiedni plik na
odpowiedniej metodzie. To samo z alt+f3 - dostajesz listę funkcji w typie dla
zmiennej pod kursorem. ctrl+o - lista metod w aktualnym typie. Kolejne ctrl+o -
lista metod włącznie z tymi z klas dziedziczonych. Chcesz zobaczyć wszystkie
klasy dziedziczone i dziedziczące - F4 na typie.
Chcesz złapać wyjątki z danego fragmentu kodu? Zaznaczasz, wciskasz parę
klawiszy i dostajesz blok try-catch (co samo w sobie nic nie daje) z catch'ami
do wszystkich wyjątków, rzucanych przez ten kod (czego nie osiągniesz bez
przeglądania/pamiętania definicji wszystkich wywoływanych metod).
A jezscze jest np. wyświetlanie grafów wywołań, wyszukiwanie odwołań do
typu/metody, małe, automatyczne poprawki (ctrl+1 aka quick fix)...
Tego jest masa i nie da się zastąpić takiej funkcjonalności "edytorem" który
nie jest zintegrowany z parserem/kompilatorem. Wymienione wyżej to tylko część
tego, czego używam regularnie.
>> Bo IDE trzeba dobierać do języka/środowiska w jakim się pracuje.
>
> Super. I mam się przełączać między ośmioma różnymi IDE z różnymi
> komendami, różnym układem opcji i różnymi kruczkami, do których się
> muszę przyzwyczajać?
To nie jest problem IDE, może Tobie potrzebne jest jakieś I-IDE ? :)
> To masz słabą wyobraźnię. Naprawdę, oprócz debuggera (bez którego i tak
> nawykłem sobie radzić przy innych okolicznościach i którego interfejs
> i tak się nie nadaje do większych systemów z dużą liczbą wątków)
> i uzupełniania nazw metod (którego niezłą emulację Vim zapewnia), co
> takiego dodaje IDE, żeby był sens używania go w Javie?
Wypisałem wyżej kilka przykładów - nadal nie ma sensu?
> A próbowałeś kiedyś ustawiać system budowania tak, żeby u kolegi z innym
> IDE (czy choćby innym układem katalogów) pracował w taki sam sposób,
> żeby nie trzeba było utrzymywać konfiguracji dwóch różnych systemów
> budowania?
Probówałem, nie polecam. Teraz w projekcie używamy Idei i Eclipse i nie ma
problemów (maven).
>> Nie wiem jak wygląda status wiodących IDE dla ruby czy perl, ale dla Javy czy
>> C++ to raczej jest sporo powodów "za".
>
> No to podaj, ja czekam. Na razie wymieniłeś rzeczy, bez których i tak
> muszę się obejść w innych okolicach, a nie są tak zajebifakenstyczne,
Zasadniczo można się obejść bez wszystkiego, tylko to po prostu nie jest
wygodne. (parę ficzerów wyżej wymieniłem)
> żebym specjalnie dla nich się przyzwyczajał choćby do tej jednej
> funkcji. Ja naprawdę piszę w kilku różnych językach, niekiedy w ciągu
Może Tobie IDE nie odpowiada z tego względu, ale nie sugeruj, że IDE są nic nie
warte, bo się mylisz.
--
Pozdrawiam
Marcin Biegan
Następne wpisy z tego wątku
- 09.01.13 10:55 Stachu 'Dozzie' K.
- 09.01.13 16:39 R.e.m.e.K
- 09.01.13 17:30 Stachu 'Dozzie' K.
- 09.01.13 18:06 R.e.m.e.K
- 09.01.13 19:18 Stachu 'Dozzie' K.
- 09.01.13 22:07 Marcin Biegan
- 09.01.13 22:10 Przemek O
- 09.01.13 22:10 Stachu 'Dozzie' K.
- 09.01.13 22:17 Stachu 'Dozzie' K.
- 09.01.13 22:50 Edek Pienkowski
- 09.01.13 23:07 Marcin Biegan
- 09.01.13 23:13 PK
- 09.01.13 23:26 PK
- 09.01.13 23:58 Stachu 'Dozzie' K.
- 10.01.13 00:13 Stachu 'Dozzie' K.
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-03-15 kraje nieprzyjazne samochodom
- 2025-03-15 parking Auchan
- 2025-03-15 Art. 19.1 ustawy o ochronie praw autorskich
- 2025-03-15 przegląd za mną
- 2025-03-15 Na co komu okna
- 2025-03-15 Mój elektryk
- 2025-03-15 Fejk muzyczny czy nie fejk
- 2025-03-15 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-15 Wrocław => Konsultant wdrożeniowy Comarch XL (Logistyka, WMS, Produk
- 2025-03-15 Błonie => Analityk Systemów Informatycznych (TMS SPEED) <=
- 2025-03-15 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-03-15 Warszawa => Java Full Stack Developer (Angular2+ experience) <=
- 2025-03-15 Warszawa => Java Full Stack Developer (Angular2+) <=
- 2025-03-15 KOMU w RP3 pasuje "Rumuńska łatwość gmerania w wyborach" i dlaczego nie PO-Trzaskanym?
- 2025-03-15 China-Kraków => Key Account Manager IT <=