Что значит: "знаю С++"?
От: Финченко Юрий  
Дата: 06.10.01 11:50
Оценка:
Вопрос не праздный.
Вот человек в формуме заявляет, знаю, мол, С++
дайте мне работу.

Знаю С++ — это:
1. Знаю кнопочки IDE Visual Studio C++?
2. Знаю как с помощью его wizard's написать простую программку используя MFC
и имею представление о технологиях баз данных?
3. Знаю 1 и 2 и в дополнение к этому с помощью ATL могу делать COM объекты?
4. Знаю 1 — 3 + Win32 API и могу сделать COM объект который ATL не использует?
5. Знаю 1 — 4, а кроме того имею опыт работы в куче разных SDK для Windows
(типа DirectX, DDK и что-нибудь еще чего я не знаю)
6. Кроме всего прочего могу с помощью assembler'a оптимизировать отдельные
критичные места в программе.
....

Какой уровень должен быть у программиста, чтобы он мог заявить сабж?

С уважением.
finchenko@mail.ru
ICQ 109577872
Re: Что значит:
От: alexsmar www.sophtanet.com
Дата: 06.10.01 13:19
Оценка:
Здравствуйте Финченко Юрий, Вы писали:

ФЮ>Вопрос не праздный.

ФЮ>Вот человек в формуме заявляет, знаю, мол, С++
ФЮ>дайте мне работу.

ФЮ>Знаю С++ — это:

ФЮ>1. Знаю кнопочки IDE Visual Studio C++?
ФЮ>2. Знаю как с помощью его wizard's написать простую программку используя MFC
ФЮ> и имею представление о технологиях баз данных?
ФЮ>3. Знаю 1 и 2 и в дополнение к этому с помощью ATL могу делать COM объекты?
ФЮ>4. Знаю 1 — 3 + Win32 API и могу сделать COM объект который ATL не использует?
ФЮ>5. Знаю 1 — 4, а кроме того имею опыт работы в куче разных SDK для Windows
ФЮ> (типа DirectX, DDK и что-нибудь еще чего я не знаю)
ФЮ>6. Кроме всего прочего могу с помощью assembler'a оптимизировать отдельные
ФЮ> критичные места в программе.
ФЮ>....

ФЮ>Какой уровень должен быть у программиста, чтобы он мог заявить сабж?


Честно говоря, непонятно причем здесь знания с++ и знания всех тех технологий, которые вы выше перечислили. Использовать эти технологии можно и не работая на с++. ИМХО, уровень знаний по с++ можно оценивать по примерно следующей нарастающей по сложности, и соответственно уровню подготовки с++ программиста шкале:

1. Знаю как написать класс Helloworld.
2. Знаю как использовать data abstraction.
3. Умею использовать, по крайней мере, схемы has a и is a.
4. Умею грамотно использовать multiple inheritance.
5. Умею грамтно использовать generic typing.

Ну и можно где-нибудь добавить про умелое использование механизма обработки исключений и умелую организацию garbage collection.
Re: Что значит:
От: Курилка Россия http://kirya.narod.ru/
Дата: 06.10.01 13:28
Оценка:
Здравствуйте Финченко Юрий, Вы писали:
ФЮ>Знаю С++ — это:
ФЮ>1. Знаю кнопочки IDE Visual Studio C++?
ФЮ>2. Знаю как с помощью его wizard's написать простую программку используя MFC
ФЮ> и имею представление о технологиях баз данных?
ФЮ>3. Знаю 1 и 2 и в дополнение к этому с помощью ATL могу делать COM объекты?
ФЮ>4. Знаю 1 — 3 + Win32 API и могу сделать COM объект который ATL не использует?
ФЮ>5. Знаю 1 — 4, а кроме того имею опыт работы в куче разных SDK для Windows
ФЮ> (типа DirectX, DDK и что-нибудь еще чего я не знаю)
ФЮ>6. Кроме всего прочего могу с помощью assembler'a оптимизировать отдельные
ФЮ> критичные места в программе.
ФЮ>....

ФЮ>Какой уровень должен быть у программиста, чтобы он мог заявить сабж?


