Один из самых надежных способов определить, начала ли корпорация гнить, - это оценить производную полезность, которую ее продукты обеспечивают с течением времени. Такая компания, как Apple, стала свидетелем огромного всплеска средней полезности продукта, когда они выпустили iPhone, который на некоторое время увеличился, но в конечном итоге остановился, когда они начали удалять жизненно важные функции телефона, такие как разъем 3,5 мм. Вообще говоря, большинство компаний испытывают S-образную или параболическую кривую такого рода полезности: первые типы обычно находят свою нишу, заполняют ее и работают с комфортной прибылью, не вводя дополнительных инноваций; последним удается все испортить, разбиться и сгореть, не сумев понять свой продукт.

Угловой. Само его название - это враждебная форма на языке. Произносите это медленно. / ’Eŋgjəlɚ /. Само горло изгибается вокруг отвратительной инопланетной формы этого слова, что означает уродливый, острый и искусственный.

Здесь я проиллюстрирую различные способы, которыми моя психика была необратимо травмирована этим адом демонического помета, детищем Google: УГЛОВАЯ СТРУКТУРА РАЗВИТИЯ ВЕБ-РАЗВИТИЯ.

Документация

У вас когда-нибудь была блестящая идея для проекта на выходные, вы начали его в субботу днем, а затем постепенно приходили к выводу, что для его полной реализации потребуется не менее шести месяцев? У Google был такой момент, когда они намеревались задокументировать внутреннюю работу РАМКИ УГЛОВОГО ВЕБ-РАЗРАБОТКИ. Затем они неделями кормили стажера только эспрессо, пока у нее не появился проект кода Hello World, который они смогли выдать за полную документацию всего своего стека.

Ни одна из ошибок, с которыми вы столкнетесь при создании ВЕБ-ПРИЛОЖЕНИЯ в УГЛОВОЙ ВЕБ-РАЗРАБОТКЕ, не будет перечислена в этой документации. В самом деле, здесь также будет представлено очень мало шаблонов проектирования или основных концепций, которые вам потребуются. Если вы хотите узнать, как на самом деле создать опасный инструмент с помощью ANGULAR, вам нужно будет приобрести онлайн-курс (я могу порекомендовать исчерпывающее Полное руководство Максимилиана Шварцмюллера, которое спасло мою работу), который раскроет всем вам попался! моменты и ловушки, которые ждут наивных людей, которые считают, что могут просто начать писать Javascript, как разработчики React или Vue.

Фактическая документация Angular - это скорее функция, которую я буду псевдокодировать ниже.

Заметили что-нибудь? Да, верно: при исправлении ошибок в ANGULAR вам необходимо специально исключить фразу `angularjs` из каждого запроса. Вы не можете добавить 2 или 7 или надеяться, что просто «ANGULAR» будет достаточно, чтобы исключить злополучную первую редакцию этого всеобъемлющего стека разработки программного обеспечения. Излишне говорить, что это само по себе через некоторое время начинает резать.

