вперед в прошлое...
От: Леонид  
Дата: 26.05.06 07:19
Оценка:
Привет всем!
Интересно ваше мнение. Мне тут вскоре прийдется перейти на С++шный проэкт, до этого уже как 1.5 года только Java,Java/VB-script и C#. Как думаете на сколько тяжело будет? На плюсах еще в универе писал... На что в первую очередь стоит обратить внимание? Кто-нить был в такой ситуации или мне одному так подфартило .
---
С ув. Леонид
Re: вперед в прошлое...
От: Smal Россия  
Дата: 26.05.06 07:23
Оценка:
Здравствуйте, Леонид, Вы писали:

Л>Привет всем!

Л> Интересно ваше мнение. Мне тут вскоре прийдется перейти на С++шный проэкт, до этого уже как 1.5 года только Java,Java/VB-script и C#. Как думаете на сколько тяжело будет? На плюсах еще в универе писал... На что в первую очередь стоит обратить внимание? Кто-нить был в такой ситуации или мне одному так подфартило .

Я переходил с Java на C++. Главное следи за памятью.
Прочитай пару хороших книг: Саттер, Майерс, Александреску.
Ну и конечно про Страуструпа не забывай %).
С уважением, Александр
Re[2]: вперед в прошлое...
От: Леонид  
Дата: 26.05.06 07:31
Оценка:
Здравствуйте, Smal, Вы писали:
S>Я переходил с Java на C++.
сколько времени ушло на адаптацию? Не сожалеете о таком переходе?( у меня есть еще слабая надежда отказаться )

S>Главное следи за памятью.

именно это меня расстраивает в первую очередь...
Плюс библиотека контейнеров...На сколько я помню в яве на порядок проще в использовании чем STL, или я ошибаюсь?

S>Прочитай пару хороших книг: Саттер, Майерс, Александреску.

S>Ну и конечно про Страуструпа не забывай %).
---
С ув. Леонид
Re[3]: вперед в прошлое...
От: olen33 Украина http://developerguru.net
Дата: 26.05.06 07:37
Оценка:
Здравствуйте, Леонид, Вы писали:

S>>Я переходил с Java на C++.

Л> сколько времени ушло на адаптацию? Не сожалеете о таком переходе?( у меня есть еще слабая надежда отказаться )

Это индивидульно и во многом зависит от библиотек, т.к. именно разбирательство с ними занимает много времени.
Одно могу сказать точно — знание С++ точно не помешает.
Например, мне опыт программирования на С++, ATL, Win32 помогает лучше понять работу .NET.
------------------------------------------------------------------------------------------------------
DeveloperGuru.NET — блог программиста о современном WEB, SEO и партнерских программах
Re[3]: вперед в прошлое...
От: Smal Россия  
Дата: 26.05.06 07:44
Оценка:
Здравствуйте, Леонид, Вы писали:

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

S>>Я переходил с Java на C++.
Л> сколько времени ушло на адаптацию? Не сожалеете о таком переходе?( у меня есть еще слабая надежда отказаться )
Около месяца (я на Java программировал около полугода).
Я бы посоветовал не отказываться. С++ интереснее — он намного богаче и выразительнее.
После полугода работы на C++ мне уже тесно в Java %).
В общем, я не жалею %).

S>>Главное следи за памятью.

Л> именно это меня расстраивает в первую очередь...
Л> Плюс библиотека контейнеров...На сколько я помню в яве на порядок проще в использовании чем STL, или я ошибаюсь?

STL более сложная, но и более гибкая %). У Майерса есть книга effective STL. Правда
на руском я ее не встречал, но в инете она валяется. Она все очень хорошо объясняет.
Есть еще boost. Там много интересных вещей. Когда освоишь STL, обязательно туда загляни.
С уважением, Александр
Re[3]: вперед в прошлое...
От: AntZ  
Дата: 26.05.06 08:15
Оценка: +1
Здравствуйте, Леонид, Вы писали:

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

S>>Я переходил с Java на C++.
Л> сколько времени ушло на адаптацию? Не сожалеете о таком переходе?( у меня есть еще слабая надежда отказаться )

Это зависит от способностей и "закрепощенности" ума. Профессиональный подход заключается в том, что инструмент не является определяющим фактором успеха.

S>>Главное следи за памятью.

