Ой, я вас умоляю, во времена Delphi 7 было полно таких же нытиков, как автор поста, которые ругали библиотеку VCL за все то же самое, мол, формочка с кнопкой занимает 3Мб! Тогда как на чистом WinAPI можно сделать exe в 100кб. А лучше вообще на MASM32 все написать.
Проблема тут не в возможностях ООП, понятно, что написать оберток вида class MyButton (){ ... } мы можем сколько угодно. Просто количество лапше-кода, даже для создания простой формочки с тремя кнопками, будет немыслимое. И эти полотна кода никогда не будет более читабельными, чем
А можно подробнее про "ломающие обновления"? Какие-то примеры из личного опыта?
Просто по моим наблюдениям (а я работаю с Angular со времен 2rc.1), авторы фреймворка очень много внимания уделяют тому, чтобы выход новой версии не начинался с трудностей по обновлению вашего проекта. Допустим, команда решает избавиться от одной библиотеки и заменить ее другой (или та же библиотека, но в более старшей несовместимой с текущей версии). В текущей версии Angular N никаких "хотфиксов" не происходит. В версии Angular N+1 заменяемая библиотека помечается как deprecated, ее использование по прежнему возможно, но посредством deprecation warning рекомендуется использование новой. И только в версии Angular N+2 старую библиотеку выпиливают окончательно. При подбном подходе и не игнорирования предупреждений, обновлений версии происходит абсолютно безболезнено с помощью одной лишь ng update
И где появится эта кнопка? А если я хочу две иконки перед текстом, и чтобы одна появлялась после нажатия? А как мне задизейблить кнопку и добавить пару классов? Предлагаете делать так?
О каком минусе вы говорите, если со времен релиза Angular, структура компонентов не изменилась никак? То есть, вы сегодня можете взять стрый компонент, написанный во время выхода Angular 2 или 4 (при том что версий 1 и 3 попросту не было), и без изменения кода перенести его в Angular 12.
Более того, в моей практике был случай обновления проекта, завершенного под Angular 4 и который я без особых проблем перенес под Angular 11. Единственным большим breaking change как правило будет изменение библиотеки Http -> HttpClient.
А если вы говорите про AngularJS, то это нельзя считать первой версией текущего Angular, это по сути совершенно другой фреймворк со схожим названием.
Вам нужно будет знать не только 12 разновидностей Angular, но ещё и разные версии Vue и React, так как какой-то новичок «подсадил» некую компанию на нечто подобное 4 года назад, а теперь ушёл оттуда, чем разрушил чей-то технологический стек.
У меня складывается впечатление, что писавший данный пост человек - попросту некомпетентен и с Angular никогда не работал. Иначе, не писал бы про "12 разновидностей".
Если говорить об удобстве, то я не знаю о том, почему разработчики браузеров до сих пор не добавили в них поддержку SCSS в виде стандартного механизма для работы с CSS-кодом
Ага, конечно, давайте теперь вместо того чтобы делать сборку один раз перед выкладкой на продакшн, все переложим на клиента, они ведь всегда с очень быстрых машин заходят на ваши сайты.
Изучать и использовать их не легче, чем обычный CSS.
Так не изучай и не используй, в это разве проблема Angular? Он одинаково успешно работает как с css, так и с scss из коробки.
Я занимаюсь программированием более 20 лет. .... Ситуация здесь постоянно ухудшается.
Я конечно не настолько опытный, всего лишь 15 лет отдал индустрии, но как человек начинавший с верстки скругленных блоков под IE6, могу сказать, что наблюдаю строго противоположное.
Время SPA (Single Page Application, одностраничное приложение) прошло.
Так писать просто не прилично, не добавив ни одного пруф-линка.
Конечно, в Angular имеются кое-какие «замечательные» возможности, но все они совершенно не нужны для того чтобы создавать эффективные и привлекательные интерфейсы.
Вопрос привлекательности интерфейса ни коим образом не соотносится с задачами фреймворков, по типу Angular.
Я не являюсь противником использования опенсорсных библиотек вроде jQuery ... И они по-настоящему серьёзно упрощают жизнь разработчиков.
А как же принцип KISS? Неужили автор готов пойти на подобную сделку с совестью ради удобства виде $('.my-class') против document.querySelectorAll('.my-class') ?
Продолжать можно долго, но если ты, читающий эти строки, не настолько опытный разработчик (как автор поста), проникся идеями прекрасного будущего без фреймворков и планируешь экономить своей фирме миллиарды долларов посредством npm uninstall -g @angular/cli , то лучше поспрашивай других мнений по этому вопросу.
Самая спорная часть статьи, потому что многие готовы ее купить просто для того, чтобы можно было играть в огромную библиотеку игр с PS4 на более новом и быстром железе. А новые эксклюзивные игры выходить конечно же будут, просто сейчас Sony вряд ли сильно этим озабочена, учитывая что и так продается все, что успевают произвести. Поэтому есть выгода попридержать выход таких игр, на момент когда спрос на PS5 начнет падать.
Германия Германии от земли к земле рознь. Где-нибудь во Франкфурте зп повыше, и сеньорам-разработчикам будут платить 85к, а в более бедном Берлине 65-75 практически потолок. Хотите больше? Тогда вам следовало бы выучиться на врача и открыть свой частный праксис.
Свои первые шаги по осваиванию глобальной сети я делал с помощью еженедельной газеты (!) Компьютерра и ежемесячного журнала ][akep. Второй особо запомнился еще и тем, что часто приходилось объезжать полгорода в поисках нужной точки Союзпечати, где журнал был в наличии, а еще, с момента как он начал продаваться с диском, наполненным варезом из статей, стало гораздо интереснее экспериментировать в самых разных областях — от компьютерной графики и программирования, до развлекательных украшательств рабочего стола. Ведь часто чтобы скачать даже 20-40мб программу, приходилось тратить драгоценные часы на медитацию заполнения шкалы «квадратиков» в reget.
Как консольщик с консолью текущего поколения (PS4pro), могу сказать, что прошел игру без каких-либо сложностей в техническом плане. Да, игра со дня релиза и до выхода патча 1.04 выглядела очень мутной на большом телевизоре. Но она не была «непроходимой», по факту мне удалось не без удовольствия завершить основную сюжетную ветку и зачистить (почти) все побочные квесты и активности на карте (заглючило два голубых вопросика на сбор предметов и один побочный квест «красный пророк»).
А мне наоборот больше понравилось то, что они решили не убирать эту фичу совсем — для тех кто работал с первым Angular или другими фреймворками, где такое в ходу, возможность использовать есть без всяких deprecated warnings. Но и рекомендаций по использованию данной фичи от разработчиков нет.
Из подмеченных мною минусов использования transclusion, не получается использовать стандартную передачу данных из компонента в компонент через Input/Output, приходится использовать redux-архитектуру или завязываться на сервисы.
Мне, кстати, тоже не совсем понятно было почему информация по данной фиче так слабо упоминается в официальной документации (фактически не упоминается). Я сделал вывод, что подобные махинации местами противоречат задуманной архитектуре современного Angular-приложения.
С Test Drive Unlimited вы привели неудачный пример. Там игрок попадает на вполне себе реальный остров Гавайи, где все вывески выглядят так, как они и должны выглядеть в реале. Заменять все местные дорожные знаки и путевые указатели русскими аналогами это приблизительно так же неправильно, как полностью заменить их российскими дорожными знаками, перечисленными в наших ПДД. Ну или как перерисовывать рекламные щиты с Coca-Cola на Кока-Кола.
Ой, я вас умоляю, во времена Delphi 7 было полно таких же нытиков, как автор поста, которые ругали библиотеку VCL за все то же самое, мол, формочка с кнопкой занимает 3Мб! Тогда как на чистом WinAPI можно сделать exe в 100кб. А лучше вообще на MASM32 все написать.
Проблема тут не в возможностях ООП, понятно, что написать оберток вида
class MyButton (){ ... }
мы можем сколько угодно. Просто количество лапше-кода, даже для создания простой формочки с тремя кнопками, будет немыслимое. И эти полотна кода никогда не будет более читабельными, чемА можно подробнее про "ломающие обновления"? Какие-то примеры из личного опыта?
Просто по моим наблюдениям (а я работаю с Angular со времен 2rc.1), авторы фреймворка очень много внимания уделяют тому, чтобы выход новой версии не начинался с трудностей по обновлению вашего проекта. Допустим, команда решает избавиться от одной библиотеки и заменить ее другой (или та же библиотека, но в более старшей несовместимой с текущей версии). В текущей версии Angular N никаких "хотфиксов" не происходит. В версии Angular N+1 заменяемая библиотека помечается как deprecated, ее использование по прежнему возможно, но посредством deprecation warning рекомендуется использование новой. И только в версии Angular N+2 старую библиотеку выпиливают окончательно. При подбном подходе и не игнорирования предупреждений, обновлений версии происходит абсолютно безболезнено с помощью одной лишь
ng update
Тяп-ляп и в продакшн!
И где появится эта кнопка? А если я хочу две иконки перед текстом, и чтобы одна появлялась после нажатия? А как мне задизейблить кнопку и добавить пару классов? Предлагаете делать так?
Поздравляю, кажется, мы только что изобрели DOM-API
О, да, насколько проще и приятнее копаться вот в этом, чем использовать Angular. (сарказм)
с минусом своей поддержки предыдущих версий
О каком минусе вы говорите, если со времен релиза Angular, структура компонентов не изменилась никак? То есть, вы сегодня можете взять стрый компонент, написанный во время выхода Angular 2 или 4 (при том что версий 1 и 3 попросту не было), и без изменения кода перенести его в Angular 12.
Более того, в моей практике был случай обновления проекта, завершенного под Angular 4 и который я без особых проблем перенес под Angular 11. Единственным большим breaking change как правило будет изменение библиотеки Http -> HttpClient.
А если вы говорите про AngularJS, то это нельзя считать первой версией текущего Angular, это по сути совершенно другой фреймворк со схожим названием.
Вам нужно будет знать не только 12 разновидностей Angular, но ещё и разные версии Vue и React, так как какой-то новичок «подсадил» некую компанию на нечто подобное 4 года назад, а теперь ушёл оттуда, чем разрушил чей-то технологический стек.
У меня складывается впечатление, что писавший данный пост человек - попросту некомпетентен и с Angular никогда не работал. Иначе, не писал бы про "12 разновидностей".
Если говорить об удобстве, то я не знаю о том, почему разработчики браузеров до сих пор не добавили в них поддержку SCSS в виде стандартного механизма для работы с CSS-кодом
Ага, конечно, давайте теперь вместо того чтобы делать сборку один раз перед выкладкой на продакшн, все переложим на клиента, они ведь всегда с очень быстрых машин заходят на ваши сайты.
Изучать и использовать их не легче, чем обычный CSS.
Так не изучай и не используй, в это разве проблема Angular? Он одинаково успешно работает как с css, так и с scss из коробки.
Я занимаюсь программированием более 20 лет. .... Ситуация здесь постоянно ухудшается.
Я конечно не настолько опытный, всего лишь 15 лет отдал индустрии, но как человек начинавший с верстки скругленных блоков под IE6, могу сказать, что наблюдаю строго противоположное.
Время SPA (Single Page Application, одностраничное приложение) прошло.
Так писать просто не прилично, не добавив ни одного пруф-линка.
Конечно, в Angular имеются кое-какие «замечательные» возможности, но все они совершенно не нужны для того чтобы создавать эффективные и привлекательные интерфейсы.
Вопрос привлекательности интерфейса ни коим образом не соотносится с задачами фреймворков, по типу Angular.
Я не являюсь противником использования опенсорсных библиотек вроде jQuery ... И они по-настоящему серьёзно упрощают жизнь разработчиков.
А как же принцип KISS? Неужили автор готов пойти на подобную сделку с совестью ради удобства виде
$('.my-class')
противdocument.querySelectorAll('.my-class')
?Продолжать можно долго, но если ты, читающий эти строки, не настолько опытный разработчик (как автор поста), проникся идеями прекрасного будущего без фреймворков и планируешь экономить своей фирме миллиарды долларов посредством
npm uninstall -g @angular/cli
, то лучше поспрашивай других мнений по этому вопросу.Будущее PS5 будет непростым.
Самая спорная часть статьи, потому что многие готовы ее купить просто для того, чтобы можно было играть в огромную библиотеку игр с PS4 на более новом и быстром железе. А новые эксклюзивные игры выходить конечно же будут, просто сейчас Sony вряд ли сильно этим озабочена, учитывая что и так продается все, что успевают произвести. Поэтому есть выгода попридержать выход таких игр, на момент когда спрос на PS5 начнет падать.
habr.com/ru/post/102153
Мои эксперименты в этой области:
habr.com/ru/post/234877/#comment_7914141
Из подмеченных мною минусов использования transclusion, не получается использовать стандартную передачу данных из компонента в компонент через Input/Output, приходится использовать redux-архитектуру или завязываться на сервисы.