Wybór języka pod konkretny projekt

Wybór języka pod konkretny projekt
BL
  • Rejestracja:około 8 lat
  • Ostatnio:około 5 lat
  • Postów:1
0

Witam,

jestem zdecydowany i odpowiednio zdeterminowany zająć się nauką programowania i pracowania w tym kierunku. Pod tym kątem podjąłem już pewne kroki, dokonałem jako takiego researchu i zamierzam położyć nacisk na naukę Javy od podstaw, pomimo że w podstawowym zakresie miałem już doczynienia z C++ oraz z Pythonem. Przechodząc do sedna: zacząłem obecnie ostatni rok studiów inżynierskich na wydziale zupełnie niezwiązanym z IT. Mam możliwość napisania pracy inżynierskiej opartej na stworzeniu (a w zasadzie remake'u) aplikacji wspomagającej projektowanie pewnego urządzenia sanitarnego. Aplikacja ma być okienkowa, jej skomplikowanie jest absolutnie minimalne i sprowadzi się do pobrania liczbowych danych wejściowych od użytkownika, odpowiednim ich przetworzeniu i wyświetleniu i eksporcie wyników. Promotor nie wymaga nawet żadnej oprawy graficznej, wręcz zaakceptowałby gdyby aplikacja działała w trybie konsolowym jak jej obecna wersja, która jest po prostu tak stara, że nie da się jej otworzyć na 64-bitowych systemach. Na to jednak jestem trochę zbyt ambitny i chciałbym żeby wyglądało to jakoś "po ludzku" ;) Aplikacja (tak jak dotychczasowa wersja) ma służyć studentom do wykonania sprawdzania poprawności wykonywanych przez nich projektów, które stanowią przedmiot jednych z zajęć w toku studiów. Istotne jest, żeby technologia wykonania pozwalała na swobodne uruchamianie programu jako pliku wykonywalnego. Bez konieczności instalowania przez użytkownika dodatkowych sterowników czy np JRE. Przyznam że jestem na początku mojej drogi z Javą i nijak nie potrafię znaleźć odpowiedzi na to pytanie. Optymalnym dla mnie byłoby zrobienie tego w Javie, jako jeden z projektów dzięki któremu posiadłbym kolejne umiejętności, ale nawet nie wiem czy pisanie tego w Javie spełni powyższe kryterium, czy może na czas pracy nad tą aplikacją powinienem wrócić na moment do C++ i zgłębić WinAPI?

edytowany 5x, ostatnio: bloniaq
ekhart
  • Rejestracja:ponad 7 lat
  • Ostatnio:ponad rok
  • Lokalizacja:ekhart.pl
  • Postów:140
1

Żadne WinAPI. Zwłaszcza jeśli zaczynasz. Jeśli już to Java. Choć pewnie i Python byłby do tego lepszy. Poszukaj jak tworzyć aplikację okienkowe w Javie w Swing.


Wibowit
  • Rejestracja:prawie 20 lat
  • Ostatnio:22 minuty
4

Istotne jest, żeby technologia wykonania pozwalała na swobodne uruchamianie programu jako pliku wykonywalnego. Bez konieczności instalowania przez użytkownika dodatkowych sterowników czy np JRE.

JRE możesz zapakować razem z programem. Pythona w zasadzie też byś musiał. A gdybyś pisał w Qt to musiałbyś zapakować z programem sporo ważące DLLki. Pisanie pod WinAPI z kolei sprawi, że uruchamianie programu pod czymkolwiek co nie jest Windowsem będzie (mocno) utrudnione.


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 2x, ostatnio: Wibowit
Wibowit
  • Rejestracja:prawie 20 lat
  • Ostatnio:22 minuty
1

Aktualizacja:
Znalazłem opis narzędzi z samego JDK służących do zapakowania JRE razem z programem Javowym i zrobienia instalatora na Windowsa, MacOSa czy Linuksa: https://docs.oracle.com/javase/8/docs/technotes/guides/deploy/self-contained-packaging.html


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
elwis
  • Rejestracja:ponad 18 lat
  • Ostatnio:15 dni
0

Ja bym rozważył QT (znacznie lepiej mi się pracowało, całkiem fajny framework) albo jakiś interfejs HTTP. WinApi to raczej masochizm. Argumentem za Javą byłaby ewentualnie chęć przeniesienia tego na Androida. Myślę, że wszystko zależy od kierunku jaki chciałbyś nadać swojej karierze. Java to krok w stronę biznesowych aplikacji i dużej ilości pracy dla niekoniecznie dobrze wykwalifikowanych developerów. C++ mógłby być krokiem w stronę ciekawszych zagadnień – tu mniej pracy, ale często ciekawszej i bardziej ambitnej. Pójście w stronę technologii webowych byłoby dosyć uniwersalne bo pozwoliłoby zarówno na jedną z wielu ofert dla frontend–developera, ale duże możliwości bycia freelancerem (myślę, ze najłatwiej zacząć).
Co do ambicji i interfejsu okienkowego to akurat takie rozwiązanie może być walnięciem kulą w płot. Interfejs tekstowy jest bardzo przydatną rzeczą, warto udostępnić obok interfejsu okienkowego, albo co najmniej masowe przetwarzanie plików CSV czy innych typów danych – dla studentów to mogłoby być przydatne. Analogicznie, jeśli miałbyś robić niednak w technologii webowej, dobrze byłoby udostępnić API przez RESTa.


edytowany 2x, ostatnio: elwis
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)