Не поленился, поискал этот рейтинг, потому что Украина в принципе не может быть ни на
(www.bloomberg.com/...
Итак, согласно этому рейтингу, Греция на
Скажите честно, вы так представляли список наибеднейших стран мира?
Приведи определение ромбовидного наследования, только не своими словами, мне тебя трудно понимать.
ООП — это большое упрощение, где взяты некоторые идеи из реального мира, не более. Но вот когда при проектировании начинаются аппеляции к реальному миру, такого типа, что у тебя про камни и бегеметов, как правило это ошибка. Есть некая базовая модель, есть общие принципы ООП, есть требования к системе, есть возможности языка. Вот в этих рамках и стоит работать, а не пытаться приплетать бегемотов, камни или еще что-то.
Одна ДНК имеет больше информации чем все программы созданные человечеством за всю историю своего существования. Вы даже на миллиардную долю процента не приблизились к такому же качеству программ и при этом утверждаете, что мир консервативен. Это смешно!«Вы» — это человечество, я понял. А ты тогда Кто? Неужели сам Создатель пожаловал на форум? Почто столько болячек и багов в ДНК захерачил, а? У меня даже объекты на С++ столько багов не имеют, а перед удалением предупреждаются деструктором.))
Ты слишком много фантазируешь и сам не понимаешь о чем говоришь. Ты же заявлял, что в С++ нет ромбовидного наследования? Оно есть. Так же ты можешь выбирать свойства от разных объектов. Тебе никто не мешает.
В С#, Java и других ООП языках, тебе так же ничто не мешает добавить к классу бегемот интерфейс свойственный только камню и его реализовать.
Вообще, это типачная ошибка новичка, пытаться натянуть реальный мир на чисто виртуальный мир проектирования софта. Твоя ошибка в том, что пытаешься искать аналогии с реальным миром. Разница в том, что реальный мир слишком статичен и малоизменчив. Внешние условия практически не меняются. В разработке софта все иначе и здесь бегемот может стать носорогом, как раз плюнуть.
Вопрос с полиморфизмом хорош тем, что поговорить можно о многих вещах. Начиная проектрованием и заканчивая нюансами языка. И в общем-то, достаточно быстро становится ясен уровень кандидата. Но тема непростая, соглашусь. А вот зачем спрашивать про размер пустого класса, я не знаю, разве что чтобы завалить кандидата. Какого ответа вы ждете от С++ программиста на вопрос о различии интерфейсов и абстрактный классов? В С++, в отличии от С#, Java, нет различия на уровне языка между интерфейсами и абстрактными классами. Поэтому интересно, какого ответа ожидаете.
И кто же вам запретил ромбовидное наследование в С++? Ромбовидное наследование в С++ называется виртуальным наследованием. Да и в природе встречатся множественное наследование, например, скрещение видов. В общем, мне кажется, вам обоим стоит немного подучить предмет о котором пытаетесь рассуждать, а то ваш диалог совсем стрёмным получается.
Вы внимательно читали, что я написал? Инлайнится не все подряд, а на усмотрение компилятора, когда точно известен динамический тип. В случае, если функция/метод экспортируется из библиотеки и может принимать по указателю или ссылке объект рассматриваемого типа, то очевидно же, что ничего не заинлайнится изначально.
Лучше начинать с полиморфизма. А sizeof — это вопрос больше про выравнивание данных и в уме посчитать sizeof класса не так-то и просто. Например, даже для таких простых структур struct A {char a1; int a2, char a3}; и struct B {char a1; char a3; int a2}, sizeof вернет разные значения в дефолтных настройках GCC или VS.
C++ оптимизаторы могут инлайнить виртуальные методы, если удается получить информацию о рельном (динамическом) типе. Процесс называется девиртуализацией. Например, из release notes по GCC 5:
The devirtualization pass was significantly improved by adding better support for speculative devirtualization and dynamic type detection. About 50% of virtual calls in Firefox are now speculatively devirtualized during link-time optimization.
(пишем в уме — у кандидата гонора гораздо больше, чем реальных знаний и опыта)
PS
Я как-то давно пытался фрилансить, но забил. Потому что даже проекты бюджетом хотя бы $5K-10K попадались не часто. Поэтому мне интереснее было бы послушать саксес-стори не про первую тысячу, а про долгосрочную работу.
Это не лучше, но инереснее. Но совсем интересно будет, когда ты проработаешь хотя бы год или два и сумеешь получить доход сравнимый с доходом программиста, работающего в обычной компании. Опиши хотя бы свою специализацию, сколько времени тратишь на фриланс, каков процент полученных работ от количества бидов. Потому что истории как я сделал проект за $50 и сэкономил заказчику $450, ну как бы совсем не интересны.
$1000 за три месяца, это типа офигительное достижение, что уже впору раздавать советы и писать статьи? Когда заработаешь первые $10к книжку напишешь? :)
Нет, многое зависит от предметной области. Мне кажется, что ты не с той стороны подходишь к выбору. Во-первых, если бояться трудностей, то в программирование воообще не стоит идти. Сложности будут везде, рутина и нудотина будет тоже везде.
Язык может быть прост как две копейки, но программировать на нем может быть не просто. Так, как правило, и происходит с программированием на СИ. Просто потому, что кроме языка важны еще доступные библиотеки, средства разработки и предметная область.
Я бы советовал сначала выбрать предметную область, в которой тебе интересно было бы работать, а под нее уже выбирать язык программирования. Скажем, веб разработка, там тоже есть свои подкатегории, десктоп, мобайл, что-то системное, телеком, игры, и т.п.
Когда выучишь один язык программирования, то второй язык будет даваться гораздо проще, третий еще проще. Если профессионально работать программистом, то скорее всего, тебе придется работать с разными языками, так что я бы уж очень сильно не парился по поводу выбора первого языка. Для начала попробуй выбрать предметную область и то, чем тебе было бы интересно заниматься.
Способность «отстреливать яйца» — это в большей степени свойство ДНК.
ограничен в ресурсах железаНе только, С++ хорош там, где есть плотное взаимодейтсвие с системой, где нужно быстрое время отклика, ну и на ресурсоемких задачах.
Да не в чем не прав, мне просто лень разжевывать по пунктам, но это какое-то старье (отсутсвие лямбд и анонимных методов в С++, ага...), скорее всего упертое с рсдн (раз фигурирует немерле). Последние версии С# уже не проще С++. А программирование, например интерфейсов, с помощью C#/WPF+XAML, не проще, чем с помощью С++/Qt. Любой язык с возрастом > 10 лет обрастает кучей свистелок-перделок и легаси наследия.
1. Ну скорее всего пытаются сбить цену. Если согласишься, то вероятно и после собеседования предложат ниже оговоренного. Варианты как бы очевидны: соглашаться, не соглашаться, предложить свой компромисный вариант.
2. Ну да, либо прижимистая контора/руководство, либо проблемы с финансами, что еще хуже. Я бы попытался найти отзывы о компании.
3. От тебя зависит. Скажу по своему опыту, если з/п не устраивает с самого начала, то и интересность проекта быстро пропадает. Потому что, в любом самом интересном проекте рутинной работы все равно будет больше. Первое время потерпишь, но потом начнет колбасить.
Прочитал твой пост и ощущение, что мне пытаются впарить какую-то х**ню.)) Как будто посмотрел то ли политическую рекламу (“Пжыты по-новому”, “покращення вже сьогодні” ), то ли рекламу моющего средства — “в Вилларибо уже праздник, а Виллабаджо моют посуду”. А на деле, что одно — хрень, что другое...
А в чем прикол обижаться в интернете на ты/вы? Никогда этого не понимал. И как происходит процесс перехода с вы на ты? Иван Петрович, вы уже 3 раз назвали меня му*ком и дол***бом, а я вас четыре раза назвал пид**сом. Мы уже почти как родные, все о друг друге знаем, давайте перейдем на ты.
Здрасте, я ваша тетя. Шо ты там процитировал то? Вырвал одно слово и допридумывал, что тебе захотелось.
PS
Все мои посты — это набор цитат из словаря Даля.
Наталия, не совсем понятно с этими IBAN. Если перевод осуществляется с аккаунта без IBAN, то что? Откуда вообще растут ноги про требования IBAN? IBAN — это европейская инициатива, как я понимаю. И не все страны к ней присоединились. Например, США не присоединились. Вот что написано в FAQ Bank of America: «The United States does not currently participate in IBAN. Therefore, Bank of America does not have an IBAN number».
Это же полный идиотизм для банковских переводов из США устанавливать POS терминал.