по-моему, то что перечислено, есть совсем не c++, а совокупность MSVC++/ATL/WinAPI/miscSDK/assembler, т.е. далеко не c++. Всё выше перечисленное может использовать и Си-программист. Для хорошего знания Си++(чем я по-моему пока не обладаю) нужно совсем другое — знание конструкций самого языка, а не конкретной реализации и специфики ОС, хотя и без этого некуда.
Re[2]: Что значит:
От: IT Россия linq2db.com
Дата: 06.10.01 16:36
Оценка:
Здравствуйте alexsmar, Вы писали:

A>Честно говоря, непонятно причем здесь знания с++ и знания всех тех технологий, которые вы выше перечислили. Использовать эти технологии можно и не работая на с++.


Это было бы так, если бы обсуждение велось в форуме по C++. В данном форуме технологии имеют самое непосредственное отношение к C++ и без них резюме рассматривать никто не будет. :(
Если нам не помогут, то мы тоже никого не пощадим.
Re[3]: Что значит:
От: Курилка Россия http://kirya.narod.ru/
Дата: 06.10.01 16:58
Оценка:
Здравствуйте IT, Вы писали:
IT>Это было бы так, если бы обсуждение велось в форуме по C++. В данном форуме технологии имеют самое непосредственное отношение к C++ и без них резюме рассматривать никто не будет. :(

Согласен, но тогда можно рассматривать и c++/Unix и всё тому подобное, т.е. надо рассматривать не чисто язык, а связку язык/среда/ОС. Хотя по-моему на нынешний момент последнее является наиболее важным.
Re: Что значит:
От: Igor Soukhov  
Дата: 06.10.01 21:14
Оценка:
Здравствуйте Финченко Юрий, Вы писали:

ФЮ>Знаю С++ — это:

ФЮ>1. Знаю кнопочки IDE Visual Studio C++?
ФЮ>2. Знаю как с помощью его wizard's написать простую программку используя MFC
ФЮ> и имею представление о технологиях баз данных?
ФЮ>3. Знаю 1 и 2 и в дополнение к этому с помощью ATL могу делать COM объекты?
ФЮ>4. Знаю 1 — 3 + Win32 API и могу сделать COM объект который ATL не использует?
ФЮ>5. Знаю 1 — 4, а кроме того имею опыт работы в куче разных SDK для Windows
ФЮ> (типа DirectX, DDK и что-нибудь еще чего я не знаю)
ФЮ>6. Кроме всего прочего могу с помощью assembler'a оптимизировать отдельные
ФЮ> критичные места в программе.
ФЮ>....

ФЮ>Какой уровень должен быть у программиста, чтобы он мог заявить сабж?

гдето между 0-м (у тебя не описан) и 10-м (у тебя не описан).
Все зависит от конкретной ситуации — кто-то спросит тебя про
виртуальные функции и будет рад что ты их знаешь — а кто-то
полезет в белье глубже (nothing personal тем кто меня это спрашивал
— в жизни пригодилось =) и спросит про value_type у map'а желая сразу услышать
это typedef пары из именно КОНСТАНТНОГО ключа и типа.

да — самое главное — для таких заяв всячески помогает резюме с
2-3 местами работы программистом на С++.
* thriving in a production environment *
Re: Что значит:
От: Финченко Юрий  
Дата: 08.10.01 19:41
Оценка:
ВСЕМ

День добрый.

Когда я ставил вопрос, я имел в виду знаю С++
и технологии на которые он операется (соответственно
сервисы ОС, SDK и т.п.). Да, я не имел в виду программирование
под UNIX или любой другой системы кроме Windows.
Вопрос ставился более широко:

Какой уровень программист может считать необходимым и достаточным, если он ПРЕДПОЛОЖИМ собирается работать под Windows.

А знание конкретно синтаксиса и конструкция С++ — это минимально
возможный уровень, даже обсуждать, что тут что-то надо или не
надо знать — чистая демагогия (если я знаю С++ и не имею представления
о Windows API (как вариант о прерываниях DOS и что там в UNIX и т.д.) я не программист, а специалист по теории программирования.

Меня итересовало вопрос в контексте, кто работает программистом
на С++ и каким при этом уровнем знаний обладает.

В таком контексте прошу и отвечать
Re[2]: Что значит:
От: Vicont Россия  
Дата: 10.10.01 12:11
Оценка:
Здравствуйте Финченко Юрий, Вы писали:


ФЮ>Меня итересовало вопрос в контексте, кто работает программистом

ФЮ>на С++ и каким при этом уровнем знаний обладает.

ФЮ>В таком контексте прошу и отвечать


Вот я пишу для предприятия СУБД. Использовал MFC, немного WinApp потомучто без него никак и впринципе все. Поэтому однозначно ответить что нужно можно так:

1. Иметь умную голову на плечах...

с уважением Vicont
Re[2]: Что значит:
От: AIDS Великобритания  
Дата: 11.10.01 15:12
Оценка:
Я работаю C++ программистом.
Требования ко мне при приеме на работу были:
C++ itself (именно виртуальные функции, наследование, шаблоны и STL и пр.)
COM/DCOM/ATL
Win32
MFC
SQL Server и OLE DB

С моей точки зрения это минимально необходимый набор для выживания :)
Желательно также быть знакомым с VB, ASP, HTML.
Поскольку приложения с интерфейсом на базе броузера весьма
сейчас распространены.
Да не забудьте еще и XML (и связанные с этим технологии).

Много? Ну что поделаешь, тяжела ты доля программистская.
Re[3]: Что значит:
От: visitant Украина  
Дата: 12.10.01 07:11
Оценка:
Надо же...
А от меня хотели использование преобразование Фурье и никаких OLE DB :)))
Re[4]: Что значит:
От: Mishka Норвегия  
Дата: 16.10.01 10:09
Оценка:
Здравствуйте visitant, Вы писали:

V>Надо же...

V>А от меня хотели использование преобразование Фурье и никаких OLE DB :)))

Ага, а от меня вообще ничего не хотели, только опыт работы 3 года. А всё остальное их не интересовало. Получилось так: есть опыт — научим. Нет — sorry.
Re[5]: Что значит:
От: Аноним  
Дата: 16.10.01 11:33
Оценка:
Здравствуйте Mishka, Вы писали:

M>Здравствуйте visitant, Вы писали:


V>>Надо же...

V>>А от меня хотели использование преобразование Фурье и никаких OLE DB :)))

M>Ага, а от меня вообще ничего не хотели, только опыт работы 3 года. А всё остальное их не интересовало. Получилось так: есть опыт — научим. Нет — sorry.


Интересно это все читать, все-таки! А у нас требовалось решить 2 задачки — одну дома, чтобы прийти на собеседование, а другую на фирме, чтобы пройти оное собеседование. Причем никаких-таких COM/ATL/Win32 и пр. В каждой фирме свои порядки!
Re[6]: Что значит:
От: Mishka Норвегия  
Дата: 16.10.01 12:22
Оценка:
Здравствуйте Аноним, Вы писали:

А>Здравствуйте Mishka, Вы писали:


M>>Здравствуйте visitant, Вы писали:


V>>>Надо же...

V>>>А от меня хотели использование преобразование Фурье и никаких OLE DB :)))

M>>Ага, а от меня вообще ничего не хотели, только опыт работы 3 года. А всё остальное их не интересовало. Получилось так: есть опыт — научим. Нет — sorry.


А>Интересно это все читать, все-таки! А у нас требовалось решить 2 задачки — одну дома, чтобы прийти на собеседование, а другую на фирме, чтобы пройти оное собеседование. Причем никаких-таких COM/ATL/Win32 и пр. В каждой фирме свои порядки!


А может дело не в фирме, а в стране. Я ж в Ирландии устраивался. В России уж больно много умников — есть из чего выбирать.
Re[7]: Что значит:
От: Аноним  
Дата: 16.10.01 13:48
Оценка:
Здравствуйте Mishka, Вы писали:

M>Здравствуйте Аноним, Вы писали:


А>>Здравствуйте Mishka, Вы писали:


M>>>Здравствуйте visitant, Вы писали:


V>>>>Надо же...

V>>>>А от меня хотели использование преобразование Фурье и никаких OLE DB :)))

M>>>Ага, а от меня вообще ничего не хотели, только опыт работы 3 года. А всё остальное их не интересовало. Получилось так: есть опыт — научим. Нет — sorry.


А>>Интересно это все читать, все-таки! А у нас требовалось решить 2 задачки — одну дома, чтобы прийти на собеседование, а другую на фирме, чтобы пройти оное собеседование. Причем никаких-таких COM/ATL/Win32 и пр. В каждой фирме свои порядки!