Но затем вы успеваете прочитать достаточно этих «решений» проблем людей, связанных с переполнением стека, и вы начинаете понимать, что между кодом, который вы пишете, и кодом, который выполняется в браузере, не существует просто компилятора, который будет легко сломать весь ваш CSS для вас, есть настоящий черный ящик, который требует, чтобы вы отформатировали ваше приложение именно таким образом, иначе все это будет тихо или, что еще хуже, выплюнет неверное сообщение об ошибке. Вы буквально не можете доверять ничему, что РАМКА УГЛОВОГО ВЕБ-РАЗРАБОТКИ сообщает вам о том, что вы сделали неправильно, потому что даже он не знает, как работает его собственная система. Вы объявили EntryComponent в модуле, в который он предназначен для ленивой загрузки, а не в корневой модуль Module, где он теряет все преимущества отложенной загрузки? Nein! Вы пытались использовать Two-Way Data Binding ™ вместо загадочной гирляндной цепи из EventEmitter`s, `Subscription`s и` Service`s? Verboten!

Весь опыт УГЛОВОЙ ВЕБ-РАЗРАБОТКИ такой. Вы на полной скорости врезаетесь в кирпичную стену достаточное количество раз и, в конце концов, научитесь ползать со скоростью улитки, жалко выискивая любые произвольные препятствия, которые КАРКАС может создать на вашем пути. В мире нет ничего более разочаровывающего, чем попытка управлять этой чудовищной и мрачной штуковиной, которую якобы самая умная корпорация в мире сумела извести.

Представьте себе автомобиль, капот которого никогда не открывается, а на приборной панели отображается только DASHBOARD в ослепляющих огнях, которые не выключаются. После поломки автомобиль не подлежит ремонту; его можно заменить или модифицировать только снаружи внутри. Он жрет бензин, даже когда не включен. Руководства по обслуживанию не существует. Если вы хотите узнать, как это работает, вот 5280-страничное руководство по сборке. Удачи.

Архитектура"

ANGULAR медленный. Написание приложений занимает много времени, а приложения, которые вы создаете, работают очень медленно, если ваше приложение становится более сложным, чем Hello World. Это было бы приемлемо, если бы УГЛОВАЯ РАМКА предоставляла какие-либо преимущества пользователю или программисту, например, корректный отказ в случае ошибки времени выполнения, быстрая компиляция или повышение безопасности приложения. Но ничего из этого в ANGULAR нет. Фактически, он превращается в кучу воплей при простом упоминании «Uncaught TypeError».

По сути, единственный способ понять, что на самом деле делает Angular, - это прочитать миллионы строк исходного кода, которые разработчики с радостью предоставили на GitHub. Поскольку на самом деле этого никто не делает, УГЛОВЫЕ ВЕБ-РАЗРАБОТЧИКИ обычно соглашаются изучить один или два паттерна проектирования, которые, как они знают, не взорвутся, и построить на их основе целое приложение. Как подводная лодка, построенная из все более крупных надувных перчаток медицинского кабинета. Вероятно, это могло бы сработать, учитывая бесконечный запас перчаток и малышей. Ваш единственный выход - погрузиться в бессмысленное, произвольное безумие, которое поджидает разработчика, который пытается узнать, как «работает» ANGULAR.

Я расскажу, как это работает. Ваши компоненты взаимодействуют с вашими сервисами, которые передают данные другим вашим Injectables через модули, которые импортирует ваше приложение. Что в этом непонятного? Если вам нужны разъяснения, ознакомьтесь с рекомендациями по материальному дизайну. У них есть компоненты для всего, что вам нужно. И держите свой дизайн идеальным до пикселя, пожалуйста. Это должно быть легко сделать, так как Google Material и Angular якобы хорошо работают вместе. И это будет отлично выглядеть, когда отступы в каждом элементе списка занимают треть веб-страницы, а открытие раскрывающегося меню занимает всего шестнадцать секунд. Разве вы не чувствуете себя свободным от ограничений произвольного и слаборазвитого Интернета?

Ни одна часть дизайна ANGULAR не заставляет ваш код работать быстрее. Это увеличивает только три вещи: раздувание сложности, время, необходимое для завершения простой функции, и - если вы можете каким-то образом не сводить себя с ума, когда пишете эти спагетти изо дня в день - безопасность работы для вас и вашей команды. Но будьте осторожны: РАМКА УГЛОВОЙ ВЕБ-РАЗРАБОТКИ не окажет вам никакой помощи, когда приближается крайний срок.

Опыт угловой веб-разработки

Открой свою любимую IDE, программист! Чтобы начать, введите свой лицензионный ключ IntelliJ IDEA. Для продолжения требуется лицензионный ключ. Спасибо, что ввели лицензионный ключ. Пожалуйста, выберите типовой скрипт «ЛИНТЕР», который вы хотите использовать для «линтинга» вашего типового скрипта. ANGULAR WEB DFGHSDFG FGSGDFSFDS запускает сценарий типов, который является сценарием Java с типами. Это делает его хорошим. Вы должны использовать IDE, совместимую с Type Script. Типовой скрипт будет время от времени обновляться. Это нарушит ваш код и код в ваших зависимостях. Это ожидаемо. Порадуйтесь тому времени, когда вам платят за то, что вы выбираете через вызовы функций-червяков! Это живая!

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

ANGULAR поможет смешать поддельные HTML-ЭЛЕМЕНТЫ с вашими настоящими HTML-ЭЛЕМЕНТАМИ, потому что все приложение в любом случае разбивается на части их AHEAD OF TIME COMPILER, так что какое это имеет значение, если они загрязняют правильную спецификацию капризным самозванцем? При составлении HTML-ФАЙЛА не забудьте использовать язык разметки, специфичный для ANGULAR, который включает ДИРЕКТИВЫ, чтобы сделать ваш код еще более интересным для отладки. Вы даже можете написать свои собственные УГЛОВЫЕ НАПРАВЛЕНИЯ, если хотите еще больше скрыть назначение вводимых символов. Самая приятная особенность всего этого продвинутого HTML с УГЛОВЫМ вкусом заключается в том, что отследить ошибки до их источника экспоненциально сложнее, чем почти в любой другой библиотеке, фреймворке или среде кодирования в живой памяти. Они буквально скармливают вам неправильное сообщение об ошибке. Вы можете искать отсутствующий закрывающий тег в течение нескольких дней, прежде чем поймете, что настоящая ошибка была похоронена где-то глубоко в условных выражениях и таинственных импортированных директивах, и попытка объяснить ее постороннему вызовет либо ужас, либо жалость. . О, еще вы не можете больше писать якорные ссылки для той же страницы, потому что эта функция была слишком полезной. Наслаждайтесь попыткой прокрутки вручную с помощью Java Script!

Впрочем, ничего страшного, у вас будет достаточно времени, чтобы обдумать свое опрометчивое решение продолжить программирование с помощью этой красивой ФРАМУЛИРОВКИ, потому что каждый раз, когда вы редактируете какой-либо незначительный фрагмент HTML, вам нужно перекомпилировать все приложение. Горячая перезагрузка работает с детскими вещами, но как только ваше приложение разовьется до любой степени сложности, вам нужно подождать от 60 до 300 секунд, пока процессор обрабатывает всю вашу кодовую базу, чтобы добавить единственный класс HTML. к отдельному элементу во всплывающем окне. Часы вашей жизни скоро исчезнут в пустоте. Часы, проведенные, глядя на сообщение консоли: `92% chunk Assessment`. Надеюсь, вам нравятся подкасты!

«Но подождите, вы можете избежать всей этой компиляции, если воспользуетесь этой техникой !! [Ссылка на переполнение стека *] ». Невозможно использовать эту технику, потому что УГЛОВАЯ СТРУКТУРА ВЕБ-РАЗРАБОТКИ позволяет компилировать приложения без ошибок в режиме разработки , которые вызывают ошибки в производственном режиме. Так что вам нужно каждый раз строить производство, чтобы отловить каждую ошибку.

* Опять же: почему этого метода нет в документации?

Вы ненавидите писать разборчивый CSS? ANGULAR предоставляет всевозможные запутанные способы преобразования явных правил стилизации в псевдо-HTML, который необходимо перекомпилировать каждый раз, когда вы меняете класс элемента. Вам даже не нужно изучать FLEXBOX ... до тех пор, пока, конечно, менеджер не потребует объяснить, почему ваш макет не «соответствует стандарту» - стандарту МАТЕРИАЛЬНОГО ДИЗАЙНА, - а затем внезапно вы понимаете, что произносите бессмысленные слова на черный ящик, и все приложение покоится на ненадежном наборе предположений, которые вот-вот рухнут, но вы не можете исправить их, не отменив недели работы, а только крайний срок, крайний срок!

Итоги года, проведенного в рабстве перед коллективным разумом садистского программирования Google

Благодаря ANGULAR я стал лучшим программистом, потому что научил меня писать функциональные приложения, стоя в вулкане, перепрыгивая через лужу лавы на островах из твердой породы. Все, что я делал не самым эффективным способом, немедленно приводило к невыносимому замедлению. Все, что я пытался сделать, было более сложным, чем самое простое решение привязки объекта данных A к элементу отображения B, могло привести к сгоранию всего места. Да - любая ошибка в любом месте вашего УГЛОВОГО ПРИЛОЖЕНИЯ приведет к неожиданному поведению остальной части УГЛОВОГО ПРИЛОЖЕНИЯ. В итоге мы реализовали систему, в которой приложение просто перезагружало страницу каждый раз, когда обнаруживало неперехваченную ошибку, потому что это было проще, чем пытаться отфильтровать через тикеты поддержки, чтобы определить, была ли ошибка собственной ошибкой или результатом какой-либо другой ошибки, которая возникла. незаметно исчез, оставив воронку в функционале. Затем они удалили это исправление: «Только не пишите ошибки. Я думал, вы используете разработку через тестирование? "

Я буду носить с собой знания о РАМКАХ РАЗРАБОТКИ УГЛОВОГО ВЕБ-РАЗВИТИЯ на всю оставшуюся жизнь. Нет способа избавиться от этого; он прилипает ко мне сильнее, чем любая слизь, и закупоривает морщины в моем мозгу сильнее, чем любая природная жидкость. У меня нет выбора, кроме как предлагать свои услуги как УГЛОВОЙ РАЗРАБОТЧИК, если я хочу прокормить свою семью. Но надежда есть. Однажды я могу получить контракт, используя другой фреймворк, такой как React или Redux, или, дай Бог, библиотеку, которая не знает остальной части вашего веб-стека, например Vue. Но пока я воюю, цепляясь за воспоминания, которые, как я знаю, принадлежат мне, отбиваясь от вторгшихся орды гугл-цептов, которые угрожают захватить саму суть моей личности. Мы живем, чтобы сражаться в другой день.

Сегодня я работаю в Whiteboard Dynamics, где меньше времени трачу Ctrl-C на ИНСТРУМЕНТ УГЛОВОЙ КОМАНДНОЙ СТРОКИ и чаще трачу на написание чистого, эффективного и функционального кода для продуктов, который не нужно переписывать каждый раз. три месяца. В целом, я считаю, что изменение вернуло мне на несколько лет ожидаемую продолжительность жизни. Мы напишем что-нибудь на ANGULAR, если вы попросите - как я уже сказал, я буду носить эту проклятую способность вечно, - но поверьте мне: вам лучше пойти с библиотекой, над которой люди будут работать с удовольствием. Это будет стоить вам меньше времени и денег, и вы сохраните свою бессмертную душу.