Normalne IDE do c++

Hej!

Poszukuje normalnego IDE do pracy z c/c++. Używam aktualnie dev c++ i mnie krew zalewa, bo strasznie ułomny ten edytor jest. Wcześniej uzywałem NetBeans i było gites tylko nie mogę sobie poradzić z dodatkowymi bibliotekami np. IDE nie wykrywa lub nie ma dołączonej biblioteki conio.h. Instalowałem już Cygwina. Mówię cały czas o windowsie.

Macie jakieś propozyjce lekkiego IDE z normalną instalacją (raczej nie chcę MS Visual Studio) albo może macie jakąś radę na netbeans ;-)?

Proszę o pomoc i pozdrawiam

może Code::Blocks? http://dobreprogramy.pl/index.php?dz=2& … tudio+8.02

No niby to IDE lepsze od Dev c++ ale brakuje mi opcji autozamyania nawiasów, klamer itp. np. wpisze getch( i mi automatycznie zamyka ). W NetBeans coś takiego było. W opcjach nic narazie nie znalazłem :confused:

Jak jesteś taki wybredny to na angielskiej Wikipedii masz ich od groma: http://en.wikipedia.org/wiki/Comparison … vironments

Co do niemożności dołączenia bibliotek: to nie wina IDE, że nie wykrywa, tylko kompilatora(w sumie to Twoja, bo coś skopałeś z ustawieniami). I po kiego Cygwin do NetBeans? NetBeans dla C++ + GCC i jedziemy.

Ja polecam Visual C++ Express Edition. Na początku też to IDE nie przypadło mi do gustu. Jednak gdy je lepiej poznałem to zmieniłem zdanie. Teraz czym dłużej używam Visual C++ to mnie ono do siebie bardziej przekonuje. Kiedyś była też wersja edukacyjna Borlanda C++ Builder 6, również jest to bardzo dobre środowisko programistyczne.

VC++ EE 2008, używam od ok. pół roku i jest gites

Dużo dobrego słyszałem o Code::Blocks

No i jest jeszcze IDE Borlanda, bodajże Borland C++ Builder

A może: http://www.qtsoftware.com/products/developer-tools

Bardzo dobry jest Qt Creator ale to narzędzie RAD

Nie ma czegoś takiego jak dobre i darmowe IDE do C++. Wszystkie darmowe IDE są w tym zakresie mocno kulawe. No chyba, że przez IDE ktoś rozumie

edytor z kolorowaniem składni i możliwością podpięcia skryptu kompilacji / uruchomienia pod skrót klawiszowy (ewentualnie z jakimś badziewnym edytorem okienek jak w QT creator). Takim ludziom polecam JEdit - najbardziej wypasiony darmowy edytor programistyczny na świecie.

Natomiast dla mnie IDE, które nie ma SPRAWNIE działających:

  1. refactoringu

  2. podpowiadania

  3. debuggera (z możliwością nanoszenia zmian w programie online, bez restartu)

nie nadaje się do poważnej pracy przy normalnych projektach. Przez prawie 20 lat takie IDE dla C++ nie powstało i najprawdopodobniej nigdy nie powstanie [1] (choć VC++ jest chyba dość blisko, ale niestety trochę kosztuje). Jak chcesz mieć dobre narzędzia, gdzie podpowiadanie nazw działa zawsze, a nie od święta, i gdzie można zmienić nazwę metody w całym projekcie, tak że się nic nie posypie, to się przerzuć na inny język.

Jednak jak język masz narzucony (bądź po prostu chcesz to robić akurat w C++ dla celów poznawczych - choć obecnie coraz trudniej znaleźć zastosowania, gdzie wybór tego języka byłby uzasadniony [2]), to sobie oblukaj Eclipse CDT. W sumie całkiem fajne narzędzie i na pewno o większych możliwościach niż Code::Blocks.

[1] Jeśli ktoś próbował kiedykolwiek pisać narzędzia wymagające parsowania składni C++, to wie, że twórcy tego języka musieli żywić jakąś psychopatyczną nienawiść do wszelkich przyszłych projektantów / programistów parserów i kompilatorów. Parsowanie języka o niejednoznaczniej (!), kontekstowej gramatyce i bardzo skomplikowanych regułach semantycznych to masakra.

[2] Patrz: http://yosefk.com/c++fqa/

Visual Studio nie ma tylko refactoringu, ale można dokupić Visual Assist X($99). W wersji 10(VS 2010, aktualnie Beta 1) nie zdarzyło się, bym nie miał działającego podpowiadania składni(podpowiadanie z PCH trochę kiepsko działa, ale mam nadzieję, że to poprawią), nawet dobrze działa z Pimpl idiom(nie wiem jak to poprawnie przetłumaczyć). Debugging ze zmianą on-line kodu działał dobrze już w VS2008(EE, bo innego nie testowałem).

Jedno małe pytanie początkującego, co to jest “refactoring” ?

Wikipedia to dobrze opisuje.

Tak czytałem to ale nadal nie rozumiem.

Prosty przykład: napisałeś kod z określoną funkcjonalnością(np. tworzenie okna + obsługa zdarzeń), po kilku dniach wpadłeś na pomysł, że można lepiej ten kod napisać(czyt.: będzie się go łatwiej używać, np. zamiast 20 linijek tylko 5), tak więc przepisujesz(częściej jest to metoda Kopiego-Pasta) kod pod ten nowy pomysł, lecz funkcjonalność zostaje ta sama.

Aha czyli chodzi o optymalizację kodu?

Nie. Chodzi o zmianę struktury tak, aby w projekcie nie było bałaganu i aby dało się go dalej łatwo rozwijać.

Czyli napisałeś najpierw wszystko na szybko w jednym pliku “byle działało” a później np. chcesz rozbić to na jakieś logiczne części.

Albo chcesz ujednolicić nazewnictwo funkcji bo w połowie projektu stwierdziłeś że wygodniej jest_pisać_tak, a wcześniejPisałeśInaczej i teraz masz połowę_tak, a połowęInaczej, czyli bałagan.

Dobre IDE potrafi takie czynności zautomatyzować i zapewnić, że po wykonaniu zmian projekt nadal działa tak samo.

Niestety dla C++ implementacja refaktoringu jest bardzo trudna, bo jest to jeden z najbardziej (niepotrzebnie) skomplikowanych języków programowania.

Rozumiem. Dzięki za wyjaśnienie.