M>А может дело не в фирме, а в стране. Я ж в Ирландии устраивался. В России уж больно много умников — есть из чего выбирать.


Нет, думаю, страна тут не причем. У нас людей в где-то до месяца искали, по моим наблюдениям где-то из 4-х троим приходилось говорить "до свидания", хотя задачка, если честно хоть и противная, но для студента 4-го курса средней степени дебильности. Просто привыкли все окошки рисовать или может стресс я не знаю...
Просто смешно, когда для приема на работу требуют либо знание справочника (вопрос о value_type map'а), либо знание технологий, для освоения которых требуется при наличии поставленной задачи и (необязательное условие) более менее благожелательного отношения аборигенов неделя, ну максимум две. Любят же люди гнуть пальцы!!!
Re[8]: Что значит:
От: IT Россия linq2db.com
Дата: 16.10.01 18:53
Оценка:
Здравствуйте Аноним, Вы писали:

А>Просто смешно, когда для приема на работу требуют либо знание справочника (вопрос о value_type map'а), либо знание технологий, для освоения которых требуется при наличии поставленной задачи и (необязательное условие) более менее благожелательного отношения аборигенов неделя, ну максимум две. Любят же люди гнуть пальцы!!!


Ну, батенька... Эдак за год можно выучить ~52 технологии. ;) Ну типа там COM, Corba, XML и ещё 49 таких. Здорово!

Только вот я сомневаюсь. Выучить конечно кое-что можно, например, название, несколько базовых определений и т.п. А выучить технологию... Технологии надо постигать, изучать, а не учить, это же в конце концов не стихотворение А.С. Пушкина. :)
Если нам не помогут, то мы тоже никого не пощадим.
Re[9]: Что значит:
От: Аноним  
Дата: 17.10.01 07:06
Оценка:
Здравствуйте IT, Вы писали:

IT>Здравствуйте Аноним, Вы писали:


А>>Просто смешно, когда для приема на работу требуют либо знание справочника (вопрос о value_type map'а), либо знание технологий, для освоения которых требуется при наличии поставленной задачи и (необязательное условие) более менее благожелательного отношения аборигенов неделя, ну максимум две. Любят же люди гнуть пальцы!!!


IT>Ну, батенька... Эдак за год можно выучить ~52 технологии. ;) Ну типа там COM, Corba, XML и ещё 49 таких. Здорово!


Да не нужно учить 52 технологии, в том-то и дело!!! Даже 22 не нужно. Просто нужно иметь голову на плечах и уметь работать с документацией. К нам, например, пришел человек, занимается системным программированием под Unix. До этого Unix'ом не занимался программировал банкоматы под полуосью. Потребовалось написать что-то под винды — написал под них. И как-то ничего.

IT>Только вот я сомневаюсь. Выучить конечно кое-что можно, например, название, несколько базовых определений и т.п. А выучить технологию... Технологии надо постигать, изучать, а не учить, это же в конце концов не стихотворение А.С. Пушкина. :)
Re[9]: Что значит:
От: Mishka Норвегия  
Дата: 17.10.01 07:37
Оценка:
Здравствуйте IT, Вы писали:

IT>Здравствуйте Аноним, Вы писали:


А>>Просто смешно, когда для приема на работу требуют либо знание справочника (вопрос о value_type map'а), либо знание технологий, для освоения которых требуется при наличии поставленной задачи и (необязательное условие) более менее благожелательного отношения аборигенов неделя, ну максимум две. Любят же люди гнуть пальцы!!!


IT>Ну, батенька... Эдак за год можно выучить ~52 технологии. ;) Ну типа там COM, Corba, XML и ещё 49 таких. Здорово!


IT>Только вот я сомневаюсь. Выучить конечно кое-что можно, например, название, несколько базовых определений и т.п. А выучить технологию... Технологии надо постигать, изучать, а не учить, это же в конце концов не стихотворение А.С. Пушкина. :)


Надо знать, что есть технология и знать её преимущества и недостатки. Если потом надо будет где-то её использовать, то всегда можно найти программера, который знает как это делать, а если нельзя найти, то и самим можно изучить, голова на то и дана.
Re[10]: Что значит:
От: IT Россия linq2db.com
Дата: 17.10.01 14:13
Оценка:
Здравствуйте Аноним, Вы писали:

А>Потребовалось написать что-то под винды — написал под них. И как-то ничего.


