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

Jaki język programowania wybrać? - poradnik

Object Storage Arubacloud
–4 głosów
624 wizyt
pytanie zadane 6 maja 2018 w Nasze poradniki przez niezalogowany
Jaki język wybrać? W internecie są umieszczone inne tego typu poradniki, jednak często widząc ich treść (Java do systemów operacyjnych itp.) zachciałem stworzyć jeden lepszej jakości. Pierwsza zasada: nie kierujcie się pieniędzmi. Co wam dadzą pieniądze jeżeli praca to koszmar. Druga zasada: spróbuj wszystkich języków i wybierz ten który Ci najbardziej pasuje. Zaczynałem się uczyć Javy jednak zrezygnowałem. Powód: obecny człowiek jest bardzo leniwy i nie chce mu się instalować jre więc po co ma brać grę na jave. I tak zacząłem używać c. Trzecia zasada:jeżeli ukierunkowałeś się na jedną rzecz (np. pisanie os) to nie każdy język się do tego nada. Do os najlepiej c i assembler, a do gier na androida java. Czwarta zasada: myśl do przodu. Niektóre języki mogą stać się bezużyteczne w ciągu dnia. Narazie html jest bardzo potrzebny, jutro może ktoś wymyśli sposób na ominięcie go w technologiach webowych. Piąta zasada jest skierowana do osób tworzących np. gry 3d. Nie używajcie unity itp. ponieważ to trochę oszkiwanie(mało piszesz ale tam rysujesz scenę kursorem. Jest też drugi powód: kod jest nie zoptymalizowany, co pogarsza grę.
2
komentarz 6 maja 2018 przez Mariusz08 Maniak (62,300 p.)
1
komentarz 6 maja 2018 przez Hiskiel Pasjonat (22,830 p.)
Nie ma co tu pisać, wszyscy wszystko napisali, ale "nie kierujcie się pieniędzmi. Co wam dadzą pieniądze jeśli praca to koszmar" można to zrozumieć tak, jakby praca programisty była koszmarną udręką.

4 odpowiedzi

+5 głosów
odpowiedź 6 maja 2018 przez draghan VIP (106,230 p.)

Cześć.

W internecie są umieszczone inne tego typu poradniki, jednak często widząc ich treść (Java do systemów operacyjnych itp.) zachciałem stworzyć jeden lepszej jakości.

Przeczytałem z uwagą Twój wpis i mam nadzieję że to nie jest ów poradnik lepszej jakości. Stosujesz w swoim poście uogólnienia i zawężenia kontekstu, z tego co można wywnioskować - sprowadzeń do Twojego doświadczenia (co podpada odrobinę pod próbę dowodzenia anegdotycznego). Żeby nie być gołosłownym, spróbuję wyłuskać, co budziło we mnie wewnętrzny sprzeciw podczas czytania.

Pierwsza zasada: nie kierujcie się pieniędzmi. Co wam dadzą pieniądze jeżeli praca to koszmar.

W jedną stronę to dobra rada. A co w przypadku, kiedy wykonujemy swoją pracę (z definicji - zarobkowo) którą kochamy, a dostajemy za to marne grosze? Oczywistym jest, że za dobrą pracę oczekuje się dobrego wynagrodzenia i niekierowanie się pieniędzmi w takim wypadku jest mało rozsądne.

Druga zasada: spróbuj wszystkich języków i wybierz ten który Ci najbardziej pasuje. Zaczynałem się uczyć Javy jednak zrezygnowałem. Powód: obecny człowiek jest bardzo leniwy i nie chce mu się instalować jre więc po co ma brać grę na jave. I tak zacząłem używać c.

Sama zasada poniekąd słuszna. Piszę "poniekąd", bo uważam że nie ma opcji żeby spróbować wszystkich języków. :) Zmieniłbym jej brzmienie raczej na takie, które sugerowałoby spróbowanie kilku flagowych języków z różnych zakątków stosu technologicznego.
Jednak uzasadnienie dobrane, według mnie, fatalnie. Zrezygnowałeś z nauki Javy, bo ktoś nie zainstalował u siebie JRE? :) Od tego są instalatory programów (na różnych OSach w różnych formach), żeby dać użytkownikowi w pełni funkcjonalny produkt, bez konieczności ręcznego dociągania zależności.

 Trzecia zasada:jeżeli ukierunkowałeś się na jedną rzecz (np. pisanie os) to nie każdy język się do tego nada. Do os najlepiej c i assembler, a do gier na androida java.

I znów: zasada słuszna, a uzasadnienie mniej. Nic nie stoi na przeszkodzie, żeby zbudować OS w Javie - patrz platformy wbudowane, m.in. większość rynku telefonów komórkowych sprzed ery smartfonów, czy chociażby JavaOS. :) Tyczy się to też masy innych języków - zestaw ASM + C nie jest jedynym słusznym.
Do gier na Androida niekoniecznie najlepiej Java. Dobrym pomysłem jest wykorzystanie C++ (kod wykonuje się z pominięciem maszyny wirtualnej, co daje bonus w postaci wydajności i możliwości swobodniejszego dostępu do pamięci) czy C# (wykorzystanie Xamarin, Unity). Na Androida mamy również Kotlina, który jest (dla niektórych) bardziej przejrzysty, co można również wykorzystać przy budowaniu często skomplikowanych aplikacji.

Czwarta zasada: myśl do przodu. Niektóre języki mogą stać się bezużyteczne w ciągu dnia. Narazie html jest bardzo potrzebny, jutro może ktoś wymyśli sposób na ominięcie go w technologiach webowych.

Podasz jakiś przykład, gdzie język stał się bezużyteczny w ciągu dnia? :) Szczerze mówiąc, nie widzę sensu w omijaniu HTML, jako że on po prostu się sprawdza w warstwie prezentacji, nie mówiąc o tym że cały Internet (i nie tylko) HTMLem stoi. Nikt nie porzuca ot tak technologii które dominują na rynku, to przynosi wymierne straty.

Odnośnie piątej zasady wypowiedział się WireNess i nie mam tutaj wiele do dodania.

+4 głosów
odpowiedź 6 maja 2018 przez WireNess Stary wyjadacz (11,240 p.)

Wszystko fajnie tylko jedno nie daje mi spokoju.

Piąta zasada jest skierowana do osób tworzących np. gry 3d. Nie używajcie unity itp. ponieważ to trochę oszkiwanie(mało piszesz ale tam rysujesz scenę kursorem.

Dlaczego oszukiwanie? Tak, to prawda, że w unity i innych tego typu silnikach dużo rzeczy można zrobić prostym drag and drop, ale czy nie o to właśnie chodzi? Czy nie chodzi o przyśpieszenie czasu tworzenia gier i o naszą wygodę? Według mnie jeżeli mamy silnik, a w nim wiele funkcji fizyki, poruszania itp., a ponadto możemy to zrobić tryliard razy szybciej niż pisząc samemu to jestem za. Nie ma co wymyślać koła od nowa.

Druga sprawa to taka, że przecież nikt nam nie każe używać wbudowanych funkcji w tych silnikach. Wszystko możemy zrobić od nowa - po swojemu. Irytują mnie ludzie, którzy sądzą, że tworzenie gier w unity to tak naprawdę nie jest tworzenie gier. Niejednokrotnie w silnikach tego typu musimy napracować się tak samo jak i bez nich (szczególnie od pisania wszystkiego od nowa), a jeżeli korzystanie z silnika daje nam - programistom - pewną wygodę i przyśpiesza tworzenie gry to dlaczego z tego nie korzystać?

W unity jest podobna ilość programowania, a ponadto korzystając z silników jak ty to nazwałeś/aś "oszukując" można stworzyć naprawdę fajne gry które zdobędą sławę. Kojarzysz na pewno the forest które właśnie zostało zrobione w unity lub fortnite'a zrobionego za pomocą UE4?

 Jest też drugi powód: kod jest nie zoptymalizowany, co pogarsza grę.

Jak już napisałem wyżej - nikt nie zmusza nas do korzystania z wbudowanych (twoim zdaniem niezoptymalizowanych) funkcji. Zawsze możemy napisać wszystko od nowa, ale jeszcze raz wspomnę - nie ma co wymyślać koła od nowa.

 

Mam nadzieję, że nie odczuwasz z mojej strony wrogiego nastawienia, ponieważ takowe z mojej strony nie występuje. Wyrażam tylko swoją opinie ;)

Pozdrawiam

+4 głosów
odpowiedź 6 maja 2018 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Jak już chcesz zrobić ładny, fajny i czytelny poradnik, to powinieneś stosować coś takiego jak akapity. Zawsze będzie to trochę przejrzystsze, niż takie pisane jednym ciągiem. smiley

