А стоит ли сейчас начинать изучать С++ или сразу начать С#. Интересно с учетом перспектив трудоустройства.
Навыки программированию имею, С в т.ч. знаю. Сейчас работаю програмистом 1С но есть желание перейти в разработчики софта.
Здравствуйте, winsux, Вы писали:
W>А стоит ли сейчас начинать изучать С++ или сразу начать С#. Интересно с учетом перспектив трудоустройства. W>Навыки программированию имею, С в т.ч. знаю. Сейчас работаю програмистом 1С но есть желание перейти в разработчики софта.
ИМХО неплохо бы и С++. Хотя это вопрос спорный. Т.е. это вообще вопрос очень спорный. Здесь вроде бы уже был флейм на подобную тему. Так что скорее всего придется решать-таки самому.
Здравствуйте, winsux, Вы писали:
W>А стоит ли сейчас начинать изучать С++ или сразу начать С#. Интересно с учетом перспектив трудоустройства. W>Навыки программированию имею, С в т.ч. знаю. Сейчас работаю програмистом 1С но есть желание перейти в разработчики софта.
Запросто можно. Через год ты не изучая С++ сможешь его читать, а через 2, если очень надо, то и писать. Потому как все время нет-нет да он и встечается. Где примеры на с++, где еще что. Многие считают, что только С++ дает фундаментальные знания системной архитектуры ОС. Но это далеко не так. Вот со мной вышло так, что я ни разу не сталкнулся с необходимостью плотно писать на c++. Несколько коммерческих проектов писались на Delphi, т.к. были знания, да и для автоматизации хозяйственной деятельности (СУБД, клиент, иногда 3-й слой) он как нельзя кстати. Потом появление .NET. Первый раз попалась VS.NET в руки в ноябре 2001 года бетка вроде 2-я. 8 месяцев баловства параллельно с ведением последнего Delphi проекта. Сейчас разрабатываю крупный проект на C# уже 1.5 года. Не сказать, что мне когда-то мешало отсутствие опыта разработки на C++. В том числе и в трудоустройстве. Хотя я все время занимался Pascal — Delphi — .NET. Я не могу сказать, что я не знаком с С/С++, веб программированием. Конечно не виртуоз, но все же. Просто не моя специализация. ИМХО, все приходит с опытом.
Когда ты плотно будешь заниматься .NET, то там появиться и PInvoke, а тут и С++, далее Interop, а тут и COM и опять C++. Надумашь почитать дядьку Рихтера про винды, и там С/С++. И так часто.
Я, конечно, сталкиваться начал с C/C++ не в .NET, но, думаю, ничем от твоего случая не отличается. Если ты не собираешься быть системным программистом, то бросать все силы на C++ не стоит.
ИМХО, изучать нужно передовые технологии, а при необходимости будешь обращаться назад/вниз для понимания как работает то, с чем ты сталкиваешься в повседневной жизни. А если кажый будет изучать тоже, что и его отцы-деды, то никакого прогресса не будет. Нужно изучать новое, понимать старое и разрабатывать новейшее!
PS Наверное, сумбурно как-то все написал, но болезнь + пиво делают свое дело Сильно не пинайте.
У меня сомнение есть вот в чем. Счас на работу чисто под net берут вроде как редковастенько, в основном в купе с C++, а тут уж ничего не поделаешь, не занешь про "умные указатели", то и на net делать нечего. Вот такой вот парадокс.
Здравствуйте, beretta, Вы писали:
B>Здравствуйте, Miem, Вы писали:
B>У меня сомнение есть вот в чем. Счас на работу чисто под net берут вроде как редковастенько, в основном в купе с C++, а тут уж ничего не поделаешь, не занешь про "умные указатели", то и на net делать нечего. Вот такой вот парадокс.
Ну не так уж редковатенько, хотя спро бесспорно ниже, чем на плюсы
Здравствуйте, Воронков Василий, Вы писали:
ВВ>Здравствуйте, beretta, Вы писали:
B>>Здравствуйте, Miem, Вы писали:
B>>У меня сомнение есть вот в чем. Счас на работу чисто под net берут вроде как редковастенько, в основном в купе с C++, а тут уж ничего не поделаешь, не занешь про "умные указатели", то и на net делать нечего. Вот такой вот парадокс.
ВВ>Ну не так уж редковатенько, хотя спро бесспорно ниже, чем на плюсы
Ну если еще по секрету конторку подскажешь такую в Питере, в долгу не останусь
Здравствуйте, winsux, Вы писали:
W>А стоит ли сейчас начинать изучать С++ или сразу начать С#. Интересно с учетом перспектив трудоустройства. W>Навыки программированию имею, С в т.ч. знаю. Сейчас работаю програмистом 1С но есть желание перейти в разработчики софта.
Мой путь был длинным Basic (не Visual) -> C -> C++ + ASM -> Visual Basic -> Язык 1С -> C#
C# был освоен за неделю потом сразу начался коммерческий проект на нем. Аналогичные история была со всеми языками, после связки C++ + ASM
Считаю что в С++ есть недоработки по использовонию Объектного Проектирования. Тем неменее С++ это гораздо больше чем просто язык программирования. Знание С++ для программиста так же необходимо как базовых курсов физики и математики.
А если хочешь побыстрее пробиться и зарабатывать жалкие $500 можно начать и C#
ТОлько не забывай что в штатах скоро будет место только для архитекторов ПО верхнего уровня. А все кодеры будут сидеть на востоке.
Здравствуйте, <Аноним>, Вы писали:
А>Мой путь был длинным Basic (не Visual) -> C -> C++ + ASM -> Visual Basic -> Язык 1С -> C# А>C# был освоен за неделю потом сразу начался коммерческий проект на нем.
за неделю можно освоить язык, синтаксис, но не .NET, и начинать проект на NET после недели знакомства мягко говоря рискованно. Не имея хотя бы поверхностного, но всеобъемлевающего понимания возможностей сложно построить правильную архитектуру.
А>Аналогичные история была со всеми языками, после связки C++ + ASM
сыграла как раз не связка "C++ + ASM", а понимание основ, того, на чем базируются языки, чего из них можно выжать, а чего они не могут в принципе, понимание процессов происходящих в ОС, как твой высокоуровневый код работает "внутри". С++ — только инструмент, с помощью которого ты получил эти знания. Этих энаний можно достичь и другими путями, и совсем необязательно сначала получить их, и только потом начинать двигаться дальше. Наоборот, нужно всегда двигаться дальше, и параллельно ты будешь получать эти знания.
А>Считаю что в С++ есть недоработки по использовонию Объектного Проектирования.
А>Тем неменее С++ это гораздо больше чем просто язык программирования. Знание С++ для программиста так же необходимо как базовых курсов физики и математики.
Вот таких как ты я и имел ввиду когда писал:"Многие считают, что только С++ дает фундаментальные знания системной архитектуры ОС." Ну глопости это.
А>А если хочешь побыстрее пробиться и зарабатывать жалкие $500 можно начать и C# А>Только не забывай что в штатах скоро будет место только для архитекторов ПО верхнего уровня. А все кодеры будут сидеть на востоке.
Ну полюбому первый год — два будешь кодером. А вот дальнейшее продвижение зависит он твоих способностей и желания, но никак не от профессионального опыта С++.
Здравствуйте, Miem, Вы писали:
M>Здравствуйте, <Аноним>, Вы писали:
А>>Мой путь был длинным Basic (не Visual) -> C -> C++ + ASM -> Visual Basic -> Язык 1С -> C# А>>C# был освоен за неделю потом сразу начался коммерческий проект на нем. M>за неделю можно освоить язык, синтаксис, но не .NET, и начинать проект на NET после недели знакомства мягко говоря рискованно. Не имея хотя бы поверхностного, но всеобъемлевающего понимания возможностей сложно построить правильную архитектуру.
А>>Аналогичные история была со всеми языками, после связки C++ + ASM
M>сыграла как раз не связка "C++ + ASM", а понимание основ, того, на чем базируются языки, чего из них можно выжать, а чего они не могут в принципе, понимание процессов происходящих в ОС, как твой высокоуровневый код работает "внутри".
Угу, не вопрос, понимание основ/принципов работы — это самое нужное. И вот в C++ наслоений поверх основ минимум, а свободы писать — максимум. Плюс сам язык красив.
M>С++ — только инструмент, с помощью которого ты получил эти знания. Этих энаний можно достичь и другими путями, и совсем необязательно сначала получить их, и только потом начинать двигаться дальше.
Не совсем верно. При таком подходе можно долго что-то делать, а потом уперется в тупик — потому путь был выбран неверно. Например, из-за незнания основополагающей вещи, пропущенной при беглом ознакомлении...
M>Наоборот, нужно всегда двигаться дальше, и параллельно ты будешь получать эти знания.
А>>Считаю что в С++ есть недоработки по использовонию Объектного Проектирования.
С++ — язык программирования, причем тут проектирование?
А>>Тем неменее С++ это гораздо больше чем просто язык программирования. Знание С++ для программиста так же необходимо как базовых курсов физики и математики.
M>Вот таких как ты я и имел ввиду когда писал:"Многие считают, что только С++ дает фундаментальные знания системной архитектуры ОС." Ну глопости это.
C++ вообще не дает каких-то особых эзотерических знаний по системной архитектуре OS. Просто во многих ВУЗах архитектуру OS и С/C++ изучают почти одновременно, чему немало способствуют API OS на С.
Здравствуйте, Alvin, Вы писали:
M>>сыграла как раз не связка "C++ + ASM", а понимание основ, того, на чем базируются языки, чего из них можно выжать, а чего они не могут в принципе, понимание процессов происходящих в ОС, как твой высокоуровневый код работает "внутри". A>Угу, не вопрос, понимание основ/принципов работы — это самое нужное. И вот в C++ наслоений поверх основ минимум, а свободы писать — максимум. Плюс сам язык красив.
Вопрос пристрастий. К тому же человек не на нем писать хочет, а на C#, с этой точки зрения все и рассматриваем. Если человек будет писать на C#, то опыт программирования на С++ не является необходимым условием.
M>>С++ — только инструмент, с помощью которого ты получил эти знания. Этих энаний можно достичь и другими путями, и совсем необязательно сначала получить их, и только потом начинать двигаться дальше.
A>Не совсем верно. При таком подходе можно долго что-то делать, а потом уперется в тупик — потому путь был выбран неверно. Например, из-за незнания основополагающей вещи, пропущенной при беглом ознакомлении...
Совсем основопологающие вещи знать нужно, да и варианты типа "долго-долго писал, а потом тупик" будут происходить не часто, т.к. долго-долго писать без понимания не получится . Обычно писать сначала будешь под чьим-то руководством. Так что такие ситуации будут меньше времени занимать, чем "сначала изучим все основы, попишем годик, а лучше 2 на C++, а потом перейдем к C#". Я все же настаиваю на параллельном изучении. И именно в таких ситуациях, когда: "Все! Тупик! Дальше не могу! Что это вообше? Почему???". То что написано до тебя нужно понимать, использовать, но совсем не обязательно уметь писать это, и тем более писать тоже самое самому. Все придет с опытом.
M>>Наоборот, нужно всегда двигаться дальше, и параллельно ты будешь получать эти знания.
А>>>Считаю что в С++ есть недоработки по использовонию Объектного Проектирования. A>С++ — язык программирования, причем тут проектирование?
не ко мне, а к Анониму
M>C++ в плане трудоустройства куда как круче.
Не скажи. В Киеве -- уже нет. Я этим вопросом как раз занимаюсь. Куча вакансий по Java и C#/VB.NET
M>А если для собственного развития — лучше, конечно, C#.
Короче, автор топика не парился бы с С++ ибо дело долгое, а преимуществ уже почти не дает (если не знаешь его на _очень_ хорошем уровне).
Я так думаю.
Здравствуйте, mihailik, Вы писали:
M>>>C++ в плане трудоустройства куда как круче. _>>Не скажи. В Киеве -- уже нет. Я этим вопросом как раз занимаюсь. Куча вакансий по Java и C#/VB.NET
M>Серьёзно? Куча вакансий по .NET в Киеве?
M>А где искать? Мне как раз денежки нужны http://meta.ua.
Тыкаешь в разделе "бизнес" в слово "Работа" и шаришь по 5 первым серверам.