LINUX.ORG.RU

Программирование С++


0

0

У меня несколько вопросов к многоуважаемым девелоперам =): 1)Можно ли за 3 месяца хорошей учебы выучить С++, чтобы читать код, и писать простенькие программы? 2) В какой среде лучше учиться в Windows, или сразу в Linux? 3) Где можно достать исходники маленьких программ для чтения, насписанных полностью на С++ профессионалами? 4) Как вы считаете стоило ли вообще начинать изучать программирование с С++? 5)Для Linux разработки больше нужен обычный С или С++? На сим пожалуй все.


- Стоит ли мне жениться?
- Нет, не стоит.
- Почему?
- Потому что спрашиваешь!

ip1981 ☆☆
()

Просто можешь выбрать другой язык программирования:)

linuxi
()

> 1)Можно ли за 3 месяца хорошей учебы выучить С++, чтобы читать код, и писать простенькие программы?
При желании можно сделать что угодно!
> 2) В какой среде лучше учиться в Windows, или сразу в Linux?
Что значит _сразу_ в Linux? Я лично не представляю, как писать кроссплатформенные приложения в Винде!
> 3) Где можно достать исходники маленьких программ для чтения, насписанных полностью на С++ профессионалами?
http://sourceforge.net
> 4) Как вы считаете стоило ли вообще начинать изучать программирование с С++?
В чём возникли сомнения?
> 5)Для Linux разработки больше нужен обычный С или С++? На сим пожалуй все.
Оба!

UVV ★★★★★
()

1) Можно существенно быстрее. 2) Linux поудобнее, но вообще-то похрен. 3) Пропускаем. 4) Нет, ни в коем случае. 5) Оба не нужны.

Miguel ★★★★★
()
Ответ на: комментарий от imp

> начинать лучше с С. Керниган и Ричи - язык С.

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

По топику - читать любую вводную книжку, делать упражнения. Потом - Страуструп и что-нибудь по проектированию, Александреску там.

Если больше ничем не заниматься - то можно недели за три уложиться, будешь в состоянии пройти собеседование на junior C++ developer.

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

anonymous
()
Ответ на: комментарий от ppiitt

> Говорят, что если кошку долго пи%%&ть, то она за три месяца, курить научится.

ибо сказано в писании:

# Я верю в людей. Я верю, что если человеку вломить пизды, то он квантовую
# электродинамику заботает, не то что жалкие ip и dns.
# ugoday (*) (10.01.2007 15:37:13)

dilmah ★★★★★
()

1) Вполне реально. Я бы посоветовал примерно так:

а) Стенли Б Липман " С++ для начинающих" ( Слить книжку можно здесь: http://openlib.org.ua/ru/books/id/18/ ). Это вводный курс. Тут тебе расскажут о понятиях ООП, языка С++ и т.п.

б) Бьярн Страуструп "Язык С++" ( Слить книжку можно здесь: http://openlib.org.ua/ru/books/id/148/ ). Это НЕ учебник, это справочник. Здесь можно почитать о различных тонкостях С++. На ночь не читай - сны будут плохие сниццо;)

в) Скот Мейерс "Эффективное использование C++. 50 рекомендаций по улучшению ваших программ и проектов" ( Слить книжку можно здесь: http://openlib.org.ua/ru/books/id/15/ ). Разобравшись немного с самим языком (прочитав книгу Липмана и ужастнувшись от Страуструпа), стоит почитать эту книгу. Здесь рассматриваются типичные ошибки и проблемы программ на С++. Must read! Так-же поищи в Сети книжку Мейерса "Ещё 35 рекомендаций по улучшению ваших программ и проектов". Это продолжение. Тоже MUST READ.

г) Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. "Приемы объектно-ориентированного проектирования. Паттерны проектирования." ( Слить книжку можно здесь: http://www.darkskies.ru/index.php?ind=news&op=news_show_single&ide=916 ). Книга вообще-то о проектировании ПО и о типичных приёмах (паттернах) проектирования ПО. Даже если ты думаешь, что проектирование - глупая трата времени - почитай эту книгу и ты поймёшь как ты ошибался. MUST READ.

д) Ну а дальше можно почитать что-нибудь из Александреску, Саттера и др. гуру. Ещё можно (и нужно!) взять какую-нибудь реальную задачу и попробовать её решить. Также стоит "пощупать" различные библиотеки, например Qt (для контраста можно и MFC, но ты не долго продержишься).

В принципе пункты в) и г) можно читать параллельно. И уже после в) можно идти в ближайшую Outsource-контору, устраиваться Junior C++ Developer'ом. Платить будут сначала не очень много, но наберёшься ОПЫТА. А опыт решает всё. Заодно и попробуешь каково это - ПО разрабатывать, может ещё не понравится;)

2) Лучше и там, и там. Дело субъективное. Тем более, ИМХО, нужно стараться писать максимально переносимые программы.

