Результаты поиска
| |
rrrfer | Дата: Вторник, 19 Сентября 2017, 09:18 | Сообщение # 1 | Тема: Игра на развитие памяти. Android. Статья о разработке. |
частый гость
Сейчас нет на сайте
| Цитата afq ( ) rrrfer, ты как qt настроил для android?
Да на официальном сайте Qt лежит сборка библиотеки для Android. Ну а в QtCreator все для разработки есть. Можно эмулятор запустить, можно на реальном мобильнике отлаживать (я так делаю), можно файл манифеста редактировать (иконки там приделать к приложению и т.п.), можно подписать файл (чтобы на гугл плей выложить).
В общем, там все готово для использования давно и весьма удобно.
|
|
| |
rrrfer | Дата: Понедельник, 18 Сентября 2017, 17:01 | Сообщение # 2 | Тема: Игра на развитие памяти. Android. Статья о разработке. |
частый гость
Сейчас нет на сайте
| Ссылка на игру: drawmind на google play.
Накидал очередную игрушку под Android, поделка показалась играбельной, выложил на маркет и решил описать статью о процессе разработки. Вообще, на хабре есть куча статей типа «моя первая игра под Android», но зачастую:
- играть в это совсем скучно; - в комментариях жалуются на отсутствие технических деталей; - разработчик не предоставляет читателям какую-либо часть кода для использования в других проектах (или этот код настолько кривой, что его невозможно использовать).
Я решил исправить эти недочеты в своей статье. Да, код я писал на С++ с использованием библиотеки Qt.
Ссылка на статью: разработка игры для Android.
#cplusplus #android #qt
Сообщение отредактировал rrrfer - Понедельник, 18 Сентября 2017, 17:02 |
|
| |
rrrfer | Дата: Суббота, 24 Октября 2015, 09:42 | Сообщение # 3 | Тема: Обучение |
частый гость
Сейчас нет на сайте
| Будет легче, т.к. разница вообще лишь в мелочах. Последний раз я устроился на работу Java-программистом {было в районе 25 человек на место} не написав за жизнь ни одной строки на Java. Я думаю, что точно также я устроился бы на должность C#-программиста, т.к. программирую на С++, а разницы почти нет.
Детали и тонкости С++ можно почитать в книжках Маерса, но чтобы их понять надо уметь программировать хоть как-то. Начать знакомство с С++ можно с книжке Стивена Прата. Однозначно не помешает познакомиться с библиотекой STL (книжка того же Маерса).
|
|
| |
rrrfer | Дата: Пятница, 07 Августа 2015, 16:41 | Сообщение # 4 | Тема: Видеокурс "Программирование" от INTUIT |
частый гость
Сейчас нет на сайте
| Видеокурс по С++ ИМХО не может быть эффективным, как и по любому другому ЯП.
В описании курса С++ вообще ни разу не упоминается. Т.е. это курс вцелом по программированию, но примеры программ на С++.
К языку относится только это: Цитата управляющие конструкцииалгоритмического языка и т.п. Приводится большое количество примеров
Лично я считаю, что чтобы научиться программировать, надо, как ни странно, программировать. Задачи при этом можно взять на любом форуме (студенты выкладывают пачками). Ну и любая книжка по языку (настолько любая, что подойдет даже поделка Павловской).
Ну и вот когда научишься решать хоть какие-то задачи - можно взять книжку по алгоритмам (почти любую, например Макконела или Скиены) и посмотреть там хотя бы разделы с оценкой сложности алгоритмов и базовых структур данных.
Т.е. надо 2 книжки, форум с задачами и желание учиться программировать - по крайней мере это будетв разы эффективнее вот такого курса. По финансам это не более 1 тысячи рублей, при этом книжки останутся у тебя. Книжки можно взять в библиотеке, например или у других программистов (я например с удовольствием поделился бы) - при этом затраты вообще будут нулевыми.
От книжек курс отличается лишь тем, что его не надо читать. Но я вот на 100% уверен, что если человеку лень читать, то он мало хочет разобраться с тем, что написано в книге, т.е. у него низкая мотивация. А значит, видеокурс не поможет, т.к. до практики дело не дойдет, но без практики научиться программировать невозможно.
Сообщение отредактировал rrrfer - Пятница, 07 Августа 2015, 16:42 |
|
| |
rrrfer | Дата: Пятница, 07 Августа 2015, 14:36 | Сообщение # 5 | Тема: Ваши любимые игры |
частый гость
Сейчас нет на сайте
| Почти не играю на компьютере.
Ну из игр мне нравился блокус (это интересная настолка, которая для компьютера тоже есть). Интересно очень, т.к. игра логическая и реально сложная (можно играть 1x1, 2x2, 1x1x1x1).
Нравятся шахматы, играл в них в детстве неплохо, но в последние два года тренировался почти каждый день на liches. Сейчас по ощущениям я тяну на какой-нибудь начальный разряд. Нравится, потому что развивает мозг.
Раньше играли часто в тысячу (карточная игра) - на компьютере по сети и без него. Перестал играть, т.к. перестал пить пиво, а без пива тысяча не так хороша. Интересно играть только в компании своих товарищей, по ходу игры можно отлично пообщаться (лучше без компьютера, но и с компьютером тоже, вцелом).
Раньше играл в цивилизацию (вроде бы 3 версия). Тоже очень интересно, но freeciv оказалась гораздо нелинейнее (и еще она под линуксом работает прекрасно) - поэтому перешел на нее. Интересная игра, но занимает слишком много времени, поэтому не играл уже лет 6.
Аналогично HMM 3.1 (которые модернизированные). Увлекательнейщая игра, пока играешь можно наобщаться и где-то даже повеселиться, но отнимает слишком много времени. Ни у меня, ни у товарищей в последнее время столько времени нет, поэтому не играем.
Мало времени отнимают шахматы и блокус - в них и играем ))
|
|
| |
rrrfer | Дата: Воскресенье, 02 Августа 2015, 20:01 | Сообщение # 6 | Тема: Симкарты Йоты |
частый гость
Сейчас нет на сайте
| http://yota-store.ru/price/index.htm Отличаются тарифом. Симка стоит 300р (насколько я понимаю, она у всех одна). Только в одни случаях ты получаешь тариф за 390р, а в других - за 790р.
Есть группа ёты в вк - можно там спросить, я пробовал - отвечают шустро.
|
|
| |
rrrfer | Дата: Воскресенье, 02 Августа 2015, 13:28 | Сообщение # 7 | Тема: Вопрос-Ответ (С) |
частый гость
Сейчас нет на сайте
| Цитата "a -= b" это синтаксический сахар для "a = a - b". Реализуется в языках для удобства (меньше повторяемого кода). Не только сахар. Оператор -= работает только с двумя переменными (объектами). Но в a = a - b все не так просто (особенно если переменные не элементарных типов {ведь выше речь о C#}). При выполнении (a-b) создается новый временный объект со значением результата, а затем выполняется присваивание. При этом присваивание - это не такая простая и быстрая операция, т.к. запускается сборка мусора (старый объект ведь теперь не существует). После присваивания деструктором уничтожается временный объект, который хранил (a-b).
Поэтому a -= b может быть гораздо эффективнее в объектно-ориентированных языках типа С++/C#/...:)
|
|
| |
rrrfer | Дата: Среда, 29 Июля 2015, 21:22 | Сообщение # 8 | Тема: Нуждаюсь в художнике для игры, как Белорус в картохе |
частый гость
Сейчас нет на сайте
| Цитата В общей сумме рассчитываю потратить не более 1000 грн. --> 3300 руб. (пример.) Сумма не совсем реальная. Я искал художников примерно год назад. Искал и тут и на биржах фриланса (нашел в конце концов тут). У меня задача была в разы проще - примерно 10-15 маленьких (кадров по 10) простых анимаций - типа "ежик шагает вправо", "ежик шагает влево", "тучка движется вниз и возвращается назад". В основном это были тучки (одинаковые, но разного цвета), которые просто двигались вверх и вниз (не изменяя рисунок тучки вообще).
Ну вот с меня просили от 30 до 150 тысяч рублей (и это было более чем год назад, т.е. до падения курса). На этом форуме я тогда нашел двух парней которые отказывались от денег и предлагали нарисовать все даром (для портфолио), но нарисовали такое говно, что стыдно (я бы нарисовал лучше). Еще один парень с форума взялся, что-то там рисовал 2 недели (не скидывал мне ничего при этом), а потом сказал что тучки можно заменить на разноцветные квадраты, а вместо ежа использовать круг и рисовать тогда вообще ничего не надо.
Потом я таки нашел человека, который нарисовал почти все за 4 тысячи, но пока он рисовал он как-то нашел хорошую работу и последние анимации скидывал мне еще несколько месяцев.
Т.е. если подытожить, у художников совсем другие расценки. Но если ты найдешь другого художника - скинь мне его контакты, пожалуйста ))
Сообщение отредактировал rrrfer - Среда, 29 Июля 2015, 21:23 |
|
| |
rrrfer | Дата: Среда, 29 Июля 2015, 21:10 | Сообщение # 9 | Тема: Как создать свою игру? |
частый гость
Сейчас нет на сайте
| Цитата Цитата Нет там рандома, зачем он? Совсем нет? То есть, при одинаковых начальных данных в начале сессии будет получен один и тот же результат? Одни и те же картинки на барабанах? Или любое начало сессии - это продолжение некоторой псевдослучайной последовательности, начатой давно?
А вот я заметил уже, что на этом форуме никогда сообщение целиком не читают )). Все в том же сообщении (которое ты цитировал) есть ответ на твой вопрос. Там выше несколько раз написано откуда у меня информация. Я думаю да - "при одинаковых начальных данных в начале сессии будет получен один и тот же результат". Только одинаковые начальные данные обеспечить не получится, состояние автомата - это не только текущая сессия, т.к. в настройках автомата глобально устанавливаются настройки баллнса проигрыша/выигрыша (про это тоже писалось выше), т.е. так или иначе на текущую сессию оказывают влияние все предыдущие сессии.
Цитата у биржи betfair ... подкопаться сложно к предвзятости. 100% ... кто-то может и выигрывать, но большинство проиграет. Я не скажу за бетфее, но в играх игрософта и белатры есть настройки. И я уже писал выше, что периодически их могут выставлять так, чтобы автомат давал чуть-чуть выиграть. Такая процедура выполняется всегда в новых игровых клубах, поэтому если вы хотите выиграть в автоматах - то пробовать надо в новых клубах.
Цитата Человек играет, и первые 5, 10, 15, 100500 раз ему везёт, он выигрывает довольно круглые суммы В играх которые мы писали круглые суммы можно выиграть только если проиграны уже сферические суммы ), но вот окружающие игроки этого могут не знать и ведутся поэтому.
Цитата Ну вот igt занимается редизайном своих игр и неспроста отходит от флэша. Флэш ограничен. Я уже лет 5 не связан с такими играми, но тогда в нашей конторе от флеша отходили, т.к. он постепенно (за несколько недель) выжирал всю память (это было написано до того, как я пришел в контору). Ну и из за этого приходилось перезапускать автоматы, но еще он мог повиснуть во время игры и тогда были неприятные ситуации с клиентами. И это был известный баг во флеше (может быть уже давно пофикшено, я хз) - у нас игры поэтому по второму кругу переписывали на плюсах (в этом я уже участвовал).
Цитата Подобрать эквайринг и настроить, как я в общем и сказал. ИП мешает, т.к. бизнес на 100% подпольный. Суть перехода с оригинальный автоматов белатры/игрософта/.... на компьютерные игры в том числе (не только) в том, что в клуб вламывается омон, ломает двери, окна, забирает всю технику из залов и выписывает штраф в несколько сотен тысяч. Все это печально если используются оригинальные автоматы, т.к. стоят они дорого, изготавливаются долго и еще дольше их везти из москвы/белоруссии. Но это вообще не печально если игра компьютерная, т.к. компьютеры стоят дешево и их легко купить. Через час клуб снова работает (милиция в это время занята оформлением бумажек и еще раз придет не скоро).
Из википедии: Цитата Эква́йринг — приём к оплате платёжных карт в качестве средства оплаты товара, работ, услуг. Осуществляется уполномоченным банком-эквайером путём установки на предприятиях торговли платёжных терминалов или импринтеров. Омон изъял терминалы и т.п. Милиция наехала на банк и счет ИП заблокировали до решения суда, что дальше?
ИП не нужно если бизнес подпольный, это очевидно, казалось бы.
Сообщение отредактировал rrrfer - Среда, 29 Июля 2015, 21:11 |
|
| |
rrrfer | Дата: Среда, 29 Июля 2015, 08:45 | Сообщение # 10 | Тема: Как создать свою игру? |
частый гость
Сейчас нет на сайте
| Цитата на бетфейровский рандомизатор пытались наехать но не вышло. Да и по сути то, если большое количество игр, то математика на стороне казино будет же Гугл ответил: "По запросу бетфейровский рандомизатор ничего не найдено. ". Я тоже не знаю о чем вы. Я работал в конторе, где писались игры такого типа. Код генерации выигрышей я не видел, но чувак, который его писал честно сказал, что рандома там вообще нет. Ну и всилу того, что мы свои игрушки тестили перед передачей заказчикам, мы проигрывали в них миллиарды рублей за ночь (барабаны и т.п. у нас крутил бот с бешеной скоростью) - вот судя по тестам, случайным там "может быть" является только первый результат (который выпадает сразу после начала сессии {после того, как юзер положит первые деньги в автомат}), все остальное - хитрожопый алгоритм, который не дает тебе быстро проиграть, почти никогда (от настроек автомата зависит) не дает выиграть больше чем потратил (когда автоматы только въезжают в новый клуб, у них ставят настройки, которые дают чуть-чуть выиграть, чтобы привлечь новых игроков) ну и вываливают выигрыши пропорциональные проигранной сумме (чтобы лохи надеялись, что у них тоже может выпасть множитель х100, т.к. у чувака который стоит рядом с ними он выпадает иногда {потому что чувак уже слил в автомат квартиру}).
Нет там рандома, зачем он?
|
|
| |
rrrfer | Дата: Вторник, 28 Июля 2015, 22:05 | Сообщение # 11 | Тема: Как создать свою игру? |
частый гость
Сейчас нет на сайте
| Цитата Целевая аудитория любит яркие эффекты, так что одним флешем не обойтись. ЦА любит игры, которым лет 20-25 уже - типа «Crazy Monkey», «Fruit Cocktail» и прочие поделки от белатры и игрософта. 99% начинать надо не со своих поделок, а с ремейков вот этих вот древних игр. Цитата Ну и параллельно можно заводить ИП и подобрать эквайринг. ИП позволит платить налоги, но зачем если тема и так не совсем законна? А что еще позволит ИП? Цитата ак и есть, уж рандом и проверка того что в рандоме выпало, всяко не высший пилотаж программирования. В игровых автоматах вообще нет рандома. Инфа 100%.
В автоматах хитрые алгоритмы по обману юзеров, настолько хитрые, что в конторе, где я их писал пол года с алгоритмом выпадение выигрыша был знако только один человек. И у того были проблемы постоянно, т.к. его поделка работала совсем не как оригинал от белатры или игрософта - вплоть до того, что он собирался расковырять алгоритм из дампа платы автомата (дамп уже был, т.к. анимации выковыривали из этих плат у нас). Ну и вцелом качественный ремейк сделать сложнее чем новую такую же игру, т.к. как минимум потребуется купить плату с оригинальной игрой, программатор (чтобы сдампить плату), ну а затем надо будет расковырять анимации и слепить их в нормальный вид из кусочков тайлов. Ну а новые игры, которые никто не видел никогда особой прибыли не принесут - инфа 100% опять же.
|
|
| |
rrrfer | Дата: Вторник, 28 Июля 2015, 21:50 | Сообщение # 12 | Тема: Головоломка "Атомы" |
частый гость
Сейчас нет на сайте
| Интересная идея игры, нигде такое не встречал. Собираешься портировать ее на Android? Много уровней придумал?
|
|
| |
rrrfer | Дата: Воскресенье, 26 Июля 2015, 21:21 | Сообщение # 13 | Тема: Практикуете ли вы смешение С и С++? |
частый гость
Сейчас нет на сайте
| Цитата Уже близко. Вам осталось принять, что управляющую ф-ию тоже можно вычислить заранее. Да, я все принял, ты был прав, спасибо.
|
|
| |
rrrfer | Дата: Воскресенье, 26 Июля 2015, 20:20 | Сообщение # 14 | Тема: Практикуете ли вы смешение С и С++? |
частый гость
Сейчас нет на сайте
| Цитата Скажу проще: если в вашей программе есть ф-ии (классы) не влезающие в один экран редактора, значит, вы не умеете писать ни на C, ни на C++. В 80х годах были такие метрики кода, как экран редактора. Сейчас у всех широкие мониторы и строка не ограничивается 80 символами. Это с одной стороны. С другой стороны, причем тут структуры данных?
Цитата А таблицы - не структуры данных... Да перестаньте, наконец, рвать слова из контекста и прочтите, наконец, хоть что-то из того, на что я ссылался... Я писал выше, что про таблицы впервые прочитал у вас. По контексту я понял что имеется ввиду массив со табулированными значениями, но ко всему остальному бреду, который вы генерируете в этом случае это не имеет отношения.
Цитата А Вы, батенька, тормоз. О том, что все сущности, рассматривающиеся в задаче, программисты издавна называют "вселенной", Вы не в курсе? Или, все-таки, прикидываетесь? Аргументы кончились, вы перешли на оскорбления? И таки да, я впервые слышу чтобы программисты что-то там называли "вселенной", видимо не с теми общаюсь.
Цитата Страуструп: "Главное в хорошем проекте - прямо отразить какое-либо понятие "реальности", т.е. уловить понятие из области приложения классов, представить взаимосвязь между классами строго определенным способом, например, с помощью наследования, и повторить эти действия на разных уровнях абстракции. Но как мы можем уловить эти понятия? Как на практике решить, какие нам нужны классы? Лучше поискать ответ в самой области приложения, чем рыться в программистском хранилище абстракций и понятий". Тут страуструп (или не он, т.к. гугл нашел цитату во многих источниках, видимо копипастят) рассказывает как производить декомпозицию задачи на части. Имея ввиду ОО-декомпозицию. Как это связано с САБЖем? Цитата Цитата Процитируйте меня, где я "сначала заявляю", а "затем утверждаю". Цитата Пожалуйста: Цитата Про части информационной модели вселенной впервые прочитал у тебя. Цитата Не видел ни одной программы, ну посмотри тут... Да, и где тут противоречия? - ты используешь какую-то стремную терминологию, которую только ты сам и понимаешь. Но существуют нормальные ОО-программы, которые я лично видел и писал их на работе.
Цитата Уже дал: "Языки программирования и схемотехника СБИС". Уточняю: 7-й том 11-томника по микроэлектронике, К.Фути, Н.Судзуки, М. "Мир" 1988. Номер страницы давай, я не буду весь седьмой том перечитывать. Ты уже был пойман на недобросовестных пруфах.
Сообщение отредактировал rrrfer - Воскресенье, 26 Июля 2015, 20:22 |
|
| |
rrrfer | Дата: Воскресенье, 26 Июля 2015, 19:47 | Сообщение # 15 | Тема: Практикуете ли вы смешение С и С++? |
частый гость
Сейчас нет на сайте
| Цитата Или, у японцев, в их многотомниках по машинам пятого поколения. Японцы вроде как развивали логическую парадигму к компьютерам пятого поколения. ООП они вроде как вообще не касались. Если я не прав - дайте пруфлинк.
Цитата См. у Страуструпа, например, в главе "Проектирование и развитие" Я открыл главу 11, пролистал ее целиком. Искал по части слова всел-енная - ничего нет. Очевидно, Страуструп не пишет в этой главе "Про части информационной модели вселенной". Ты дал недостоверный пруфлинк.
Цитата Вы сами себе противоречите. Заявляете, что классический ООП не существует иначе, чем в моем воображении, а затем утверждаете, что есть куча примеров.
Процитируйте меня, где я "сначала заявляю", а "затем утверждаю". Я говорил о том, что ни о каких "моделях вселенных" в ООП речи не идет. И что ваши представления об ОО-программах, как о программах в которых struct заменили на class ничего общего с реальностью не имеют. Затем скинул ссылку на открытые проекты, в которых ООП используется правильно.
По поводу "золотого правила", сравни то, что ты написал вначале с тем, что процитировал позже: Цитата 1. Лучше всего нужную штуку просто вычислить. 2. Если ее нельзя просто вычислить, используй таблицы. 3. Если таблица не получается, используй if-ы и switch-и.
Цитата При выборе того, какой подход применить к решения задачи, отдавайте свое предпочтение в следующем порядке: 1. вычисления (кроме случаев, когда существенна скорость) 2. структуры данных 3. логика"
Структуры данных - это не (не только) таблицы, это массивы, списки, хеш-массивы, всевозможные деревья и т.п. Речь в оригинале шла о том, что если твое решение работает не достаточно эффективно (на это указывает приписка в скобках к первому пункту) - то можно попробовать применить другие структуры данных. Что автор имел ввиду под логикой я не знаю, но вагную, что предлагал поискать вкорне другой подход к решению задачи если никакая структура данных не дала нужного ускорения. И таки да, что-то такое можно найти у Брукса и многих адептов TDD, например. С этим трудно не согласиться, но это не имеет никаокго отношения к тому, что изначально ты писал (табулирование можно притянуть, но не более).Добавлено (26 июля 2015, 19:44) ---------------------------------------------
Цитата Во-первых, под "табулированием" в данном случае я понимаю сведение управляющей информации в таблицы, позволяющей избежать лишних if-ов. Самый известный пример: замена жуткого switch-а, распознающего Win-сообщения, двумя таблицами - по msg- и ctrl-кодам.
Что дает нестрогая типизация? Во-первых, возможность совмещения логических, числовых и битовых выражений (это, понятно, (1)), во-вторых, есть возможность указания в таблицах адресов функций с произвольным числом параметров (это уже, понятно (2)) и , разумеется, опять чисел, флагов, шкал...
Почему для (2) удобна адресная арифметика? Очевидно: я могу в управляющей таблице передать не только адрес ф-ии, но данные любой сложности (через указатель).
Я выше писал что такое табулирование. Примерно тоже самое написал Xakep. - Это значения, которые вычислены заранее (или на предыдущих шагах алгоритма). Например это могли бы быть таблицы Брадиса или типа того. Т.е. При табулировании формируется массив с константами. Типа того:
Код tab[i] = f(x, tab, i);
Ну а функция f при вычислении очередного значения использует то, что сохранено при табулировании - банально обращается к элементам массива tab по индексам. Никакая нестрогая типизация тут ничего не даст дополнительного, как и адресная арифметика. Суть табулирования, как метода я описывал выше, уже пример привел.Добавлено (26 июля 2015, 19:47) --------------------------------------------- Но вцелом тема надоела. Соглашаюсь с вами, я ошибался, спасибо что открыли мне глаза (иначе бы прожил всю жизнь в заблуждении).
Сообщение отредактировал rrrfer - Воскресенье, 26 Июля 2015, 19:37 |
|
| |
rrrfer | Дата: Воскресенье, 26 Июля 2015, 17:19 | Сообщение # 16 | Тема: Практикуете ли вы смешение С и С++? |
частый гость
Сейчас нет на сайте
| Цитата Не видел ни одной "боевой" C++ программы, в которой бы классы рассматривались не как (навязанные свыше) кирпичи для построения кода, а как части "информационной модели вселенной", чего требовали Страуструп, Парнас и другие теоретики ООП. Про части информационной модели вселенной впервые прочитал у тебя. Даже самые упоротые теоретики ближе к земле. Не видел ни одной программы, ну посмотри тут: http://sourceforge.net/directory/developmentstatus:production/language:cpp/os:linux/freshness:recently-updated/
Среди прочих, например, буст (это не программа, а библиотека, но более чем "боевая"). Там очень много примеров.
Я, кстати, ниразу не видел чтобы заменяли struct на class чтобы перенести программу на С++. Т.к. в С++ ключевое слово struct тоже работает, зачем что-то заменять даже если программист сошел с ума?
|
|
| |
rrrfer | Дата: Воскресенье, 26 Июля 2015, 17:10 | Сообщение # 17 | Тема: Практикуете ли вы смешение С и С++? |
частый гость
Сейчас нет на сайте
| Цитата Цитата Это "золотое правило" ты сам придумал? Доходчивее всего его описал Броуди в книге "Думаем на FORTH".
Гугл по запросу "Думаем на FORTH золотое правило " без кавычек выдает: Цитата Золотое правило гуманизма гласит: не делай другим того, чего не хочешь, чтобы делали тебе Цитата Золотое правило морали известно с древнейших времен в различных формулировках. На основе философской концепции золотого правила, можно Цитата Библия | От Матфея 7 (King James Version)
И так далее, что угодно, но никак не то, что привел тут ты. Если есть возможность, приведи цитату из книги целиком. У меня большие сомнения, что в приличной книге могут быть слабоформализованные "просто вычислить" и т.п. О каких таблицах идет речь - тоже не понятно, ты пишешь, что на С++ можно "спрятать не только логику, но и таблицы". В стандарте С++ вообще нет такого термина как таблица.
В "золотом правиле" как-то странно используется термин табулирование. В интернете этому понятию вообще нормального описания не найдешь, т.к. студентам регулярно дают задачи типа "протабулировать функцию на интервале", но реально термин использовался в лохматых годах для обозначения техники программирования, когда вычисленные на некотором шаге результаты могут потребоваться в будущем (поэтому их накапливают чтобы потом не вычислять повторно).
Дак вот возвращаюсь к "золотому правилу": Цитата "макросы, расширенный набор операций вычисления, нестрогая типизация, адресная арифметика. Все это расширяет возможности вычисления и табулирования." Каким образом нестрогая типизация и адресная арифметика расширяет возможности табулирования?
|
|
| |
rrrfer | Дата: Воскресенье, 26 Июля 2015, 16:53 | Сообщение # 18 | Тема: Практикуете ли вы смешение С и С++? |
частый гость
Сейчас нет на сайте
| Цитата речь не о том, что "что-то переносится хуже или лучше", а о том, что C++-кодеры в большинстве не воспринимают классы иначе, чем просто "структуры с удобными встроенными конструкторами" Поправка С++-говнокодеры, тогда дальше все верно. Структуры в Си было нельзя наследовать, в С++ их можно наследовать, они могут содержать конструкторы и прочее. Если С++-кодеры в большинстве воспринимают это иначе - это их личные проблемы.
Цитата Проигнорировал. Они к делу не относятся. Они относятся, т.к. битовые поля задаются при помощи того же ключевого слова struct, но ты писал: Цитата 4. заменой struct на class
Цитата Чем лучше программист знает С, тем труднее будет для него при программировании на С++ отойти от стиля программирования на С Хорошая цитата, только ИМХО понимать ее надо не так прямо как вы это сделали. Страуструп говорит про СТИЛЬ программирования. Все в той же книге (и во многих других книгах, в т.ч. у Г. Буча) используется термин "процедурное мышление" и причина не в Си, а в том, что программист на Си, паскале, фортране, старых версиях пхп и т.д. и т.п. привыкает решать задачи в процедурном стиле. Затем начав использовать ОО язык он по прежнему пытается применить старые подходы, только если в чисто ОО языках типа джавы и шарпа это сделать сложнее (но тоже можно), то в С++ этот сделать очень легко, т.к. Страуструп сохранил частичную обратную совместимость с Си для снижения порога входа (про это он пишет в "Язык программирования С++", по крайней мере в издании 1999 года). Но суть не в Си, а процедурном мышлении, на это намекает фраза СТИЛЬ программирования С. Я думаю Страуструп ничего не имеет против структур, которые вы предлагаете заменять классами. Потому что например если по сети мне приходят данные в определенном формате, то для их разбора я использую структуры или битовые поля - никакие классы эту задачу не решают.
|
|
| |
rrrfer | Дата: Воскресенье, 26 Июля 2015, 11:15 | Сообщение # 19 | Тема: Практикуете ли вы смешение С и С++? |
частый гость
Сейчас нет на сайте
| Цитата Это заблуждение. Языки похожи, но способы программирования абсолютно разные. Я сослался на Страуструпа и на Маерса.
Маерс пишет (почти цитирую): Цитата в С++ 4 подъязыка: Си, объектно-ориентированный С++, С++ с шаблонами, STL Мы все знаем что это за люди, а кто ты такой, чтобы утверждать что чувак из комитета стандартизации и автор языка "заблуждаются"? )
Цитата Разное. Но обычно для "перехода с C на C++" просто облыжно меняют одно на другое, без понимания этой разницы. Кто так обычно делает?, откуда инфа что кто-то так вообще делает? Вопросы про битовые поля ты не заметил или проигнорировал? А что делают с union при переходе от Си к С++?
Цитата Если кратко, то невзирая на языковые фичи, золотое правило кодирования никто не отменял. Оно гласит: Это "золотое правило" ты сам придумал? - если нет, дай пруф, т.к. гугл такого "правила" не знает ))
|
|
| |
rrrfer | Дата: Воскресенье, 26 Июля 2015, 07:41 | Сообщение # 20 | Тема: Практикуете ли вы смешение С и С++? |
частый гость
Сейчас нет на сайте
| З У Маерса (чувак из комитета стандартизации С++) первый совет (из 55) - "относитесь к С++ как к конгломерату языков". Там все написано, что, зачем и почему. У Страуструпа есть фраза, что Си - это часть С++, оставленная для понижения порога входа (чтобы было проще переходить с Си). Т.е. это две части одного языка, они уже соединены исторически и по объективным причинам.
4. заменой struct на class Заменой мягкого на теплое? Мало того, что у этих ключевых слов настолько разное назначение, что заменять тут что-то наивно, дак еще и как же нам быть с битовыми полями, например? (или на С++ мы не должны их использовать? xD)
|
|
| |
|