W czym pisać aplikacje pod Windows w 2019r?

W czym pisać aplikacje pod Windows w 2019r?
AR
  • Rejestracja:prawie 15 lat
  • Ostatnio:ponad 4 lata
0

Cześć,
szukam już od dłuższego czasu i niestety dostaję już [CIACH!].
Chciałem napisać na potrzeby firmy, w której pracuję prosty program, tak po godzinach. Do tej pory zazwyczaj pisałem takowe w Java SE. Niestety mam już dosyć problemów z JVM, ciągłego nie uruchamiania się tych programów, dodawania parametrów do zmiennych środowiskowych. No i sama potrzeba posiadania zainstalowanej Java w systemie też jest nieraz minusem.

Czy ktoś kto się zna na desktop developingu pod Windows mógłby skomentować moje wybory?

  1. Z tego co czytam, to razej polecają C#. Super mi się w tym pisało na studiach. I z chęcią do tego wrócę, jednak trochę mam też sentyment co C++. Pewnie sie nie da (myślę o free IDE i bibliotekach do komercyjnych zastosowań)?
  2. IDE - Visual Studio Community jest niby do komercyjnych zastosowań i podobno najlepszy. Ostatnim razem jak to instalowałem nie działał jednak edytor formatek... Mam nadzieję, że tym razem będzie ok. Nie będzie to projekt za $$$, ale chciałbym używać narzędzi, które moge użyć do ewentualnego zarobku.
  3. Formatki chciałbym tworzyć pod każdy system MS, czyli w grę wchdzi WPF i WinForms. Sugeruję się tym:
    https://michaelscodingspot.com/9-must-decisions-in-desktop-application-development-for-windows/
  4. Jaka wersja .Net framework dla aplikacji? W Javie staram się używać wersję wstecz, żeby unikać problemów. Może to tylko wynik moich osobistych doświadczeń, najnowsze wersje Javy sprawiały mi więcej problemów w uruchomieniu programów niż starsze. Czy podobnie jest z .NET Framework?
  5. Na coś jeszcze się przygotować?

Mam 16GB ściągania danych VS Community więc pewnie jutro po południu zacznę konfigurować środowisko. Byłoby bardzo miło znać jakieś pułapki, na które warto uważać i zaoszczędzić sobie stresu albo nie rzucić tego w cholerę jak ostatnio. Tym razem na prawdę nie chciałbym pisać w Java SE.

Dzięki i pozdrawiam,
A.

edytowany 3x, ostatnio: arrowman
Aryman1983
  • Rejestracja:prawie 15 lat
  • Ostatnio:prawie 4 lata
  • Lokalizacja:Pabianice
  • Postów:255
0

Pisz w czym Ci wygodnie, ja także chciałem podchodzić do javy ale c# dla mnie lepsiejszy :-) 16GB VS? chyba ze wszystkimi opcjami bez xamarina bo z nim to już pod 35GB podchodzi :-) do normalniej pracy wystarczy Ci opcja chyba 8GB bo to już z GUI oraz asp net/core. Acha i ściągaj sobie już wersję 2019 bo za parę dni wychodzi relase :-)

AR
Dzięki za porady. Mam własnie na myśli to, żeby nie pisać w czym chcę, ale w tym co jest najbardziej przyszłościowe. Tej 2019 w wersji Community chyba jeszcze nie ma. A tylko Community mnie interesuje. Jak ogarnę C#, to w następnych projektach poszukam jak pisać w C++ na destopy i embeded, za free i komercyje użytkowanie. Może też dobry pomysł. Trochę bawiłem się swego czasu w Arduino. Jak się dorobię, to chciałbym w profesjonalne PLC iść. Chciałbym się przebrandowić na kodera Java, jednak nie widze w tym przyszłości (przesycenie rynku). A maszyny będa zawsze potrzebne.
WeiXiao
  • Rejestracja:około 9 lat
  • Ostatnio:około 13 godzin
  • Postów:5109
0

Jaka wersja .Net framework dla aplikacji? W Javie staram się używać wersję wstecz, żeby unikać problemów. Może to tylko wynik moich osobistych doświadczeń, najnowsze wersje Javy sprawiały mi więcej problemów w uruchomieniu programów niż starsze. Czy podobnie jest z .NET Framework?

Chciałem napisać na potrzeby firmy, w której pracuję prosty program, tak po godzinach.

