@typescript_ru

Страница 346 из 669
Вертихвост
09.09.2017
20:07:34
Mike
09.09.2017
20:10:17
Почему?
в смысле почему? У меня в проекте один класс AtlasPacker, зачем мне его импортировать чтобы использовать? Если бы это хоть автоматом могло делаться, но это даже автоматически не делается нормально всё ещё. И до кучи по относительным путям от места импорта. А если рефакторинг и ты перенёс класс из одной папки в другую?

Vladimir
09.09.2017
20:10:41
В общем, это такие глобалы

Google
Дмитрий
09.09.2017
20:10:49
Тайпскрипт позволяет юзать алиасы в импорте

Andrey
09.09.2017
20:11:28
И это было около года назад.

Ҫѐҏӗѫӑ
09.09.2017
20:12:17
короче не убедил, Миш

Вертихвост
09.09.2017
20:12:20
Тайпскрипт позволяет юзать алиасы в импорте
Это не означает, что стоит так делать

Mike
09.09.2017
20:12:32
Полностью согласен с вами ? Расскажите о своем решении? Проект закрытый?
мы используем автогенерацию ///ts ref комментов. https://github.com/TypeStrong/grunt-ts это умеет. там ты указываешь ///ts:ref=filename а он генерит и сам маинтейнит /// <reference path='../path/to/filename'/> ///ts:ref:generated

но такие ссылки висят только на классы предки, или на те что используются в статических инициализаторах

Дмитрий
09.09.2017
20:13:36
Это не означает, что стоит так делать
Ну запихать всё в один неймспейс конечно удобнее)

Mike
09.09.2017
20:13:45
обычные классы вообще никаких рефов не содержат. В конфиге прописано includes что автоматом подключает все файлы

Вертихвост
09.09.2017
20:14:15
Ну запихать всё в один неймспейс конечно удобнее)
Если грамотно все распределить, то почему бы и да

Дмитрий
09.09.2017
20:14:40
В одну большую грамотную кучу

Google
Дмитрий
09.09.2017
20:14:52
С грантом, ок ?

Vladimir
09.09.2017
20:15:23
Еще можно писать в разных файлах, но потом коннкатенировать скриптом перед чекингом

Дмитрий
09.09.2017
20:15:52
Как деды делали

Vladimir
09.09.2017
20:16:35
Деды ничего не чекали, они писали без багов

Mike
09.09.2017
20:16:37
Я так понимаю reference работает аналогично using в c#?
я не знаю точно как это работает в c#. тут это всего лишь расположит файл ниже зависимости при сборке в один файл. Из за этого те файлы которые раньше указаны определят свои классы раньше и будет от чего наследоваться в принципе

я до сих пор не понимаю почему с модульностью в js такая кака. Писать импорт на каждый класс вообще не вариант

особенно относительные

Дмитрий
09.09.2017
20:18:21
Импортировать вещи перед использованием — немыслимо

Ҫѐҏӗѫӑ
09.09.2017
20:18:48
window.AtlasPacker ftw

Дмитрий
09.09.2017
20:19:06
?

Mike
09.09.2017
20:19:27
wtf ftw?

Ҫѐҏӗѫӑ
09.09.2017
20:19:52
for the win

Mike
09.09.2017
20:20:20
а, ну да.

Сергей
09.09.2017
20:22:56
Или что, как в шарпе или джаве?

Вертихвост
09.09.2017
20:23:25
А что, лучше чтобы в глобале все лежало?
Хотелось бы какой-нибудь вариант, чтобы были импорты, но при этом были namespaces ?

Andrey
09.09.2017
20:23:48
Или что, как в шарпе или джаве?
Как будто это что-то плохое)

Mike
09.09.2017
20:23:49
я сейчас посмотрел, во флешовом проекте которым я занимаюсь есть 120 импортов в шапке основного контроллера игры. фо флеше это всё автоменеджерится, ты даже не замечаешь эти ипорты, перенёс класс, ide обновила все рефы. А тайпе нет удобного инструментария для этого. Я предпочёл все в глобал. Не вижу причин для истерии

Google
Вертихвост
09.09.2017
20:23:57
Класть в виндоу
Класть что? Куда?

Vladimir
09.09.2017
20:24:43
120 - это пиздец. И их там 120 именно потом что ты не замечаешь

Дмитрий
09.09.2017
20:25:05
У меня бы этот контроллер был бы целой директорией как минимум

Mike
09.09.2017
20:25:19
У нас сейчас тоже бывает, что страница-две это все импорты
ну, и что вы делаете если нужно переименовать один компонент,везде правите

Дмитрий
09.09.2017
20:25:31
У меня бывает дофига импортов но как правило это всё типы, а не

Вертихвост
09.09.2017
20:25:59
Дмитрий
09.09.2017
20:26:09
У меня бывает дофига импортов но как правило это всё типы, а не
И то не могу сказать что от хорошей жизни появляется такое

Mike
09.09.2017
20:27:24
У меня бы этот контроллер был бы целой директорией как минимум
там и лежит директория, в ней 158 контроллеров в 35 папках и полтора мегабайта кода. И только у основного контроллера который инитит игру и создаёт остальные подконтроллеры 120 импортов

это ещё небольшой проект

