Witam
Nie wiedziałem w jakim dziale to napisać więc napisałem tutaj. Mam pytanie, którego języka programowania lepiej się uczyć na początek ? Rozpocząłem naukę w c++ ale ciągnie mnie bardziej do c, bo w c najczęściej są pisane systemy operacyjne oraz słyszałem, że zanim rozpocznie się naukę c++ powinno się poznać c. A co wy uważacie ?
To już właśnie zależy od Ciebie, C++ jest znacznie bardziej nowoczesny i rozbudowany, ale C przydaje się w programowaniu elektroniki, jest starszym i znacznie ograniczonym językiem. Jak chcesz być informatykiem (programowanie aplikacji itp), to C++, automatykiem (sterowniki, avr itd), mechatronikiem, zacznij od C.
C jest językiem łatwiejszym niż C++, ale ma dużo więcej ograniczeń i obecnie jest mało praktykowany. Jeśli opanujesz C, to świetnie, tylko za dużo z tym językiem nie zrobisz. Będzie łatwiej, wtedy uczyć Ci się C++, ale po co dwa razy się uczyć, jak C nie przyda się praktycznie wcale? Ja bym na twoim miejscu uczył C++, będzie trochę trudniej niż z C, ale jak się nauczysz, to będziesz miał dużo więcej możliwości.
Niestety nie jestem w stanie nic Ci więcej powiedzieć, C++ jest niby kompatybilny wstecz z C, ale w praktyce nie zawsze, proponuję zacząć od C++, bo to przyszłościowy język.
(12.04.2015, 15:29)amb00 napisał(a): [ -> ]Ogólnie to chciałbym pisać zarówno zwykłe programy jak i pisać moduły do jądra Linuxa oraz programować mikrokontrolery.
Chciałbym się zapytać czy jak opanuję c++ to będę od razu rozumiał C ?
Jeśli chcesz pisać moduły jądra linux to od razu przygotuj sobie kilka lat wolnego czasu na naukę ponieważ nie dość że musisz znać perfekcyjnie C to jeszcze musisz znać perfekcyjnie strukturę linuxa.
Ucząc się C++ nie będziesz rozumiał całego C ponieważ mimo iż są to prawie te same języki to różnią się nieco do siebie, wywoływanie funkcji działa trochę odmiennie, klasy też się różnią od siebie ale jeśli poznasz C++ w stopniu zaawansowanym to na pewno sporo z C będziesz w stanie zrozumieć a douczenie się C będzie wymagało znacznie mniejszego nakładu czasu ponieważ to będzie taka mała formalność.
Będziesz musiał jedynie poznać różnice i nauczyć się na czym te różnice polegają ponieważ sama składnia jest praktycznie taka sama w obu językach.
Więcej o różnicach między tymi językami możesz przeczytać tutaj :
http://pl.wikibooks.org/wiki/C%2B%2B/R%C..._a_C%2B%2B
Tak czy inaczej gdybym miał zaczynać uczyć się programowania to zaczynałbym od C++ ponieważ daje więcej możliwości, program napisany w C++ trzymający standardy C też spokojnie będzie działał np. jako moduł jądra linux (sprawdzone na własnej skórze).
Ok, dzięki za odpowiedzi. Zostanę przy c++.