Re[7]: Долгая компиляция на с++ - смерть для больших проектов?
От: SaZ  
Дата: 06.05.16 15:32
Оценка:
Здравствуйте, _hum_, Вы писали:

__>нет, не так. я НЕ ЗНАЛ, что скорость роста времени компиляции от роста проекта такая нелинейная, потому это и вызывало во мне соответствующие вопросы — в первую очередь, как же тогда большие проекты разрабатываются.


Ну зато теперь вы знаете, в какой области вам стоит углубить свои знания, чтобы стать более сильным программистом.

__>в моем понимании тоже. обратите внимание, вы НИГДЕ не указали, что программист должен знать особенности компиляции. всюду участвуют только особенности языка и исполнителя (машины). промежуточное звено, ака компилятор, вынесен вами за скобки.


Главное качество программиста — умение видеть систему в целом и умение видеть закономерности. Если же вы ожидаете, что вам на блюдичке напишут полный список ключевых слов и понятий, то вы — кодер, а не программист. Без дедуктивного мышления тут ловить нечего. Пока, по вашим выводам, вы показываете его отсутствие

__>вот об этом я и говорю, почему разработчик должен зависет и знать особенности выносимого за скобки, чтобы реализовать нормальную работающую систему?


Чем глубже вы понимаете то, как работает связка железо / ОС / компилятор / прикладной софт — тем проще вам будет понять, как сделать хорошую программу. Имея лишь поверхностные знания языка и боязнь сделать шаг в сторону вы ничего не добьётесь, кроме очередного топика на +100500 сообщений на форуме.

__>ну это сродни тому, что повар должен уметь разбираться, как работает микроволновка (на каком клистроне, как испускающем волны, в каких местах узлы стоячих волн и проч.), чтобы приготовить вкусное блюдо.


Повар должен, как минимум, представлять то, что микроволновка греет не сам продукт, а лишь жидкость, которая находится в этом продукте. И повар должен представлять, как это повлияет на вкусовые качества.

SaZ>>Например, в серьёзном геймдеве (да и не только) нечего ловить, если вы не знаете, что такое thiscall / fastcall / stdcall и т.п, если не понимаете, зачем нужен и когда нужен inline. Если не знаете, что такое кэш-мисс или конвеер команд в процессоре. Вроде бы это всё и не нужно, чтобы писать код на С++, но специалист тем и отличается от кодера-любителя, что понимает, как работает система.


__>это тоже все относится к языку и исполнителю алгоритма, но никак не к компилятору.


Относить можно куда угодно. Главное — результат. Программист — думает и программирует, кодер — кодит, фиксит баги и ноет, что "компилятор/язык говно".

  Хз откуда
Пацаны, я тут короче сидел за монитором и попытался скомпилить какую-то шнягу из буста, не помню какую, но внезапно компилятор сказал мне "интернал еррор" много раз. И тут я вдруг задумался — какое же говно c++! [ апплодисменты в зале ]

Представляете, пацаны, он дает мне stdio и iostream, и я должен выбирать. А как я выберу, это же так сложно, прямо глаза разбегаются! А вдруг я использую и первое, и второе? Совсем беспредел же получится, пацаны, видите какой говно-язык? [ зал продолжает рукоплескать ]

А стандартная библиотека? Она же просто ужасна! Там даже строки кривые — не спрашивайте почему, я не знаю^W^W^Wэто же очевидно! И знаете, скажу вам по секрету, я открыл ее исходник... Да, исходник самой stl! Вот вы когда-то смотрели туда? Вижу по глазам, что не смотрели. А я вот посмотрел, и ничего там не понял!!! [ Бурное проявление недовольства в зале, апплодисменты, крики "Страуструпа на мыло!" ]

Вот смотрите сюда, пацаны. Я нашел кусок кода, в котором используются макросы с шаблонами, конструкторы бросают исключения, написана куча велосипедных аллокаторов, память течет как из ведра. Я читал его и ужасался, на каком же говно-языке все вокруг пишут! [ Одинокий голос из зала "а может ты сам написал этот код?", раздается несколько ударов, несогласного выносят ]

И инкапсуляция у них нарушается всегда!!! В только представьте, пацаны — они спят и видят, как бы ее нарушить! Просыпаются, и сразу же бегут ее нарушать; засыпают, мечтая о том, как пойдут нарушать ее завтра! [ Дамы в зале утираются платочками, всхлипывая; мужчины сидят с каменными лицами, сцепив зубы ]

И вообще, самое страшное — этот подлый язык заставляет меня думать! Думать над освобождением памяти, думать над нормальной иерархией классов, думать над всем!!! Так дальше продолжаться не может — пора закопать его! За-ко-пать!!! Такое говно не должно оскорблять своим существованием наш священный мирок! Кто со мной?!

[ Все, сидящие в зале, вскакивают, словно распрямившаяся пружина, и выбегают в дверь следом за лидером. Кажется, старому язычку пришел пиздец. Армия скрывается в тумане, некоторое время оттуда слышатся крики "Батт-хёрт! Батт-хёрт! Батт-хёрт!", под которые марширует этот карательный отряд, потом и они затихают вдали ]

Из потайной дверцы в опустевший зал входит Александреску, вертя в руках блокнот. "2015 год, реактивное говно-нашествие школоты номер 9681", записывает он туда; выходит из зала, запирая дверь на ключ. На крыльце его поджидает Страуструп, они заходят в соседний паб, заказывают по кружке темного пива, и с улыбкой смотрят на экран на стене.

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

"больше двадцати лет прошло, и все повторяется", — со вздохом говорит Бьёрн, потягивая пиво.

К небоскребу достраивают еще один этаж, новый подземный паркинг. Отбитые пальцы горе-разрушителей почти зажили.

"Пацаны...", — начинает свою проповедь очередной мессия
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.