• В чем отличия C++ и C# ?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Тут все пишут про отличия. Рискну написать про сходства.

    Во-первых, о чём бы ни писала Елена и Си++ и C# - оба языки общего назначения. Даже больше, оказывается - C# ни разу не заточён под объёмную библиотеку (или фреймворк) .NET, однако с ним намного, много проще. Но если таки учитывать .NET, то для Си++ есть Boost и Qt, так что здесь скорее паритет - библиотек для обоих хватает.
    Во-вторых, сложность разработки на Си++ часто преувеличена. Разве только дисциплины надо поболее - выстрелить в ногу здесь попроще. Однако при этом Си++ будет чутка более гибкий и без танцев с бубнами unmanaged код не запустить на C#. Если внезапно потребуется.
    В-третьих, оба языка, раз они общего назначения, таки мультипарадигмальные. То есть они реализуют большинство практик. И хотя Си++ развивается довольно медленно, сейчас Си++ резко догнал C# в плане нереализованных фич (здесь как минимум лямбды). Ну и метапрограммирования у Си++ поболее будет (наглая ложь).
    В-четвёртых, оба языка кроссплатформеные. Впрочем, C# будет более кроссплатформенный, чем Си++. Разве только тот же Qt резко стёр границы, но это не значит почти ничего - C# компилируется в тот же самый CIL для всех платформ, Си++ - в совершенно разный код для разных платформ (i386, amd64, ARM Cortex-AXX).
    Наконец, в пятых, синтаксис у них действительно очень похож. Оба языка принадлежат к семейству Алгол-подобных, так что и брейсы, и остальные скобки здесь имеют примерно одно предназначение.

    Различия, которые казалось бы делают языки совершенно разными, таки не столь принципиальны на том уровне абстракции, на котором был задан вопрос. А различия действительно колоссальны: C# - managed код, что означает, что скомпилированный код будет исполнятся не на прямую в CPU, а на специальной виртуальной машине. Это съедает производительность, но сильно облегчает перенос кода. Ну и потом, C# - полупроприетарный ответ Java (что интересно, так как получается, что C# - более свободный, чем Java), которая была создана как замена сложному и небезопасному C++ в том числе.

    В общем, как человек, который начал давно с C#, продолжив C++ и по пути изучив Python, Java, D и другую ООП-чушь могу с уверенностью сказать, что разницы в общем-то и нет... То есть придётся немного проникнуться в чуть другую философию и выяснить, какие проблемы более новый язык пытался решить. Но если подходить к этому, как подошёл lookid, то это скорее не как изучать языки одной языковой группы, а как изучать один и тот же язык в разное время или в разных сферах.

    Почему так? Потому что ООП... Оно как бы ООП, ничего сверхъестесственного ни один язык не предлагает, это не Haskell, и тем более не Brainfuck. Так что принципиально общие вещи в них будут. То подмножество, что реализует машину Тьюринга - у них общие. Сами посмотрите: циклы, ветвления, передача аргументов, арифметика... С небольшими правками всё совершенно одинаковое. Да, Дмитрий совершенно прав, traits на C# не повторишь, ибо та аналогия будет уже не traits, однако... Это уже [programming_language] related, то есть это попытка совладать с особенностями.

    Немного пруфов: лично я ходящий пруф. Зная C++ и C# и немного Java я просто начал программировать на Python. При том, что Python даже алголоподобным не принадлежит. А всё потому, что логика одна и та же, хотя различий между Python и C(++|#) намного, много больше. Но не читая почти никаких туториалов, пройдясь галопом по европам с документацией сейчас я знаю python достаточно для серьёзного проекта.

    UPD. По поводу метапрограммирования... Таки рантайм рефлекшн шарпа тащит. И хотя ни макросов, ни шаблонов, ничего. Но изменять код на лету - это уже очень круто. По дефолту плюсы так не умеют, и хотя шаблоны с макросами тащат, сильно, очень сильно тащат и вытаскивают его, Си++, со дна, надо признать - рефлешн у шарпа будет поинтереснее. Извиняюсь за дезу.
    Ответ написан
    6 комментариев
  • Автоматическое удаленное администрирование windows-клиентов?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    Во первых задумайтесь, нужна ли вам эта помойка
    Чтобы сломить (пусть даже и немного) политику "экономим на всем кроме гелика гендира" нужно время и терпение:
    Первое: разводим бюрократию, фиксируем все проблемы пользователей, замены компов, количество походов к пользователям в неделю на человека, особо отмечаем проблемы с безопасностью - сколько времени потребовалось чтобы вычистить комп менеджера Васи от вирусни которую он нахватал, какие риски могут возникнуть если менеджер Петя откроет письмо от "дяди Мнглуи" из Южной Африки.
    Сколько простаивал складской комп пока вы удаляли с компа кладовщика Иннокентия порнографию.
    Сколько литров чая было выпито за общением с бухгалтером Таней, пока показывали как печатать на новом принтере и т.п.
    Это, по сути - работа начальника IT отдела, но одновременно - деньги бизнеса, потому что именно бизнес платит вам вашу зарплату (за которую вы почему то держитесь)

    Второе: самообразование. Я бы не советовал вам,в отличие от других отвечающих, на говнокомпах(сервер же не купят) поднимать такие ключевые для инфраструктуры вещи как контроллер домена (будь он на линуксе или windows) или вообще любой центральный сервер - однако их подъем, настройка и, впоследствие, починка прибавят вам как опыта так и ценности в профессиональном плане и дадут шансы покинуть этот дом боли впоследствие.

    Как быстрые решения:
    - ставьте агент удаленного управления на каждую машину - поможет меньше между ними бегать
    - стандартизируйте ПО и способы его установки (пусть это будуть хоть cmd скрипты, пофиг - лишь бы вы не сидели и не ждали очередного окошка визарда с кнопкой "NEXT" пока он там что-то затупил
    - в общем и целом придумывайте как минимизировать всю беготню чтобы заняться самообразованием и улучшением ситуации качественно, а не количественно
    Ответ написан
    1 комментарий
  • Как попасть на фриланс без биржи?

    nki
    @nki
    bezkart.ru готовая система лояльности
    Зависит от сферы в которой работаешь. Я нахожу клиентов на тематических выставках/мероприятиях. Да, для этого надо выйти из дома и разговаривать с живыми людьми.
    Ответ написан
    Комментировать
  • Как попасть на фриланс без биржи?

    dmitry_pavlov
    @dmitry_pavlov
    World-class .NET freelance contractor (remotely)
    Фриланс без посредников - это автоматически плюс 1-3 часа в день к рабочему времени - на постоянный мониторинг и поиск прямых клиентов. Это принятие на себя дополнительных рисков. Это постоянные инвестиции своего времени в собственный "бренд", если так можно выразиться (участие в профильных активностях - конференции, сообщества, open source и - т.п. - иными словами вас должно быть "видно" там где могут смотреть потенциальные клиенты). Надо понимать, что посредники свой хлеб едят не зря (по крайней мере - надо правильно выбирать посредников :) ) Не все специалисты просто по своей натуре смогут осилить все сопутствующие техническим навыки для успешной работы во фриланс режиме.

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

    А отечественный рынок - нищий. Работодатели хотят нанять вас по расценкам самых низких офисных зарплат, так как на отчизне принято считать, что нанять фрилансера - это чтобы сэкономить. Доводы, что за него не нужно платить налогов, тратиться на рабочее место и тп - обычно уходят в dev/null Ну и по личному опыту, работать приятнее с иностранцами - они более корректные и вопросы обычно решают в конструктивном ключе. Культура делового общения обычно выше.
    Ответ написан
    Комментировать
  • Как попасть на фриланс без биржи?

    @InoMono
    Старые довольные клиенты приводят новых.
    Это крайне эффективный механизм, называемый "сарафанное радио".

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

    Сарафанное радио работает очень долго и очено эффективно.

    До сих пор работают с клиентами, с которыми познакомился в далеком 2002 году.
    И с теми кого они привели.
    И с теми кого привели те, которых привели те, которых привели первые.

    За все годы биржами пользовался из любопытства чем из за того, что кушать было нечего и нужна была работа.
    Объявлений не давал.
    Сайта нет.

    Важный момент: номер телефона все эти годы не менял.
    И e-mail тоже.
    Ответ написан
    5 комментариев
  • Можно ли установить во внешний жесткий диск операционную систему?

    Если биос позволяет загружать, то конечно можно.
    Если внешний диск будете подключать через USB 3.0, то можно SSD взять. А так спорно, что на много лучше будет, хотя обращение к мелким файлам будет летать, по сравнению HDD.
    И не проще ли на флешку записать live CD и запускать где угодно?
    Тут конечно все от задачи зависит.
    Ответ написан
    Комментировать
  • Как указать путь фоновому изображению из файла css?

    wapster92
    @wapster92 Куратор тега CSS
    ..//img/index-img/файл
    Ответ написан
    Комментировать
  • Стоит ли учить Grid и Flex css?

    @Bembolat
    про float уже забудьте. В первую очередь с флекса начните
    Ответ написан
    Комментировать
  • Стоит ли учить Grid и Flex css?

    Vlad_IT
    @Vlad_IT Куратор тега CSS
    Front-end разработчик
    Да. Учите и то, и другое.
    Ответ написан
    Комментировать