• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Języki programowania zależnie od wybranej specjalizacji

Object Storage Arubacloud
+2 głosów
2,280 wizyt
pytanie zadane 20 maja 2016 w Rozwój zawodowy, nauka, praca przez Evelek Nałogowiec (28,960 p.)

Chciałbym się dowiedzieć, jakie języki programowania są potrzebne do wybranych projektów/specjalizacji. Mam na myśli że np. aby pisać gry komputerowe to trzeba znać C++, jakąś bibliotekę DirectX itd. Chciałbym poprosić kogoś o przypisanie języków programowania do każdego z tych podpunktów:

  1. Gry komputerowe typu NFS, EuroTruck itp.
  2. Programy biznesowe typu Excell, NormaPRO, AutoCad.
  3. Tworzenie dynamicznych stron internetowych z różnymi bazami danych.
  4. Gry przeglądarkowe typu www.plemiona.pl itp.
  5. Aplikacje i gry dla systemu Android.
  6. Aplikacje i gry dla systemu Windows Phone.
  7. Programowanie sztucznej inteligencji.

2 odpowiedzi

+5 głosów
odpowiedź 20 maja 2016 przez Comandeer Guru (601,110 p.)
wybrane 20 maja 2016 przez Evelek
 
Najlepsza

Na upartego wszystkie te rzeczy można ogarnąć jednym językiem – JS ;)

1. WebAssembly (czyli C++ → JS) lub od razu w JS, na WebGL + canvas + Web Audio API + Pointer Lock API + Fullscreen API.

2. Electron.js/nw.js

3. No tutaj klasyk: HTML + CSS + JS, z backendem w PHP + PostgreSQL/MySQL lub – bardziej trendy – node.js + MongoDB/Redis

4. Tutaj bym wykorzystał sockety, czyli node.js albo w ostateczności PHP (z frameworkiem React – ale tym PHP-owym, nie JS-owym).

5. Cordova/PhoneGap, Ionic, React Native…

6. React Native

7. A tutaj to w sumie znów WebAssembly może się przydać.

komentarz 20 maja 2016 przez Evelek Nałogowiec (28,960 p.)
Dzięki za wyczerpującą odpowiedź. Muszę sobie wybrać specjalizacje i kierunek na studia. :)
komentarz 20 maja 2016 przez KubenQPL Maniak (62,820 p.)
Nie koniecznie najpopularniejsze języki wybrałeś do nie których specjalizacji. 1. Gierki są zwykle robione w c++ plus jakaś biblioteka np directx 2. Programy biurowe raczej też c++. 5. To raczej Java i Android studio. Nie rozumiem po co na siłę wykorzystywać we wszystkim JS.
komentarz 20 maja 2016 przez Evelek Nałogowiec (28,960 p.)
Z tego co przeczytałem to WebAssembley to jakas rodzina języków C++, Java, więc rozumiem że na tej podstawie tych dwóch języków sie tworzy gry. Electron.js to też swego rodzaju C++, C#, Java, więc też wychodzę z założenia że nie nauczę sie tworzyć aplikacji biznesowych bez znajomości C++ itd.
1
komentarz 20 maja 2016 przez Comandeer Guru (601,110 p.)
@KubenQPL doskonale sobie zdaję z tego sprawę. Po prostu chciałem zwrócić uwagę na to, że tego typu języki istnieją (przecież kiedyś taka była Java!).

@Evelek nie, nw.js i Electron.js nie mają nic wspólnego z C++. To po prostu wykastrowany silnik przeglądarki Chrome. Natomiast tak, WebAssembly pozwala na uruchamianie programów w innym języku wewnątrz silnika JS przeglądarki.
1
komentarz 20 maja 2016 przez KubenQPL Maniak (62,820 p.)
Moim zdaniem nie warto się bawić w wykorzystywanie jednego języka do wszystkiego (chyba że jest to pierwotny język używany w danym SDK), z dwóch powodów: 1. Często wiąże się to z dodatkowymi kosztami. 2. Zwykle biblioteki tego języka są gorzej zoptymalizowane/ nie dopracowane niż te pierwotnego języka.
2
komentarz 20 maja 2016 przez Comandeer Guru (601,110 p.)
Owszem, ale czasami się bardziej opłaca zainwestować w rozwiązanie w znanym sobie języku niż próbować wyrzeźbić coś w nieznanym, np. wziąć React Native zamiast nauczyć się Javy + Android SDK tylko po to, żeby zrobić prostą appkę, która będzie robić to samo, co strona internetowa.
1
komentarz 20 maja 2016 przez Evelek Nałogowiec (28,960 p.)
No dobra to sprostuje pytanie trochę, bo widzę, że jednak wszystko co wymieniłeś to nieznane mi rzeczy.

Chcę przykładowo umieć pisać programy biznesowe w.w. Excell itd. Mam od razu zacząć naukę Electron.js/nw.js czy najpierw fajnie by było, jakbym umiał C++ jakieś itd. bo ma to pewne schematy i odzwierciedlenia jedno z drugim?

Aplikacje na Android robiłem w Android SDK, Java i edytorze Eclipse. To jedna z możliwości, inna to wymienione przez Ciebie Cordova/PhoneGap, Ionic, React Native ? I tu też fajnie jakbym znał programowanie w Java czy to oddzielne stworzone na swoje potrzeby języki?

Jeśli wszystko to co wymieniłeś to oddzielne języki niemające nic wspólnego z C++, Java itd. to nie widzę sensu dalszej nauki C++, skoro miałbym tego nie wykorzystywać.
1
komentarz 20 maja 2016 przez KubenQPL Maniak (62,820 p.)
No jeśli chce się zrobić jedną apkę to lepiej robić w języku który się zna ale jeśli chce się wybrać już konkretnie co konkretnie chcemy programować w przyszłości to lepiej już oryginalne SDK.
1
komentarz 20 maja 2016 przez Comandeer Guru (601,110 p.)
@Evelek skoro idziesz już w C++, to idź w to dalej. Co najwyżej dołożyłbym do tego Javę i C#.
1
komentarz 20 maja 2016 przez Evelek Nałogowiec (28,960 p.)
No to o to mi chodziło, gdybyś do wszystkich tych podpunktów wymienił języki bardziej mi znane takie jak właśnie C++, C#, Javę to by było po temacie, a jak wyskoczyłeś z takimi nowinkami to przez chwilę miałem zawahania czy ja dobrze robię w ogóle, że się uczę tego.

 

Skoro tak to okej, skupiam się głównie na C++ i Java obecnie, do tego dochodzi PHP i MySql i za niedługo zdecyduje w takim razie, bo najbardziej mnie kręcą chyba te aplikacje biznesowe. Jakby mi przyszło projektować gry i pisać jakieś wiedźminy, diablo itd. to ja bym się szybciej zniechęcił, to w gry te nigdy nie grałem i jakoś zafascynowany nimi nie jestem.

 

Naukę Javy połączę z aplikacjami mobilinymi na Anroida i Windows Mobile i na tym się ukierunkuje w takim razie.
+4 głosów
odpowiedź 20 maja 2016 przez draghan VIP (106,230 p.)
Nie zgadzam się z dwiema pierwszymi propozycjami, podrzuconymi przez Comandeera. "Nie zgadzam się", oznacza: "podałbym tutaj inne, które uważam że są naturalnym wyborem". Reszta ujdzie. :)

1. C++. Można w C#, Javie, Pythonie, JS, Pascalu czy języku asemblera... Ale dla desktopowych gier najsensowniejszy jest C++, ze względu na stosunek wydajności do możliwości. Mówię to z perspektywy gier wymagających od sprzętu trochę więcej niż majkrosoftowy Saper. Nie należy zapominać o języku shaderów, jeśli już o językach programowania mówimy w kontekście gier.

2. Core pisany w C++, może częściej w Javie, C#. Duża rola języków skryptowych, jak np. Python.
komentarz 20 maja 2016 przez Evelek Nałogowiec (28,960 p.)
Jeszcze jedno pytanie ode mnie: w takim razie w jakich edytorach tworzone są gry komputerowe i programy typu Excell? Mogą to być przykładowo Visual C++ i to w pełni wystarczy czy może istnieją jakieś bardziej zaawansowane programy umożliwiające programowanie obiektowe?
komentarz 20 maja 2016 przez KubenQPL Maniak (62,820 p.)
Przecież programować obiektowo możesz w każdym IDE. Chyba chodziło ci o interfejs. Są IDE znacznie ułatwiające tworzenie interfejsu w C++ jednak większość jest płatna, głównie w c++ interfejs się robi w WinAPI chociaż na pewno się znajdzie parę innych bibliotek.
komentarz 20 maja 2016 przez Evelek Nałogowiec (28,960 p.)
Tak, interfejs miałem na myśli.

WinAPI podobno to przeżytek i nie zalecane do stosowania. Mogą to być i płatne programy, jestem ciekawy tego całego profesjonalizmu, bo z tego co wyczytałem to wiele gier ma już gotowe silniki więc część pracy jest załatwiona od razu.
1
komentarz 20 maja 2016 przez draghan VIP (106,230 p.)

w takim razie w jakich edytorach tworzone są gry komputerowe i programy typu Excell?

Gry komputerowe są specyficznym rodzajem oprogramowania - tutaj twórcy zazwyczaj piszą własne edytory. Do programów użytkowych są specjalizowane designery, dedykowane dla konkretnego języka / biblioteki. Takie designery to oprogramowanie z rodziny RAD (do wyguglowania). Microsoft Visual Studio posiada wygodny edytor interfejsu. Code::Blocks również ma coś takiego. Framework QT sam w sobie jest aplikacją RAD.

głównie w c++ interfejs się robi w WinAPI

Nie. Już od dawna się nie robi. Dla C++ jest sporo bibliotek, umożliwiających pisanie aplikacji z GUI. Dwie najpopularniejsze to QT i wxWidgets, które pozwalają na pisanie jednego kodu, który działa na wielu platformach.

 

1
komentarz 20 maja 2016 przez Evelek Nałogowiec (28,960 p.)
Ehh...to programowanie to temat rzeka widzę...

Już mniej więcej czaje wszystko co i jak. To jeszcze takie pytanie jak już wspomniane zostało o QT - w którym momencie nauki C++ można to wprowadzić? Nie znając obiektowego C++ można już czy lepiej po obiektowym? Czy trzeba znać bibliotekę STL?

Framework QT jest do pobrania za darmo z internetu?
komentarz 20 maja 2016 przez KubenQPL Maniak (62,820 p.)
W Visual Studio C++ jest designer interfejsu? Bo z tego co ja kiedyś szukałem to nie było lub poprostu nie umiałem go znaleźć. Do C# widziałem że jest ale do C++ jak wybierałeś okienkowy program to ci generowało szablon z winapi.
2
komentarz 20 maja 2016 przez draghan VIP (106,230 p.)

Ehh...to programowanie to temat rzeka widzę...

Nawet temat-morze, bym powiedział. :)

w którym momencie nauki C++ można to wprowadzić? Nie znając obiektowego C++ można już czy lepiej po obiektowym? Czy trzeba znać bibliotekę STL?

Obawiam się, że wiedza z zakresu programowania obiektowego jest niezbędna, jako że QT opiera się właśnie na modelu obiektowym.  Zgaduję, że pod pojęciem STL rozumiesz szablony kontenerów i algorytmy z biblioteki standardowej C++. Nie trzeba znać, jednak zalecam zapoznanie się. To są potężne narzędzia, które bardzo ułatwiają programiście życie i po prostu wypada co nieco znać.

W Visual Studio C++ jest designer interfejsu?

Pojęcia nie mam. W Visual Studio designer jest, natomiast nie wiem, czy dla C++. Nie dotykałem nigdy własnymi rączkami Microsoft Visual Studio. Zapytaj na czacie adriana17, On, zdaje się, sporo wie na temat tego IDE (i nie tylko ;).

Podobne pytania

0 głosów
3 odpowiedzi 264 wizyt
pytanie zadane 24 lipca 2016 w HTML i CSS przez Szygnik Początkujący (340 p.)
0 głosów
1 odpowiedź 215 wizyt
pytanie zadane 6 lipca 2016 w Inne języki przez niezalogowany
+4 głosów
9 odpowiedzi 5,961 wizyt
pytanie zadane 5 czerwca 2016 w Bezpieczeństwo, hacking przez xSztamurda Początkujący (370 p.)

92,567 zapytań

141,420 odpowiedzi

319,616 komentarzy

61,953 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...