Здравствуйте, Ночной Смотрящий, Вы писали:
I>>А язык тут при чем? Ты описываешь ситуацию, когда проект пустили на самотек. Виноват в этом почемуто язык. Почему — в ответ только общие слова.
НС>Нет, я ответил вполне конкретно почему. Если тебя мой ответ не устраивает (а тебя, очевидно, устроит только один ответ) — ничем помочь не могу.
Вся твоя конкретика — "Иногда количество переходит в качество."
На самом деле если важная и сложная работа отдается новичкам и неумехам, то это говорит о том, что в команде отсутствует управление, а те кто имеют влияние, просто берут задачи по интересу или вовсе на резюме работают, ну может на демо.
Я это видел и в дотнете, и в джаве, и в бакенде, и во фронтенде, и в фулстеке, и в мобале, и в десктопе, нужное вписать.
Языки, платформы, проекты разные, а проблема одна.
Здравствуйте, AlexGin, Вы писали:
AG>P.S. Чтобы всё это хозяйство не конфликтовало, ставим в хронологическом порядке — AG>т.е. сначала ставим студию 2013, а в самом конце — ставим 2017-ю.
А если надо позже добавить более раннюю? (а это более чем реальный и частый вариант запроса)
Всё переустанавливать? Ну гениально, чо.
Здравствуйте, vsb, Вы писали:
H>>autotools это неюзабельное нечто. А этот их m4 прямо создан для того, чтобы на нём было невозможно писать. vsb>Почему? По-моему хороший препроцессор.
У него две принципиальные проблемы.
1. Писать что-то сложнее чем просто подстановку строки вместо слова — это учить его специфический язык... лет 20 это был самый извращённый язык из класса функциональных, хотя позже язык плюсовых шаблонов его перебил. Для примера можно посмотреть на предлагаемые реализации foreach — даже при наличии времени и вдохновения разбираться с его играми вокруг pushdef/popdef как-то стрёмно.
2. В принципе не предусматривается возможности "заэскейпить" символы квотинга. Вот если у тебя по умолчанию `' — ты не сможешь такие символы вставить в текст, вообще.
Для autotools это выливается, например, в то, что там квотинг заменён на [], и в результате в шелле нельзя использовать [, можно только test.
Лечится переходом на многосимвольный квотинг — я сделал в нашем проекте <* и *>, ну и очевидными методами "склейки" (даже просто написать <<**>* уже сработает, хотя выглядит ужасно).
vsb> Как-то применял, уж не помню точно для чего, но он свою задачу хорошо выполнил. А какой препроцессор лучше m4?
Смотря для чего и где. Если автоматизированно из языка программирования, то лучше смотреть на шаблонизаторы типа Jinja. Сейчас таких натворено для веб-серверов — десятки, и там достаточно правильных возможностей вплоть до вычислений и скриптований на ходу внутри блоков подстановок.
Здравствуйте, Skorodum, Вы писали:
S>>>Вежливость это не ругать то, чего не знаешь. НС>>Глупость сейчас сказал. S>Ну так называть С++ "языком курильщика" это либо от недостатка опыта, либо от недостатка ума
Либо, наоборот, от достаточного количества опыта и понимания, что если начинался C++ ещё нормально, то то, что происходило позже, это типичная ситуация полёта тачанки со взбесившимися конями с обрыва, когда спрыгивать невозможно, и единственное, что остаётся — кричать "Уррраа!!!"
В некоторой степени такая проблема есть у всех, но у C++ она в разы сильнее, чем у аналогов-конкурентов.
S>>>Есть задачи, где С/С++ нет никой альтернативы и не появится в обозримой исторической перспективе.
Ну, да, есть. Только пока что 99% случаев это "уже есть мегатонна кода на C++, мы не можем её переписать", и только 1% на "нет альтернатив". Для C вторая цифра заметно больше — процентов, может, 20.
Но обе ужимаются на глазах — от их областей отгрызают по кусочку и Java/C#, и Rust, Go, Swift, и прочие.
Здравствуйте, netch80, Вы писали:
N>А если надо позже добавить более раннюю? (а это более чем реальный и частый вариант запроса) N>Всё переустанавливать? Ну гениально, чо.
Так вот выше машины для сборки именно таким образом и подготавливают
Здравствуйте, Слава, Вы писали:
N>>А если надо позже добавить более раннюю? (а это более чем реальный и частый вариант запроса) N>>Всё переустанавливать? Ну гениально, чо.
С>Так вот выше машины для сборки именно таким образом и подготавливают
Ничего общего, и тебе это уже подробно разъяснили.
Здравствуйте, Dair, Вы писали:
D>>>Да, Microsoft это добавил то ли в XP, то ли в 2000, не помню. Ops>>А красноглазое ниасилило, ибо к людям всегда жопой, а не лицом. D>Потому что "красноглазое", как ты выражаешься, не имеет единого центра принятия решений. В отличие от Microsoft.
У Microsoft тоже с этим не ладно Шизофрение дульче мелодие — в полный рост.
Но когда прижимает, да, они кое-как приходят к ответу. Unix тоже, но сам процесс выглядит иначе.
Здравствуйте, Mr.Delphist, Вы писали:
MD>Здравствуйте, vsb, Вы писали:
vsb>>Ну это уже вопросы к студии, почему она не поддерживает индустриальный стандарт autotools. Если человек писал проект в линуксе используя vim, как от него можно требовать поддержки студии.
MD>Этих индустриальных стандартов столько, что шанс встретить опенсорс на autotools — как попугая увидать. Т.е. можно, но надо спецом идти в зоопарк.
autotools вообще-то из-за своей специфики рекомендуется только для того, что, как предполагается, будет ставиться на недружественную систему, где левый компилятор, тупейший make, кривоватый шелл, и так далее, и оно 100% Unix-ориентировано (хотя бы из-за того же sh). Как только этот предел пройден — считается, что присутствуют gcc/clang, binutils, gmake (недолюбливаю из-за некоторых свойств, но умеет зараза таки много), возможно bash, и так далее, можно включать другие средства, как тот же cmake.
Поэтому поддержка autotools в VS — бессмысленно.
А вот про cmake можно было бы уже и подумать. Но раз cmake умеет делать проект для VS, то уже есть на что смотреть (если можно поверх такого проекта, не патча его, собирать с доп. опциями).
Здравствуйте, IID, Вы писали:
IID>Здравствуйте, Dair, Вы писали: D>>уже были GNU Make (1976)
Вообще-то просто make. GNU стартовал на 11+ лет позже.
D>>А ещё были прямые слэши в файловых путях, но Микрософт сделал всё по-другому. IID>Обратные слеши — наследие CP/M (1974), и она тогда была гоооораздо популярнее чем эти ваши юниксы.
CP/M не имела иерархии каталогов FS и соответственно никакого разделителя пути. Это дерьмо с \ было введено в MS-DOS 2.0.
IID>Если бы не аутисты, полюбившие залипать на бегущие в Unix консоли строчки — всё могло сложиться совсем по-другому
"Аутисты" сделали GUI раньше — SGI IRIS в 85-м поверх System V имела полноценную графику (а не зародыш, как в Windows 1.0).
Здравствуйте, _NN_, Вы писали:
D>>А ещё были прямые слэши в файловых путях, но Микрософт сделал всё по-другому.
_NN>Обычно прямые слэши проблем не вызывают:
А теперь то же самое на уровне WinAPI, только добавить "\\?\", как рекомендуется тут чтобы не иметь проблем с длиной пути, с легаси типа невозможности работать с com1.*, aux.* и так далее... и всё сломалось.
То есть, чтобы с этим работать, надо всё равно все пути преобразовывать самим.
Это и есть — сделали через %опу "на отцепись".
Здравствуйте, CreatorCray, Вы писали:
D>>А я начал писать под Linux. Xcode — это уже потом. Да и Qt Creator потом. Основные инструменты — vim и gdb. CC>В приличном обществе не принято говорить о подобных извращениях!
VIM нынче умеет автодополнение, навигацию, рефакторинги. GDB с плугинами на Питоне тоже вполне можно использовать. Непривычно после IDE, но вполне себе эффективно.
Здравствуйте, Cyberax, Вы писали:
C>VIM нынче умеет автодополнение, навигацию, рефакторинги. GDB с плугинами на Питоне тоже вполне можно использовать. Непривычно после IDE, но вполне себе эффективно.
Я всё же предпочту это всё в удобном виде.
Тут проблема в идеологии что vim что gdb
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Здравствуйте, netch80, Вы писали:
N>Либо, наоборот, от достаточного количества опыта и понимания, что если начинался C++ ещё нормально, то то, что происходило позже, это типичная ситуация полёта тачанки со взбесившимися конями с обрыва, когда спрыгивать невозможно, и единственное, что остаётся — кричать "Уррраа!!!"
Это совсем другая проблема, совершенно ортогональная тому, что для многих задач альтернатив С++ нет и "выбором курильщика" будет использование практически любого другого языка для подобных задач.
N>В некоторой степени такая проблема есть у всех, но у C++ она в разы сильнее, чем у аналогов-конкурентов.
За С++ нет какой-то компании или одного человека, "естественная эволюция" со всеми плюсами и минусами
N>Ну, да, есть. Только пока что 99% случаев это "уже есть мегатонна кода на C++, мы не можем её переписать", и только 1% на "нет альтернатив". Для C вторая цифра заметно больше — процентов, может, 20.
За исключением деталей утверждение верное для любых других языков в не меньшей степени, но зачем переписывать и использовать другие языки?
N>Но обе ужимаются на глазах — от их областей отгрызают по кусочку и Java/C#, и Rust, Go, Swift, и прочие.
Не, первые два сейчас в основном отгрызают кусочки друг у друга, остальные создали новую нишу. Нет особой конкуренции, так сильные стороны языков достаточно очевидны. Это симбиоз, особенно яркий пример: С++ и python.
Здравствуйте, netch80, Вы писали:
N>А вот про cmake можно было бы уже и подумать. Но раз cmake умеет делать проект для VS, то уже есть на что смотреть (если можно поверх такого проекта, не патча его, собирать с доп. опциями).
Это уже прошлое. Сейчас CMake умеет работать а-ля сервер и IDE должна просто спросить что ей нужно знать о проекте. Примерно как language server protocol.
Здравствуйте, bisoft, Вы писали:
B>Ну тогда все еще хуже Даже в далеких 199х много раз пробовал самые разные операционки, но так и не пришел к такому — да чего там мучиться набил в виме пару экранов текста и все, что надо получил B>Меня всегда веселит, когда какой нибудь линуксоид говорит — да в линуксе ставить программы просто и демонстрирует — набрав строчку абаракадабр
А искходный код для вас тоже абаракадабра и программируете вы кидая формочки с помощью мышки?
B>Или рассказывает про отладку упоминая gdb, даже в 90х был борландоский турбодебагер, после которого даже на софтайс смотреть не хотелось, хоть и возможностей в нем было больше
Только вот gdb жив, а Borland умер
B>Я вообще думаю, что человек смогший постичь XCode очень умный, но даже чтоб назваться очень умным такой подвиг совершать — не стану
Интересно, про XCode хороших отзывов пока вообще не слышал. (Сам не пробовал.)
Здравствуйте, CreatorCray, Вы писали:
CC>В приличном обществе не принято говорить о подобных извращениях!
Это примерно как заявление Маркиза де Сада о нормах половой жизни
Здравствуйте, Skorodum, Вы писали:
N>>Ну, да, есть. Только пока что 99% случаев это "уже есть мегатонна кода на C++, мы не можем её переписать", и только 1% на "нет альтернатив". Для C вторая цифра заметно больше — процентов, может, 20. S>За исключением деталей утверждение верное для любых других языков в не меньшей степени, но зачем переписывать и использовать другие языки?
"не можем переписать/отрефакторить" это большей частью к С++ относится. Вот это исключительно проблема языка. Сюда же долгий период вхождения. Так же, в с++ сообществе принято винить кривые руки. Практика показывает, что там, где винят кривые руки проблемы как то не решаются.
Если перевести это на человеческий язык, то это высокая стоимость майнтенанса, высокая зависимость от квалифицированых разработчиков, слабые шансы вырастить замену. То есть, головняк для HR, головняк для менеджеров, головняк для владельцев.
В целом, получается совсем не так, как в других языках.
Здравствуйте, Skorodum, Вы писали:
B>>Я вообще думаю, что человек смогший постичь XCode очень умный, но даже чтоб назваться очень умным такой подвиг совершать — не стану S>Интересно, про XCode хороших отзывов пока вообще не слышал. (Сам не пробовал.)
Я первым буду?
Кроме того, что он сам только под macOS, как инструмент разработки C++ вполне приемлемо.
Иногда, впрочем, они выпускают какие-то сырые версии (последней такой сырой версией была 9.0), которые часто крэшатся. Но вот сейчас у меня 10.1, она стабильна и вполне всем хороша.