Л> именно это меня расстраивает в первую очередь...
Л> Плюс библиотека контейнеров...На сколько я помню в яве на порядок проще в использовании чем STL, или я ошибаюсь?

С++ предоставляет программисту очень большие возможности. Очень многим программерам давать такие возможности крайне противопоказано. Один тупой junior может закорруптить heap так, что потом несколько высоквалифицированных профи будут искать этот баг неделю. Чем крупней проект и больше народу в нем работает, тем опастней ситуация что найдется "слабое звено" которое доставит кучу проблем. С++ требует куда более грамотного проектирования, ошибки этот объектно-ориентированный ассемблер прощать не любит. По моему опыту, 99% падений связано с манипуляциями через указатели, даже очень опытные программисты делают ошибки и часами сидят в отладчиках. Хотя лично я бы предпочел C++ — куда приятней управлять машиной с ручной коробкой передач, чем ездить на автомате.

STL прост, если человек владеет C++ на приемлимом уровне.
Re[4]: вперед в прошлое...
От: olen33 Украина http://developerguru.net
Дата: 26.05.06 08:20
Оценка:
Здравствуйте, AntZ, Вы писали:

AZ>С++ предоставляет программисту очень большие возможности. Очень многим программерам давать такие возможности крайне противопоказано. Один тупой junior может закорруптить heap так, что потом несколько высоквалифицированных профи будут искать этот баг неделю.



Скорее всего, что "тупой junior" ничего не сделает за неделю на С++. А вот на C# он может столько мусора за неделю написать...
------------------------------------------------------------------------------------------------------
DeveloperGuru.NET — блог программиста о современном WEB, SEO и партнерских программах
Re[5]: вперед в прошлое...
От: Smal Россия  
Дата: 26.05.06 08:27
Оценка:
Здравствуйте, olen33, Вы писали:

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


AZ>>С++ предоставляет программисту очень большие возможности. Очень многим программерам давать такие возможности крайне противопоказано. Один тупой junior может закорруптить heap так, что потом несколько высоквалифицированных профи будут искать этот баг неделю.


O>Скорее всего, что "тупой junior" ничего не сделает за неделю на С++. А вот на C# он может столько мусора за неделю написать...


Да нет.. Достаточно, к примеру в каком-нибудь .h — нике не закрыть #pragma pack %)
Отладка такой веселой ошибки может занять несколько дней %).
Правильнее будет в течении нескольких недель не допускать junior-a к текущему проекту.
С уважением, Александр
Re[6]: вперед в прошлое...
От: execve  
Дата: 26.05.06 09:32
Оценка: +1
Здравствуйте, Smal, Вы писали:

S>Да нет.. Достаточно, к примеру в каком-нибудь .h — нике не закрыть #pragma pack %)

S>Отладка такой веселой ошибки может занять несколько дней %).

Организуйте review каждого изменения.
Re[4]: вперед в прошлое...
От: Demiurg  
Дата: 26.05.06 09:45
Оценка:
Здравствуйте, Smal, Вы писали:

S>STL более сложная, но и более гибкая %). У Майерса есть книга effective STL. Правда

S>на руском я ее не встречал, но в инете она валяется. Она все очень хорошо объясняет.

Купил недавно в Библио-Глобусе. И в озоне есть здесь
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: вперед в прошлое...
От: puremind  
Дата: 26.05.06 09:46
Оценка:
Здравствуйте, Леонид, Вы писали:

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

S>>Я переходил с Java на C++.
S>>Прочитай пару хороших книг: Саттер, Майерс, Александреску.
S>>Ну и конечно про Страуструпа не забывай %).

Хе хе .. Александреску ...

Чтобы понять о чем он пишет нужно знать С++ очень очень не плохо, вышеописанных условиях с пониманием очевидно будут проблемы очевидно.
С++ сам по себе очень мощный язык, но в большинстве проектов обычно ограничен подможеством (С + классы).
В послднем случае проблем в принципе быть много не должно быть ... разве что с пямятью ... new нужно писать как можно реже =)

Когда я проводил собеседования по С++ наблюдал забавную картину, люди даже по подозвевали о некоторых фичах языка, но писали что знание с++ = 5 .. разумеется по 5ти бальной шкале. Про шаблому (продолжая тему Алексанреску) вообще молчу — что такое template template parameter или частичная специализация вообще слышал один из 10-20 человек ...