да, эт я специально в свойствах посмотрел а не придумал про 158 файлов

Дмитрий
09.09.2017
20:28:22
Я уже даже не сомневался))

Mike
09.09.2017
20:29:30
всего та игра 873 файла и 5 метов кода. Дугой проект 1800 файлов и 10 метров.

Дмитрий
09.09.2017
20:29:53
Но в целом это объяснение только вызывает больше вопросов, и не уверен, что готов узнать на них ответы

Сергей
09.09.2017
20:29:56
Так раздувать код надо постараться

Вертихвост
09.09.2017
20:30:09
всего та игра 873 файла и 5 метов кода. Дугой проект 1800 файлов и 10 метров.
А вы не пробовали разбивать проект на модули и уже в них использовать reference?

Google
Mike
09.09.2017
20:30:39
Сочувствую
а чего сочуствовать то. Это реально огромные проекты с многолетней историей с десятками человеколет разработки в них

А вы не пробовали разбивать проект на модули и уже в них использовать reference?
думал об этом но в итоге так и даже пробовать не стал

у меня всё равно вся игра в один js компилится

Вертихвост
09.09.2017
20:31:23
Так раздувать код надо постараться
Для любого enterprise - это просто пшик

Mike
09.09.2017
20:32:13
У нас не энтерпрайз при том, просто действительно большие проекты, там только окон с акциями - сотни, и все с никальными дизайнами, анимациями и предложениями

Сергей
09.09.2017
20:32:28
Для любого enterprise - это просто пшик
Нет. Если не рефакторить и не отказываться от старого кода, поддержка проекта со временем станет слишком дорогой

Вертихвост
09.09.2017
20:33:12
Сергей
09.09.2017
20:33:21
Подобные игры писать проще всего

Дмитрий
09.09.2017
20:34:02
Если каждое из сотни окон имеет полностью уникальную анимацию и дизайн, то это в принципе всё объясняет

Mike
09.09.2017
20:34:09
Подобные игры писать проще всего
аргумент. В связи с отсутствием контр аргументов вынужден спор прекратить

Дмитрий
09.09.2017
20:34:30
write only код

no offence

Сергей
09.09.2017
20:35:29
аргумент. В связи с отсутствием контр аргументов вынужден спор прекратить
Я к тому, что в этом случае все выносится на уровень конфигурации и пишется дополнительный редактор для менеджера. Это намного дешевле. Даже анимации можно описывать в виде файла без кода

Mike
09.09.2017
20:35:45
Если каждое из сотни окон имеет полностью уникальную анимацию и дизайн, то это в принципе всё объясняет
не только дизайн. Дизай фигня, он верстается в flash дизайнером интерфейсов. Там ещё и калькуляторы всякие, динамика вида собери 8 медвежат, сейчас прогресс 5/8. Или прогрессбары и укзаание что продано 38 тыс из 50 тыс, успей купить, а ещё вот эти три друга тебя обгоняют

Сергей
09.09.2017
20:36:16
Речь сейчас совершенно не про анимации и дизайн
Все можно вынести на уровень конфигурации в таких играх

Останется только небольшое гибкое ядро + графический интерфейс

Вертихвост
09.09.2017
20:36:45
Все можно вынести на уровень конфигурации в таких играх
Я, наверное, выпал из темы, но изначально мой вопрос был не про игры, не про дизайны, не про анимации ?

Google
Вертихвост
09.09.2017
20:37:49
все юзают импорты. я сопротивляюсь
Мне интересно найти решение, в котором на глобальном уровне останутся импорты, а внутри - namespaces

Сергей
09.09.2017
20:37:54
все юзают импорты. я сопротивляюсь
Если у тебя в файле больше 15 импортов, то это серьезная заявка на пересмотр архитектуры проекта

Сергей
09.09.2017
20:38:14
Изоляция модулей лучше, чем ее отсутствие

Mike
09.09.2017
20:38:21
Дмитрий
09.09.2017
20:38:34
все юзают импорты. я сопротивляюсь
Ортодоксальное течение фронтенда ?

Mike
09.09.2017
20:38:57
Ортодоксальное течение фронтенда ?
можно и так сказать, мы езщё и реакт не юзаем

Дмитрий
09.09.2017
20:39:13
Душераздирающе

Сергей
09.09.2017
20:39:35
Обычно люди с мнением идущим наперекор большинству в сообществу, в итоге уходят в другую специализацию

Mike
09.09.2017
20:39:59
ещё раз, я переименовай класс, он заимпорчен в 40 местах. что променеджерит мне импорты?

Mike
09.09.2017
20:40:32
хм, может быть, раньше не делала

Вертихвост
09.09.2017
20:40:46
VSCode это делает давно уже
Вот с этим не соглашусь. VSCode делает это коряво

Сергей
09.09.2017
20:41:00
Vladimir
09.09.2017
20:41:01
Andrey
09.09.2017
20:41:01
VSCode это делает давно уже
Как его заставить делать это?

Mike
09.09.2017
20:41:09
я принимал эти решения год назад. Пока доволен. Менять не собираюсь, но посматриваю на альтернативы

Вертихвост
09.09.2017
20:42:37
F2
вот прямо сейчас сломал приложение, а VSCode молчит

Страница 346 из 669