Вопрос В чем отличие c++ и c, а также остальных языков группы c друг от друга?

Регистрация
10 Сен 2013
Сообщения
70
Репутация
0
Спасибо
0
Монет
0
Решил поинтересоваться системным программированием, узнал что такое ассемблер. А ещё я узнал, что винда написана на c++, а ее ядро на c, Mac OS написан на c и с++, а
Linux на c++ и на objective c (или примерно так, впрочем забыл :(, но это не важно для моего вопроса). Мне вот что интересно: вот допустим я буду с++ программистом, вопрос: легко ли мне будет работать (практически не учив, но, все же, не без этого) с другими языками программирования типа c (тот же c и Objektive c)? Насколько сильно они отличаются и чем? В общем, если перефразировать мой вопрос, то скажу следующее:
Какие из языков с, с++,objective c учить в первую очередь, чтобы потом легко справится с остальными, и почему (отличия)?
 
С - почти подмножество C++. Выучишь С++, и для того, чтобы утверждать, что ты знаешь Си, остаётся только запомнить, чего в Си нету. ObjC - ерунда чисто для яблочников, С напоминает разве что отдалённо. Сейчас вообще нинужно, т. к. есть всякие свифты. Вообще группировать языки по названию - довольно глупая затея. Лучше по назначению и основной парадигме: например, выучив какой-нибудь императивный язык типа плюсов, ты без труда освоишь любой другой императивный (java, шарп, etc.), т. к. конструкции типа циклов-ветвлений там те же самые. А вот с функциональными придётся поебаться. Правда, они нафиг никому не нужны, так что вероятно, тебе этим вообще не придёся заниматься.
 
обжектив си забудь это фигня главная разница си и плюсов это классы - полиморфизм на уровне наследования а не на процендурном уровне, соотвественно new вместо malloc и calloc выучи паттерны проектирования на C# или Java тогда поймешь все остальные языки с этого лучше начать а популярно в смысле работы такая жава, питон, sql, плюсы, сишарф
 
Отличие не в самих языках, а в средствах их применений. Вопрос НЕ в языках. Любой язык можно выучить за 2-3 недели. И вам реально придётся это делать. В очень многих продуктах используется не один, не два, а гораздо больше языков. И со временем вы перестанете использовать большинство изученных вами сейчас языков. Вы должны понять, что конкретный язык нужен для библиотек, которые осуществляют действия, требуемые программой. Новый продукт, библиотеки устарели, новая платформа - и вы изучаете новые языки и технологии. Второй аспект не просто знать язык, а уметь его применять. Именно об этом пишут в вакансиях, чтобы добиться работы нужно реально потратить допустим год, развивая продукт на нужном языке. Какие вакансии вас интересуют, такие языки и нужно учить, но со временем вас заинтересуют другие вакансии и снова обучение...
 
сильно отличаются их области применения работать будет тяжело везде, если ты будешь только учить языки, но не выберешь область и не получишь опыт в ней системное программирование - это что за область в твоем понимании? и хочешь ли ты там работать? "Linux на c++ и на objective c (или примерно так, впрочем забыл :(, но это не важно для моего вопроса)" - нет, когда программист что-то забыл, это очень важно. вероятно с ним что-то не так P.S. objective c это Apple
 
Назад
Сверху