Модераторы: bsa

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как стать программистом C++? что нужно для устройства на работу? 
:(
    Опции темы
WhKitten
Дата 24.11.2010, 11:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 24.11.2010

Репутация: нет
Всего: нет



Как выучиться на программиста C++ и что, нужно знать, чтобы устроится на работу программистом C++. Впринципе требования конечно можно понять из объявления работодателей, но всё же хочу узнать мнение профессиональных программистов на этот счёт.

Собственно, хочу устроится на работу программистом C++, до этого немного писал программы на Delphi, написал в колледже дипломную работу, связанную с программированием. Потом понял, что Delphi это всё же не то и стал учить C++. С++ стал учить по книге Бьёрна Страуструпа "Язык программирования C++". На сколько я понимаю, что если я прочту эту книгу и выполню все задания в ней, то можно сказать, что я знаю C++ и STL, но программистом работать всё ещё не могу так как не знаю библиотек и специфичных технологий? Т.е если потом освоить ещё какую-нибудь часто используемую библиотеку, например Qt или MFC, например по книге Джоржа Шеферда "Программирование на Visual C++ .NET", то можно устраиваться на работу? Или я всё же, что-то упустил?

Как Вы учились на программиста? Просто получили соответсвующее образование в ВУЗе (ИМХО врят ли это будет достаточно)? Или всё же учили язык в большей части самостоятельно? Какие книги посоветуете прочитать? Что минимум надо знать, какие книги прочитать, чтобы можно было легко устроится на работу программистом? Как и где лучше начать карьеру программиста?
Заранее спасибо за ответ на мой вопрос.
PM MAIL   Вверх
bsa
Дата 24.11.2010, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



WhKitten, интересно, как ты собираешься учить Qt по "книге Джоржа Шеферда "Программирование на Visual C++ .NET""? .Net это вообще другая технология и другой язык (C++/CLI и C#).
Теоретических знаний недостаточно. Единственное, на что можно претендовать, это на самую низкооплачиваемую должность кодера (это когда дают четкое задание и тебе нужно его выполнить). Через некоторое время дорастешь до настоящего программиста. К сожалению, язык С++ невозможно выучить по книгам - нужно несколько лет практики.

Добавлено через 5 минут и 17 секунд
Изучал basic и pascal в школе + ассемблер дома, затем С в институте + С++ дома (и то, тот вариант, что зовется "Си с классами"). Затем работал 5 лет на ассемблере, дошел до ведущего программиста. Под новый проект взяли С++ программиста, от него узнал о существовании STL и boost. Начал самостоятельное их освоение... Прошло три года с тех пор. И я могу сказать, что я хорошо (не отлично!) знаю STL и удовлетворительно boost.
Ну что, еще готов изучать С++?  smile 
PM   Вверх
kemiisto
Дата 24.11.2010, 12:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 5
Всего: 160



Цитата(WhKitten @  24.11.2010,  09:07 Найти цитируемый пост)
Потом понял, что Delphi это всё же не то и стал учить C++.

Плачу горькими слезами. Да, C++ - самое то! smile 

Цитата(WhKitten @  24.11.2010,  09:07 Найти цитируемый пост)
С++ стал учить по книге Бьёрна Страуструпа "Язык программирования C++". На сколько я понимаю, что если я прочту эту книгу и выполню все задания в ней, то можно сказать, что я знаю C++ и STL, но программистом работать всё ещё не могу так как не знаю библиотек и специфичных технологий? Т.е если потом освоить ещё какую-нибудь часто используемую библиотеку, например Qt или MFC, например по книге Джоржа Шеферда "Программирование на Visual C++ .NET", то можно устраиваться на работу? Или я всё же, что-то упустил?

Ты упистил всё. Алгоритмы, структуры данных, структурное программирования, ООАиП, всоременные модульные системы, ... Всё будет за бортом. Говнокодером ты станешь. Тысячи их. 


--------------------
PM MAIL WWW GTalk Jabber   Вверх
Леопольд
Дата 24.11.2010, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 943
Регистрация: 17.6.2009

Репутация: 3
Всего: 13



Цитата(kemiisto @  24.11.2010,  12:43 Найти цитируемый пост)
Плачу горькими слезами. Да, C++ - самое то! ...
Ты упистил всё. Алгоритмы, структуры данных, структурное программирования, ООАиП, всоременные модульные системы
Не пойму, при чём тут ЯП? ЯП, это инструмент, который лучше подходит для данной задачи. Т.е. он просто лучше приспосоbлен, в рамках задачи.

Цитата(kemiisto @  24.11.2010,  12:43 Найти цитируемый пост)
всоременные модульные системы
О чём речь?

Это сообщение отредактировал(а) Леопольд - 24.11.2010, 13:23


--------------------
вопросов больше чем ответов
PM MAIL   Вверх
WhKitten
Дата 24.11.2010, 13:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 24.11.2010

Репутация: нет
Всего: нет



Цитата(bsa @ 24.11.2010,  12:37)
WhKitten, интересно, как ты собираешься учить Qt по "книге Джоржа Шеферда "Программирование на Visual C++ .NET""? .Net это вообще другая технология и другой язык (C++/CLI и C#).

По книге Visual C++ .NET я собираюсь учить WinAPI и MFC. http://www.books.ru/contents?id=86712 судя по содержанию это не CLI и по первым главам тоже про CLI ничего нет. И язык там C++, а не C#. Разумеется Qt по этой книге я учить не собираюсь. Я думаю знание MFC важнее Qt, ну так Qt вроде хорошая документация идёт в QAssistant.
У Страуструпа есть практические задания и в книге "Visual C++ .NET" тоже подробно разбирается с примерами разработка Win32 приложения на C++. Или это не то?

Цитата
Плачу горькими слезами. Да, C++ - самое то! 

Вы что имеет ввиду? C++ слишком сложный язык чтоль по сравнению с Delphi, его никто выучить не может. Или что? Я не понял Ваше сообщение. Сейчас для меня уже очевидно, что с выбором C++ я не ошибся - это намного более удобный и практичный язык, а также более полезный в сравнении с Delphi. Ну эта тема не про сравнение Delphi с C++, т.е двух абсолютно разных вещей.

Цитата
Ты упистил всё. Алгоритмы, структуры данных, структурное программирования, ООАиП, всоременные модульные системы, ... Всё будет за бортом. Говнокодером ты станешь. Тысячи их.

#include <algorithm>
или Вы все алгоритмы сами пишите с нуля и библиотеки вообще не используете? Не всё конечно есть в стандартной библиотеке, но большинство то есть. К тому же всегда можно найти, как наилучшим образом сделать то, что нужно. Есть иные библиотеки, тот же boost.
По поводу структурного программирования: разве объектно-ориентированное программирование не более совершенный и удобный способ? Ну опять же тема не про это.

Т.е Вы хотите, сказать что выучится на программиста C++ вообще нельзя? Или нужно пять лет для этого учить ассемблер?
Странное какое-то отношение, если честно. smile 
PM MAIL   Вверх
A5uKa
  Дата 24.11.2010, 13:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 2
Всего: 16



Цитата

Потом понял, что Delphi это всё же не то

 smile  на пути правильном ты, друг мой
 smile  литературу не читай @ писать сразу начинай
PM   Вверх
Леопольд
Дата 24.11.2010, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 943
Регистрация: 17.6.2009

Репутация: 3
Всего: 13



Цитата(WhKitten @  24.11.2010,  13:21 Найти цитируемый пост)
я собираюсь учить WinAPI
Зачем? Только под винду программировать планируешь? С++ кросплатформенный язык. Не только у  Win есть Api. smile Почти для всего есть кросплатформенные оbёртки (bиbлиотеки типа boost: trhead asio). Если придётся углуbиться в определённую систему, тогда и ознакомишься с нужной частью её API.

Цитата(WhKitten @  24.11.2010,  13:21 Найти цитируемый пост)
MFC
smile  


Это сообщение отредактировал(а) Леопольд - 24.11.2010, 13:34


--------------------
вопросов больше чем ответов
PM MAIL   Вверх
azesmcar
Дата 24.11.2010, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Цитата(kemiisto @  24.11.2010,  12:43 Найти цитируемый пост)
Плачу горькими слезами. Да, C++ - самое то!  

Ну скажи что же самое то, для реальной работы? На рынке сегодня хорошо оплачиваются .NET, C++ и Java, что именно ты предлагаешь?

Цитата(WhKitten @  24.11.2010,  13:21 Найти цитируемый пост)
 думаю знание MFC важнее Qt

ошибаешься, MFC уже много лет как мертв.

Цитата(WhKitten @  24.11.2010,  13:21 Найти цитируемый пост)
Т.е Вы хотите, сказать что выучится на программиста C++ вообще нельзя?

Кто это говорил?

Цитата(A5uKa @  24.11.2010,  13:24 Найти цитируемый пост)
литературу не читай @ писать сразу начинай

дельный совет  smile

Цитата(WhKitten @  24.11.2010,  13:21 Найти цитируемый пост)
я собираюсь учить WinAPI

тоже не стоит, на практике применяется редко, а для глубоких знаний еще рановато, в основном ничего не поймешь. Через 2-3 года Рихтера почитай, этого будет достаточно.

Это сообщение отредактировал(а) azesmcar - 24.11.2010, 13:33
PM   Вверх
Леопольд
Дата 24.11.2010, 13:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 943
Регистрация: 17.6.2009

Репутация: 3
Всего: 13



Цитата(A5uKa @  24.11.2010,  13:24 Найти цитируемый пост)
литературу не читай @ писать сразу начинай 
Цитата(kemiisto @  24.11.2010,  12:43 Найти цитируемый пост)
Говнокодером ты станешь. Тысячи их.  
Прямой путь... smile



--------------------
вопросов больше чем ответов
PM MAIL   Вверх
mrbrooks
Дата 24.11.2010, 13:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 19
Всего: 306



Цитата(A5uKa @  24.11.2010,  13:24 Найти цитируемый пост)
литературу не читай @ писать сразу начинай 

это профанация.
PM MAIL   Вверх
WhKitten
Дата 24.11.2010, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 24.11.2010

Репутация: нет
Всего: нет



Цитата(Леопольд @ 24.11.2010,  13:26)
Цитата(WhKitten @  24.11.2010,  13:21 Найти цитируемый пост)
я собираюсь учить WinAPI
Зачем? Только под винду программировать планируешь? С++ кросплатформенный язык. Не только у  Win есть Api. smile

Мне казалось, что начинающие программисты знающее MFC и основные виндовые технологии востребованее, чем начинающие программисты не знающие их, но знающие к примеру Qt. Понятное дело, что с использование Qt можно писать кроссплатформенный код, но мне кажется что всё же важнее знать MFC нежели Qt, особенно для начинающего программиста, поскольку Windows всё же доминирует. Я прекрасно понимаю, что писать различные сложные программы я сразу не смогу. Мне бы выучить тот минимум при котором, я мог бы устроится на какую-нибудь должность связанную с программированием, а дальше расти в этой области как программист C++. А потом, уже можно будет учить Qt... Или всё же лучше учить сразу Qt? Но разве можно стать программистом не зная WinAPI и основных виндовых технологий (MFC, OLE, COM, ActiveX)?

И еще у Стауструпа на мой взгляд хорошие практические задания. Например: "Определите класс, реализующий арифметику с произвольной точностью. Оттестируйте его вычислив факториал 1000." Вроде хорошее задание для начинающего программиста или всё же на Ваш взгляд слишком простое? Но я думаю, потом будут задания по сложнее - это начало книги фактически.
PM MAIL   Вверх
azesmcar
Дата 24.11.2010, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Цитата(WhKitten @  24.11.2010,  13:45 Найти цитируемый пост)
поскольку Windows всё же доминирует

Windows доминирует для desktop-а, а для desktop-а на C++ вообще сейчас редко пишут, C++ скоро плотно займет нишу низкоуровнего программирования, особенно с принятием нового стандарта.
Цитата(WhKitten @  24.11.2010,  13:45 Найти цитируемый пост)
Мне бы выучить тот минимум при котором, я мог бы устроится на какую-нибудь должность связанную с программированием, а дальше расти в этой области как программист C++. 

Учи какой нибудь востребованный язык, алгоритмы, структуры данных, ООП и патерны проектирования..этого для поступления на позицию junior-а должно хватить.
PM   Вверх
A5uKa
  Дата 24.11.2010, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 2
Всего: 16



Цитата

Windows всё же доминирует

Всё ещё.

Цитата

Мне бы выучить тот минимум при котором, я мог бы устроится на какую-нибудь должность связанную с программированием, а дальше расти в этой области как программист C++.

Пиши калькулятор.

Цитата

Но разве можно стать программистом не зная WinAPI и основных виндовых технологий (MFC, OLE, COM, ActiveX)?

Можно
PM   Вверх
kemiisto
Дата 24.11.2010, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 5
Всего: 160



Цитата(azesmcar @  24.11.2010,  11:29 Найти цитируемый пост)
Ну скажи что же самое то, для реальной работы? На рынке сегодня хорошо оплачиваются .NET, C++ и Java, что именно ты предлагаешь?

Такое ощущение, что ты упрямо не хочешь читать сообщения. smile 

Я цитирую:
Цитата(WhKitten @  24.11.2010,  09:07 Найти цитируемый пост)
Как выучиться на программиста C++ и что, нужно знать, чтобы устроится на работу программистом C++.

Первое и очевидное замечание - учится надо на программиста, на не на программиста С++.
Второе, речь ведь об обучении. Причём явно о начальных этапах. Ибо только в этом случае будет желание (иррациональное) учить MFC. А ты сразу про бабло. Может он и программистом не станет, может пророчество майя сбудется, ... smile 
Третье. Никогда, НИКОГДА, при выборе технологии для изучения не ориентируйся на текущее состояние рынка. Учить надо базовые принципы, которые вряд ли изменятся в обозримом будущем. Если уж такое желание сразу "щупать" практические вещи - тогда cutting edge. Но уж никак не C++. Но cutting edge сейчас суров. Scala по сложности недалеко от ++, а для императивно мыслящего программиста может показаться и сложнее. Но есть и интересные разработки. Cobra, например. Очень много печенок искаропки.

Добавлено через 2 минуты и 20 секунд
Цитата(Леопольд @  24.11.2010,  11:13 Найти цитируемый пост)
О чём речь?

Современные модульные системы. Punto Switcher под Mac никак не хочет дружить с Google Chrome.
Это пощупать нужно.


--------------------
PM MAIL WWW GTalk Jabber   Вверх
Леопольд
Дата 24.11.2010, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 943
Регистрация: 17.6.2009

Репутация: 3
Всего: 13



Цитата(A5uKa @  24.11.2010,  13:50 Найти цитируемый пост)
(MFC, OLE, COM, ActiveX)
Это всё уже относится к конкретному проекту. Все ньюкамеры, оbычно проходят тренинг, прежде чем приступить к раbоте. Чем сложнее проект тем дольше тренинг. Как правило, этот тренинг выливается в то, что теbе выдают документацию по всему этому, и практическое задание. Знакомишься с документацией, иногда весьма bегло иногда вдумчиво, в попытке понять новую концепцию или аbстракцию. В нормальной конторе никто не дасть теbе bез пригляда ваять что попало.

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

Добавлено через 5 минут и 49 секунд
Цитата(kemiisto @  24.11.2010,  13:54 Найти цитируемый пост)
Первое и очевидное замечание - учится надо на программиста, на не на программиста С++.
Цитата(kemiisto @  24.11.2010,  13:54 Найти цитируемый пост)
Учить надо базовые принципы, которые вряд ли изменятся в обозримом будущем.
Полностью согласен.

Но в пользу С++ можно сказать что в нём столько всего наворочено, что изучить после него другой промышленный язык не составит труда.


Это сообщение отредактировал(а) Леопольд - 24.11.2010, 14:07


--------------------
вопросов больше чем ответов
PM MAIL   Вверх
azesmcar
Дата 24.11.2010, 14:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



[*]
Цитата(kemiisto @  24.11.2010,  13:54 Найти цитируемый пост)
Такое ощущение, что ты упрямо не хочешь читать сообщения.  

Я то читаю, но не воспринимаю все буквально. Из текста ясно видно, что у человека цель - найти работу, ты говоришь, что C++ "не самое то", а что же "самое то"? Если сравнение шло с дельфи в контексте поиска работы, то полагаю, что дельфи
Цитата(WhKitten @  24.11.2010,  11:07 Найти цитируемый пост)
это всё же не то


Цитата(kemiisto @  24.11.2010,  13:54 Найти цитируемый пост)
Первое и очевидное замечание - учится надо на программиста, на не на программиста С++.

Верно, на программиста. Программист - это человек, который пишет программы, но программы пишут на каком нибудь яыке, это неизбежно и хочешь не хочешь а какой нибудь выбирать придеться. Я не говорю, что надо учить WinAPI или MFC, как раз наоборот, я писал
Цитата(azesmcar @  24.11.2010,  13:49 Найти цитируемый пост)
Учи какой нибудь востребованный язык, алгоритмы, структуры данных, ООП и патерны проектирования


PM   Вверх
Леопольд
Дата 24.11.2010, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 943
Регистрация: 17.6.2009

Репутация: 3
Всего: 13



Цитата(kemiisto @  24.11.2010,  13:54 Найти цитируемый пост)
Punto Switcher под Mac никак не хочет дружить с Google Chrome.
google.ru
чересчур прозрачный намёк, можно "потолще"?

Добавлено @ 14:17
WhKitten, когда ЯП выbран, bольшим плюсом является знание инструментария для раbоты с ним. Компилятор/Интерпертатор (очень важно знать, во что превращается твой код на этапе выполнения), деbаггер, тестинг, генератор документации и т.д.

Это сообщение отредактировал(а) Леопольд - 24.11.2010, 14:27


--------------------
вопросов больше чем ответов
PM MAIL   Вверх
WhKitten
Дата 24.11.2010, 14:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 24.11.2010

Репутация: нет
Всего: нет



Насколько я понял:
1. Не важно какой язык учить, главное учить программирование.
2. Windows API, MFC и другие виндовые технологии знать для устройства на работу Junior программистом не нужно. Qt тоже не обязательно или всё же лучше изучить?
3. Помимо языка программирования нужно прочитать книги про алгоритмы и проектирование ПО.
4. Изучение C# для desktop лучше, чем C++, который заточен на более низкий уровень.

По поводу C# и C++ мне всегда казалось, что C++ более полезный язык ввиду обилия библиотек, своей универсальности и проверенной временем востребованностью. А также, почитав Страуструпа понял, что это ещё и очень быстрый язык позволяющий писать, как низкоуровневый код, так и код более высокого уровня. К тому же на C++ можно писать кроссплатформенный код. На C# вроде тоже можно под mono, но как я понял будущее этих технологий мне представляется туманным. А C++ вроде кажется будет всегда востребованным и универсальным языком. Поэтому и хочу учить именно C++, хотя если честно привлекает больше именно программирование для desktop, нежели более низкие уровни.

По поводу алгоритмов я так понимаю надо прочитать четырёхтомник Кнута? А по поводу проектирования ПО, что посоветуете почитать?
PM MAIL   Вверх
azesmcar
Дата 24.11.2010, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Цитата(WhKitten @  24.11.2010,  14:40 Найти цитируемый пост)
1. Не важно какой язык учить, главное учить программирование.

Ну в принципе да..но учить BrainFuck тоже не дело. Желательно учить то, что потом пригодиться.

Цитата(WhKitten @  24.11.2010,  14:40 Найти цитируемый пост)
3. Помимо языка программирования нужно прочитать книги про алгоритмы и проектирование ПО.

Естественно, язык программирования - это всего лишь инструмент, с помощью которого ты диктуешь свои мысли компьютеру, но вместе с инструментом тебе нужны эти самые мысли smile 

Цитата(WhKitten @  24.11.2010,  14:40 Найти цитируемый пост)
4. Изучение C# для desktop лучше, чем C++, который заточен на более низкий уровень.

Да, если планируешь писать desktop и только под windows то лучше C#. Спроса намного больше.


Цитата(WhKitten @  24.11.2010,  14:40 Найти цитируемый пост)
По поводу C# и C++ мне всегда казалось, что C++ более полезный язык ввиду обилия библиотек, своей универсальности и проверенной временем востребованностью. 

Термин "полезный язык" мне лично непонятен, да и проверенность языка тоже понятие туманное.

Цитата(WhKitten @  24.11.2010,  14:40 Найти цитируемый пост)
А также, почитав Страуструпа понял, что это ещё и очень быстрый язык позволяющий писать, как низкоуровневый код, так и код более высокого уровня.

При разработке высокоуровневых приложений это низкоуровневость только мешает..и что значит "быстрый язык"?

Цитата(WhKitten @  24.11.2010,  14:40 Найти цитируемый пост)
А по поводу проектирования ПО, что посоветуете почитать? 

Не все сразу smile начни пока с простого.

Для начала изучи немного язык, циклы, операторы, структуры, функции, массивы, указатели...потом начинай решать задачи: списки, сортировки, поиск... итд (смотри в Центре помощи, там полно задач), а там видно будет.

Это сообщение отредактировал(а) azesmcar - 24.11.2010, 14:51
PM   Вверх
bsa
Дата 24.11.2010, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(WhKitten @  24.11.2010,  15:40 Найти цитируемый пост)
Qt тоже не обязательно или всё же лучше изучить?

Для общего развития. Там почти все очень грамотно спроектировано.
Цитата(WhKitten @  24.11.2010,  15:40 Найти цитируемый пост)
По поводу алгоритмов я так понимаю надо прочитать четырёхтомник Кнута? А по поводу проектирования ПО, что посоветуете почитать?
В разделе для новичков есть прикрепленная тема "ответы на часто задаваемые вопросы". Почитай, там есть ответ на твой вопрос.
PM   Вверх
mimik
Дата 24.11.2010, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


не Rohoss Я
*


Профиль
Группа: Участник
Сообщений: 69
Регистрация: 1.11.2010

Репутация: нет
Всего: 2



Цитата(kemiisto @  24.11.2010,  13:54 Найти цитируемый пост)
Очень много печенок искаропки.

a поконкретнее?

Цитата(kemiisto @  24.11.2010,  13:54 Найти цитируемый пост)
Но есть и интересные разработки. Cobra

Цитата

s = u.randomString(1000, 'a')
for c in s, assert c == 'a'

а как же Вирт, Oberon?
PM   Вверх
ufna
Дата 25.11.2010, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 75
Регистрация: 4.4.2005
Где: Курган/СПб

Репутация: нет
Всего: 0



По-моему пофиг что учить и как учить, в том плане что должна быть ведущая цель, идея, мотивация. Просто быть "программистом" - нуу... не знаю. Какие программы ты хочешь писать? Что ты хочешь создавать? В какую область пойти? Зачем тебе это? Ключевые вопросы. 

Кнута точно рано читать, это очень серьезная книжка. Есть попроще книги, где заложены азы алгоритмов. Советую купить книгу по олимпиадным заданиям по программированию для школьников старших классов и прорешать хотя бы треть, используя С++ - научишься многому. Как основа программистской мысли. 

Устраиваться на работу нужно тогда, когда ты можешь что-то делать. В какой-либо области. Может быть тебе нравится работать с железом, может быть - программировать интерфейс, может - базы данных и т.п. - все это ооочень разные вещи по необходимым умениям, нужен разный опыт и т.п.
PM MAIL WWW Skype   Вверх
baldina
Дата 25.11.2010, 19:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 15
Всего: 101



Цитата(ufna @  25.11.2010,  19:10 Найти цитируемый пост)
Просто быть "программистом"

вполне адекватное желание. ну, нравится! помните: "как стать писателем? - если можете не писать, не пишите"
PM MAIL   Вверх
ufna
Дата 25.11.2010, 19:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 75
Регистрация: 4.4.2005
Где: Курган/СПб

Репутация: нет
Всего: 0



Нее, не надо путать теплое с мягким, я о другом. Когда творчество прет, вопросов "как учиться" не возникает - ты пишешь/рисуешь/поешь и т.п., потому что идет изнутри. То же самое здесь - прет быть кодером, да давно бы зарылся к кучу книжек и просто получал кайф от кодерства, как реализации своего творчества - да и тогда у тебя будет желание не просто кодить, а что-то кодить. А как только речь зашла о "как устроиться на работу С++ кодером", то вопрос аналога "как стать лабухом по ресторанам" - это процесс больше технический, чем творческий.
PM MAIL WWW Skype   Вверх
WhKitten
Дата 25.11.2010, 20:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 24.11.2010

Репутация: нет
Всего: нет



Цитата(ufna @  25.11.2010,  19:10 Найти цитируемый пост)
Какие программы ты хочешь писать?

Прикладные программы. Драйверы, низкоуровневые приложения, серверы писать не хочу. Т.е пока реально приложения предназначенные для решения какой-то определённой задачи на desktop'е. В том числе приложения взаимодействующие с базами данных к этой же категории отношу. Я так думаю это не самое сложное. Потом может можно и ещё что-то будет освоить. Как я понял C# лучше в этом плане, но не хочется учить технологию, которая только для Windows.

Цитата(ufna @  25.11.2010,  19:10 Найти цитируемый пост)
Зачем тебе это?

Считаю полезное уменение, написать программу которая тебе нужна. Пригодится не только на работе, но и дома. К тому же в плане карьеры, считаю что программистам есть куда расти. Да и просто нравится программировать.

Цитата(ufna @  25.11.2010,  19:10 Найти цитируемый пост)
Кнута точно рано читать, это очень серьезная книжка. 

По опыту, проще разобраться в непонятных вещах в одной серьёзной книжке, чем разбирать неинтересные и простые вещи в других и так не узнать про эти вещи из серьёзной книжки. 

Цитата(ufna @  25.11.2010,  19:10 Найти цитируемый пост)
Устраиваться на работу нужно тогда, когда ты можешь что-то делать.

Что-то делать я могу. Как я говорил, написал диплом на Delphi - прога работающая с базами данных, через ADO на 40000 строк кода. Недавно написал сетевое приложение GUI на Qt под Windows с использование boost::asio, совершенно ничего не зная не о boost, не о Qt (документация и примеры, а также куча howto рулят). Но всё таки чувствую, что программистом меня не возьмут, ибо сам чувствую что пишу код не оптимально и язык знаю плохо.

Сейчас изучаю C++ по книге Страуструпа и цель реально как можно быстрее найти работу. Что-то знаю, что-то нет и вот реально возникло желание узнать, что именно надо знать и выучить, чтобы устроится на работу программистом. И цель реально не учить программирование несколько лет, а устроится на работу программистом. Как я уже написал, некоторые знания имеются, как и диплом о высшем образовании по специальности информационные системы.
PM MAIL   Вверх
ufna
Дата 25.11.2010, 20:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 75
Регистрация: 4.4.2005
Где: Курган/СПб

Репутация: нет
Всего: 0



Кнут - это не "сложная книжка где все в одном", это другая парадигма. Тебе нужны в первую очередь прикладные алгоритмы, в декстопном софте в большинстве случаев алгоритмы уровня Кнута не понадобятся и тем более они не привязаны к языку - там далеко не сипипи рассматривается.

Вот реально, "живые алгоритмы" - это олимпиадные задачи для школьников 10-11 классов. Оптимизация памяти, скорости работы, поиск интересных решений - вот это главное. Ну и книгу по базовым алгоритмам, к примеру Томаса Кормена - очень рекомендую.

Для десктопа расклад такой. Устроиться на работу проще всего С# или сипипи с WinAPI, .NET, MFC. Си шарп нынче моден и для винды он реально удобен - на нем кодить можно очень быстро рабочие прикладные программы для нужд организаций. И не так сложен в освоении для начала работы. 

Есть Qt - обалденная вещь, с которой я работаю последние лет шесть. Но устроиться в офис будет посложнее гораздо.

Главное - общие принципы создания прикладного ПО, тогда вопрос языка и SDK становится вторичным. И тут реально большее значение имеют не алгоритмы математического плана, а проектирование программ, оптимизация их работы.

Страуструп сложен для обучения сипипи, имхо. Лучше Р.Лафоре, выполняя задания в книге, потом уже немного практики и затем Страуструп для закрепления.

Готов ли ты устраиваться в компанию решается просто - напиши пару небольших приложений, красивых и быстрых, используя ту технологию что тебе понравилась. И далее уже пробуй устраиваться.

Ну и можно посмотреть вакансии в твоем городе, посмотреть какие у них требования.

Добавлено через 12 минут и 58 секунд
Приведу пару примеров задач с реального собеседование на место С++ кодера в LG в Питере (устраивался мой знакомый)

Задача:
3 непрозрачные вазы. Известно, что в одной белые шарики, в другой черные шарики и в третьей смесь из белых и черных шариков. На вазах висят таблички с информацией, какие там шарики. Таблички не соответствуют содержимому. Как, достав шарик из любой одной вазы, развесить таблички правильно?

Задача 2:
лифт поднимается с 1 по 6 этаж за 30 секунд, за сколько он доедет с 1 до 12?


Вообще - задачи 6-7 класса в ЦДМО каком-нибудь. Главная суть - как голова работает, а остальное определят в испытательном сроке. 

Это "чтобы устроиться". Задачи могут быть более сложные, но часто проверяют именно логику, а где посерьезней - еще твое знание языка, дав задание написать примерно реализацию какой-нибудь задачи на алогритмическое мышление, или найти ошибку в листинге.
PM MAIL WWW Skype   Вверх
Леопольд
Дата 25.11.2010, 22:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 943
Регистрация: 17.6.2009

Репутация: 3
Всего: 13



Знакомый в Intel устроился, интерном. Ему такую задачку задали.
Есть состав из вагонов, неизвестной длинны. Они зациклены. Можно ходить по вагонам, включать и выключать свет. Когда заходишь в вагон, свет уже может bыть включенным изначально. Надо посчитать длину состава.

Это сообщение отредактировал(а) Леопольд - 25.11.2010, 22:26


--------------------
вопросов больше чем ответов
PM MAIL   Вверх
borisbn
Дата 25.11.2010, 23:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



WhKitten, знание одного языка (или одной платформы - Windows) всегда накладывает ограничения на решения задачи (я бы даже сказал ЗАДАЧИ). Во главу угла всегда нужно ставить решение проблемы, а не инструмент, имеющийся в наличие. Как ты дамаешь, кто зарабатывает больше: электрик, у которого есть тестер, паяльник и пасатижи, или прораб, у которого есть электрик, плиточник, сатнехник и др.? Так вот, изучив (пусть даже в совершенстве) плюсы, ты станешь неплохим электриком, а изучив (пусть не в совершенстве, но, ессно, на уровне) плюсы, жава, шарп, питон, пиэйчпи; winAPI, stl, boost, Qt (моя любимая smile ), MFC (как там вставить иконку с зелёным человечком, которому бле..ть хочется ) ты станешь прорабом. 


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
ufna
Дата 25.11.2010, 23:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 75
Регистрация: 4.4.2005
Где: Курган/СПб

Репутация: нет
Всего: 0



Ну сильно распыляться тоже не стоит. Я на уровне ликбеза знаю много API и языков, но во все не суюсь - т.к. работая в своей специфике я набираю опыт, имя, и просто умею больше.

Но - начинать нужно именно с ликбезов, что есть что. Хочется сипипи и гуи проги - смотрим самые крупные либы, насколько они имеют будещее, возможности и т.п. и изучаем. А вот в офис - по другому немного, имхо. Я то фриланс по жизни.
PM MAIL WWW Skype   Вверх
bsa
Дата 25.11.2010, 23:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



WhKitten, ты лучше сходи на пару собеседований. Там и поймешь, что реально нужно работодателям. Если ты собеседование провалишь, это ничего не значит. Конечно, если у тебя в регионе есть только один работодатель, то тут сложнее. Не исключен такой вариант: твой нос не понравился твоему потенциальному начальнику. Или ты показался ему умней его.
PM   Вверх
ufna
Дата 25.11.2010, 23:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 75
Регистрация: 4.4.2005
Где: Курган/СПб

Репутация: нет
Всего: 0



Кстати да, совершенно согласен - нужно попробовать что такое собеседование и т.п. Часто компании берут "птенцов для выращивания", тем самым не требуя чего-то сверх, лишь голову на плечах и желание работать.
PM MAIL WWW Skype   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1613 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.