Здравствуйте, guid12345, Вы писали:
G>Привет
G>Карерный вопрос? G>У меня около трёх лет С++ (включая комерчиский и не комерчиский) . Я заметел что Java становится более популярной чем С++ я перешол на Java и уже приблизительно год работаю с Java. Я хоте задать впрос что лучше продолжать расти по Java или зделать следующий шаг в С++ перейдя на С++ тим лида. Ваши мнения?
G>В перенцепе не скрою что меня интересует в будущем поработать за бугром.
G>Зарание благодарен
G>Следующий шаг в С++ или рост в Java
Русский, великий и могучий. Орфография и пунктуация. Или хотя бы Spell Checker на уровне продвинутого пользователя.
G>>Следующий шаг в С++ или рост в Java
C>За бугром (США) резкий дефицит опытных C++ программеров (>5 лет). В Канаде, насколько я понял, их вообще раздирают на куски (полазай по craigslist'ами для прикола).
надолго ли? Спрос продержится год или максимум два. Все переходят на Java или C# поэтому в C++ людей все меньше. Нужно сейчас нишу в новых языках занимать, просто C++ работы не останется, а потом переучиваться или догогять Java/С# будет очень сложно. Прекинь, все кто сейчас из студентов выходит через 2-3 года будут уже эксперты, а ты, сейчас долбая C++, -- будешь новичок. Ситуация будет как с Delphi. Придется многое учить заново и начинать с Junior position. Оно надо?
То, что сейчас с C++ "там" будут раздирать на куски еще спорный момент.
Здравствуйте, Uzumaki Naruto, Вы писали:
O>>В принципе, твое высказывание эквивалентно — "а что такого в С++? да почти та же жаба и c#, сел и начал писать, технология элементарная". Какая технология? Что писать? Драйвер или консольный hello world? Все в куче смешано. UN>Не делай из других идиотов... Попробуй сдай экзамен =) Хы хы хы =) Для начала на Sun Certified Programmer... Иначе до Developer недопустят... =)
Хотел как-то. Тренировочные экзамены сдавал все без подготовки — но потом ехать в Екатеринбург (ближайший центр сертификации был) заломало.
UN>А вообще я знаю и Java и C++, так что не надо гнать волну и переходить на личности... Так что я не юнец, который только что hello world научился писать и авторитетно могу заявить, что все "фреймворки", что ты назвал, это технологии, которые реализованы и на С++ , тонкости — это тонкости технологии, а не реализации на Java в частности.
К сожалению, на С++ нет даже близкого количества технологий типа Hibernate, JEE, Spring и т.п. Есть некие аналоги в виде CORBAвских серверов приложений — которые стоят кучу денег и намного сложнее в использовании, чем Java. Так что в enterprise для С++ остается роль самого низкого уровня или для взаимодействия со старыми системами.
UN>Ну например так — http://java.sun.com/products/jdbc/faq.html#2 UN>Кстати может быть я выразился не так — JDBC может использовать ODBC — а может и нет — но часто для MSSQL и MySQL использует. Для Oracle используют реже, хотя есть OBDC драйвера и для Oracle.
Вот именно, что не так. Обычно ODBC-то как раз и не используется. Ссылка, которую вы дали, указывает на так называемые JDBC-ODBC Bridge. А это частный случай, не более. Для Oracle, MSSQL, My SQL, Postgres, etc всегда используются родные дрова (сами подумайте, зачем нужен платформенно зависимый и не очень надежный дополнительный слой). А указанный вами Bridge я лично использовал всего один раз, когда для Windows-платформы требовалась поддержка FoxPro какой-то уж совсем древней версии, для которой JDBC-драйвера по упределению не было.
Если бы вы имели реальный опыт работы с Java, вы обо всем об этом знали бы уж сто пудово. Ибо даже для Junior Developer'а, работающего полгода, все эти нюансы были бы уже давно очевидны. Кстати, когда я в свое время пошел в Java, то первая задача, с которой я столкнулся — это был именно доступ в Oracle через JDBC. Hibernate тогда еще не существовал.
На основании всего этого я и сделал вывод, что с Java вы, скорее всего, знакомы только по статьям в Инете и разговорам коллег. А сертификат, которым вы хвалились в предыдущих постах, вами был скорее всего получен после подготовки "по учебнику", а не после реальных проектов.
Мда... Несколько раз на собеседованиях видео таких "тимлидеров"... тим лидер только над кем, если не может хотя бы понять что такое С++, что такое Java, их сферы применения и то, что настоящему программисту все равно на каком языке программировать...
Здравствуйте, shrecher, Вы писали:
S>Это сейчас, а через пару лет C++ будет заменен C#, который не медленнее, на нем легче писать, а программистов будет больше. У работодателя будет простой выбор: охотится на вымирающих динозавров-сиплюсплюсников или взять уже готовых, недорогих, доступных C# программистов.
Хочешь быть недорогим, доступным C# программистом?
Ну дак флаг в руки
G>Ок тогда С++ програмеру дадут роководить тимой джавистов итд. G>Не раз замечал что если не джава то даже не думай возглавить тиму джавистов итд G>Не так уж тим лид руководит и только, там требуют на голову выше знание и понимание технологии
Нет — ну скажите — что в Java, C# такого особенного, я как сертифицированный Sun Java Developer понять не могу... — технология элементарная... Мое мнение, что любой нормальный С++ программист легко перейдет на Java и C#, особо не испытая затруднений. Технологии под определенным JSR имеют аналоги в С++, и те кто с ними работал в C++, легко смогут использовать их в Java или будь то C#... Ибо технологии мое мнение не зависят от языка...
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Да неужели... для J2EE есть в Win32 аналог называющися COM+ и DCOM не получившие распространения, а если взглянуть на тот же apache — чем тебе не аналог J2EE сервера... сервлеты ... когда их еще не было, серверные скрипты писались на чистом С и чуть позже появилось ISAPI для IIS, в Apache есть тоже много полезного. А про Hibernate — все в Java используют замечательную вещь OBDC, давным давно все запросы к разным базам были универсальными, но это было давно и не правда =)))))
Хмм... Такой короткий пост, а столько ошибок. В принципе, видно, что опыта с работы с Java/J2EE у вас либо не было, либо было очень мало.
1. J2EE совсем не аналог COM+ и DCOM. Ближайший "родственник" этих технологий в Java — EJB. Но EJB — это только процентов 10-15 от того, что есть в J2EE. К тому же EJB включает в себя куда больше, чем просто COM. Это и steteful-компоненты, и JPA (фактически ORM-фреймворк а-ля Hibernate), и асинхронный messaging (JMS). Так что я бы не сказал, что это одно и то же.
2. В Java не используют "замечательную вещь OBDC", даже ODBC не используют. Существует свой стандарт, API которого входит в состав J2SE — это JDBC.
3. Hibernate и JDBC (о, ужас!) не одно и тоже. Hibernate — это ORM-фреймворк, который служит в частности для того, чтобы избавить разработчика от утомительного использования JDBC напрямую. Эти вещи не сравнимы и не взаимозаменяемы.
4. "Все запросы к разным базам", увы, никогда не были универсальными и не будут. Существует понятие диалекта SQL, который специфичен для каждой базы. Не говоря уж про такие ограничения, как, например, уровень вложенности запросов. Абстрагирование от конкретной базы и, как следствие, конкретного диалекта — это еще одна из целей Hibernate (а также JPA, iBATIS, TopLink, JDO — по вкусу).
Здравствуйте, guid12345, Вы писали:
G>Извеняюсь за руский??? Я из Украины и руский учил токо в первых класах))))
G>Спасибо за ответы G>Просто уточню вопрос лучше расти в Java до тим лида (через год пролтора) или уже переходить на С++ тим лида? G>В переспективе уехать за бугор.
G>Или может податся в проджект менеджмент ) Там конкретная технология не имеет такого уж значения????
Лучше зарабатывать деньги
Java после С++ вполне реальное и осмысленное направление, но не наоборот.
Я имею в виду, что когда делается что-то — выбирается оптимальный путь решения задачи и не важно на каком языке... И мне не понятно, какое отношение имеет тимлидерство и "следующий шаг в С++"... Вообще какая свзяь между языком и организационной деятельностью... Как можно управлять командрой разработчиков с целью достяжения результата и размышлять о подобном... Если человек задается таким вопросом, он одназначно не готов быть тимлидом для нормальных проектов.
Здравствуйте, shrecher, Вы писали:
C>>Помнится, так говорили в 2000-м году про Java и в 2003 про C#... S>правильно говорили, только слишком опережали свое время. Сейчас, во первых, железо "созрело" -- память подешевела, процов наделали.
Точно так же говорили и в 2000-х...
S>Во вторых, MS выпустили уже три версии .NET -- значительно все оптимизировали. Третье, кадры подоспели. Несколько лет собрать большую команду C# было сложно, т.к. язык только выше еще гуру не успели вырасти. И самое главное, .NET установлен уже почти везде. Vista его включает, XP вот-вот SP3 выйдет, да просто юзера наскачивали себе .NET с играми, утилитами и пр.
Можно простой вопрос? Почему MS Office еще не на .NET?
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Вообще мое личное мнение платить за C# и Java больше C++ — просто глупо... ничего особенного в C# нет, как и в Java, а уровень задач решаемых на C++ и C# с Java просто не сопоставим...
А я всегда считал что платят не за знания языков, а за решение задач. И я думаю глупо отрицать факт, что на C# с Java решать некоторые задачи выгодней чем на плюсах. И количество этих задач с каждым годом.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>что в Java, C# такого особенного, я как сертифицированный Sun Java Developer понять не могу... — технология элементарная...
Все таки не зря я не доверяю сертификатам. Мне понадобилось где-то с пару недель плотной работы с Java, что бы понять, что в ней "особенное" заключается в обилии всевозможных фреймворков, которые надо знать, со всеми их тонкостями, засадами и сложностями. И прочитав на выходных доку по тем же J2EE ты не становишься крутым спецом по серверным технологиям.
В принципе, твое высказывание эквивалентно — "а что такого в С++? да почти та же жаба и c#, сел и начал писать, технология элементарная". Какая технология? Что писать? Драйвер или консольный hello world? Все в куче смешано.
O>Что? Неужели уже J2EE, Hibernate, сервлеты и прочая-прочая-прочая портировал на С++? Как я отстал от жизни, уважаемый "не юнец", написавший тонны кода на жабе
Да неужели... для J2EE есть в Win32 аналог называющися COM+ и DCOM не получившие распространения, а если взглянуть на тот же apache — чем тебе не аналог J2EE сервера... сервлеты ... когда их еще не было, серверные скрипты писались на чистом С и чуть позже появилось ISAPI для IIS, в Apache есть тоже много полезного. А про Hibernate — все в Java используют замечательную вещь OBDC, давным давно все запросы к разным базам были универсальными, но это было давно и не правда =)))))
Здравствуйте, guid12345, Вы писали:
G>Привет
G>Карерный вопрос? G>У меня около трёх лет С++ (включая комерчиский и не комерчиский) . Я заметел что Java становится более популярной чем С++ я перешол на Java и уже приблизительно год работаю с Java. Я хоте задать впрос что лучше продолжать расти по Java или зделать следующий шаг в С++ перейдя на С++ тим лида. Ваши мнения?
G>В перенцепе не скрою что меня интересует в будущем поработать за бугром.
G>Зарание благодарен
G>Следующий шаг в С++ или рост в Java
А тут проскакивала вакансия — нужны плюсы и ява. Как я понял знание плюсов нужно чтобы также портировать плюсы на яву Так что возможно такая ниша вполне будет востребована
Так что думаю тебе надо делать ставку на то и другое одновременно, потому что обычно явисты плюсы не любят
UN>Во первых не ошибок, а я привожу аналоги, а не точную копию — просто вы не делали подобных вещей на С++, а я делал.
Да на C++ действительно давно не писал. Но COM/ActiveX-компоненты приходилось писать, приходилось... И именно на C++. Так что это вы зря.
UN>Во вторых — Hibernate использует JBDC, а тот в свою очередь OBDC... Я это утверждаю с 100% уверенностью — почитайте документацию... Так же я утверждаю, что JBDC использует OBDC (!!!!) через драйвера (!!!!)
JDBC использует ODBC? Итересное утверждение. А можно ссылочку в студию, где это написано?
А еще краткий разрул, как же оно это делает на платформе Solaris, например. Желательно для такой популярной базы, как Oracle. Для полноты картины, так сказать. А то я шесть лет работал с Java, а вот ни разу ODBC-драйвер на солярку не поставил. Не тот JDBC использовал, видать...
И, кстати, JDBC, а не JBDC. И ODBC, а не OBDC.
UN>Не делайте из других идиотов, перевирая их слова.
Упаси Боже! Я ни из кого не хочу делать идиотов. Просто указал на то, что ваши утверждения были по сути не корректны, а аналогии не правильны. Вот и все.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Так что я не юнец, который только что hello world научился писать и авторитетно могу заявить, что все "фреймворки", что ты назвал, это технологии, которые реализованы и на С++
Что? Неужели уже J2EE, Hibernate, сервлеты и прочая-прочая-прочая портировал на С++? Как я отстал от жизни, уважаемый "не юнец", написавший тонны кода на жабе
Здравствуйте, guid12345, Вы писали:
G>Извеняюсь за руский??? Я из Украины и руский учил токо в первых класах))))
Езжай лучше сразу "за бугор" — "из Украины"... И нам легче будет...
G>Спасибо за ответы G>Просто уточню вопрос лучше расти в Java до тим лида (через год пролтора) или уже переходить на С++ тим лида? G>В переспективе уехать за бугор.
G>Или может податся в проджект менеджмент ) Там конкретная технология не имеет такого уж значения????
Здравствуйте, shrecher, Вы писали:
S>Это сейчас, а через пару лет C++ будет заменен C#, который не медленнее, на нем легче писать, а программистов будет больше. У работодателя будет простой выбор: охотится на вымирающих динозавров-сиплюсплюсников или взять уже готовых, недорогих, доступных C# программистов.
Помнится, так говорили в 2000-м году про Java и в 2003 про C#...
S>>>Смысл писать на С++ в упор не вижу. UN>>Ууууу... как все запущено.... S>Одни эмоции.
Зеркало дать?
D>Здравствуйте, Uzumaki Naruto, Вы писали:
UN>> Как можно управлять командрой разработчиков с целью достяжения результата и размышлять о подобном... Если человек задается таким вопросом, он одназначно не готов быть тимлидом для нормальных проектов.
D>О! Оказывается мы об одном и том же. А мне показалось, что совсем наоборот.
Да согласин что для управления командой технология не так важнаю Но есть реалии На тим лида джава команды исчут человека у которого не мало опыта с джавой на С++ лида исчут человека у которого опыт С++. Или для тим лида вобще забивают на технологию. Неужели PHP програмеру могут предложить лидировать С++ тиму итд???????
Здравствуйте, Cyberax, Вы писали:
C>Здравствуйте, shrecher, Вы писали:
S>>Это сейчас, а через пару лет C++ будет заменен C#, который не медленнее, на нем легче писать, а программистов будет больше. У работодателя будет простой выбор: охотится на вымирающих динозавров-сиплюсплюсников или взять уже готовых, недорогих, доступных C# программистов. C>Помнится, так говорили в 2000-м году про Java и в 2003 про C#...
правильно говорили, только слишком опережали свое время. Сейчас, во первых, железо "созрело" -- память подешевела, процов наделали. Во вторых, MS выпустили уже три версии .NET -- значительно все оптимизировали. Третье, кадры подоспели. Несколько лет собрать большую команду C# было сложно, т.к. язык только выше еще гуру не успели вырасти. И самое главное, .NET установлен уже почти везде. Vista его включает, XP вот-вот SP3 выйдет, да просто юзера наскачивали себе .NET с играми, утилитами и пр.
KP>>А ничего страшного, что Windows это не единственная ОС? Похожие вещи, часто слышишь от "чисто Win32 программистов". S>Это все буржуйский монополизм -- OS Windows установлен на 9 из 10 PC. Что делать если многие программисты привыкли к Windows и не хотят переходит на Linux
Помимо клиентских приложений, есть еще серверные — а там Win видеть в глаза не хотят, мы работаем с крупнейшими сотовыми операторами Японии, Кореи, Европы и США, там только Linux и Sun Solaris... Когда ставятся тысяча серверов... Никто не будет платить за ПО $3000 за сервер, когда сервров надо поставить тысячу — это 3 лимона дополнительных расходов — кому это надо? Так что не смешите меня...
B>Хочешь быть недорогим, доступным C# программистом? B>Ну дак флаг в руки
Вот именно... Если сейчас C# программистов выбирают как ложадей на смотринах, С++ программисты сами выбирают работодателя... Если учесть, что я знаю и Java и C# и С++, все же предпочитаю позиционировать себя как С++, хотя в зависимости от проекта пишу кое-где на Java, кое-где на C#. Вообще — должно быть все равно на каком языке писать, лишь бы получить оптимальный, быстрый и правильный результат по проекту.
Зарплата до 90 000 рублей, это не 90, это и 70 и 50, и 40 и 30... Есть методика привлечения... Вообще мое личное мнение платить за C# и Java больше C++ — просто глупо... ничего особенного в C# нет, как и в Java, а уровень задач решаемых на C++ и C# с Java просто не сопоставим... Это все от незнания работодателя... Вообще есть цитата, не помню чья — "Работа — это сговор сведующих протим неведяющих"... А реально настоящим спецам на C++ уже дают $100-120 тыс, хотя таких мест мало.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Естественно — выгодней, потому что быстрее, но как я раньше писал — есть задачи, которые на C# или Java не сделаешь в силу их ограниченности по скорости в частности... Никто не будет математику и тяжелые расчеты писать ни на Java ни на C#, тот же C# использует откомпелированный C++ код, просто он от MS... С# и Java — это только обретки-враперы над функциональностью ОС, которая всегда будет написана на C/С++ + ASM (где иногда C и C++ являются обертками на ASM).
Ну мега-производительной математикой свет не заканчивается. Есть еще масса огромное число применений софта, в которых легче купить еще один сервер чем замедлить и удорожить разработку. Там свои сложности.
UN>Я тоже считаю, что платят не за знания языков, а за умение решать задачи и часто умение связано с умением писать на всем... ибо есть вещи которые быстрее сделать на языках более высокого уровня, чем С++ — для меня связка ASM-C-C++-Java пока более приоритетна по сравнению с ASM-C-C++-C#, только из-за не распространенности .NET на xNIX платформах для серверов, хотя сделать какую нибудь тулзу — эмулятор запросов быстрее на C#, чем брать C++, а вот для красивых GUI я отдаю предпочтение пока C++ — WinAPI — MFC + ProfUIS, потому что сделать owndraw гую и own-draw контролы на C# мне кажется — более трудоемкий процесс, да и по скорости не сравнимо...
Гуи ручками рисовать... Вот теперь я начинаю понимать почему у многих железяк такой неюзабельный софт идет в комплекте :-D
O>Все таки не зря я не доверяю сертификатам. Мне понадобилось где-то с пару недель плотной работы с Java, что бы понять, что в ней "особенное" заключается в обилии всевозможных фреймворков, которые надо знать, со всеми их тонкостями, засадами и сложностями. И прочитав на выходных доку по тем же J2EE ты не становишься крутым спецом по серверным технологиям. O>В принципе, твое высказывание эквивалентно — "а что такого в С++? да почти та же жаба и c#, сел и начал писать, технология элементарная". Какая технология? Что писать? Драйвер или консольный hello world? Все в куче смешано.
Не делай из других идиотов... Попробуй сдай экзамен =) Хы хы хы =) Для начала на Sun Certified Programmer... Иначе до Developer недопустят... =) А вообще я знаю и Java и C++, так что не надо гнать волну и переходить на личности... Так что я не юнец, который только что hello world научился писать и авторитетно могу заявить, что все "фреймворки", что ты назвал, это технологии, которые реализованы и на С++ , тонкости — это тонкости технологии, а не реализации на Java в частности.
S>Я лично уходить с Win не хотел бы. Тут все привычно, понятно и очень логично. Главное предсказуемо. Что этим японцам и китайцам завтра придет в башку я даже представить не могу. Вообще все эти не Win ОэСы напоминают какое-то "братство кольца", т.е. очень закрытое, со своими понятиями и соглашениями. Не для флэйма (обещают отвечать здесь не буду), но мне в Linux-е вообще ничего не нравится, даже его цена.
S>Вижу только одно направление -- если хочется идти в кильватерной струе MS, то переход на .NET у нас один вариант.
Мда... Вижу что вы просто не работали под Linux и не программировали под него...
Во первых не ошибок, а я привожу аналоги, а не точную копию — просто вы не делали подобных вещей на С++, а я делал.
Во вторых — Hibernate использует JBDC, а тот в свою очередь OBDC... Я это утверждаю с 100% уверенностью — почитайте документацию... Так же я утверждаю, что JBDC использует OBDC (!!!!) через драйвера (!!!!)
MR>JDBC использует ODBC? Итересное утверждение. А можно ссылочку в студию, где это написано? MR>А еще краткий разрул, как же оно это делает на платформе Solaris, например. Желательно для такой популярной базы, как Oracle. Для полноты картины, так сказать. А то я шесть лет работал с Java, а вот ни разу ODBC-драйвер на солярку не поставил. Не тот JDBC использовал, видать...
Ну например так — http://java.sun.com/products/jdbc/faq.html#2
Кстати может быть я выразился не так — JDBC может использовать ODBC — а может и нет — но часто для MSSQL и MySQL использует. Для Oracle используют реже, хотя есть OBDC драйвера и для Oracle.
MR>И, кстати, JDBC, а не JBDC. И ODBC, а не OBDC.
Каюсь — постоянно печатаю не так... В голове мыль по русски идет — по этому БД, а не DB =)
C>Так ты задумайся ПОЧЕМУ они не получили распространения.
Но это не повод говорить, что этого нет =))))) Я на этом делаю акцент.
C>Java дает огромную гибкость и кучу полезнейших инструментов разработки. Один Maven с его мегарепозиторием открытых проектов чего стоит...
Никто с этим не спорит, но так как все в свое время кинулись в Java — сделали удобней в Java, но реально тоже самое можно было бы сделать и на С++ — так же удобно, просто возник вопрос — нужно ли тратить кому-то силы и ресурсы, когда проще заюзать готове... Просто это не аргумент в споре — что С++ устарел, а Java круто или С# — если потратить ресурсы — C++ даст результат не хуже, а даже лучше Java, да и сама JAVA VM на чем написана? А ? =))))))))
Еще раз говорю — первое не хамите — Я с Java работаю более 7 лет.
Теперь по порядку... ODBC — Open Database Connectivity — это стандарт. Есть как Win32 реализация ODBC, так и UnixODBC реализации, а так же iODBC и UODBC. Когда делался JBDC — он полностью повторил собой функциональность ODBC. Так как драверов JDBC еще не было написано, был написан JDBC-ODBC мост. Так что JDBC вырос из ODBC — из C++, так что не надо говорить, что на C++ ничего нет — оно как раз выросло из C++. Аналогично и Hibernate вырос из аналогичного С++ проекта, который правда не получил свое время развития, потому что все кинулись из-за модности в сторону Java, но на С++ это тоже есть.
Если вы не работали ни с чем, кроме Oracle — где это не используется, то это не повод говорить, что не может быть реализовано по другому и пытаться уличить других в невежестве, ибо тем самым вы показыаете только свою узкую сторону знаний, — драйвера JDBC дают свободу творчества и могут использоваться не только для доступа к базам данных... Вы когда нибудь писали свой драйвер JDBC? А я писал.
Здравствуйте, inko, Вы писали:
I>я бы не решился обобщать.. тут где-то пробегало сравнение обращений к многомерным массивам по скорости, c#-овые встроенные контейнеры вроде как обогнали stl и boost и по минимум слили c-style массивам а-ля double**x. Так что вполне возможно, что например что-нить с многомерной статистикой можно на c# набросать и не прогадать.
С# и C++ практически эквивалентные с точки зрения перформанса языки. Плюс у С# что на нем быстрее писать, собирая из готовых кусочков. Особенно сейчас MS создала хорошую "подушечку" из готовых примитивов. Но, при продуманной абстракции у C++ проблем тоже нет. Используй Smart Pointers -- тоже GC. Если уровни абстракции кривые и код периодически переходит из C++ в С, то тут C++ значительно проигрывает, а С# просто не даст так написать.
Грабли у С# начинаются когда нужно что-то еще синтегирировать. Если нет COM интерфейса, то надо париться с interop. Это довольно частое явление, даже не все WinApi оболочки существуют.
Вообще с точки зрения проффесиональной разработки ни boosts ни .Net не дают адекватных контейнеров и примитивов. Все равно нужно ручками их писать.
Теже std::vector или std::sort хороши только для маленьких проектов. К примеру, я сильно удивлюсь если Google Desktop создает индекс в std::map или использует std::low_bound для поиска.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Каюсь — постоянно печатаю не так... В голове мыль по русски идет — по этому БД, а не DB =)
Это как раз один из "скромных показателей", который для всех "простых работяг" ясно говорит о том как много человек "работал с тем, о чем так красиво говорит"...
Здравствуйте, guid12345, Вы писали:
G>Извеняюсь за руский??? Я из Украины и руский учил токо в первых класах))))
G>Спасибо за ответы G>Просто уточню вопрос лучше расти в Java до тим лида (через год пролтора) или уже переходить на С++ тим лида?
вообще странновато. С тремя годами опыта, ну ладно, с учетом Java с четырьмя, часть из которого ещё и не комерческий и так вот сразу уже в тим лиды? Не слишком ли шустро? хотя всё конечно относительно
Здравствуйте, MainReality, Вы писали:
MR>Осторожнее с такого рода спорами, господа! Версию продукта уточняйте.
Это как понимать, OpenOffice был сначала написан на Java, потом переписан на C++; или наоборот сначала на C++, потом на Java? Или может быть его регулярно переписывают с одного языка на другой и обратно? Правда интересно, поделись информацией.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Никто не будет математику и тяжелые расчеты писать ни на Java ни на C#
Один очень умный человек, разбирающийся в "математике и тяжелых расчетах", Кирилл Фаенов его зовут, как то рассказывал, что в биологии, к примеру, для тяжелых рассчетах на суперкомпьютерах используют Java. Потому что время работы софта сопоставимо с временем его написания.
UN>, тот же C# использует откомпелированный C++ код, просто он от MS...
Не смог понять глубину мысли.
UN> С# и Java — это только обретки-враперы над функциональностью ОС, которая всегда будет написана на C/С++ + ASM
WCF. Еще примеры нужны?
UN>а вот для красивых GUI я отдаю предпочтение пока C++ — WinAPI — MFC + ProfUIS, потому что сделать owndraw гую и own-draw контролы на C# мне кажется — более трудоемкий процесс, да и по скорости не сравнимо...
Курите в сторону WPF.
... << RSDN@Home 1.2.0 alpha rev. 725 on Windows Vista 6.0.6000.0>>
Карерный вопрос?
У меня около трёх лет С++ (включая комерчиский и не комерчиский) . Я заметел что Java становится более популярной чем С++ я перешол на Java и уже приблизительно год работаю с Java. Я хоте задать впрос что лучше продолжать расти по Java или зделать следующий шаг в С++ перейдя на С++ тим лида. Ваши мнения?
В перенцепе не скрою что меня интересует в будущем поработать за бугром.
Здравствуйте, guid12345, Вы писали:
G>Привет
G>Карерный вопрос? G>У меня около трёх лет С++ (включая комерчиский и не комерчиский) . Я заметел что Java становится более популярной чем С++ я перешол на Java и уже приблизительно год работаю с Java. Я хоте задать впрос что лучше продолжать расти по Java или зделать следующий шаг в С++ перейдя на С++ тим лида. Ваши мнения?
G>В перенцепе не скрою что меня интересует в будущем поработать за бугром.
G>Зарание благодарен
G>Следующий шаг в С++ или рост в Java
За бугром (США) резкий дефицит опытных C++ программеров (>5 лет). В Канаде, насколько я понял, их вообще раздирают на куски (полазай по craigslist'ами для прикола). Javисты тоже нужны. Ещё интересная специализация, почему-то пользующаяся спросом: "Java/C++ UNIX developer".
В общем со знанием С++ спокойно найдешь высокооплачиваемую работу здесь Точно так-же и со знанием Java.
Выбирай что интереснее.
Извеняюсь за руский??? Я из Украины и руский учил токо в первых класах))))
Спасибо за ответы
Просто уточню вопрос лучше расти в Java до тим лида (через год пролтора) или уже переходить на С++ тим лида?
В переспективе уехать за бугор.
Или может податся в проджект менеджмент ) Там конкретная технология не имеет такого уж значения????
Здравствуйте, guid12345, Вы писали:
G>Просто уточню вопрос лучше расти в Java до тим лида (через год пролтора) или уже переходить на С++ тим лида?
Имхо, с таким подходом "за бугор" ехать и не стоит Я думаю, что не сильно ошибусь, предположив, что менеджеров там хватает своих, а с вашим опытом разработки (~3 года) найти работу менеджера можно разве что где-то на плантации, то есть даже "нормальной", не то, что "приличной", работы я бы найти нечаил.
Help will always be given at Hogwarts to those who ask for it.
Здравствуйте, shrecher, Вы писали:
S>надолго ли? Спрос продержится год или максимум два. Все переходят на Java или C# поэтому в C++ людей все меньше. Нужно сейчас нишу в новых языках занимать, просто C++ работы не останется, а потом переучиваться или догогять Java/С# будет очень сложно. Прекинь, все кто сейчас из студентов выходит через 2-3 года будут уже эксперты, а ты, сейчас долбая C++, -- будешь новичок. Ситуация будет как с Delphi. Придется многое учить заново и начинать с Junior position. Оно надо?
есть области в которых с С/С++ еще долго не слезут. Драйверы, геймдев, микроконтроллеры (даже не смотря на то что там сейчас вовсю встраивают яву или даже питон).
Кроме того на дельфях в основном писали ГУИ приложения, а на С/С++ всё и ГУИ приложения в том числе, т.е. поддерживать придеться гораздо дольше и упорнее.
Здравствуйте, dotidot, Вы писали:
D>Здравствуйте, shrecher, Вы писали:
D>есть области в которых с С/С++ еще долго не слезут. Драйверы, геймдев, микроконтроллеры (даже не смотря на то что там сейчас вовсю встраивают яву или даже питон).
Давайте уточним, востребованы и в перспективе все будет неплохо для: "С/С++ и Драйверы", "С/С++ и геймдев" и возможно, но скорее нет "С/С++ и микроконтроллеры". Хотя и эти ниши очень спорны. MS всех "выгоняеет" из kernel, все пытается прести в user-mode.
D>Кроме того на дельфях в основном писали ГУИ приложения, а на С/С++ всё и ГУИ приложения в том числе, т.е. поддерживать придеться гораздо дольше и упорнее.
Поддержку, скореей всего, аутсорснут в Индию. Незачем держать "мозги" на этой рутине.
Java хороша тем, что это прежде всего финансы (банки, фонды), серверные продукты, базы данных, т.е самые жирные кусоки. Логчино, что с оплатой все ОК.
Для C# зона тоже очень большая -- весь desktop. Скоро на клиенских OS везде будет .net установлен (Vista, XP SP3). Проблем с платформой не будет. Смысл писать на С++ в упор не вижу.
Здравствуйте, chipsеt, Вы писали:
C>Ещё интересная специализация, почему-то пользующаяся спросом: "Java/C++ UNIX developer".
Очень эффективная связка для создания высоконагруженных систем.
Та логика которой много и постоянно меняется пишется на жабе.
А особо критичные к производительности места типа модулей к lighttpd на С/С++.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, shrecher, Вы писали:
S>Здравствуйте, BulatZiganshin, Вы писали:
BZ>>зачем? умные учат английский, дальновидные — китайский
S>китайский?! Его выучить нереально, да и зачем? Чтобы отравленные игрушки Mattel красить языка ненадо.\
Ну... на китайском говорит 5-ая часть человества
И есть мнение (ссылку не дам, но все вокруг говорят ), что Китай станет следующей "сверхдержавой", вроде США сейчас.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN> настоящему программисту все равно на каком языке программировать...
настоящему — это бездушному, индифферентному и безвольному в одном лице?
Разве надо соглашаться делать за деньги, кому-то что-то, но из-за их кривого восприятия мира, через задницу?
Деньги тратят не только которые хотят через задницу, попадаются и вменяемые. Хотя, если нужен не результат, а процесс, то многие предпочитают поизображать, что делают через желаемую задницу, а потом меняют работодателей.
PS настоящий — это тот у которого в трудовой написано, что он настоящий, а не тот который на всё готов потратить себя.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN> Как можно управлять командрой разработчиков с целью достяжения результата и размышлять о подобном... Если человек задается таким вопросом, он одназначно не готов быть тимлидом для нормальных проектов.
О! Оказывается мы об одном и том же. А мне показалось, что совсем наоборот.
S>Java хороша тем, что это прежде всего финансы (банки, фонды), серверные продукты, базы данных, т.е самые жирные кусоки. Логчино, что с оплатой все ОК.
Все самые интерестные проекты делаются на пересечении технологий и языков...
Вот последний проект запущен — основное ядно написано на C++, наиболее критичные части оптимизированы на ASM, все это работает через JNI в рамках бинов и JavaEE на Red5 сервере связывающийся по RTMP с ActiveScript Flash клиентом...
S>Смысл писать на С++ в упор не вижу.
Ууууу... как все запущено....
Здравствуйте, _Oleg_, Вы писали:
_O_>Ну... на китайском говорит 5-ая часть человества
на English тоже около миллиарда говорит.
_O_>И есть мнение (ссылку не дам, но все вокруг говорят ), что Китай станет следующей "сверхдержавой", вроде США сейчас.
Здравствуйте, Roman Odaisky, Вы писали:
RO>Здравствуйте, shrecher, Вы писали:
S>>MS всех "выгоняеет" из kernel, все пытается прести в user-mode.
RO>Может, для кого-то это новость, но не все ОС разрабатываются Microsoft.
С точки зрения языка программирования и для NT Kernel, и для Linux лучше учить чистый C, т.к. он там гораздо больше используется чем С++.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Вот последний проект запущен — основное ядно написано на C++, наиболее критичные части оптимизированы на ASM, все это работает через JNI в рамках бинов и JavaEE на Red5 сервере связывающийся по RTMP с ActiveScript Flash клиентом...
Это сейчас, а через пару лет C++ будет заменен C#, который не медленнее, на нем легче писать, а программистов будет больше. У работодателя будет простой выбор: охотится на вымирающих динозавров-сиплюсплюсников или взять уже готовых, недорогих, доступных C# программистов.
S>>Смысл писать на С++ в упор не вижу. UN>Ууууу... как все запущено....
Что такое Java, их сферы применения и то, что настоящему программисту все равно на каком языке программировать...
Согласен с Вашим утверждением, но попробуйте пояснить девочке — хрюшке, что например в геймдеве важно не знание того или иного языка, а знание алгоритмов и математики. Т.е. если чел не знает каких — либо конструкций с++ или особенностей OpenGL, то этому можно обучиться за час. А вот если человек плавает в школьном курсе физики, то....
Мое мнение таково: бизнесс — приложения java, а для игр и прочей математики еще долго будет нужен C++ просто в силу традиции
Здравствуйте, shrecher, Вы писали:
S>правильно говорили, только слишком опережали свое время. Сейчас, во первых, железо "созрело" -- память подешевела, процов наделали.
Ресурсоемкие и критичные ко времени исполнения задачи как были, так и остались. Думаю, они еще долго будут актуальны. драйвера, сеть, 3D графика и т.д.
S>И самое главное, .NET установлен уже почти везде. Vista его включает, XP вот-вот SP3 выйдет, да просто юзера наскачивали себе .NET с играми, утилитами и пр.
А ничего страшного, что Windows это не единственная ОС? Похожие вещи, часто слышишь от "чисто Win32 программистов". Но вот с подобным подходом до кроссплатформенности (которую тоже никто не отменял) очень и очень далеко. Да, не надо рассказывать про Java, ее далеко не везде можно впихнуть, да и со скоростью проблемы есть.
Здравствуйте, kaa.python, Вы писали:
KP>Здравствуйте, shrecher, Вы писали:
S>>правильно говорили, только слишком опережали свое время. Сейчас, во первых, железо "созрело" -- память подешевела, процов наделали. KP>Ресурсоемкие и критичные ко времени исполнения задачи как были, так и остались. Думаю, они еще долго будут актуальны. драйвера, сеть, 3D графика и т.д.
Это называется резервация. Как для индейцев.
S>>И самое главное, .NET установлен уже почти везде. Vista его включает, XP вот-вот SP3 выйдет, да просто юзера наскачивали себе .NET с играми, утилитами и пр.
KP>А ничего страшного, что Windows это не единственная ОС? Похожие вещи, часто слышишь от "чисто Win32 программистов".
Это все буржуйский монополизм -- OS Windows установлен на 9 из 10 PC. Что делать если многие программисты привыкли к Windows и не хотят переходит на Linux
KP>Но вот с подобным подходом до кроссплатформенности (которую тоже никто не отменял) очень и очень далеко.
а зачем consumer market кроссплатформенность? Большинство юзеров сидит под виндой. Софтверным лавакам нужны "чисто Win32 программисты". Мы же обсуждаем с точки зрения перспективы работы, а не глобальной справедливости. Кому сейчас нужны Ada или Cobol программисты. Конечно, если вы обладаете редкой силой и может быть найдете лавку, которая вас приютит, то шансы deal -- 100%, но это ограничивается очень узкой резервацией. В большинстве -- пройгрыш.
Здравствуйте, shrecher, Вы писали:
KP>>Ресурсоемкие и критичные ко времени исполнения задачи как были, так и остались. Думаю, они еще долго будут актуальны. драйвера, сеть, 3D графика и т.д. S>Это называется резервация. Как для индейцев.
Да как хотите называйте, но именно в этих направлениях наиболее высокие уровни оплаты, и специалисты высокого уровня на расхвати. Если себя позиционировать как "среднестатистический" программист, то да, с С++ лучше не связываться.
KP>>А ничего страшного, что Windows это не единственная ОС? Похожие вещи, часто слышишь от "чисто Win32 программистов". S>Это все буржуйский монополизм -- OS Windows установлен на 9 из 10 PC. Что делать если многие программисты привыкли к Windows и не хотят переходит на Linux
И что с того?
KP>>Но вот с подобным подходом до кроссплатформенности (которую тоже никто не отменял) очень и очень далеко. S>а зачем consumer market кроссплатформенность? Большинство юзеров сидит под виндой.
И что? А написание серверного ПО? А ПО которое должно работать на нескольких платформах? Или "сам не писал, значит, такого нет"?
S> Софтверным лавакам нужны "чисто Win32 программисты".
Забыл добавить — "копеечные"
S>Мы же обсуждаем с точки зрения перспективы работы, а не глобальной справедливости.
Вот именно, с точки зрения перспективности работ. Зачем лезть в мэйнстрим? Есть более узкие и очень высоко оплачиваемые ниши.
S>Кому сейчас нужны Ada или Cobol программисты.
Ада – не знаю. Кобол — очень даже нужны Правда товар штучный, и как следствие очень дорогой.
S>Конечно, если вы обладаете редкой силой и может быть найдете лавку, которая вас приютит, то шансы deal -- 100%, но это ограничивается очень узкой резервацией.
Каждому свое. Кому-то интересен ширпотреб. Кому-то узкоспециализированные задачи. Лично я не замечаю проблем в своей очень узкой (и очень дефицитной) резервации
Здравствуйте, kaa.python, Вы писали:
KP>Каждому свое. Кому-то интересен ширпотреб. Кому-то узкоспециализированные задачи. Лично я не замечаю проблем в своей очень узкой (и очень дефицитной) резервации
Здравствуйте, Cyberax, Вы писали:
C>Здравствуйте, shrecher, Вы писали:
C>>>Помнится, так говорили в 2000-м году про Java и в 2003 про C#... S>>правильно говорили, только слишком опережали свое время. Сейчас, во первых, железо "созрело" -- память подешевела, процов наделали. C>Точно так же говорили и в 2000-х...
В 2000-х не было .NET и кадры в основном на Delphi и C++ лабали. Вспомни, что было в ходу 1998-2000 -- COM, C++, MFC. Весь не стандартный UI ручками на MFC с прорисовкой. Я очень хорошо то время помню. Java applets и прочая клиенская Java -- это были не альтернативы, т.к. сильно тормознуты, в сравнении с .NET и жрали кучу мозгов. Неговоря о том, что JDK ссобой тоскать не хочется. Сейчас все подругому.
C>Можно простой вопрос? Почему MS Office еще не на .NET?
Я не отслеживаю, что там MS с их Office делает, но не удивлюсь, что они уже "в пути". Хотя у них сейчас с Google битва, где все переносят ввиде Web сервисов. Ставить клиенскую часть офиса на хост уже не серьезно -- все через Web по подписке. Я думаю следующий офис будет в Web виде.
ПС. Мы же не о текущем состоянии рынка, а года на 2-3 вперед говорим.
Здравствуйте, Uzumaki Naruto, Вы писали:
KP>>>А ничего страшного, что Windows это не единственная ОС? Похожие вещи, часто слышишь от "чисто Win32 программистов". S>>Это все буржуйский монополизм -- OS Windows установлен на 9 из 10 PC. Что делать если многие программисты привыкли к Windows и не хотят переходит на Linux
UN>Помимо клиентских приложений, есть еще серверные — а там Win видеть в глаза не хотят, мы работаем с крупнейшими сотовыми операторами Японии, Кореи, Европы и США, там только Linux и Sun Solaris... Когда ставятся тысяча серверов... Никто не будет платить за ПО $3000 за сервер, когда сервров надо поставить тысячу — это 3 лимона дополнительных расходов — кому это надо? Так что не смешите меня...
Здравствуйте, Uzumaki Naruto, Вы писали:
UN> Вот именно... Если сейчас C# программистов выбирают как ложадей на смотринах, С++ программисты сами выбирают работодателя... Если учесть, что я знаю и Java и C# и С++, все же предпочитаю позиционировать себя как С++, хотя в зависимости от проекта пишу кое-где на Java, кое-где на C#. Вообще — должно быть все равно на каком языке писать, лишь бы получить оптимальный, быстрый и правильный результат по проекту.
Да уж, конечно, лошадь на смотринах. Если бы это было так, зарплата С# программера была не до 90 тыщ http://rsdn.ru/forum/message/2701830.1.aspx
kaa.python пишет: > > S>Это называется *резервация*. Как для индейцев. > > Да как хотите называйте, но именно в этих направлениях наиболее высокие > уровни оплаты, и специалисты высокого уровня на расхвати.
Вера, она. конечно, творит чудеса. Но в узких областях отнюдь не такие
высокие зарплаты, как многим кажется. Да, если вы ключевая фигура на
конторе, то таки да, но в данном случае, язык, хоть C с крестиками, хоть
с диезом на зарплату не влияет. Вообще на данном уровне уже и не
программируют обычно (невыгодно экономически).
> > Каждому свое. Кому-то интересен ширпотреб. Кому-то > узкоспециализированные задачи. Лично я не замечаю проблем в своей очень > узкой (и очень дефицитной) резервации
И вот появиться человек, конкурент Вам, но попросит меньше и проблемы
появяться.
Здравствуйте, Дмитрий В, Вы писали:
ДВ>Здравствуйте, Uzumaki Naruto, Вы писали:
ДВ>Да уж, конечно, лошадь на смотринах. Если бы это было так, зарплата С# программера была не до 90 тыщ http://rsdn.ru/forum/message/2701830.1.aspx
SP_>А я всегда считал что платят не за знания языков, а за решение задач. И я думаю глупо отрицать факт, что на C# с Java решать некоторые задачи выгодней чем на плюсах. И количество этих задач с каждым годом.
Естественно — выгодней, потому что быстрее, но как я раньше писал — есть задачи, которые на C# или Java не сделаешь в силу их ограниченности по скорости в частности... Никто не будет математику и тяжелые расчеты писать ни на Java ни на C#, тот же C# использует откомпелированный C++ код, просто он от MS... С# и Java — это только обретки-враперы над функциональностью ОС, которая всегда будет написана на C/С++ + ASM (где иногда C и C++ являются обертками на ASM).
Я тоже считаю, что платят не за знания языков, а за умение решать задачи и часто умение связано с умением писать на всем... ибо есть вещи которые быстрее сделать на языках более высокого уровня, чем С++ — для меня связка ASM-C-C++-Java пока более приоритетна по сравнению с ASM-C-C++-C#, только из-за не распространенности .NET на xNIX платформах для серверов, хотя сделать какую нибудь тулзу — эмулятор запросов быстрее на C#, чем брать C++, а вот для красивых GUI я отдаю предпочтение пока C++ — WinAPI — MFC + ProfUIS, потому что сделать owndraw гую и own-draw контролы на C# мне кажется — более трудоемкий процесс, да и по скорости не сравнимо...
Здравствуйте, Uzumaki Naruto, Вы писали: UN>Зарплата до 90 000 рублей, это не 90, это и 70 и 50, и 40 и 30... Есть методика привлечения... Вообще мое личное мнение платить за C# и Java больше C++ — просто глупо... ничего особенного в C# нет, как и в Java, а уровень задач решаемых на C++ и C# с Java просто не сопоставим... Это все от незнания работодателя... Вообще есть цитата, не помню чья — "Работа — это сговор сведующих протим неведяющих"... А реально настоящим спецам на C++ уже дают $100-120 тыс, хотя таких мест мало.
А ABAP наверное вообще недостойный язык
Я думаю ты согласишься, что уровень зарплаты определяет соотношение спроса/предложения на рынке труда. И ты правильно сказал — крутые плюсисты нужны, но мало где, потому что окупить такого плюсиста непросто, и возможно начальство решит вообще отказаться от этой затеи. А попробуй, откажись от SAPa или от того же Оракла
Я одно время работал в офисе оракла, так там люди очень умно выглядят. Умных людей сразу видно. И люди очень увлеченно относятся к своему делу — живут в мире ораклового софта как живут си-плюс-плюсники в мире классов
Помню в одной конторе у нас дибиэйщик был, мужик шибко умный, например запросы под 120 разворотов писал. Так его сам директор конторы помню в своей машине на пикник возил.
У сапера или ораклоида есть возможность выбиться в конксультанты, когда он будет нужен в очень многих конторах, и ему не нужна будет прокладка в виде работодателя между ним и заказчиком. Сможет ли такой финт сделать си-плюс-плюсник?.... Наверное сможет, только если на западе, и то не во многих конторах.
Лично я ни с сапом ни с ораклом (только если SQL) не работаю, так что остается только слюни пускать
Кстати 1С-ники бывает по 5000 баксов бывает зарабатывают на таких вот консалтинговых услугах, когда тусуются в нескольких конторах.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>PHP — это не язык — это серверные скрипты... Сравнили программиста ПО и скриптов... это ж два разных уровня...
А за PHP 100 тыщ дают http://sql.ru/forum/actualthread.aspx?tid=487258
Во первых дают не за PHP, а за умение построения высоконагрузочных систем... Тут PHP не имеет никакого отношения...
Во вторых, некоторым С/C++ программистам ядра дают 120-150 тыс... и что... Дают не за знание языка, а за умение решать проблемы...
Здравствуйте, igna, Вы писали:
C>>Можно простой вопрос? Почему MS Office еще не на .NET?
I>Присоединяюсь в вопросу и добавляю еще один: Почему OpenOffice не на Java?
А я задам встречный вопрос, зачем тонны работающего, отлаженного кода переписывать на .NET\Java?
Lisp is not dead. It’s just the URL that has changed: http://clojure.org
Здравствуйте, shrecher, Вы писали:
C>>Точно так же говорили и в 2000-х... S>В 2000-х не было .NET и кадры в основном на Delphi и C++ лабали.
Была уже Java, на ней кучу всего писали. .NET был в бэте, зарелизили его в 2001 году, AFAIR. Так что усё было...
S>Вспомни, что было в ходу 1998-2000 -- COM, C++, MFC. Весь не стандартный UI ручками на MFC с прорисовкой. Я очень хорошо то время помню. Java applets и прочая клиенская Java -- это были не альтернативы, т.к. сильно тормознуты, в сравнении с .NET и жрали кучу мозгов. Неговоря о том, что JDK ссобой тоскать не хочется. Сейчас все подругому.
Что по-другому то? На Java/C# как писали корпоративные приложения — так и пишут сейчас. Большинство клиентских приложений — так и остались на С++, и в ближайшие 5 лет мало что поменяется.
C>>Можно простой вопрос? Почему MS Office еще не на .NET? S>Я не отслеживаю, что там MS с их Office делает, но не удивлюсь, что они уже "в пути". Хотя у них сейчас с Google битва, где все переносят ввиде Web сервисов. Ставить клиенскую часть офиса на хост уже не серьезно -- все через Web по подписке. Я думаю следующий офис будет в Web виде.
Web-системы — это, конечно, модно и всё такое. Но вот они как раз заменяют, в основном, старые корпоративные системы — основные приложения как жили, так и будут жить.
S>ПС. Мы же не о текущем состоянии рынка, а года на 2-3 вперед говорим.
Ничего через 2 года не изменится существенно. Даже за 4 года мало что поменяется.
А дальше настанут времена 80-ядерных процессоров, для которых C# и С++ одинаково плохо подходят.
Здравствуйте, __SPIRIT__, Вы писали:
C>>Можно простой вопрос? Почему MS Office еще не на .NET? __S>А сам ответишь?
Конечно отвечу. Переписывание на C# не дает никаких существенных плюсов в софте такого уровня.
Здравствуйте, igna, Вы писали:
C>>Можно простой вопрос? Почему MS Office еще не на .NET? I>Присоединяюсь в вопросу и добавляю еще один: Почему OpenOffice не на Java?
Конечно отвечу. Переписывание на Java не дает никаких существенных плюсов в софте такого уровня.
Здравствуйте, igna, Вы писали:
I>Здравствуйте, Cyberax, Вы писали:
C>>Можно простой вопрос? Почему MS Office еще не на .NET?
I>Присоединяюсь в вопросу и добавляю еще один: Почему OpenOffice не на Java?
Не надо гнать, интерфейс там — свинговый. (swing — графическая библиотека на java).
Здравствуйте, Cyberax, Вы писали:
C>Здравствуйте, __SPIRIT__, Вы писали:
C>>>Можно простой вопрос? Почему MS Office еще не на .NET?
__S>>А сам ответишь?
C>Конечно отвечу. Переписывание на C# не дает никаких существенных плюсов в софте такого уровня.
Но это до поры до времени. Как только им понадобиться сделять офис под Web быстренько перебегут.
Здравствуйте, Дмитрий В, Вы писали:
I>>Присоединяюсь в вопросу и добавляю еще один: Почему OpenOffice не на Java? ДВ>Не надо гнать, интерфейс там — свинговый. (swing — графическая библиотека на java).
Нет, интерфейс в ОО не Свинговый.
Здравствуйте, __SPIRIT__, Вы писали:
C>>Конечно отвечу. Переписывание на C# не дает никаких существенных плюсов в софте такого уровня. __S>Но это до поры до времени. Как только им понадобиться сделять офис под Web быстренько перебегут.
Ну-ну. У меня больше надежд на Google, но даже у них пока особо не получается сделать что-то сильно лучше простых редакторов rich-текста.
Здравствуйте, yumi, Вы писали:
Y>А я задам встречный вопрос, зачем тонны работающего, отлаженного кода переписывать на .NET\Java?
Видели бы вы этот код... Вся его отлаженность заключается в том, что "не трожь, пусть работает как есть". А если надо "трогать"?
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>PHP — это не язык — это серверные скрипты... Сравнили программиста ПО и скриптов... это ж два разных уровня...
Ок тогда С++ програмеру дадут роководить тимой джавистов итд.
Не раз замечал что если не джава то даже не думай возглавить тиму джавистов итд
Не так уж тим лид руководит и только, там требуют на голову выше знание и понимание технологии
Здравствуйте, Cyberax, Вы писали:
C>Здравствуйте, Дмитрий В, Вы писали:
I>>>Присоединяюсь в вопросу и добавляю еще один: Почему OpenOffice не на Java? ДВ>>Не надо гнать, интерфейс там — свинговый. (swing — графическая библиотека на java). C>Нет, интерфейс в ОО не Свинговый.
А какой же он еще? Скажи какой он может быть, я скачаю софтину с ним и сравню
Просто как свинг выглядит и его особенности я знаю.
Возможно еще они lookAndFill свой написали, но основные свинговые штуки сразу видно, например — в меню галочки и иконки (слева которые) расположены в разных колонках, в результате слева обычно довольно много пустого пространства. Жду ваших аргументов
Здравствуйте, guid12345, Вы писали:
G>Привет
G>Карерный вопрос? G>У меня около трёх лет С++ (включая комерчиский и не комерчиский) . Я заметел что Java становится более популярной чем С++ я перешол на Java и уже приблизительно год работаю с Java. Я хоте задать впрос что лучше продолжать расти по Java или зделать следующий шаг в С++ перейдя на С++ тим лида. Ваши мнения?
G>В перенцепе не скрою что меня интересует в будущем поработать за бугром.
G>Зарание благодарен
G>Следующий шаг в С++ или рост в Java
Собственно, вопрос надо разделить на:
1. что интересней изучать C++ или Java?
Решать Вам, но ИМХО программист должен знать всего понемножку.
2. с чем легче найти работу?
Для России зайдите на hh.ru да и посмотрите предложения.
3. где заработки выше?
Опять-таки, смотреть на сайтах с предложениями о работе.
Надо понимать, что заработок обычного программиста и профи различается сильно,
а вот обычные программисты что C++, что Java — получают примерно одинаково.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Вы что-то хотели сказать?
рухнул коннект ...
---------
Я лично уходить с Win не хотел бы. Тут все привычно, понятно и очень логично. Главное предсказуемо. Что этим японцам и китайцам завтра придет в башку я даже представить не могу. Вообще все эти не Win ОэСы напоминают какое-то "братство кольца", т.е. очень закрытое, со своими понятиями и соглашениями. Не для флэйма (обещают отвечать здесь не буду), но мне в Linux-е вообще ничего не нравится, даже его цена.
Вижу только одно направление -- если хочется идти в кильватерной струе MS, то переход на .NET у нас один вариант.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Мда... Вижу что вы просто не работали под Linux и не программировали под него...
Вы телепат? Нет. Тогда чего придумываем.
Вы меня знаете, чем я занимаюсь? Может я повар и зашел сюда по тусоваться и о Windows/c++/Linux/Java от соседа услышал.
Если не знаете, чего пишите?
PS. Типичная, черта российских форумов переход на личности и выводы из ничего.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Ну например так — http://java.sun.com/products/jdbc/faq.html#2 UN>Кстати может быть я выразился не так — JDBC может использовать ODBC — а может и нет — но часто для MSSQL и MySQL использует. Для Oracle используют реже, хотя есть OBDC драйвера и для Oracle.
Это верно лишь отчасти. У Oracle есть две версии JDBC-драйвера: толстая и тонкая. Толстая использует оригинального ораклового клиента, т.е., по сути, я вляется Java-оберткой вокруг него. Тонкая же — это pure реализация NET8/NET9 протоколов на Java. В 90% проектов, где я участвовал, использовалась именно тонкая версия из-за высокой переносимости между платформами и отсутствия заморочек с установкой ораклового клиента.
В остальных случаях, где производительность в силу ряда причин была особенно критична, использовался толстый драйвер.
О, holy war! Java vs. C++, обожаю. Been there, done that. Оба языка, обе группы технологий, хороши и интересны. На Java писать проще и намного приятнее, т.к. само окружение удобнее, позволяет не заботиться о назойливых мелочах вроде выделения-освобождения памяти. И в целом, после С++ сесть на Java — это как после машины с МКПП вдруг получить современную продвинутую АКПП. (Ну или роботизированную КП, если это С# ). Само собой, выжать всё из машины на АКПП не выйдет — коробка тупит, даже самые продвинутые пока еще не имеют телепатической связи с водителем, и потому МКПП на большинстве экстрим-применений рулит. Но в повседневной жизни "автомат" проще. Вот его и используют. Перелезть с МКПП на автомат — да влёгкую. У меня даже минуты не ушло. Сразу поехал, будто всю жизнь на автоматах ездил. Аналогично с роботом. Ну, а сколько я МКПП осваивал, я лучше умолчу, стыдно будет.
В другую сторону — ощутимо сложнее. Знакомый один с праворульки на автомате перелез на леворукую приспортивленную машинку с МКПП. Недели две вождение было для него кошмаром. Потом ничего, освоился. Но теперь при встрече говорит, что следующая его машина будет только с автоматом Потому что в повседневной жизни автомат удобнее.
Так же и с языками. Java проще, удобнее, более programmer-friendly. Это, если угодно, попса. Нечто усредненное. И сделано оно вовсе не для комфорта и удобства разработчиков, а тупо для снижения затрат времени на разработку. В том числе и потому, что дает возможность брать разрабтчиков с меньшей квалификацией. И они не смогут тотально нарушить работу проекта — java не позволяет этого. Там куда сложнее прострелить себе ногу. В С++ — пожалуйста. И чтоб на нем писать надёжный софт, нужно действительно уметь это делать.
Здравствуйте, SkyDance, Вы писали:
SD>О, holy war! Java vs. C++, обожаю.
Объясните мне, тупому. Как можно воевать на уровне Java vs C++ vs C#? Я понимаю, если взять какую-нибудь конкретную задачу, типа корпоративной системы или драйвера под Линукс, под нее выбрать несколько вариантов решения задачи и аргументированно спорить, какой solution лучше. Но как можно спорить на тему языков? Особенно, если учитывать, что они идут, как бы, в комплекте с фреймворками и прочим, и по большей части выбирая решение задачи, автоматом выбирается и язык.
Вот, например, надо сделать клиента для веб сервиса. Нужен он в виде веб-морды? Нет, нужно нормальное приложение. Должно оно быть кросс-платформенное? Нет, только под винды. Что будем использовать — winforms, swing, qt или mfc (если бы нужна была кроссплатформенность mfc и winforms ушли, а вот mono уже можно было бы рассматривать)? qt или mfc? тогда пишем на C++. swing? java без вариантов. winforms? c# или vb.net?
Т.е. выбор собственно языка — это последнее дело при выборе решения задачи и по большей части это выбор предопределен. Поэтому меня и удивляют оторванные от контекста споры о том, какой язык круче.
Здравствуйте, olegkr, Вы писали:
O>Здравствуйте, SkyDance, Вы писали:
SD>>О, holy war! Java vs. C++, обожаю. O>Объясните мне, тупому. Как можно воевать на уровне Java vs C++ vs C#?
Я и не воюю, просто этот человек пытается мне доказать, что в Java есть то, чего нет в C++. Я же доказываю обратное, все есть. Человек просто не знает глубоко реалиаций разных технологий на С++ и часто многое в Java сделано из С++ реализаций, иногда даже так бывает, что Java реализации бывает чаще используются, чем С++.
Здравствуйте, Uzumaki Naruto, Вы писали:
O>>Что? Неужели уже J2EE, Hibernate, сервлеты и прочая-прочая-прочая портировал на С++? Как я отстал от жизни, уважаемый "не юнец", написавший тонны кода на жабе UN>Да неужели... для J2EE есть в Win32 аналог называющися COM+ и DCOM не получившие распространения
Так ты задумайся ПОЧЕМУ они не получили распространения.
На Java для создания аналога DCOM-сервиса мне надо написать пару строк в конфиге Spring'а. Для создания аналога COM+-сервиса — нужно просто написать EJB3-бин.
В DCOM нужно было делать танцы c регистрацией, IDL и т.п. COM+ так вообще требовал запредельной сложности при программировании на С++ (нужно было реализовать кучу интерфейсов и т.п.). Причем если все это счастье не работало — то обычно непонятно вообще было где оно глючит.
UN>а если взглянуть на тот же apache — чем тебе не аналог J2EE сервера...
Это примерный аналог. В нем нет фильтров, контекстных слушателей, поддержки сессий (в том числе расределенных) и т.п.
UN>сервлеты ... когда их еще не было, серверные скрипты писались на чистом С и чуть позже появилось ISAPI для IIS, в Apache есть тоже много полезного.
Полностью того же — нет, или делается достаточно сложно.
UN>А про Hibernate — все в Java используют замечательную вещь OBDC, давным давно все запросы к разным базам были универсальными, но это было давно и не правда =)))))
Мда. Прости, но работаешь ты с Java либо в очень узких областях, либо очень мало.
Во-первых, ODBC не дает возможности писать DB-независимые запросы (за исключением тривиальных). Во-вторых, Hibernate делает еще оооооооооооооочень много помимо запуска запросов. В-третьих, никто почти не использует ODBC-JDBC мост в Java — так как нафиг это никому не нужно (JDBC-драйвера доступны для большинства баз, для MySQL и Oracle они вполне нормальны), я лично его использовал только один раз для подключения к Access'у.
Java дает огромную гибкость и кучу полезнейших инструментов разработки. Один Maven с его мегарепозиторием открытых проектов чего стоит...
Здравствуйте, Uzumaki Naruto, Вы писали:
C>>Так ты задумайся ПОЧЕМУ они не получили распространения. UN>Но это не повод говорить, что этого нет =))))) Я на этом делаю акцент.
Ну на практике — сейчас почти нет. CORBA/DCOM — это практически только поддержка старых систем и некоторые ниши (CORBA в телекоме любят, например).
C>>Java дает огромную гибкость и кучу полезнейших инструментов разработки. Один Maven с его мегарепозиторием открытых проектов чего стоит... UN>Никто с этим не спорит, но так как все в свое время кинулись в Java — сделали удобней в Java, но реально тоже самое можно было бы сделать и на С++ — так же удобно, просто возник вопрос — нужно ли тратить кому-то силы и ресурсы, когда проще заюзать готове... Просто это не аргумент в споре — что С++ устарел, а Java круто или С# — если потратить ресурсы — C++ даст результат не хуже, а даже лучше Java, да и сама JAVA VM на чем написана? А ? =))))))))
Так как раз проблема в ресурсах — на С++ enterprise-приложения писать сейчас просто глупо. Куча дополнительных ресурсов будет потрачена зря.
Здравствуйте, Uzumaki Naruto, Вы писали:
C>>Так как раз проблема в ресурсах — на С++ enterprise-приложения писать сейчас просто глупо. Куча дополнительных ресурсов будет потрачена зря. UN>Согласен, что глупо, просто я делаю акцент, что на С++ это тоже есть, есть и коммерческие C++ enterprise сервера...
Вопрос тут не только теоретический, а еще и практический. Практически — полноценной целостной инфраструктуры наподобии JEE для С++ нет (и уже не появится).
При большом желании можно что-то свое написать из имеющихся систем — но это уже будет в большинстве своем бездарной тратой времени.
UN>Это все ответ на цитату от olegkr: UN>
Неужели уже J2EE, Hibernate, сервлеты и прочая-прочая-прочая портировал на С++?
UN>Это еще вопрос — кто у кого что позаимствовал...
Пожалуй, полноценного аналога Hibernate все же нет.
C>Пожалуй, полноценного аналога Hibernate все же нет.
Согласен, да он и не нужен, я полагаю. Это всего лишь вспомогательное в проектах, а вспомогательные вещи как раз можно и на Java писать, что собственно и делается.
Здравствуйте, Дмитрий В, Вы писали:
I>>Присоединяюсь в вопросу и добавляю еще один: Почему OpenOffice не на Java? ДВ>Не надо гнать, интерфейс там — свинговый. (swing — графическая библиотека на java).
OpenOffice.org в основном написан на C++. Если будешь спорить, найду тебе ссылку. Только давай не просто так спорить; например, кто проиграет, выполняет мелкое поручение другого. Ты в России живешь? Мне гадский ozon.ru не посылает CDs, заграница говорит, а частные посылки на почте наверное не обязательно проверяют. Итак, OpenOffice.org в основном написан на C++, спорить будешь?
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Кстати может быть я выразился не так — JDBC может использовать ODBC — а может и нет — но часто для MSSQL и MySQL использует. Для Oracle используют реже, хотя есть OBDC драйвера и для Oracle.
Да, теперь ближе к истине... А я то, болезный, думал, что детали реализации драйвера JDBC — up to its developer. Хочу — на яве native-драйвер для Оракла напишу, который за собой ничего, кроме jar-ок не тянет, хочу — в виде бинарных модулей нарисую, которые через JNI дергать из драйвера буду (но тогда писать мне их для каждой платформы). Ну и т.д.
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Я и не воюю, просто этот человек пытается мне доказать, что в Java есть то, чего нет в C++. Я же доказываю обратное, все есть. Человек просто не знает глубоко реалиаций разных технологий на С++ и часто многое в Java сделано из С++ реализаций, иногда даже так бывает, что Java реализации бывает чаще используются, чем С++.
Да понимают все, что на плюсах можно написать все тоже, что можно на яве, и плюс — то, что нельзя на чистой яве сделать.
Но некоторые вещи на яве выглядят на порядок менее уродливо. Например JUnit vs CppUnit.
Здравствуйте, Lloyd, Вы писали:
C>>Можно простой вопрос? Почему MS Office еще не на .NET? L>А с чего вы взяли, что "еще не на .NET"? Office Server вополне себе уже .Net!
Если речь про Office SharePoint Server, то что кроме интерфейса и обёртки над API там .Net?
Здравствуйте, Uzumaki Naruto, Вы писали:
UN>Еще раз говорю — первое не хамите — Я с Java работаю более 7 лет.
И не думал хамить. Извините, если мои слова произвели на вас такое впечатление. Но про семь лет, извините, не поверю. Скорее всего, вы сюда относите опыт программирования вообще, т.е. вам приходилось в течении этих семи лет писать на разных языках, в т.ч. на Java. Но судя по вашим постам, вы решали небольшие узконаправленные задачи на этой платформе, что создало у вас ложное представление о положении вещей в целом.
Я же непрерывно занимаюсь Java последние пять лет, а до этого также непрерывно занимался пять лет C++, в т.ч. Windows-платформой и ActiveX-компонентами, поэтому и написал, что аналогии, приведенные вами выше, не работают. Просто в силу большого количества различий, как в функциональности, так в целях, для которых перечисленные технологии были придуманы.
UN>Теперь по порядку... ODBC — Open Database Connectivity — это стандарт. Есть как Win32 реализация ODBC, так и UnixODBC реализации, а так же iODBC и UODBC. Когда делался JBDC — он полностью повторил собой функциональность ODBC. ... Аналогично и Hibernate вырос из аналогичного С++ проекта, который правда не получил свое время развития, потому что все кинулись из-за модности в сторону Java, но на С++ это тоже есть.
Э, нет. Еще раз перечитал ваши предыдущие посты, где вы утверждали, что JDBC использует ODBC. Я просто заметил, что это не так. То, что вы пишите сейчас не соответствует тому, что вы писали раньше. Видимо, я вас все же переубедил.
Это замечательно, что на C++ есть проект аналогичный Hibernate. Я об этом как раз и не спорил. О другом речь шла, совсем о другом.
UN>Если вы не работали ни с чем, кроме Oracle — где это не используется, то это не повод говорить, что не может быть реализовано по другому и пытаться уличить других в невежестве, ибо тем самым вы показыаете только свою узкую сторону знаний, — драйвера JDBC дают свободу творчества и могут использоваться не только для доступа к базам данных... Вы когда нибудь писали свой драйвер JDBC? А я писал.
Что именно "это" не используется в Oracle? Кстати, я работал не только с этой базой, но, как уже заметил выше, и с рядом других (около 10). Oracle я просто привел в качестве опровергающего ваше утверждение примера. Ведь как известно из логики, суждение о том, что некое событие происходит всегда, может быть легко опровергнуто, если найдется хотя бы один частный случай, когда это событие не происходит. Я такой частный случай нашел. Могу найти еще не меньше десятка, но так как достаточно только одного, то это ничего нового не даст.
I>OpenOffice.org в основном написан на C++. Если будешь спорить, найду тебе ссылку. Только давай не просто так спорить; например, кто проиграет, выполняет мелкое поручение другого. Ты в России живешь? Мне гадский ozon.ru не посылает CDs, заграница говорит, а частные посылки на почте наверное не обязательно проверяют. Итак, OpenOffice.org в основном написан на C++, спорить будешь?
Осторожнее с такого рода спорами, господа! Версию продукта уточняйте.
Здравствуйте, Uzumaki Naruto, Вы писали:
SP_>>А я всегда считал что платят не за знания языков, а за решение задач. И я думаю глупо отрицать факт, что на C# с Java решать некоторые задачи выгодней чем на плюсах. И количество этих задач с каждым годом.
UN>Никто не будет математику и тяжелые расчеты писать ни на Java ни на C#..
я бы не решился обобщать.. тут где-то пробегало сравнение обращений к многомерным массивам по скорости, c#-овые встроенные контейнеры вроде как обогнали stl и boost и по минимум слили c-style массивам а-ля double**x. Так что вполне возможно, что например что-нить с многомерной статистикой можно на c# набросать и не прогадать.
MR>Э, нет. Еще раз перечитал ваши предыдущие посты, где вы утверждали, что JDBC использует ODBC. Я просто заметил, что это не так. То, что вы пишите сейчас не соответствует тому, что вы писали раньше. Видимо, я вас все же переубедил.
Переубеждать меня не надо. Еще раз прочитал свои посты — потерялось слово "идею" в использует, а точнее копирует её.
Ну драйверами много чего называют, под виндой — драйверами в обычном юзеровском понимании называют модули расширения ядра... Писали, знаем... и не только под Win, но и под Linux.
Здравствуйте, Uzumaki Naruto, Вы писали:
C>>Пожалуй, полноценного аналога Hibernate все же нет. UN>Согласен, да он и не нужен, я полагаю. Это всего лишь вспомогательное в проектах, а вспомогательные вещи как раз можно и на Java писать, что собственно и делается.
Hibernate — это очень таки не простой вспомогательный модуль. Можно, конечно, без него — но уже сложнее и дольше.
Кроме того, как раз многие вещи типа Hibernate и Spring проходят через все приложение — их не выделить в отдельный модуль просто так. На С++ имеет смысл писать только очень критичные по быстродействию части — но в enterprise-приложениях обычно все упирается в скорость базы (которая и так на C++ ).
C>Кроме того, как раз многие вещи типа Hibernate и Spring проходят через все приложение — их не выделить в отдельный модуль просто так. На С++ имеет смысл писать только очень критичные по быстродействию части — но в enterprise-приложениях обычно все упирается в скорость базы (которая и так на C++ ).
Ну для меня (для проектов) вообще использование базы данных — это вспомогательная задача, а далеко не основная... Это для проектов где ядро системы — БД — там может быть все это и актуально, но есть много и других интересных проектов.
Здравствуйте, AndrewVK, Вы писали:
UN>>Никто не будет математику и тяжелые расчеты писать ни на Java ни на C# AVK>Один очень умный человек, разбирающийся в "математике и тяжелых расчетах", Кирилл Фаенов его зовут, как то рассказывал, что в биологии, к примеру, для тяжелых рассчетах на суперкомпьютерах используют Java. Потому что время работы софта сопоставимо с временем его написания.
C++ в математике тоже очень много используется — для более работы с MPI (на Java у него большой оверхед) или OpenMP (на Java такого нет). Но это только для больших вычислений. Еще до сих пор жив Фортран — он, похоже, никогда не умрет (и в 2104 году гиперпространственные двигатели первого звездолета будут рассчитывать на нем).
Для сравнительно маленьких рассчетов вообще предпочитают продукты типа SPSS, Mathematica и т.п.
Здравствуйте, SkyDance, Вы писали:
_O_>>Java после С++ вполне реальное и осмысленное направление, но не наоборот. SD>эээ? Поясните. Странное заявление.
Я имел ввиду, что легче выучить Java после С++, чем наоборот.