С++ это сила, только интерсную работу на плюсах найти сообве реальная проблема ... на 95% это работа с legacy кодом — жопа другими словами .. но кто ищет тот всегда найдет =)
Re[4]: вперед в прошлое...
От: vvotan Россия  
Дата: 26.05.06 09:51
Оценка:
Здравствуйте, Smal, Вы писали:


S>STL более сложная, но и более гибкая %). У Майерса есть книга effective STL. Правда

S>на руском я ее не встречал, но в инете она валяется. Она все очень хорошо объясняет.

У меня на полке лежит. Ничего она не объясняет. Просто набор наблюдений из жизни
Но читается интересно.
По STL уж лучше Jusuttis'а
--
Sergey Chadov

... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[6]: вперед в прошлое...
От: puremind  
Дата: 26.05.06 09:53
Оценка:
Здравствуйте, Smal, Вы писали:
S>Да нет.. Достаточно, к примеру в каком-нибудь .h — нике не закрыть #pragma pack %)
S>Отладка такой веселой ошибки может занять несколько дней %).
S>Правильнее будет в течении нескольких недель не допускать junior-a к текущему проекту.

Хе хе .. я чето в своей жизне не видал ниодного юниора который бы прагмами пользовался .. вы бы еще сказали опции компилятора неправильно выставил =) .. а насчет пакованных структур — это достаточно редкая нужда, да и побольшому счету только для распределенных систем и кроссплатформенной разработки ... да и джуниоров туда не пускают .. да и фатальные ошибки — они достаточно просто отлавливаются =)

в общем, я несогласен =)
Re[5]: вперед в прошлое...
От: puremind  
Дата: 26.05.06 09:58
Оценка:
Здравствуйте, vvotan, Вы писали:
V>У меня на полке лежит. Ничего она не объясняет. Просто набор наблюдений из жизни
V>Но читается интересно.
V>По STL уж лучше Jusuttis'а

нет смысла читать любую книгу по STL пока нет ясности в основных концепциях ..
таких как sequence, iterator, functor и т.д.

начинайте с основ — читайте Стауструпа ... а по Майеру — это действительно компиляция жизненого опыта, иногда очень даже спорная ...
Re[6]: вперед в прошлое...
От: vvotan Россия  
Дата: 26.05.06 10:46
Оценка:
Здравствуйте, puremind, Вы писали:

P>нет смысла читать любую книгу по STL пока нет ясности в основных концепциях ..

P>таких как sequence, iterator, functor и т.д.

P>начинайте с основ — читайте Стауструпа ... а по Майеру — это действительно компиляция жизненого опыта, иногда очень даже спорная ...

У меня-то проблем с STL нету
--
Sergey Chadov

... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[7]: вперед в прошлое...
От: Smal Россия  
Дата: 26.05.06 10:55
Оценка: -1
Здравствуйте, puremind, Вы писали:

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

S>>Да нет.. Достаточно, к примеру в каком-нибудь .h — нике не закрыть #pragma pack %)
S>>Отладка такой веселой ошибки может занять несколько дней %).
S>>Правильнее будет в течении нескольких недель не допускать junior-a к текущему проекту.

P>Хе хе .. я чето в своей жизне не видал ниодного юниора который бы прагмами пользовался .. вы бы еще сказали опции компилятора неправильно выставил =) .. а насчет пакованных структур — это достаточно редкая нужда, да и побольшому счету только для распределенных систем и кроссплатформенной разработки ... да и джуниоров туда не пускают .. да и фатальные ошибки — они достаточно просто отлавливаются =)


