Jak ustawić plan nauki programowania?

1

Witam!

Kilka lat temu zacząłem naukę programowania C++, którą jednak porzuciłem. Jednak teraz chciałbym wrócić do programowania, ponieważ nie wykluczam związania swojej przyszłości z tą dziedziną.

Znalazłem taki oto tutorial:

http://www.cplusplus.com/doc/tutorial/

Stwierdziłem że początkowe 75% tego tutoriala raczej znam i pamiętam z czasów gdy się uczyłem C++. Jaki wg Was jest mój poziom zaawansowania (czytaj: po jaki kurs/książkę powinienem sięgnąć po skończeniu tego tutka?).

Chciałem się też zapytać czy warto poświęcać czas na naukę zaawansowanego C++, jakie są obecne trendy? Czy warto skupić się na czymś innym patrząc też na perspektywę zarobków, pracy w jakiejś firmie?

Jak pokierować swoją edukacją w zakresie programowania aby móc pisać użyteczne programy na które będzie popyt?

Liczę na dobre wskazówki, pozdrawiam,

Makaveli.

1

Obecne trendy to:

  1. aplikacje dla biznesu, często w formie WWW;
  2. aplikacje na urządzenia mobilne.
    Jeśli chodzi o to pierwsze, to królują dwie technologie: Java i .NET, jeśli o to drugie, to języki specyficzne dla platformy. C++ ma i będzie miał coraz mniej zastosowań.
3
Makaveli napisał(a):

Kilka lat temu zacząłem naukę programowania C++, którą jednak porzuciłem. Jednak teraz chciałbym wrócić do programowania, ponieważ nie wykluczam związania swojej przyszłości z tą dziedziną.

Programowanie nie jest pisaniem kodu, znajomością konkretnego języka, to rozwiązywanie problemów... a czasem ich tworzenie (patrz PHP). Pewnie z 90% używanych w pracy umiejętności będzie niezależnych od języka. Elementy algorytmiki (chociaż znajomość złożoności obliczeniowej), wzorce projektowe, SOLID itd. czy bardziej "praktyczne" podstawy: kontrola wersji (git!) i debugowanie, to wszystko jest w dużej mierze niezależne od technologii, z którą pracujesz, (prawie) wszędzie korzysta się z tego podobnie.

Makaveli napisał(a):

Znalazłem taki oto tutorial:

http://www.cplusplus.com/doc/tutorial/

Stwierdziłem że początkowe 75% tego tutoriala raczej znam i pamiętam z czasów gdy się uczyłem C++. Jaki wg Was jest mój poziom zaawansowania (czytaj: po jaki kurs/książkę powinienem sięgnąć po skończeniu tego tutka?).

Jaki jest Twój poziom? $diety wie, jak sam zauważyłeś, to jest TUTORIAL, pokazuje jedynie podstawy najczęściej używanych aspektów języka.

Makaveli napisał(a):

Chciałem się też zapytać czy warto poświęcać czas na naukę zaawansowanego C++, jakie są obecne trendy? Czy warto skupić się na czymś innym patrząc też na perspektywę zarobków, pracy w jakiejś firmie?

Jak pokierować swoją edukacją w zakresie programowania aby móc pisać użyteczne programy na które będzie popyt?

Liczę na dobre wskazówki, pozdrawiam,

Takie wątki są dosłownie co tydzień, dlaczego nikt z Was nawet nie wpada na tak genialny pomysł, że może nie być pierwszym z tak "oryginalnym" dylematem (czyt. programiści zarabiają furę kasy, /me chce furę kasy, wnioski narzucają się same)? Poprzedni taki klient był kiedy, z tydzień temu? C++ staje się niszą, chcesz łatwą pracę to wybierz Javę, C# lub COBOLa, zależnie od preferencji seksualnych. W każdym razie spora część rynku jest w jakimś stopniu związana z webaplikacjami, fajnie by było żebyś poznał podstawy webdevu. Oczywiście na temat nauki programowania i wymienionych języków napisane zostało tutaj już prawie wszystko, co można na tego typu forum napisać, wystarczy poszukać.

Nie zrażaj się moim marudzeniem, pewnie zaraz przyleci kółko javowej adoracji i napisze, że to wszystko nieprawda.

0

Dzieki za odpowiedzi.

Jak to jest z ta Java? Mnie ona kojarzy sie z aplikacjami na telefon ktore zostaly juz raczej wyparte przez rozne androidy itp.

Czyli raczej nie polecacie C++? Rozumiem ze poznanie jakiegokolwiek jezyka daje cenny bagaz wiedzy ktory pozwoli szybko nauczyc sie innego, ale jakies tam podstawy juz mam i chcialbym sie zajac czyms naprawde na czasie.

0

