Rock
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору TeXpert Цитата: Зачем вообще компилятор, если нельзя с его помощью создавать исполняемые файлы и библиотеки? | Сознаюсь, что выше ничего не читал и предыстории не знаю. Но вопрос занятный. Помимо указанного Вами, компилятор может понадобится для статического анализа кода, например. Или для автодополнения кода. И, кстати, под библиотеками имеется в виду скомпилированный код, то есть, разновидность исполняемого файла? -- не догадался сразу, подумал про библиотеки, типа, API. Цитата: Вообще, мне нравится, когда инструкции для сборки находятся в самом исходном коде, где-нибудь в шапке, в комментарии (вспомним #!/bin/bash). Даже в компиляторе Micro$oft есть нечто подобное: #pragma comment, позволяющий включить lib-файлы прямо из исходного кода, без копания в настройках многотонной студии | О вкусах, конечно, не спорят, но что Вы будете делать, если надо собрать продукт с разными версиями библиотеки? Править исходный текст? А что на это скажет система версионного контроля? А если Вы, вдруг, делаете какую-то ответственную штуку, которая в случае изменения исходного кода требует пересертификации? Типа, был commit в ветку с кодом -- и вся процедура сертификации кода начинается с самого начала. Можно напридумывать много таких ситуаций, когда подобный шампунь и кетчуп в одном флаконе будет казаться странным. Плюс, ведь удобно же, когда структуры данных и алгоритмы в одном месте, а инструкции по превращению этих вещей в исполняемый код -- в другом. Не надо помнить, что для корректной сборки продукта надо заглянуть в дополнительные места, помимо сборочной системы. Но, в принципе, хорошо, конечно, в том плане, что придет новичок в проект и никогда не догадается, как все устроено, и Вас ни за что не уволят -- носитель изотерического знания, как никак... И несколько слов по поводу блокнота вместо IDE. IDE -- это integrated development environment, то есть, штука, которая позволяет за данное время выполнить больше работы и заработать больше денег. Например, поправили проблемное место, затем F9 --> F5. И все. IDE проверит, ЕСЛИ НУЖНО, что файлу нужно сделать check out из системы версионного контроля, поместит измененный файл в текущий change list, с которым ведется работа по текущей задаче (если используется change management system), сохранит сделанные изменения, остановит отладчик, если он был запущен, вычислит зависимости от измененного кода и автоматически пересоберет зависимые модули, развернет пересобранные модули (сделает deploy), запустит отладчик и будет ждать, когда поток управления доберется до указанной точки останова. Все это будет сделано с абсолютной точностью и стопроцентной повторяемостью в течение ста, тысячи или миллионов запусков. Более того, если Вы приходите на новое место работы, и там будет другая IDE (по старой памяти это Watcom, Zortech, TopSpeed, Borland или что-то другое), то отличаться все будет лишь названием кнопок и расположением менюшек – быстро потыкав мышкой Вы сразу же во всем разберетесь и сможете сходу начать зарабатывать деньги, сосредоточившись на решаемой задаче, а не на инструментах. Откуда у современной молодежи любовь к большому количеству лишних телодвижений вместо тупого зарабатывания бабок я не понимаю. Но, еще раз повторюсь, я понимаю, что о вкусах не спорят… |