Aplikacja okienkowa w C++ - co wykonać?


(Phinsectoman) #1

Witam,

studiuję informatykę. Jestem na drugim roku. Mam do wykonania projekt w C++.

Myślałem nad jakimś mocno rozbudowanym kalkulatorem, lub edytorem tekstu. 

Na jakim poziomie jest moja znajomość C++? Umiem programować w C++, ale nie używałem jeszcze jakoś specjalnie obiektowości. Napisałem kilka prostych aplikacji w MFC. Po za tym używałem jedynie konsoli.

Projekt chcę wykonać jako aplikację okienkową. Czy polecacie pisać ją używając MFC? Wymogiem jest bym używał C++. Tutaj mam dylemat. Czy mam pisac w kompletnie czystym C++ czy też mogę użyć MFC? WinApi wydaje mi się ogromnie skomplikowane...

Koledzy, doradźcie mi jak się do tego zabrać. Może macie jakieś ciekawe pomysły na projekt?

 

Pozdrawiam wszystkich :slight_smile:


(Rolek0) #2

W standardzie C++ nie ma obsługi okienek - musisz używać zewnętrznej biblioteki lub API systemu operacyjnego.

Najlepiej zapytaj prowadzącego czy są jakieś ograniczenia w kwestii czego możesz używać.


(Phinsectoman) #3

A jaką bibliotekę dobrą do nauki i mającą ciekawe możliwości polecasz?


(enedil) #4

Qt


(Edgarus) #5

MFC nie jest złe, to tylko wrapper na windows API.


(Phinsectoman) #6

A co powiecie o Windows Form?


(Pw1602) #7

Jeśli chcesz okienkową to możesz ją zbudować w c++ builder. Jeśli dobrze pamiętam to c++ builder 6 jest darmowy, bo twórcy udostępnili klucz do pełnej wersji.


(nintyfan) #8

Chciałbym zaznaczyć, że jakiekolwiek narzędzia RAD nie uczynią z Ciebie programisty, a obecnie się odchodzi od programowania w RAD.


(Pw1602) #9

Tu nie chodzi o to, aby zrobić z niego programistę. Może przecież w builderze zobaczyć, jak aplikacja będzie wyglądać itp. Jeśli nie zależy mu na wyglądzie to może bardziej skupić się na innych problemach aplikacji.


(ktoś tam) #10

Zawsze lepiej iść w coś niezależnego od systemu. Tak jak @enedil polecam Qt. Możesz przy tym pobrać cały zestaw do tworzenia aplikacji okienkowych z tą biblioteką. Wtedy okienko tworzysz w klikany sposób, a w edytorze oprogramowujesz elementy. Obiekty musisz ogarniać, jeżeli chcesz tworzyć programu GUI, w jakiejkolwiek użytecznej bibliotece.


(Phinsectoman) #11

A jak polecasz zacząć pisać w Qt?

Plus chciałbym uczyć się czegoś co mi się potem przyda. Projekt muszę zrobić w c++. A więc w grę wchodzi jakaś ciekawa i rozwojowa biblioteka. WindowsForm mi się podoba, ale z tego co czytam powoli się od niej odchodzi. Czyli zostaje Qt?


(Rolek0) #12

Najprościej chyba będzie zainstalować Qt Creator (IDE dedykowane do Qt) i poczytać tutoriale do Qt.

Musisz też wiedzieć, że Qt dodaje kilka rozszerzeń do języka C++ (część jest zrobiona przy użyciu zwykłych makr preprocesora, a cześć wymaga dodatkowego preprocesora MOC).

 

Windows Forms jest biblioteką .Net, więc żeby z niej korzystać powinno się raczej pisać w jakimś języku .Net (np. C#). C++ nie jest językiem .Net. Jest co prawda taki wynalazek jak C++/CLI ale należy go raczej traktować jako wywodzący się ale osobny od C++ język, poza tym C++/CLI służy raczej do pisania wrapperów między kodem .Net a natywnym niż samodzielnych aplikacji.


(ktoś tam) #13

Cóż… żeby zacząć, trzeba po prostu zacząć. Może to i głupio brzmi, ale tak jest. Pobierz środowisko, zacznij czytać jakiś kurs. Jeżeli sobie poradzisz, to czytaj dokumentację (rozumiem, że angielski dobrze już znasz). Najważniejsze, żebyś programował i jakoś będzie szło do przodu. 

Jeżeli będziesz chciał tworzyć aplikacja GUI, to Qt ci się przyda. WindowsForms jest tylko na Widowsa. Qt możesz używać na Windowsie, Linuksie, Androidzie, OSX, iOS i Windows Phone. Możesz przy tym programować w C++ lub Javie. Ogółem, gdy zrozumiesz Qt, to poznanie określonego, potrzebnego w danym czasie modułu, będzie sprowadzało się jedynie do spojrzenia do dokumentacji.


(kijek) #14

Nie będę oryginalny i również polecę Ci Qt :slight_smile: Qt Creator to potężne narzędzie, w którym w wygodny sposób zaprojektujesz całe GUI, a następnie zaprogramujesz. Mogę polecić Ci wideotutoriale p. Mirosława Zelenta https://www.youtube.com/playlist?list=PLOYHgt8dIdozvOVheSRb_qPVU-4ZJA7uB (od 7 odcinka). Co prawda omawiany jest Borland C++ Builder ale nie masz uczyć się obsługi danego programu, a pewnych metod postępowania. Sam zresztą od tych poradników zacząłem poznawać Qt Creator. Potem pozostaje już tylko czytanie dokumentacji :slight_smile: