Aplikacja Qt C++ - pomoc teoretyczna

0

Witam, przejdę od razu do problemu. Mam 15lat, nauczycielke od informatyki umiejącą ledwo podstawy worda i powerpointa, uczę się programowania od ponad roku, obecnie chcę już na poważnie ogarnąć, ugruntować swoją wiedzę i mieć solidny wpis do portfolio - piszę aplikację o zarządzaniu domowymi zapasami, ogólnie preperring.

Przygotowany mam cały projekt, rozpisane w czystym konsolowym c++ wszystko mniej więcej, i chcę teraz zacząć przenosić ją na prawdziwą okienkową aplikację w Qt. Nie wiem zbytnio jak się za to zabrać, no o ile z przeniesieniem funkcji i tego wszystkiego do Qt to może jeszcze jakoś pójdzie, to za to nie mam bladego pojęcia co do:

  • baz danych, przechowywania produktów w bazie danych

  • łączenia się z internetem, satelitą, serwerami aplikacji,

  • wypuszczeniem (wydaniem) skończonej aplikacji i przeniesienie jej na androida i linuxa

Jest jakaś dobra duszyczka która by mi pomogła teoretycznie z tymi zagadnieniami? Jak to wszystko funkcjonuje i wgl jak powstają i działają duże aplikacje. Pozdrawiam

1

Chcesz za dużo na raz.
Zdecyduj się na jeden konkrety problem a potem przy nim podłub, poggoglaj itp.

Radziłbym jednak zacząć od zapoznania się z debuggerem (powinno się tego uczyć na samym początku już przy samym "hello world").
http://doc.qt.io/qtcreator/creator-debugging.html
filmik.

0

1

baz danych, przechowywania produktów w bazie danych

Na początek SQLite / LiteSQL (http://doc.qt.io/qt-5/sql-driver.html).

łączenia się z internetem, satelitą, serwerami aplikacji - to jest znacznie bardziej skomplikowany temat.

Na początek może naucz się co to REST API, jak napisać backend (i jaką technologię i język wybrać? PHP, Node.JS, Java, Ruby, Python, ...), który wystawi usługę oraz jak wykonać request HTTP w Qt.

wypuszczeniem (wydaniem) skończonej aplikacji i przeniesienie jej na androida i linuxa.

O ile z Linuxem raczej większych problemów nie będzie (bo Qt wspiera Linuxa), o tyle Android to już cięższa sprawa, bo mimo że Qt wspiera Androida to buildowanie i ogólnie wszystko jest już trudne. http://doc.qt.io/qt-5/android.html

1

baz danych, przechowywania produktów w bazie danych
łączenia się z internetem, satelitą, serwerami aplikacji,
wypuszczeniem (wydaniem) skończonej aplikacji i przeniesienie jej na androida i linuxa

Zastanówmy się. Co to ma w ogóle robić? Moja propozycja:

  • Fronte-end nie appka w qt a po prostu html/js/wordpress , czy to wystarczy?
  • Front end wyświetla dane z bazy
  • Backend operuje na bazie danych i ewentualnie robi jakieś dodatkowe usługi(backend może być nawet czysto konsolowy)

Może jak chcesz pouczyć się qt rozwarz wejście do jakiegoś projektu z qt na github. Na początek zrobisz proste rzeczy, ktoś ci może nawet review zrobi itd. Apki z projektu kde na pewno kogoś szukają.

1

w qt obsługa baz danych jest prostsza niż w javie, nie trzeba pobierać żadnych frameworków, pisać konfiguracji hibernate itp

void MainWindow::on_loginButton_clicked()
{
  db.setUserName(ui->loginEdit->text());
  db.setPassword(ui->passEdit->text());
  if( !db.open() )
  {
      QString stringError = db.lastError().text();
      ui->loggedStatus->setText(errorMsg + ": " + stringError);
  } else {
      qDebug( "Connected!" );
      ui->loggedStatus->setText("");
      ui->stackedWidget->setCurrentIndex(1);
      query = new QSqlQuery(db);
      executeQuery("SELECT * from studenci");
      model->setQuery(*query);
      ui->tableView->setModel(model);
      choice = 0;
  }
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1