3) В книгах, упомянутых в пунктах в), г), д)

4) Однозначно да. С++ это классический язык. Это мощный язык. Это популярный язык. И выучить его однозначно стоит, ибо специалист, _хорошо_ знающий С++ ценится высоко.

5) Оба. Но вот какой из них учить более детально зависит от того, чем ты хочешь заниматься: написанием прикладного ПО (С++) или системными вещами (главным образом С, но есть уже интересные проекты на С++)

На сим откланяюсь...

ЗЫ: Кого поразил убогостью мысли - извиняйте.

ЗЗЫ: ЛИСПоводы, не мучайте человека скобками...

Sectoid ★★★★★
()

Серия вопросов гениальна, однозначно. Т.е. хрен с ними. с бабами, пойду в компьютерщики, хоть бабло будет. Не, через 3 месяца не будет, разве что через 2 года. Последний вопрос, по-видимому, ключевой. Поэтому на вопросы буду отвечать в обратном порядке:

(5) Итак, Вы хотите стать разработчиком под linux. Вопрос: разработчиком чего?

(4) Ответ на 5 вопрос позволит сделать выбор между С и С++.

(3) После ответа на 4 Вы поймете какие исходники Вам нужны. Если С (это при выборе системного программирования), то логичней смотреть исходники ядра. Если С++ (прикладное программирование), то см. книги указанные тов. Sectoid.

(2) Если этот вопрос еще не отпал, то "забейте на" С++. берите PHP и вперед программировать сайты, там тоже платят, а мозгов нужно существенно меньше.

(1) Если это первый язык программирования, который Вы изучаете, то через 3 месяца высокооплачиваемым специалистом Вы не станете, но при усердии вполне сможете устроиться как Junior C++ Developer.

В остальном присоединяюсь к советам Sectoid. :)

soomrack ★★★★
()
Ответ на: комментарий от UVV

>Что значит _сразу_ в Linux? Я лично не представляю, как писать кроссплатформенные приложения в Винде!

а в чем проблема? я вот пишу, например под виндой в 2003 студии на С++. софт кроссплатформенный (но основная таргет платформа все-таки линукс). написание и отладка логики платформонезависимой части кода вполне получается под виндой. сборка под линукс на локальных билд-машинах, а реальное тестирование уже происходит на удаленной линуксовой машинке которая стоит хрен знает где. правда безусловно жизнь облегчает полное отсутствие у разрабатываемой софтины какого-либо GUI.

rip_someday
()
Ответ на: комментарий от rip_someday

>правда безусловно жизнь облегчает полное отсутствие у разрабатываемой софтины какого-либо GUI.

В таком случае код действительно может быть переносим. Правда могут быть несовместимости с работой с файловой системой, что в большенстве случаев не имеет принципиального значения.

А я вот, везде где встречаю венду, ставлю MinGW & CygWin и чувствую себя почти как дома :)

SV0L0CH
()

> 1)Можно ли за 3 месяца хорошей учебы выучить С++, чтобы читать код, и писать простенькие программы?

Однозначно можно, если до этого программил на каких-либо языках.

> 2) В какой среде лучше учиться в Windows, или сразу в Linux?

Ни в коем случае в виндовс, только в линукс. Windows портит все представление и понимание процесса.

В linux не ищи IDE, просто бери g++, текстовый редактор и если хочешь make.

Ещё раз, забудь про windows и ide, если хочешь научится.

> 3) Где можно достать исходники маленьких программ для чтения, насписанных полностью на С++ профессионалами?

%) забудь про это. Все равно ничего не поймешь.

И профессионал понятие двоякое. Для меня профессионал это тот, кто пишет _понятные_, быстрые и безглючные программы. А не тот, кто старается использовать одновременно и непременно все технологии C++.

> 4) Как вы считаете стоило ли вообще начинать изучать программирование с С++?

С него и нужно, если уже на чем нибудь писал. Не с C, так как C полностью извращает ум программиста. C++ программист всегда сможет писать хорошие, качественные C программы, а C программист на C++ не напишет нифига.

> 5)Для Linux разработки больше нужен обычный С или С++?

С++ все равно нужно знать. Обычно под linux пишут на C, но что-то крупное проще писать на C++.

Noord
()
Ответ на: комментарий от Noord

Решил все же остановиться на С++, так как хочется писать прикладные программы, работа с ядром не слишком прельщает. Буду учиться в Linux. ЗЫ Липман рулит!

Zalman
() автор топика
Ответ на: комментарий от rip_someday

> а в чем проблема?
В удобстве!
Cygwin конечно спасёт, но уж жутко он тормозит.
А для msys'a нету zsh.

UVV ★★★★★
()
Ответ на: комментарий от Miguel

Существенно быстрее чем за три месяца я видел только VB.NET быдлокодеров и PHP лабателей. C++ постигается как ДАО. Всю жизнь.

eXOR ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.