А я видел %). Для этого достаточно Control-C Control-V сделать, не зная, что #pragma pack нужно закрывать.
Парень включил h-ник с незакрытой прагмой в stdafx. После этого перестала работать сторонняя библиотека
CGAL. Бага отлавливалась в течении 2 дней. %(
А пакованные структуры часто используются для передачи сложных структур через COM.
С уважением, Александр
Re[4]: вперед в прошлое...
От: Red Bird Россия  
Дата: 26.05.06 11:25
Оценка:
Здравствуйте, AntZ, Вы писали:

AZ>Хотя лично я бы предпочел C++ — куда приятней управлять машиной с ручной коробкой передач, чем ездить на автомате.


Полностью согласен!
Re[4]: вперед в прошлое...
От: Ubivetz Украина  
Дата: 27.05.06 15:00
Оценка:
Здравствуйте, AntZ, Вы писали:

AZ>С++ предоставляет программисту очень большие возможности. Очень многим программерам давать такие возможности крайне противопоказано. Один тупой junior может закорруптить heap так, что потом несколько высоквалифицированных профи будут искать этот баг неделю. Чем крупней проект и больше народу в нем работает, тем опастней ситуация что найдется "слабое звено" которое доставит кучу проблем. С++ требует куда более грамотного проектирования, ошибки этот объектно-ориентированный ассемблер прощать не любит. По моему опыту, 99% падений связано с манипуляциями через указатели, даже очень опытные программисты делают ошибки и часами сидят в отладчиках. Хотя лично я бы предпочел C++ — куда приятней управлять машиной с ручной коробкой передач, чем ездить на автомате.


AZ>STL прост, если человек владеет C++ на приемлимом уровне.


Согласен, но частично. В указателях нет на самом деле ничего сложного. Запоминать ничего особо не надо. Просто голову надо на плечах иметь. Например тот же СОМ намного сложнее, чем (C++) + STL вместе взятые. И джуниор там может наваять .....
Эх, люблю выпить и переспать с кем нибудь!
Но чаще выходит перепить с кем — нибудь и выспаться...
Re[7]: вперед в прошлое...
От: Ubivetz Украина  
Дата: 27.05.06 15:05
Оценка:
Здравствуйте, puremind, Вы писали:

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

S>>Да нет.. Достаточно, к примеру в каком-нибудь .h — нике не закрыть #pragma pack %)
S>>Отладка такой веселой ошибки может занять несколько дней %).
S>>Правильнее будет в течении нескольких недель не допускать junior-a к текущему проекту.

P>Хе хе .. я чето в своей жизне не видал ниодного юниора который бы прагмами пользовался .. вы бы еще сказали опции компилятора неправильно выставил =) .. а насчет пакованных структур — это достаточно редкая нужда, да и побольшому счету только для распределенных систем и кроссплатформенной разработки ... да и джуниоров туда не пускают .. да и фатальные ошибки — они достаточно просто отлавливаются =)


P>в общем, я несогласен =)

Ага. А я тоже не согласен
Прагмами пользуюсь с самого начала. И необходимость в них возникала постоянно. Главным образом для выставления структурам выравнивания на границу байта. Такая, блин, область была деятельности.
Эх, люблю выпить и переспать с кем нибудь!
Но чаще выходит перепить с кем — нибудь и выспаться...
Re[4]: вперед в прошлое...
От: Ubivetz Украина  
Дата: 27.05.06 15:10
Оценка:
Здравствуйте, puremind, Вы писали:

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


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

S>>>Я переходил с Java на C++.
S>>>Прочитай пару хороших книг: Саттер, Майерс, Александреску.
S>>>Ну и конечно про Страуструпа не забывай %).

P>Хе хе .. Александреску ...


P>Чтобы понять о чем он пишет нужно знать С++ очень очень не плохо, вышеописанных условиях с пониманием очевидно будут проблемы очевидно.

P>С++ сам по себе очень мощный язык, но в большинстве проектов обычно ограничен подможеством (С + классы).
P>В послднем случае проблем в принципе быть много не должно быть ... разве что с пямятью ... new нужно писать как можно реже =)

P>Когда я проводил собеседования по С++ наблюдал забавную картину, люди даже по подозвевали о некоторых фичах языка, но писали что знание с++ = 5 .. разумеется по 5ти бальной шкале. Про шаблому (продолжая тему Алексанреску) вообще молчу — что такое template template parameter или частичная специализация вообще слышал один из 10-20 человек ...


P>С++ это сила, только интерсную работу на плюсах найти сообве реальная проблема ... на 95% это работа с legacy кодом — жопа другими словами .. но кто ищет тот всегда найдет =)


А что такое Legacy-код?
А на С++ надо писать осторожно. Если ты супер-специалист в нём, что-то напишешь, а потом после тебя будет какой-нибудь не очень супер-специалист разбирать твой код, то боюсь, багов будет наделано столько, что не то что за 2 дня — за месяц не разгребешь!
Проще надо быть! И Александреску вообще вредную книгу написал. Надо её читавших вообще на работу не брать
Эх, люблю выпить и переспать с кем нибудь!
Но чаще выходит перепить с кем — нибудь и выспаться...
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.