Android to java.
Ja jednak bym liznął c++. Z racji możliwości dostrzeżenia jaka java bądź c# jest wspaniały i ile ma udogodnień.

0

No tak, właśnie przeczytałem też w necie że android pisze się w javie :P Pewnie to stąd, że w starszych aplikacjach pojawiało się na początku logo Java, a teraz już nie. ;)
Chyba zacznę przygodę z Androidem. Mam SGS2 to może coś dla siebie bym też napisał... A Javy trochę liznąłem w przeszłości.
Mam jeszcze takie ćwiczenia praktyczne w javie z 2006 roku. Stąd pytanie, czy androidowa java może się znacznie różnić od materiału zawartego w mojej książeczce?

0

Dla mnie osobiście aplikacje mobilne to tylko jakiś "gadżet" - ale może to dlatego, że swój telefon wykorzystuje raczej do dzwonienia :)

Zapewne w biznesie będą dominowały C# i Java więc jeśli ten kierunek Cię interesuje to wiadomo czego się uczyć. Natomiast jak dla mnie C/C++ będzie cały czas obecny w przemyśle (szeroko pojęta automatyka). I tak całość sprowadza się do tego, żebyś uczył się czegoś co naprawdę Cię interesuje, bo jak będziesz dobry to zajęcie jakiej znajdziesz :)

1

Fakt, że C++ miał lekki zastój przez ostatnie kilkanaście lat ale znowu się odradza. Z resztą w małych firmach zajmujących się www i aplikacjami na telefony nigdy nie był i nigdy nie będzie używany ale wszędzie tam gdzie tworzy się skomplikowane i specjalistyczne oprogramowanie na trochę większą skalę wciąż jest to bardzo popularny język i chyba najpopularniejszy.

0

A ja tam właśnie C++ uczę się z powodu trudu jaki muszę w to włożyć :). Nie znam innego języka, więc tym bardziej jest ciężko.
Czasami myślę, żeby przejść na Javę, czy C#, ale ja nie lubię mieć prosto. Lubię mieć wyzwanie i C++ to daje. Poza tym jeszcze zdecydowany nie jestem, ale prawdopodobnie pójdę w gamedev, więc C++ na pewno przyda się bardziej, a jak nie to nauczę się C#.
Więc podsumowując, jak chcesz iść tylko dla pieniędzy to myślę, że C# będzie dobrym wyborem, bo pracę znaleźć łatwo, przynajmniej gdy przeglądam oferty pracy (co nie znaczy, żeby się w C# ograniczać, bo powinieneś znać najlepiej kilka języków ;)), jeśli masz wyznaczony cel tak jak ja to szukaj języka do tego celu.
Bo to oczywiste, że do każdego celu wybija się coś innego.
Ja wybrałem gamedev, bo wg mnie najciekawsze problemy mogą być rozwiązywane właśnie tam, więc możliwe, że będę miał z tego dużą satysfakcję.
Jedyne tylko czego nie wiem, to ile faktycznie się programuje, a ile siedzi na silnikach, bo jak pisanie kodu po prostu uwielbiam, to siedzenie na silniku i klikanie mnie męczy. W dziedzinach innych niż gamedev myślę, że C++ będzie miał coraz mniejsze znaczenie, bo komputery są obecnie coraz mocniejsze i wydajność nie jest już tak znacząca przy mniejszych programach.

1
michalo2882 napisał(a):

Fakt, że C++ miał lekki zastój przez ostatnie kilkanaście lat ale znowu się odradza. Z resztą w małych firmach zajmujących się www i aplikacjami na telefony nigdy nie był i nigdy nie będzie używany ale wszędzie tam gdzie tworzy się skomplikowane i specjalistyczne oprogramowanie na trochę większą skalę wciąż jest to bardzo popularny język i chyba najpopularniejszy.

Czyli gdzie? Jakiś konkretny przykład z polskiego rynku pracy :)

0

Lepiej programować w C# czy w C++?

0

Musisz się sam zastanowić CO chcesz programować. C# to raczej programowanie dla Windows, często aplikacji biznesowych. Jeśli chodzi o C++ to częściej spotykam się z ofertami programisty systemów wbudowanych. Oczywiście nie są to jedyne zastosowania tych języków.

3

Lepiej programować w C# czy w C++?

Lepiej ruchać w skarpetkach czy w kominiarce? To zależy...

Jak sądzisz, dlaczego jest tak wiele języków? Czy różnią się tylko i wyłącznie nazwą oraz składnią? Każdy język ma nieco inne przeznaczenie, inne zalety i wady, to narzędzie dobierane do konkretnego celu.

Jaki cel chcesz osiągnąć i w jakich warunkach?

1 użytkowników online, w tym zalogowanych: 0, gości: 1