Size: a a a

Golang Developers — русскоговорящее сообщество

2020 October 29

D

Dmitry in Golang Developers — русскоговорящее сообщество
Анатолий
дело ж не в языке, сам по себе пхп последний даже очень на джаву похож, дело в инструментах и окружении, сервера, пакетные менеджеры библиотеки. Обычно в них сложность.
та даже не сложность в них, а в очередной порции тонны данных которые нужно помнить
ну вот например у меня сейчас под рукой пхп композер - я более или менее в нем помню ключи
на пайтоне пип - ключи уже не помню
жаваскрипт - нпм

но у _всех_ один и тот же принцип, не вижу в чем проблема
возможно вы имели ввиду что проблема будет конкретно при старте изучения, нужно нагуглить весь стек, а потом все равно принципе везде одни и те же
источник

А

Андрей in Golang Developers — русскоговорящее сообщество
Анатолий
дело ж не в языке, сам по себе пхп последний даже очень на джаву похож, дело в инструментах и окружении, сервера, пакетные менеджеры библиотеки. Обычно в них сложность.
Да, экосистема различается сильно, но в php есть довольно развитый ооп
источник

А

Андрей in Golang Developers — русскоговорящее сообщество
А в js его почти нет
источник

D

Dmitry in Golang Developers — русскоговорящее сообщество
кстати раз уж заговорили о пакетах
кто-то может дать ссылку где внятно рассказано почему подключение локальных пакетов которые лежат тут же с проектом в ГО это плохо ?
я сколько не гуглил, не смог понять что в этом плохого
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
Андрей
А в js его почти нет
в жс есть ТС, и большинство так или иначе с ним сталкиваются, и ООП в нем похлеще чем в пхп :)

Для справки, самый популярный вопрос тут связан с пакетами, по самому языку вопросом на много меньше (если горутины не считать)
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
Dmitry
кстати раз уж заговорили о пакетах
кто-то может дать ссылку где внятно рассказано почему подключение локальных пакетов которые лежат тут же с проектом в ГО это плохо ?
я сколько не гуглил, не смог понять что в этом плохого
в го принято хранить в репозитории только то что ты писал, остальное подключается отдельно как в пхп через композер
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
как собственно и в любом другом языке это рекомендуется
источник

D

Dmitry in Golang Developers — русскоговорящее сообщество
Анатолий
в го принято хранить в репозитории только то что ты писал, остальное подключается отдельно как в пхп через композер
я не об этом
ну например я пишу, ну пусть будет чатик, в нем есть слой контроллеров, хендлеров запросов, инфраструктура
и вот например репозитории я выношу в отдельный пакет Repositories
и делаю
import "Repositories/MessageRepository"

вот я встречал что так подключать плохо
надо делать import "github.com/username/Repositories/MessageRepository"

мне интересно зачем ?
источник

AS

Alexey Shumkin in Golang Developers — русскоговорящее сообщество
Dmitry
кстати раз уж заговорили о пакетах
кто-то может дать ссылку где внятно рассказано почему подключение локальных пакетов которые лежат тут же с проектом в ГО это плохо ?
я сколько не гуглил, не смог понять что в этом плохого
имхо, это плохо тогда, когда ты (или тот , кто над проектом работает) от этого страдаешь (или будешь страдать, если тебе внятно объяснят как и почему )))
источник

D

Dmitry in Golang Developers — русскоговорящее сообщество
Alexey Shumkin
имхо, это плохо тогда, когда ты (или тот , кто над проектом работает) от этого страдаешь (или будешь страдать, если тебе внятно объяснят как и почему )))
я понимаю делать через гитхаб когда пакет будет шариться с другими проектами, тут все понятно и вопросов нет
но утверждать что локальные пакеты это плохо как аксиома, это мне не очень ясно. возможно я что-то сильно упускаю
источник

AS

Alexey Shumkin in Golang Developers — русскоговорящее сообщество
Dmitry
я не об этом
ну например я пишу, ну пусть будет чатик, в нем есть слой контроллеров, хендлеров запросов, инфраструктура
и вот например репозитории я выношу в отдельный пакет Repositories
и делаю
import "Repositories/MessageRepository"

