Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Переименовать все namespace.ts в types.ts #148

Open
sk1e opened this issue Oct 16, 2019 · 6 comments
Open

Переименовать все namespace.ts в types.ts #148

sk1e opened this issue Oct 16, 2019 · 6 comments

Comments

@sk1e
Copy link
Contributor

sk1e commented Oct 16, 2019

Не вижу ничего общего с определением https://en.wikipedia.org/wiki/Namespace
Добавляет путаницы

@in19farkt
Copy link
Contributor

давно пора))

@kinda-neat
Copy link
Contributor

ага и импортировать как * as T, as TS

@Znack
Copy link
Contributor

Znack commented Oct 16, 2019

types.ts действительно лучше namespace.ts. Однако я в целом сейчас, особенно после опыта работы с Haskell проектами, стараюсь избегать файлов Types.(ts|hs), я стараюсь модули бить по бизнес-ценности, по функциональности, по семантике и тд, но не по признаку типы ли это или функции. Поэтому возможно все namespace.ts на самом деле надо раскидать по model.ts, redux-state.ts и тд, которые будут в разных папках находиться, так как это разные слои абстракций

@sk1e
Copy link
Contributor Author

sk1e commented Oct 17, 2019

types.ts действительно лучше namespace.ts. Однако я в целом сейчас, особенно после опыта работы с Haskell проектами, стараюсь избегать файлов Types.(ts|hs), я стараюсь модули бить по бизнес-ценности, по функциональности, по семантике и тд, но не по признаку типы ли это или функции. Поэтому возможно все namespace.ts на самом деле надо раскидать по model.ts, redux-state.ts и тд, которые будут в разных папках находиться, так как это разные слои абстракций

идея хорошая, но есть момент с моделями: часто возникает потребность в модулях которые имеют собственные модели и чтобы не путать с моделями приложения я не называю их моделями. Если допускать что в рамках приложения у нас разные множества моделей существуют, тогда каждое множество должен быть подчёркнуто именем модуля в котором оно находится, но доменные модели сейчас лежат в shared/types/models поэтому нужно завести каталог для модуля по работе с доменной областью, src/domainCore например. Тогда всё станет органичным

@Znack
Copy link
Contributor

Znack commented Oct 18, 2019

Ну мне кажется норм, что у тебя есть корневые модели, если модели модуля. Можно, конечно, доменные в корне складывать и называть просто domain, но там же не только модели предметки могут лежать :) Поэтому я предлагаю пока не заморачиваться, сделать модели в src как корневые, и если надо модуль может свои локальные модели тоже объявлять. По пути иерархия и так будет четко прослеживаться

@Safr
Copy link

Safr commented Jan 17, 2020

можно поменять для ясности, также вместо import * as React заменить на import React с флагом esModuleInterop: true

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants