Jestem młodym programistą, który pewnego dnia chce pracować w terenie jako programista. Znam Java, VB.NET i C #. Chcę nauczyć się nowego języka (jako programista wiem, że warto poszerzyć to, co wiem - uczyć się języków, które sprawiają, że myślisz inaczej). Przejrzałem online, aby zobaczyć, jakie języki są popularne. Wszyscy znają C i C ++ (nawet ci mugole, którzy tak mało wiedzą o komputerach w ogóle), więc pomyślałem, że może powinienem naciskać na C.
C i C ++ są ładne, ale są stare. Rzeczy takie jak Haskell i Forth (itp. Itp.) Są stare i straciły popularność. Boję się nauki C (a nawet C ++) z tego samego powodu. Java jest również dość stara i działa wolno, ponieważ jest uruchamiana przez JVM i nie jest kompilowana do kodu natywnego.
Od dłuższego czasu jestem programistą Windows. Niedawno zacząłem używać Javy - ale tylko dlatego, że była bardziej wszechstronna i można ją było rozpowszechniać w innych miejscach. Problem polega na tym, że nie wygląda to na bardzo użyteczny język z następujących powodów:
- Najczęściej używany jest do aplikacji internetowych i aplikacji na telefony komórkowe (w szczególności Androida)
- Jeśli chodzi o rzeczywiste produkty z niego wykonane, jedyne, co przychodzi mi na myśl, to Netbeans, Eclipse (hurra do tworzenia i IDE z językiem, dla którego IDE jest - to jak tworzenie strony internetowej do pisania HTML / CSS / Javascript) i Minecraft co bywa zabawne, ale leniwe i dwubiegunowe, jeśli chodzi o specyfikację komputera. wsparcie.
- Poza tym jest używany do serwerów, ale do cholery - nie chcę tylko tworzyć / konfigurować serwerów .
Języki .NET są jednak miłe:
- Ludzie się śmieją, jeśli w poważnej rozmowie wspominam VB.NET lub C #.
- Nie jest wieloplatformowy, chyba że użyjesz MONO (który jest wciąż w fazie rozwoju i wymaga pewnych ulepszeń).
- Brakuje rzeczy niskiego poziomu, ponieważ podobnie jak Java z JVM, jest on uruchamiany / zarządzany przez CLR.
Moją pierwszą myślą było nauczenie się czegoś takiego jak C, a następnie wykorzystanie go do odskoczenia do C ++ (tylko po to, aby upewnić się, że będę dobrze rozumieć / bazować), ale jak powiedziałem wcześniej, z każdą minutą robi się coraz starszy.
W co spojrzałem
Fantom wygląda ładnie. To jak miły pośrednik między moimi dwoma ulubionymi językami, a nawet pozwala mi publikować między nimi zamiennie, ale w przeciwieństwie do tego, czego chcę, kompiluje się do CLR lub JVM (w zależności od tego, do czego go publikujesz) zamiast być kompletną kompilacją .
D też wygląda ładnie. Wydaje się być bardzo użytecznym językiem i zwieluróżnychźródeł wydaje się być lepszy niż C / C ++. Skoczyłbym z tym dobrze, ale wciąż nie jestem pewien jego sukcesu, ponieważ oczywiście nie jest to obecnie główny nurt.
Istnieje kilka innych, które wyglądały całkiem ładnie, koncentrując się na innych rzeczach, takich jak Opa z programowaniem stron internetowych i Go by GOOGLE.
Moje pytanie
Czy warto uczyć się tych „eksperymentalnych” języków? Czytałem inne pytania, które mówią, że jeśli nie uczysz się ciągle języków i jesteś otwarty na wszystkie języki, nie masz odpowiedniego nastawienia do programowania. Rozumiem to i wciąż nie do końca rozumiem, ale tak naprawdę, jeśli język nie stanie się głównym nurtem, czy powinienem spędzać czas na nauce czegoś innego? Nie chcę uczyć się starych (lub już wkrótce) starych języków programowania. Wiem, że wiele osób postrzega to jako coś ważnego *, ale czy ktokolwiek z was kiedykolwiek wziąłby pod uwagę (zakładając, że jeszcze nie wiedziałeś) FORTRAN? Moim celem jest pozostawanie na bieżąco, aby mieć pewność, że odnoszę sukcesy w przyszłości.
Zrzeczenie się
Tak, jestem młodym programistą, więc prawdopodobnie w swoim pytaniu wypowiedziałem wiele naiwnych stwierdzeń. Zapraszam do poprawiania mnie w KAŻDYM! Muszę gdzieś zacząć się uczyć, więc jestem pewien, że duża część mojej wiedzy jest na tyle szkicowa, że spowodowała niepoprawne stwierdzenia lub błędy w moim myśleniu. Zostaw swoje uczucia w komentarzach.
Wyniki...
Naprawdę jestem zdumiony niesamowitymi reakcjami, z których większość tak ładnie wskazuje moje nieporozumienia i błędne osądy. Wiele się z tego nauczyłem i mam nadzieję, że wykorzystam wszystko, czego się nauczyłem! Prawdopodobnie zacznę uczyć się Haskell w następnej kolejności ( nie tak stary język, choć ma ponad 20 lat - hahaha ), a potem zacznę szukać innych opcji wokół mnie.
Dzięki