Chcę pisać programy dla Linuxa - jaki język?

Chciałbym umieć pisać takie programy jak: odtwarzacz muzyki, notatnik, przeglądarka obrazów czy środowisko graficzne. Chciałbym pisać w GTK.

Jakiego języka powinienem uczyć? I czy po przeczytaniu tony poradników, byłbym w stanie napisać tego typu programy czy może potrzeba lat praktyki?

Notatnik napiszesz od ręki, polecam nie czytać, a pisać i szukać rozwiązań. Taki projekt to gdzieś 1 rok studiów. Środowisko graficzne zaś napsizesz w ramach pracy licencjackiej. Pozostałe gdzieś pomiędzy.

Do poważniejszych programów chyba C++ by się nadał. Jest stosunkowo prosty i sporo materiałów.

Ja bym się nie męczył z Linuksem tylko od razu swój kernel cyknął.

Napisz WannaCry 2 , będzie dużo klientów :slight_smile:

Przeczytaj, a potem wybierz ten język który Tobie odpowiada:
https://ubuntu.pl/czytelnia/2008/07/30/wstep-do-programowania-w-linuksie-na-przykladzie-ubuntu/

Nie jest to prawdą. C++ jest jednym z trudniejszych do opanowania języków, składnia jest tak rozbudowana, że spokojnie starczyłoby dla kilku języków. Materiałów jest sporo i ilość nie idzie w parze z jakością.

Jeśli chcesz pisać w GTK to C, jeśli miałeś na myśli GTK+ to C++. Możesz też jednak użyć Rusta. Generalnie wybrałbym Qt zamiast GTK.
Gdyby GTK nie było wyznacznikiem to możesz to wszystko o czym wspomniałeś napisać w prawie dowolnym języku.

1 polubienie

Qt można pisać w praktycznie każdym języku podobno (i każdą platformę, nawet na swój kernel :smiley: ) :thinking: ale nie wydaje mi się, że to pytanie tytułowe było poważne :wink:

Prawdę mówiąc jeśli pragnie szybko i bezboleśnie tworzyć aplikacje typu notatnik, kalkulator, odtwarzacz czy przeglądarkę i niema nacisku na bardziej ambitne projekty, to polecam pobawić się tym:
https://www.pilotlogic.com/sitejoom/

DP: https://www.dobreprogramy.pl/CodeTyphon,Program,Windows,36735.html

cytat z opisu:

Aktualnie obsługiwane są następujące typy interfejsów: WIN32 GDI, GTK+ 1.2.x (Unix, Mac OS X), GTK+ 2.x, Qt 4 (C++) i Windows CE.

Na pewno mu to nie zaszkodzi a przynajmniej nie zrazi się klepaniem “hello world”

Pascal ma strasznie nielogiczną strukturę! Nie polecam bo trochę znam (mało) :stuck_out_tongue: Tyle dobrze, że uczy ścisłego typowania zmiennych, ale dla przykładu, ze średnikami tam jest zamiecha. Czasem kończą wyrażenie, czasem są jego częścią (chyba w warunku case). Jest tam dużo takich wyjątków, ale sobie ich nie przypomnę, bo jest wieczer :smiley:
Pamiętam, że miałem z nim też przejścia z deklaracjami procedur i funkcji, albo zapętlaniem modułów…
Ja nie polecam Pascala, to stary język…

ps.
ale notatnik spoko! można szybko napisać :smiley:

Pascal który był w szkołach vs Object Pascal w Lazarus czy CodeTyphon.
To tak jak porównać pisanie c++ w notatniku vs korzystanie z Visual Studio.

Zaczynając od korzystania z oprogramowania typu RAD szybciej się nauczy programować niż przebijając się przez 50 kursów gdzie wszystko skupia się na wyświetlaniu wyników w konsoli itp.

A czy to CT, VS, VB nie ma znaczenia.

Nie, oficjalnie biblioteka jest tylko pod C++, można go używać na każdej platformie jedynie, a to nie jest jednoznaczne z językiem. Niemniej są adaptery np. do C i Rusta, ale biblioteka Qt dalej jest w C++.

@Fizyda OK, ale masz taki qtcreator, w którym można nawet JS pisać? :open_mouth: Albo code::blocks (chyba tak się to pisze) który pozwala ci w wielu językach pisać pod biblioteki Qt?

@anon65865446 object pascal ma dalej tę nielogiczność w warunkach case… więc…

:slight_smile:
Case … of … else bardzo fajne jak trzeba oprogramować wybór kilkoma klawiszami zamiast walić ileś razy IF.

No przecież case jest po to żeby nie walić ifami :smiley:

Toż to napisałem, a pokaz jak to zrobić w C++ czy Java

Ja jestem amatorem/entuzjastą :wink: Nie znam się na programowaniu, więc nie jestem w stanie podjąć z tobą dyskusji na poziomie :slight_smile: Napisałem tylko tyle co mi się przypomniało.

Zapewne dlatego pseudokod to zwykle niemalże czysty Pascal.

Ale bzdura :slight_smile: Może czysty BASIC? :>

Ale takie prost pytanie.

Kalkulator, notatnik etc w czym będzie lepszy lub gorszy jeśli zostanie napisany w różnych językach ?
Ma spełniać swoja funkcję i tyle.
Nie potrzeba tu szalonych prędkości, optymalizacji i innych cudów.

Pewnie, że w czymś, co jest najprostsze, pewnie nawet bez GUI… W pascalu napisze szybko i będzie to działać dobrze. Może python? ale ten jest podatny na ukryte błędy ze względu na swoje zmienne inteligętne :smiley:
No to cobol! :smiley:

Ja w średniej uczyłem się VB na zadaniach kalkulatora z możliwością przekształcania wyników decy na binarne… W każdym jeżyku da się prosto, ale co jest teraz przyszłościowe? :thinking: