Делай как вGoogle
Скачать 5.77 Mb.
|
ЧАСТЬ V Заключение Послесловие Программная инженерия в Google стала выдающимся экспериментом в области раз- работки и поддержки большой и постоянно развивающейся кодовой базы. За время своего пребывания в Google я видел, как команды инженеров делали первые шаги в этом направлении, продвигая Google вперед как компанию, обслуживающую миллиарды пользователей, и как лидера в индустрии высоких технологий. Едва ли это развитие было возможно без использования принципов, изложенных в данной книге, поэтому я очень рад, что она увидела свет. Если что и доказали последние 50 лет (или предыдущие страницы этой книги), так это то, что программная инженерия далека от застоя. В среде, где технологии постоянно меняются, программная инженерия необходима любой софтверной организации. Современные принципы программной инженерии сводятся не только к эффектив- ному управлению организацией — они определяют ответственность компании перед пользователями и миром в целом. Решения типичных задач программной инженерии не всегда лежат на поверхно- сти — нередко бывает нужно проявить недюжинную гибкость, чтобы определить решения, подходящие для текущих задач и учитывающие неизбежные изменения в технических системах. Такая гибкость — общее качество команд программной инженерии, с которыми я имел честь работать и учиться с момента моего прихода в Google в 2008 году. Идея устойчивости тоже занимает одно из центральных мест в программной ин- женерии. В течение ожидаемого срока службы кодовой базы мы должны иметь возможность реагировать на изменения и адаптироваться к ним, будь то изменение направления развития продукта, изменения в технологических платформах, базо- вых библиотеках, операционных системах или в чем-то еще. В настоящее время мы полагаемся на принципы, изложенные в этой книге, чтобы достичь гибкости в из- менении элементов нашей программной экосистемы. Конечно, мы не можем доказать, что найденные нами пути достижения устойчивости подойдут для каждой организации, но я думаю, что было важно поделиться этими ключевыми уроками. Программная инженерия — это новая дисциплина, поэтому очень немногие организации смогли добиться в ней устойчивости и достичь боль- шого масштаба. Предлагая этот обзор нашего пути и препятствий, встретившихся на нем, мы надеемся продемонстрировать ценность и осуществимость долгосрочного планирования работоспособности кода. Нельзя игнорировать ход времени и важ- ность перемен. В этой книге представлены некоторые из наших основных принципов, касающихся программной инженерии. Книга проливает свет на влияние технологий на обще- Послесловие 541 ство. Как инженеры-программисты, мы несем ответственность за разработку кода с учетом инклюзивности, равенства и доступности для всех. Разработка только ради инноваций больше не приемлема, и технология, помогающая лишь узкому кругу пользователей, не может считаться инновационной. Мы в Google всегда считали своей обязанностью показать разработчикам, как своим, так и сторонним, хорошо освещенный путь. С появлением новых технологий, таких как искусственный интеллект, квантовые вычисления и окружающие вычисления (ambient computing), нам, как компании, еще есть чему поучиться. Мне особенно интересно узнать, в каком направлении будет развиваться индустрия программной инженерии в ближайшие годы, и я уверен, что эта книга поможет сформировать этот путь. Асим Хусейн (Asim Husain), вице-президент Google по разработке Об авторах Титус Винтерс (Titus Winters) — главный инженер по ПО в Google. Гуглер с 2010 года. В настоящее время занимает пост председателя глобального подкомитета по разви- тию стандартной библиотеки C++. В Google возглавляет библиотеку кода на C++: 250 миллионов строк кода, которые ежемесячно правятся 12 000 инженеров. В течение последних семи лет Титус и его команда занимались организацией, обслуживанием и развитием основных компонентов кодовой базы на C++ в Google с использованием современных средств автоматизации и инструментов. Попутно он запустил несколько проектов, которые, как считается, входят в десятку крупнейших попыток реоргани- зации кода в истории человечества. Оказывая помощь в создании инструментов для рефакторинга и автоматизации, Титус на собственном опыте столкнулся с огромным количеством трюков и уловок, которые инженеры и программисты могут использо- вать, чтобы «просто заставить что-то работать». Этот уникальный опыт существенно изменил его взгляды на поддержку программных систем. Том Маншрек (Tom Manshreck) — штатный технический писатель Google. Гуглер с 2005 года. Отвечает за разработку и сопровождение многих руководств по про- граммированию в Google. С 2011 года является членом команды Google C++ Library Team, занимается разработкой набора документации Google по C++, участвовал в создании (вместе с Титусом Винтерсом) учебных курсов в Google по C++ и зани- мался документированием Abseil, открытого кода на C++ от Google. Имеет степени бакалавра политических наук и бакалавра истории, полученные в MIT. До Google работал управляющим редактором в Pearson/Prentice Hall и в различных стартапах. Хайрам Райт (Hyrum Wright) — штатный инженер-программист Google. Гуглер с 2012 года, работающий в основном в области крупномасштабной поддержки ко- довой базы на C++. Хайрам внес больше правок в кодовую базу Google, чем любой другой инженер за всю историю компании, и сегодня он возглавляет группу разра- ботки инструментов поддержки автоматизированных изменений. Получил доктор- скую степень в области разработки ПО в Техасском университете в Остине, степень магистра в Техасском университете и степень бакалавра в Университете Бригама Янга. Время от времени читает лекции в Университете Карнеги—Меллона. Активно выступает на конференциях и пишет научные статьи по поддержке и развитию ПО. Об обложке На обложке «Программная инженерия в Google» изображен американский фламин- го (phoenicopterus ruber). Эти птицы обитают на илистых отмелях и прибрежных лагунах с соленой водой вдоль побережий Центральной и Южной Америки и на берегах Мексиканского залива, хотя иногда добираются до Южной Флориды в США. Знаменитое розовое оперение фламинго формируется по мере взросления птицы, и этот цвет обусловлен наличием каротиноидных пигментов в пище. Поскольку эти пигменты более распространены в естественных источниках, дикие фламинго, как правило, имеют более яркое оперение, чем их собратья в неволе, хотя иногда зоопарки добавляют в их рацион дополнительные пигменты. Фламинго обычно имеют рост около метра, а размах крыльев с черными кончиками составляет около полутора метров. У фламинго, болотной птицы, перепончатые трехпалые розовые лапы. Во внешнем виде самцов и самок фламинго нет заметных различий, но обычно самцы немного крупнее. Фламинго питаются фильтратом и используют свои длинные ноги и шею для пи- тания в глубокой воде. Большую часть дня они проводят в поисках пищи. В клюве имеются два ряда роговых пластинок с зубчиками, через которые они фильтруют свой рацион из семян, водорослей, микроорганизмов и мелких креветок. Фламинго живут большими группами до 10 000 особей и мигрируют после истощения кормо- вой базы. Фламинго не только стайные птицы, но и очень общительные. В их языке есть сигналы, помогающие им найти конкретных сородичей, и тревожные сигналы, чтобы предупредить о чем-то большую группу. Когда-то американского фламинго относили к тому же виду, что и большого фламин- го (phoenicopterus roseus), обитающего в Африке, Азии и Южной Европе, но сегодня он считается отдельным видом. В настоящее время американскому фламинго при- своен природоохранный статус «вызывающий наименьшие опасения», тем не менее многие животные, изображенные на обложках книг издательства O’Reilly, находятся под угрозой исчезновения. Они все важны для нашего мира. Иллюстрацию для обложки нарисовала Карен Монтгомери (Karen Montgomery) на основе черно-белой гравюры из книги Касселя (Cassell) «Natural History». Титус Винтерс, Том Маншрек, Хайрам Райт Делай как в Google. Разработка программного обеспечения Перевел с английского А. Киселев Заведующая редакцией Ю. Сергиенко Ведущий редактор К. Тульцева Литературный редактор А. Руденко Обложка В. Мостипан Корректоры М. Одинокова, Г. Шкатова, Н. Сидорова Верстка Е. Неволайнен Изготовлено в России. Изготовитель: ООО «Прогресс книга». Место нахождения и фактический адрес: 194044, Россия, г. Санкт-Петербург, Б. Сампсониевский пр., д. 29А, пом. 52. Тел.: +78127037373. Дата изготовления: 06.2021. Наименование: книжная продукция. Срок годности: не ограничен. Налоговая льгота — общероссийский классификатор продукции ОК 034-2014, 58.11.12 — Книги печатные профессиональные, технические и научные. Импортер в Беларусь: ООО «ПИТЕР М», 220020, РБ, г. Минск, ул. Тимирязева, д. 121/3, к. 214, тел./факс: 208 80 01. Подписано в печать 27.05.21. Формат 70х100/16. Бумага офсетная. Усл. п. л. 43,860. Тираж 700. Заказ |