Zobacz jakie tam macie .NET frameworki poinstalowane. Obstawiam, że jedne z najnowszych, ale niekoniecznie najnowszy.

edytowany 1x, ostatnio: WeiXiao
AR
No tak, dobra myśl. Dzięki.
WeiXiao
A może apka webowa? :P
AR
- już nieraz o tym myślałem, jednak zawsze wkurza mnie brak bazy danych offline i niechęć przeglądarek do obsługi SQLlite ;/ Ale w marzeniach jak najbarziej :-)
Wibowit
Implementacje HTML5 Web Storage chyba czasem wykorzystują SQLite pod spodem, ale na pewno nie umożliwiają zapytań SQL.
Wibowit
  • Rejestracja:prawie 20 lat
  • Ostatnio:około 2 godziny
0

Chciałem napisać na potrzeby firmy, w której pracuję prosty program, tak po godzinach. Do tej pory zazwyczaj pisałem takowe w Java SE. Niestety mam już dosyć problemów z JVM, ciągłego nie uruchamiania się tych programów, dodawania parametrów do zmiennych środowiskowych. No i sama potrzeba posiadania zainstalowanej Java w systemie też jest nieraz minusem.

Javę powinieneś dorzucać do instalatora własnego programu i wtedy nie musisz się przejmować tym co użytkownik ma zainstalowane w systemie. Podobna sprawa jest np z Pythonem lub JavaScriptem - nikt nie wymaga zainstalowanego Pythona lub Electrona w systemie, bo są wrzucone do instalatorów z programem.


"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 1x, ostatnio: Wibowit
Zobacz pozostałe 35 komentarzy
Wibowit
Java żyje i ma się dobrze. Wszystko teraz stoi na OpenJDK albo (jeśli jest w tyle z aktualizacjami to) niedługo będzie na tym stać.
Wibowit
Otwieranie Javy zaczęło się jeszcze za Suna i Javy 6/7. Oracle poprowadziło to w zasadzie do końca i różnice między OracleJDK 11 i OpenJDK 11 są w zasadzie kosmetyczne.
AR
@Wibowit: To chyba muszę założyć wątek jak to OpenJDK skonfigurować, żeby moje stare proj. psychiczne.
Wibowit
No to zakładaj. Zacznij od OpenJDK 8.
AR
Dziekuję wszystkim za tak bogate w wiedzę komentarze!
Bartosz Wójcik
  • Rejestracja:ponad 14 lat
  • Ostatnio:ponad 4 lata
  • Postów:439
0

Jeśli szybko i sprawnie to C# WinForms oczywiście (kompiluj dla .NET v2.0 a twój soft będzie śmigał od Windows XP do najnowszego Windowsa) lub WPF w ostateczności (można dostać depresji).

Jeśli C++ to spróbuj Qt o ile nie zrazisz się ich filozofią tworzenia okienkowych programów no i cena licencji za komercję Cię nie wystraszy.

Jeśli masz wszystko gdzieś to napisz soft w JS pod Electrona.

Ktos
Depresji to raczej w WinForms niż w WPF...
Bartosz Wójcik
Od lat jestem przyzwyczajony do projektowania okien korzystając z wizualnych narzędzi, a nie języka XAML, który ani nie jest html-em, ani CSS-em i wymaga nauczenia się zupełnie nowej składni i podejścia do obsługiwania eventów czy zarządzania kontrolkami (model MVVM), zobacz sobie nowe wydania Delphi czy C++ Buildera https://www.embarcadero.com/products/cbuilder jakoś można zrobić funkcjonalne i nowoczesne projektowanie okien niekoniecznie męcząc się z dziwnym językiem rodem nawet nie wiadomo skąd? Dla kogo to wymyślono, dla programistów? Wątpię. Dla projektantów? Też nie.
Ktos
O ile się zgodzę, że XAML jest dziwaczny (i pamiętam obiecanki, że to język dla projektantów - vide Expression Blend), a jego stylowanie woła o pomstę (aczkolwiek w Xamarinie da się używać CSS), to jednak całe szczęście przynajmniej nie jest to HTML. ;) Ale ogólnie deklaratywne tworzenie interfejsu i data binding (MVVM w szczególności) IMO jest wygodniejsze niż drag&drop.
Bartosz Wójcik
Pisanie interfejsu w XAML jest wygodniejsze niż kreowanie go wizualnie? Seems legit ;)
AR
Dzieki! Super porady.
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)