Ну и что? Я никогда не писал под юникс, но если будет нужно, то что-то напишу. Вопрос не в этом, а вот в этом:

А>Просто смешно, когда для приема на работу требуют либо знание справочника (вопрос о value_type map'а), либо знание технологий.


Вот возьму и сразу выучу — это большое заблуждение, такое же как вот приедешь в Англию и сразу заговоришь по английски. Если мне нужен будет на проект человек со знаниями MFC, то я буду брать именно с этими знаниями, возможны варианты в смежных областях, например знание OWL при наличии опыта в WinAPI. Если мне нужно программить сокеты, будем искать спеца по сокетам и здесь уже менее важно на чём он их писал, на C++ или дельфях. COM — COM. В любом случае, брать человека с улицы у которого нет необходимых знаний и который утверждает, что:

А> ...знание технологий, для освоения которых требуется при наличии поставленной задачи и (необязательное условие) более менее благожелательного отношения аборигенов неделя, ну максимум две.


я даже и не собираюсь.

"Любят же люди гнуть пальцы!!!" (c) Аноним ;)

Учится, учится и учится. (с) наш общий дедушка. И не надо никому рассказывать, что любую технологию можно выучить за две недели, это даже не смешно.
Если нам не помогут, то мы тоже никого не пощадим.
Re[11]: Что значит:
От: Mishka Норвегия  
Дата: 18.10.01 07:01
Оценка:
Здравствуйте IT,
>>... (много всего)

Вывод: Опыт не пропьёшь! :))))
Re[2]: Что значит:
От: The Lex Украина  
Дата: 18.10.01 07:38
Оценка:
Здравствуйте Финченко Юрий, Вы писали:

ФЮ>Когда я ставил вопрос, я имел в виду знаю С++

ФЮ>и технологии на которые он операется (соответственно
ФЮ>сервисы ОС, SDK и т.п.).
"опирается", прошу прощения за то, что придираюсь к словам. :) Вот только, насколько я понимаю, C++ нисколечки не опирается на технологии типа сервисов ОС, SDK etc.

ФЮ>Да, я не имел в виду программирование

ФЮ>под UNIX или любой другой системы кроме Windows.
ФЮ>Вопрос ставился более широко:
ФЮ>Какой уровень программист может считать необходимым и достаточным, если он
ФЮ>ПРЕДПОЛОЖИМ собирается работать под Windows.
"Под Windows" — это уже очень и очень широко. В целом, многие в этой дискуссии уже высказали эту мысль...

ФЮ>А знание конкретно синтаксиса и конструкция С++ — это минимально

ФЮ>возможный уровень, даже обсуждать, что тут что-то надо или не
ФЮ>надо знать — чистая демагогия (если я знаю С++ и не имею представления
ФЮ>о Windows API (как вариант о прерываниях DOS и что там в UNIX и т.д.)
ФЮ>я не программист, а специалист по теории программирования.
Я бы не стал утверждать, что я хорошо знаю "конкретно синтаксис и конструкции C++", из чего следует, что до "минимально возможного уровня" я не дотягиваю. С другой стороны, я и не "специалист по теории программирования", которых, кстати, не так много, и которые, в общем-то, все же пользуются спросом.

ФЮ>Меня итересовало вопрос в контексте, кто работает программистом

ФЮ>на С++ и каким при этом уровнем знаний обладает.
Работаю программистом, немного знаю C/C++, недавно (года полтора-два назад) познакомился с Visual C++, имею представление о COM (писал и пишу), но не знаком с ATL. Знаю что такое база данных, реляционная модель и, например, нормализация, но утверждать, что "хорошо умею программировать БД" опять же не стану. Знаком с MFC — "имею опыт работы"... Да что это, я здесь свое резюме буду писать, да?! :)

Короче, много чего... не "знаю", а скорее "знаком". По мере необходимости вникаю более подробно в ту или иную "технологию", хотя, как ни странно, компьютеры (имеется в виду Цифровая Электронная Вычислительная Машина) везде очень похожи и программирование их, соответственно, тоже. Но IT прав: "вот возьму и сразу выучу" — так не бывает. Я, например, не смогу "взять и сразу выучить" тот же Delphi + Oracle в объеме, необходимом для разработки приличного проекта. По крайней мере "не так сразу"... :)
Голь на выдумку хитра, однако...
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.