вот я встречал что так подключать плохо
надо делать import "github.com/username/Repositories/MessageRepository"

мне интересно зачем ?
я где-то недавно прочёл , что "так тоже можно сделать, но когда вы захотите поделиться, вам придётся переделать,  так что лучше подготовить почву сразу"
источник

А

Андрей in Golang Developers — русскоговорящее сообщество
Анатолий
в жс есть ТС, и большинство так или иначе с ним сталкиваются, и ООП в нем похлеще чем в пхп :)

Для справки, самый популярный вопрос тут связан с пакетами, по самому языку вопросом на много меньше (если горутины не считать)
Все-таки 5 лет в php и 5 лет в js/ts, мне кажется, вещи немного разные. В php я сейчас пишу интерфейсы для классов, и использую фабрики, без этого невозможно. Js работает и без этого) У меня сейчас js больше в работе, чем php
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
Dmitry
я не об этом
ну например я пишу, ну пусть будет чатик, в нем есть слой контроллеров, хендлеров запросов, инфраструктура
и вот например репозитории я выношу в отдельный пакет Repositories
и делаю
import "Repositories/MessageRepository"

вот я встречал что так подключать плохо
надо делать import "github.com/username/Repositories/MessageRepository"

мне интересно зачем ?
префикс в импорте - название проекта
подключать можно и так и так, но если пакет публичный (для других людей библиотека) они ее не смогут подключить если название проекта не будет идентично пути в репозитории
источник

D

Dmitry in Golang Developers — русскоговорящее сообщество
Анатолий
префикс в импорте - название проекта
подключать можно и так и так, но если пакет публичный (для других людей библиотека) они ее не смогут подключить если название проекта не будет идентично пути в репозитории
ага, т.е вопрос именно в публичности пакета ? это и имеют ввиду когда говорят что локальный плохо ибо он не готов сразу к публичности ?
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
Андрей
Все-таки 5 лет в php и 5 лет в js/ts, мне кажется, вещи немного разные. В php я сейчас пишу интерфейсы для классов, и использую фабрики, без этого невозможно. Js работает и без этого) У меня сейчас js больше в работе, чем php
ну я в жс писал интрефейсы и использовал фабрики, в пхп тоже работает и без этого ;)
источник

D

Dmitry in Golang Developers — русскоговорящее сообщество
Андрей
Все-таки 5 лет в php и 5 лет в js/ts, мне кажется, вещи немного разные. В php я сейчас пишу интерфейсы для классов, и использую фабрики, без этого невозможно. Js работает и без этого) У меня сейчас js больше в работе, чем php
я вам больше скажу, в любом языке можно без интерфейсов и тп. все работает, на ура
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
Dmitry
ага, т.е вопрос именно в публичности пакета ? это и имеют ввиду когда говорят что локальный плохо ибо он не готов сразу к публичности ?
рекомендации в интернетах в основном подразумевают что ты делаешь сразу универсальный вариант, для себя можешь как угодно подключать
источник

D

Dmitry in Golang Developers — русскоговорящее сообщество
Анатолий
рекомендации в интернетах в основном подразумевают что ты делаешь сразу универсальный вариант, для себя можешь как угодно подключать
благодарствую, теперь понятно мнение сообщества
источник

AS

Alexey Shumkin in Golang Developers — русскоговорящее сообщество
Dmitry
я вам больше скажу, в любом языке можно без интерфейсов и тп. все работает, на ура
можно и без интерфейсов ))
только "можно" не значит "удобно" ))

тестировать неудобно бывает и сопровождать )
а так - да ))
источник

т

тим in Golang Developers — русскоговорящее сообщество
Андрей
Все-таки 5 лет в php и 5 лет в js/ts, мне кажется, вещи немного разные. В php я сейчас пишу интерфейсы для классов, и использую фабрики, без этого невозможно. Js работает и без этого) У меня сейчас js больше в работе, чем php
ТС без интерфейсов, абстрактных классов и декораторов 🤨
источник