Java do systemów operacyjnych itp

Możesz podać źródło? Bo jak żyję, nigdzie czegoś takiego nie czytałem.

obecny człowiek jest bardzo leniwy i nie chce mu się instalować jre więc po co ma brać grę na jave

A tego zupełnie nie rozumiem. Z jednej strony nie musisz tak mówić, bo ja i wiele innych osób nie jesteśmy chyba aż na tyle leniwi, żeby sobie nie zainstalować środowiska. Nigdy nie spotkałem takiej osoby, której by się tego nie chciało zrobić. Z drugiej strony, powiedz mi, czy ktoś kto ma lenia i nie chce mu się zainstalować JRE, będzie miał siłę i ochotę aby uczyć się Javy? To chyba jest trochę więcej wysiłku, niż prosta instalacja programu.

Niektóre języki mogą stać się bezużyteczne w ciągu dnia.

Nie przesadzajmy. Świat informatyki jest światem takiej szybkiej ewolucji, sporo rzeczy tu się zmienia w dość krótkim czasie, ale nie są to zmiany radykalne. To nie jest tak, że dzisiaj "wszyscy" piszą w Pythonie, a jutro go porzucą na rzecz PHP, czy innego języka.

I nie sądzę, żeby HTML ktoś szybko zdetronizował, w końcu parę lat już się trzyma i na razie nie widać potencjalnych następców.

Nie używajcie unity itp. ponieważ to trochę oszkiwanie

A tu mnie trochę rozbawiłeś. laugh

Co kogo interesuje, czy to jest oszukiwanie, czy nie. Liczy się efekt. A jak jest gotowe narzędzie to po to, by można było z niego korzystać i ułatwić sobie życie.

 

komentarz 6 maja 2018 przez Hiskiel Pasjonat (22,830 p.)
Dołącząm się z tą Java.
+3 głosów
odpowiedź 6 maja 2018 przez Comandeer Guru (600,810 p.)
> Druga zasada: spróbuj wszystkich języków i wybierz ten który Ci najbardziej pasuje.

Zdążyłbym umrzeć zanim wybrałbym język. Wszystkich języków programowania są tysiące. Nie ma sensu poznawać wszystkich. Wypada określić zakres problemów, które nas interesują, i wybrać stosowny do nich język.

> Zaczynałem się uczyć Javy jednak zrezygnowałem. Powód: obecny człowiek jest bardzo leniwy i nie chce mu się instalować jre więc po co ma brać grę na jave.

W każdym jednym języku trzeba coś instalować. JS = Node.js, przeglądarka, samodzielny silnik JS, C/C++ = kompilator, Python = środowisko uruchomieniowe, PHP = interpreter + najczęściej serwer WWW z modułem SAPI lub Fast CGI… Nie wiem zatem, czemu w Javie miałoby to być jakimkolwiek argumentem.

> Trzecia zasada:jeżeli ukierunkowałeś się na jedną rzecz (np. pisanie os) to nie każdy język się do tego nada. Do os najlepiej c i assembler, a do gier na androida java.

Java już nie jest oficjalnym językiem dla Androida, teraz jest Kotlin.

> Niektóre języki mogą stać się bezużyteczne w ciągu dnia. Narazie html jest bardzo potrzebny, jutro może ktoś wymyśli sposób na ominięcie go w technologiach webowych.

HTML jest starszy ode mnie i trzyma się bardzo dobrze, będąc aktualizowanym _kilka razy dziennie_. Nie wygląda na język, który ma wkrótce wymrzeć, wręcz przeciwnie.

> Piąta zasada jest skierowana do osób tworzących np. gry 3d. Nie używajcie unity itp. ponieważ to trochę oszkiwanie(mało piszesz ale tam rysujesz scenę kursorem.

Rozumiem, że topowe studia AAA korzystające z silników pokroju Unreal czy CRYENGINE też oszukują? Po to tworzy się tego typu narzędzia, żeby optymalizować pracę. Sam mówiłeś, że ludzie są leniwi, więc nie wierzę, że skoro nie chce im się instalować JRE, to nagle będzie im się chciało kodzić z palca grafikę 3D. Przecież to po prostu strata czasu.

Podobne pytania

0 głosów
6 odpowiedzi 1,175 wizyt

92,555 zapytań

141,402 odpowiedzi

319,553 komentarzy

61,939 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!

...