boslan

Пользователь

Регистрация: 07.02.2014

Сообщения: 723

Рейтинг: 231

boslan

Регистрация: 07.02.2014

Сообщения: 723

Рейтинг: 231

HiThere сказал(а):

Спасибо, посмеялся, когда поработаешь в этой сфере больше 10 дней напиши еще раз (шучу конечно, но это просто невозможно любить все сферы в IT одновременно)

Нажмите, чтобы раскрыть...

Я говорил о том, что тебе должно быть интересно всё: от устройства микропроцессоров и архитектуры ОС до прикладного программирования. Ты не обязан всё одинаково любить. Просто тебе должно быть всё это интересно. Ясно, что что-то может быть интересней лично для тебя.

На шутку не обижаюсь, всё же не 10 дней поработал)

HiThere сказал(а):

Это дефолт для любой банковской системы, должно работать на любом устройстве, любом браузере

Нажмите, чтобы раскрыть...

Это дефолт для плохих и неинтересных проектов. Потому что во всех официально поддерживаемых версиях Windows уже давно минимум ie 11 из коробки, который не имеет таких проблем как ie8. Т.е. нет смысла поддерживать легаси кодовую базу. Я знаю как так происходит. Вначале заказчик не вдупляет, что даже их устаревшая инфраструктура уже не требует поддержки ie8, потом менеджеры проекта решают "заказчик желает -- мы выполняем". Техлиды выполняют требования проекта. И всё это по каскаду сваливается на тебя. А ты думаешь, что так и должно быть. Нет, так не должно быть. В какой-то момент поддержка ie8 стала ненужной, ровно в тот момент, когда в самой ранней поддерживаемой версии windows ie обновился до 11. В тот момент уже должен был быть поднят вопрос о целесообразности поддержки Ie8, но его никто не поднял. Вот и всё. Это не означает, что поддержка ie8 правильно, даже в банковской сфере. Т.е. ваш проект тупо говно. Я б уже ходил по собесам)))

HiThere сказал(а):

JS один из самых худших языков программирования который только могли высрать люди, до es6 версии просто не юзабельный, после все пересели на ts, т.к пользоваться ванильным js'ом это тоже самое что обмазываться калом

Сможешь показать мне хотя бы 1 проект, который вынесет огромную кодовую базу без типизации?

Думаешь вещи на подобии babel или typescript, flow, jquery итд были созданы из-за того что кому-то нечем заняться было? Нет. Это все создавалось из-за того что Js просто не юзабельный как язык, только жаль что альтернативы нету (спасибо microsoft что создали ts)

P.s там понимать то нечего, это один из самых легких языков, где учить то почти нечего, он слишком ограниченный

Нажмите, чтобы раскрыть...

Ну, у меня был большой проект на js (правда мы его отрефакторили на ts). Конечно, с ts лучше стало. Но ts стал дефакто стандартом. Так что нет смысла рассуждать про типизацию в js. По поводу babel: нехер тащить 0-stage в продакшен и всё будет ок. Легко можно использовать чистый js. Щас даже уже веб-компоненты практически везде имеют полную поддержку. Js динамично развивающийся язык, дающий большие возможности. По поводу js до es6. Прототипное наследование это сила js, а не его слабость, паттерны js и дают ему такую гибкость. Проблема js лишь в одном: что слишком легко написать плохой код. Ну и как бы даже нечего упоминать, что в основе классов es6 всё те же прототипы, просто код стал немножко чище. Но не зря js похож на smalltalk, который придумал "создатель" ООП Алан Кей. Тот ООП что в Java, C++ и им подобных как раз и есть заблуждение. А jquery еще кто-то юзает в серьезных проектах?

Проект, который вынес большую кодовую базу без типизации смог бы показать, если бы не договор об неразглашении)

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

HiThere сказал(а):

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

Нажмите, чтобы раскрыть...

Чел, ты не туда движешься. Какой нафиг spring. Это всё не то. Ты хочешь бомбить безликую бизнес-логику на бэкэнде? Ты хочешь быть макакой, которая херачит аутсорс? Ну, тогда ты в правильном направлении. Я не зря упомянул computer science. Программирование и разработка это нечто большее, чем корпоративные порталы для сбербанка или любое другое аутсорс фуфло. Я так говорю не потому что я еще зеленый и мечтаю попасть в гугл или писать ПО для фалконов в spacex, а потому я был java разработчиком, у нас были сложные проекты. Потому что я знаю чем занимаются мои знакомые java-разработчики. Это кому-то может и интересно. Но они просто удовлетворяют корпоративный спрос, спрос бизнеса. Там нет места удовольствию от разработки, там нет места чему-то прогрессивному. Там есть требования и всё. По сути это monkey-job. Даже когда ты станешь там синьером, тим-лидом и т.д. ты НЕ будешь создавать что-то новое. Ты будешь заниматься рутиной.

Не, понятно, что я тоже вынужден работать на разных проектах, которые не во всем меня удовлетворяют. Но это точно лучше времен, когда я бы java разработчиком. Мне кажется, что хороших жава разработчиков утешает лишь то, что у них обычно довольно сложная архитектура в продакшене, большие распределенные системы, громкие имена заказчиков и всё) Конечно, они угробили по 5-10 лет чтобы стать синьором или техлидом, не бросит же он свою успешную карьеру внезапно

 

HiThere сказал(а):

Ну на примере ангуляра тебе скажу, допустим у тебя есть некий сервис, пускай будет UserService, в этом сервисе у тебя находится вся логика, которая может быть у пользователя, все информация хранится в Observable, чтобы я мог в 1 компоненте сделать observable.next(...какое-нибудь значение), а из другого компонента это значение получить, т.е получается что по сути у тебя вся логика связанная с пользователями будет хранится в 1 сервисе.

В итоге получается что все http запросы будут вызываться из этого сервиса, обновлять список пользователей будет этот сервис и тому подобные вещи. Даже с таким примитивным сервисом как User уже можно написать 500+ строк даже не заметив.

Конечно можно все красиво разложить по полочкам и избежать 1000+ строк классов, но когда у тебя в команде по мимо тебя еще работает человек 20 на фронте, то ты даже не заметишь как из твоего класса получилась не читаемая машина с 4к+ строк кода

Нажмите, чтобы раскрыть...

ну у вас просто быдлокод пишут, 1000+ строк в файле даже ts линтер с дефолтной конфиграцией варнинг выкинет.

HiThere сказал(а):

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

Ангуляр в этом моменте топ, все компоненты подключаются в 1 файле, сразу понятно где менять стили у компонента, JSX в реакте только ухудшает читаемость кода по сравнению с обычным html файлом.

Нажмите, чтобы раскрыть...

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

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

Почитай про PWA, про webcomponents. Мне очень нравится как LitElements оборачивают нативные вебкомпоненты.

Как вообще можно ненавидеть фронт, это ж так интересно)