Си++

Просмотр 15 сообщений - с 46 по 60 (из 65 всего)
  • Автор
    Сообщения
  • #1943991
    nwur
    Участник

    хорош заниматься фигней и сравнивать язык с платформой и редактором. vbdotnet не существует отдельно от дотнета и венды вчастности. Сравнивать язык с редактором тем более глупость. И на вбнете и на цпп и на шарпе можно писать хоть в блокноте так что засунь форматирование сам знаешь куда. и еще. этот кусок в студии без проблем компилируется если ваше величество соизволит создать пустой проект и добавить туда новый файл с этим текстом. А ты пытался влепить в готовый проект консольного приложения для которого подразумевается С а не С++. И используются С-библиотеки. УЖОС! 😎 и по поводу необъектности – посмотри STL – стандартную библиотеку для C++ – откроешь для себя много нового, окажется и что каждая переменная объект и что каждый тип – на самом деле класс и самое главное (о, ужас!) прилагаются исходники этих типов, классов…

    #1944005
    Данилка
    Участник

    Сейчас погулял по http://www.job.ruЕсть предложения для программистов на C#, VB .NET – зарплаты, минимальная какую нашел – это 700$, а так в среднем 1500-2500 $.Бабки платят уже сейчас. Что за C#, что VB .NET, что C++.Каждый находит свое применение и тут не важно, в какой нише ты работаешь. Важно только, что бы эта ниша тебе нравилась и что бы за это платили бабки. Вот и все.Мне нравится .NET – и как бы ее не поливали грязью, как бы не оскорбляли Майкрософт и Билла Гейтса лично – программисты на точке уже есть. C# проще и легче, чем C++ – а денек на нем можно заработать точно так же. Впрочем, как и на VB .NET. Главное – просто отличные знания и стремление изучить свой язык и свою среду.

    #1944007
    Dagerfall
    Участник

    На джоб.ру как-то даже имперских штурмовиков набирали.))А если серьёзно – Майкрософт постепенно сдаёт позиции. Так что не удивлюсь если .нет вскоре окажется забортом. Самый лучшим редактором как в веб-программировании так и тут является блокнот. И если уж моска нет то никакой редактор не поможет. На любом языке можно творить. Главное подключать голову.

    #1944011
    Brain
    Участник

    [quote name='Данилка'] Сейчас погулял по http://www.job.ruЕсть предложения для программистов на C#, VB .NET – зарплаты, минимальная какую нашел – это 700$, а так в среднем 1500-2500 $.Бабки платят уже сейчас. Что за C#, что VB .NET, что C++.Каждый находит свое применение и тут не важно, в какой нише ты работаешь. Важно только, что бы эта ниша тебе нравилась и что бы за это платили бабки. Вот и все.Мне нравится .NET – и как бы ее не поливали грязью, как бы не оскорбляли Майкрософт и Билла Гейтса лично – программисты на точке уже есть. C# проще и легче, чем C++ – а денек на нем можно заработать точно так же. Впрочем, как и на VB .NET. Главное – просто отличные знания и стремление изучить свой язык и свою среду. [/quote]Данил. Слив можно засчитывать? Ты не разу не признался в своей не компетентности. А постоянно переходишь на другие темы. НУ ей богу не серьезно как то так вести дискуссии.Про зарплаты.НУ вот что совсем недавно пробегало?Вакансия: Linux Kernel Developer (2000-4000 USD)?PSПро подсветку. У мня и в винде вместо notepad-a стот VI. И о чудо “простой” рндактор мне подсвечивать (и скобачки показывает) и синтаксис С/С++ и ASSM и Java и т.п.

    #1944022
    Данилка
    Участник

    Brain, подсветки C# нет в Vstudio .NET, хотя я к такой подсветке привык, работая в PHP Expert Editor. Мне такая подсветка нравилась, а вот в Студии я такого не обнаружил. А скобочки-то все одинаковые. И автоформатирования нет – потом сижу и разбираюсь, где скобочка, которая начинает функцию, где if, где while, где for.Я просто представляю свою жизнь в роли С++ программиста: сидеть, какие-то заголовки писать, адресной арифметикой заниматься, указатели, память… зачем все это?Кто-то говорит, что .NET скоро останется за бортом. А кто-то обещает, что С++ будет вытеснен Жабой. Где-то уже читал, что Жаба уже вытеснила С++ на рабочих местах, оттеснив С++ в сферу быстрых вычислений и низкого уровня.Так что важнее работодателю? призрачная скорость работы программы или вполне ощутимая скорость ее разработки?А программист… в сложных проектах, багов наделает больше программист на VB .NET или на С++?Вот ведь что интересно. Не теория, а практика, жизнь, работа и зарплата.Ассемблер круче всех и на нем написана операционная система Menuet. И что про этот Менует говорят? “Игрушка. Интересная игрушка”.

    #1944033
    Estatic
    Участник

    [quote name='Данилка']Так что важнее работодателю? призрачная скорость работы программы или вполне ощутимая скорость ее разработки?А программист… в сложных проектах, багов наделает больше программист на VB .NET или на С++?Вот ведь что интересно. Не теория, а практика, жизнь, работа и зарплата.Ассемблер круче всех и на нем написана операционная система Menuet. И что про этот Менует говорят? “Игрушка. Интересная игрушка”. [/quote]Как ни странно, но вот в этом согласен, можно долго вести абстрактные беседы о недостатках языков, но работадателю это на* ненужно, он тебе даст задачу под нужды предприятия, которую нужно выполнить в короткий срок и частенько дают на конкретном языке, а не на том, что тебе нравится, приходится так же быстро изучать (обычно под бухгалтерские программы всякие извращения)

    #1944037
    -sc-
    Участник

    на работу охотнее берут с++ программистов,потому что:1) легко переучиваются на любой другой язык (я за 4 дня выучил С# и основы .net и прошел тест на http://www.brainbench.com , не супер конечно но засчитали))) мой ID 5790094 для доказательства)) сейчас на работе пишу софт на одной из многочисленных разновидностей Лиспа (гуи в том числе)2) знакомы с cvs, bash programming, perl, всякие grep sed awk, make, автотесты автобилды (все на скриптах обычно) и т.д.3) vi или emacs по любому, кстати VS с visual assitstom не только показывает скобочки но и расставляет их, и подсветку можно настроить как угодно.4) легко приспосабливаются к любой ОS (года 3 назад не представлял как можно зарабатывать на линуксе, а сейчас у нас на работе у всех на десктопах стоит линукс. есть правда и винда, можно через rconsole подрубиться и лингву запистить)) на предыдущей много занимался портированием софта на солярку и линукс, правда до этого были портированы все библиотеки, т.е. практически весь фраймворк, поэтому приходилось портировать только сложные случаи, ~5% ))5) много написанного софта на С и С++ программист будет поддерживать его намного лучше чем любой другой))6) как правило специалисты высокого уровня, для которых программирование не способ зарабатывания денег а образ жизни.Кстати мои бывшие коллеги, два человека есть в топе брейбенча по С++ по Москве и России. Т.е. я сужу не только по себе но и по моему окружению. Я к сожалению чуть-чуть не дотянул)) 4.21 всего, но мастера дали))PS профессионалы не обсирают иструменты (ide, дебаггеры, профайлеры и т.д.) и языки, а работают, работают, работают, работают… на том, что лучше всего подходит для решения конкретной задачи. поэтому у них никогда не возникает вопросов что лучше, а что хуже.

    #1944050
    Brain
    Участник

    К стати мне тут nwur напомнил.Дело в том что для консольной программв и не консольной разный вызов стартовой функции. Если в случае консольной это main то в другом случае WinMain (кажется это так). Сразу прерву крики что мол все это сложно и не нужно. Если нехочешь вникать в суть дела и справить в настройках проекта, то хоть научись правльно мышкой тыкать в мастере когда тебя спрашивают а какой ты хочешь сделать проект.

    #1944051
    Данилка
    Участник

    Да пишите на чем хотите 🙂 Кстати, .NET не умрет. Потому что свой успех уже продемонстрировала Жаба. А .NET и C# будут более успешными, чем Жаба. Знаете почему? Потому что для того, что бы работали программы на Жабе, нужно качать ее CLR.А вот CLR .NET качать не придется – он будет по умолчанию в Висте, он есть в 2003 Server, он, видимо, будет в SP3 для XP.А потом я подожду, когда С++ станет таким же как С#. Когда он перестанет быть головоломным, а станет не только мощным и быстрым, но и удобным для программиста и для обучения. Вот. [smile :P]

    #1944054
    Brain
    Участник

    [quote name='Данилка'] Да пишите на чем хотите 🙂 Кстати, .NET не умрет. Потому что свой успех уже продемонстрировала Жаба. А .NET и C# будут более успешными, чем Жаба. Знаете почему? Потому что для того, что бы работали программы на Жабе, нужно качать ее CLR.А вот CLR .NET качать не придется – он будет по умолчанию в Висте, он есть в 2003 Server, он, видимо, будет в SP3 для XP.[/quote]Данил как всегда не отобразим. Там где работает жаба нету еще очень долеко.[quote name='Данилка']А потом я подожду, когда С++ станет таким же как С#. Когда он перестанет быть головоломным, а станет не только мощным и быстрым, но и удобным для программиста и для обучения. Вот. [smile :P] [/quote]Даниль без обид. А может это всетаки не C++ гловоломный а у тебя голова не дотягивает? И нечего кроме пустых лозунгов я от тебя не услышал, а чем плох Цпп? То что ты не смог скопилить это не всчет. Инетерестно я от тебя когданибуть добюьст четкого отвева?

    #1944055
    Данилка
    Участник

    [quote name='Brain'] Даниль без обид. А может это всетаки не C++ гловоломный а у тебя голова не дотягивает? И нечего кроме пустых лозунгов я от тебя не услышал, а чем плох Цпп? То что ты не смог скопилить это не всчет. Инетерестно я от тебя когданибуть добюьст четкого отвева? [/quote]А я когда-нибудь добьюсь ответа, зачем мне учить С++, когда можно работать и зарабатывать на С#? 🙂

    #1944056
    Brain
    Участник

    [quote name='Данилка'] А я когда-нибудь добьюсь ответа, зачем мне учить С++, когда можно работать и зарабатывать на С#? 🙂 [/quote]Тебе незачем. Тебя тут и не кто и не заставлял его учить. Я даже скажу больше упаси бог от таких программеров Цпп.Ладно тема тухлая и нечего кроме флема тут нет. Если нечего нового тут не будет то я сваливаю. Дальнейшие провакацие игнорирую.

    #1944156
    -sc-
    Участник

    кстати сама Майкрософт в курсе 2124С Programming with C# Module 1 page 7 весьма скромно описывает бенефты .NET:- Based on Web standarts and practices- Designed using unified application models- Easy for developers to use- Extensible classesИ все. Видно понимают, что программисту маркетинговую лапшу на уши трудно навешать))кстати о “безопасном” коде:using System;using System.IO;namespace Test1{class Class1{[STAThread]static void Main(string[] args){StreamReader fd = File.OpenText(“somefile”);}}}так вот если файл не существует, то очевидно что прога вылетит, т.к. исключение не ловится.так что не существуюет “опасных” и “безопасных” языков, сред выполнения, а только опасные и безопасные программисты))а вот примитивный пример управления ресурсами в с++ из которого видно, что в c++ все полностью автоматизировано:#include “stdafx.h”#include #include #include #include // определим некую обертку для ресурса дескриптор файлаstruct Holder{int fd_;Holder(const std::string& fn){ fd_ = open(fn.c_str(), _O_RDONLY ); }~Holder(){ close(fd_); }};int main(int argc, char* argv[]){// используем обертку){Holder h(“somefile”);//делаем с ним что-либо}//здесь файл уже закрыт и свободен для других процессов, потоков и т.д.std::cout << "hi there" << std::endl;return 0;}в .net'е пример приводить не буду, но там надо примерно:- отнаследоваться от IDisposable- реализовать метод Dispose- обеспечить только однократный вызов Dispose- вызвать SuppressFinalize- не забыть вызвать Dispose в нужное время в нужном местеТак что простота достаточно относительна и управление ресурсами совсем не автоматическое))Но что в .Net удобно, так это библиотека (.net framework class library). Запихнули туда все что можно, все так сказать в одном флаконе.В с++ то же самое, только в разных библиотеках)) И их нужно для себя собрать, создать некий фреймворк. Это минус, но эти библиотеки как правило кросс-платформенны и очень гибки и это гораздо больший плюс.

    #1944203
    Brain
    Участник

    [quote name='sc.'] struct Holder{int fd_;Holder(const std::string& fn){ fd_ = open(fn.c_str(), _O_RDONLY ); }~Holder(){ close(fd_); }};[/quote]Это не упрек, мне просто правдо интерестно.Почему обьевляется структура а не класс?В С++ разница конечно небольшая и заключается только в private и public. Но просто как то не привычно.И второй вопрос почему вызывается “системный” вызов open? А не используется fstream?Просто я всегда считал что лучше использовать “родные” средства.

    #1944255
    -sc-
    Участник

    [quote name='Brain'] … Почему объявляется структура а не класс?…[/quote]Кроме, как было замечено, private/public разницы никакой. Но иногда, когда класс маленький и выполняет какие-то вспомогательные действия, бывает удобно иметь прямой доступ (без методов) к его нескольким членам. Здесь больше дело вкуса. Для кого-то это может быть неприемлемо. Это также может быть записано в стандарте кодирования данного предприятия.[quote name='Brain'] … почему вызывается “системный” вызов open? А не используется fstream?…[/quote]В данном примере я просто пытался показать подход к управлению ресурсами в с++ (память, дескрипторы (файлов, всякие brush, pen и т.д.), соединения с БД, сетевые и т.д.) Их освобождение, если надо, может быть автоматическим. Реализовать это на с++ совсем не сложно. И это не открытие, а обычная практика (RAII – Resource Acquisition Is Initialization).Данный пример конечно не стоит подражания и заслуживает критики)) Есть более достойные подражания авторы и примеры))1) Старуструп, Язык С++, 14.4.1 Управление ресурсами. Использование констр. и дестр.2) Саттер “C++ RAII compared with Java Dispose pattern”http://blogs.msdn.com/hsutter/archive/2004/07/31/203137.aspx3) google RAII ))Да, у Саттера, приводится эквивалентное для с# решение (я как-то и забыл об этом)):using(A obj = new A()){   obj.DoSomething();}Это разворачивается в try/finally и в секции finally вызовется A.Dispose() (примерно так)Все остальное согласно паттерну Dispose. Ну что ж, не все так плохо))Насчет open. Иногда можно решить проблему только системыными вызовами. Например у нас была кроссплатформенная обертка типа ИмяПродукта::CFile. И там нужно было добиться одинакового поведения в винде, солярке и линуксе. В винде есть возможность открыть файл в эксклюзивном режиме (именно из-за этого этот класс и нужен был), а солярке этого режима или не было, или работал он не так как в винде. Проблему решили то ли с помощью мьютекса, то ли семафора (они у нас тоже были кросс-платформенно обернуты)), не помню. Но в данном случае использовали именно системные вызовы. Все зависит от конкретной задачи и чем больше возможности выбора, тем эффективнее решается задача (ну вот, очередная банальность))PS Все вышесказанное является имхой и может не совпадать с имхами других людей)),и естественно может быть подвергнуто конструктивной критике))

Просмотр 15 сообщений - с 46 по 60 (из 65 всего)
  • Для ответа в этой теме необходимо авторизоваться.