|
А не запилить ли API, пока #сидимдома? | ☑ | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0
Asmody
03.04.20
✎
13:12
|
Раз пошла такое #сидимдома, напишу-ка я новое API для форума, чтобы по моде, со всеми плюшками.
Есть вот такой набросок "плана работ": https://app.swaggerhub.com/apis/Asmody/mista/2.0 Это, конечно, не последний вариант, но с чего-то надо начинать. Я планирую это всё как-нибудь реализовать почти "в прямом эфире". Стримов не обещаю, но скринкасты буду делать и выкладывать. Дополнительные вводные: а) данные берем из существующей БД, но изменения структуры под запретом; (это чтоб всякие "миграции" сразу исключить) б) исходный двиг не используется; в) запускаться это всё должно в docker; г) ХЗ... Осталось решить главный вопрос: на чём пилить? У меня такие основные варианты: 1) elixir + phoenix +++ - ФП со всеми "плюшками"; язык странный, но приятный; бешенная производительность BEAM и OTP; --- - ФП со всеми "заморочками"; на elixir я не писал ничего сложнее "Hello, World", ну и немного подковыривал чужой код; 2) typescript + hapi.js +++ - нода она и в Африке нода: стильно, модно, асинхронно; TypeScript более-менее адекватная версия js; документации дофига; --- - нода, будь она неладна, со всей её инфраструктурой пакетов; документация устаревает через полчаса после написания; язык с концепцией "проще - значит неправильно" (это про js, но и ts там рядом проходил); 3) golang + gin +++ - один бинарник; быстрый компилятор; ну и вообще - самый писк и струя; --- - я не большой поклонник go; странные заморочки с внешними библиотеками, "вендеринг" и все такое; последний раз я шупал go года 2 назад, сейчас там, говорят, всё по другому; ну и чтоб было: 4) python + flask 5) php + lumen на эти пункты я не буду +++ и --- писать, мне они не очень интересны в плане саморазвития. Java/C# не рассматриваю принципиально - не того уровня проект, чтоб так заморачиваться. Не считаю себя мегапрофи ни в одном из предложенных вариантов, будет повод подтянуться. В общем, какой вариант к вечеру наберет больше голосов, на том и будем писать. |
||||||||||||||||||||||
1
shuhard
03.04.20
✎
13:19
|
(0) таки
php + lumen |
||||||||||||||||||||||
2
Hillsnake
03.04.20
✎
13:20
|
конечно же питон, этож модно сковородно. !!
python + flask |
||||||||||||||||||||||
3
ДенисЧ
03.04.20
✎
13:22
|
Я был бы против ноды и питона на сервере.
Остальные страшные слова мне не знакомы. |
||||||||||||||||||||||
4
Cyberhawk
03.04.20
✎
13:23
|
А какая разница потребителю этого АПИ, на чем он будет реализован?
|
||||||||||||||||||||||
5
Капюшон
03.04.20
✎
13:26
|
Всё что не Java это полное фуфло.
свой вариант |
||||||||||||||||||||||
6
Garykom
гуру
03.04.20
✎
13:26
|
Только gin лишнее!
Хватит: "encoding/json" _ "github.com/go-sql-driver/mysql" "github.com/gorilla/mux" "github.com/jmoiron/sqlx" "net/http" golang + gin |
||||||||||||||||||||||
7
ДенисЧ
03.04.20
✎
13:27
|
(4) А как же причастность?
|
||||||||||||||||||||||
8
Garykom
гуру
03.04.20
✎
13:33
|
Имхо выиграет пункт 7.
|
||||||||||||||||||||||
9
Hillsnake
03.04.20
✎
13:37
|
(5) джава твоя фуфло древнее. не зря котлин придумали.
|
||||||||||||||||||||||
10
Garykom
гуру
03.04.20
✎
13:39
|
(0) Замечание по API:
1. Почему только GET и POST, где PUT и DELETE ? 2. Права нужны чтобы DELETE не все могли 3. Оно аля REST(ful) или ну так вышло 4. Авторизация через OAuth 2.0 когда будет? 5. Хочу встроенную систему управления видимостью, т.е. можно юзера отправить в собственный теневой бан |
||||||||||||||||||||||
11
Garikk
03.04.20
✎
13:44
|
(6) ...вот за такие ссылки на гитхаб, гошников надо по голове кувалдой бить...
с чем я сталкивался: 1) вот у тебя по ссылке mux последний коммит 3 months... а мы помнится заюзали такую либу в проекте... сейчас там last commit 1,5 years ago 2) разработчик либы устал-ухожуй...все..всем спасибо у всех всё развалилось 3) у провайдера или у РНК чето вклинило и всё, все релизы и ci/cd по пи..де |
||||||||||||||||||||||
12
Garikk
03.04.20
✎
13:45
|
(11) *РКН конечно, очепятка
|
||||||||||||||||||||||
13
arsik
гуру
03.04.20
✎
13:56
|
Для бэка я бы наверно go взял.
Быстрый, сетевой, многопоточный, кросскомпиляция. golang + gin |
||||||||||||||||||||||
14
Волшебник
модератор
03.04.20
✎
14:01
|
Да-да! И чтобы там можно было грабить корованы!
|
||||||||||||||||||||||
15
pavig
03.04.20
✎
14:02
|
(3)
Почему против Питона? |
||||||||||||||||||||||
16
ДенисЧ
03.04.20
✎
14:06
|
(15) Притормознут. И с многопоточностью заморочки. Фласк - он однозадачный, так что руками придётся...
|
||||||||||||||||||||||
17
mikecool
03.04.20
✎
14:07
|
- А не спеть ли мне песню?
- А не спеть! |
||||||||||||||||||||||
18
Garikk
03.04.20
✎
14:10
|
(16) а зачем на форуме многозадачность?
|
||||||||||||||||||||||
19
Garikk
03.04.20
✎
14:11
|
99% запросов к апи на форуме, это тупой селект в базу, дайбог с парой джойнов.. там нечего параллелить
|
||||||||||||||||||||||
20
DEVIce
03.04.20
✎
14:12
|
На Фузине же..., ну.
|
||||||||||||||||||||||
21
Asmody
03.04.20
✎
14:16
|
(10) Основные операции "получить" и "добавить". "изменить" и "удалить" для обычного пользователя не предусмотрено, а админский контекст я оставил "за скобками".
|
||||||||||||||||||||||
22
ДенисЧ
03.04.20
✎
14:18
|
(18) А ты прикинь, сколько одновременных запросов будет
|
||||||||||||||||||||||
23
Asmody
03.04.20
✎
14:18
|
(19) Тупой-то он тупой, но наша развесистая лапша из параметров, настроек, прав и др. заставляет порой поломать голову в сочинении запроса.
|
||||||||||||||||||||||
24
ДенисЧ
03.04.20
✎
14:18
|
(21) То есть редактирования своих сообщений не будет...
|
||||||||||||||||||||||
25
antgrom
03.04.20
✎
14:19
|
(0) только Java
свой вариант |
||||||||||||||||||||||
26
antgrom
03.04.20
✎
14:20
|
(15) ты неправ. "Пайтен"
) |
||||||||||||||||||||||
27
eklmn
гуру
03.04.20
✎
14:22
|
Для общего кругозора и саморазвития самое оно.
git будет? typescript + hapi.js |
||||||||||||||||||||||
28
Garykom
гуру
03.04.20
✎
14:23
|
(11)
1. Подсунь нужную версию вручную 2. Бывает, это риск использования любого не встроенного, на Java и на NodeJS тоже самое 3. Рассказать тебе про свой DNS? |
||||||||||||||||||||||
29
Garykom
гуру
03.04.20
✎
14:26
|
(21) Админы от не админов по сути только правами отличаются.
Они видят больше и могут больше - есть смысл все в одном апи делать. И уже правами разруливать. Например можно на своих ветках разрешать удалять свои сообщения и даже ветки сносить оффтопике чтобы хлама поменьше было. Понятно что ветки полезные лучше оставлять но это уже право админа вернуть и приколотить ветку отняв права на нее у создателя. |
||||||||||||||||||||||
30
Звездочёт
03.04.20
✎
14:28
|
(0) форум можно сделать и на 1С :)
свой вариант |
||||||||||||||||||||||
31
Волшебник
модератор
03.04.20
✎
14:35
|
(30) Где же столько лицензий взять?
|
||||||||||||||||||||||
32
Garykom
гуру
03.04.20
✎
14:38
|
(31) На мобильной версии можно - там если монетизации нет то бесплатно
|
||||||||||||||||||||||
33
Garykom
гуру
03.04.20
✎
14:39
|
(32)+ Мобильная версия работает под win на x86
|
||||||||||||||||||||||
34
Garykom
гуру
03.04.20
✎
14:40
|
Кстати да. А есть же уже МП 1С клиента Миста?
|
||||||||||||||||||||||
35
Garykom
гуру
03.04.20
✎
14:40
|
(34)+ Просто почему бы не сделать некую импортозамещение slack ?
|
||||||||||||||||||||||
36
mdao
03.04.20
✎
14:42
|
предлагаю такую идею,) офиц.группа в vk , при добавлении темы/поста на форуме оно уходит в vk группу
свой вариант |
||||||||||||||||||||||
37
Звездочёт
03.04.20
✎
14:43
|
(31) я имел ввиду на http-сервисах :) они не лицензируются.
|
||||||||||||||||||||||
38
Oftan_Idy
03.04.20
✎
14:52
|
Все тлен
да ну его нафиг |
||||||||||||||||||||||
39
dezss
03.04.20
✎
15:48
|
(25) Вот согласен)))
свой вариант |
||||||||||||||||||||||
40
Asmody
03.04.20
✎
16:21
|
(37) под 1С сильно могучий сервер нужно, серверную лицензию нужно, дорого, однако
|
||||||||||||||||||||||
41
Asmody
03.04.20
✎
16:22
|
(36) ага, и бота в телеграм.
Нафиг |
||||||||||||||||||||||
42
Asmody
03.04.20
✎
16:23
|
(29) если операции нет, то её и нет. Нафига городить права?
|
||||||||||||||||||||||
43
Asmody
03.04.20
✎
16:24
|
Я забыл проголосовать
elixir + phoenix |
||||||||||||||||||||||
44
pechkin
03.04.20
✎
16:31
|
А будет ли вам доступен cross-origin?
|
||||||||||||||||||||||
45
vde69
03.04.20
✎
16:46
|
только не флеш...
даешь аякс в массы :) свой вариант |
||||||||||||||||||||||
46
Сияющий в темноте
04.04.20
✎
23:32
|
я бы сначала посмотрел,что без проблем можно на сервак поставить.
(28) когда google начали банить большинство сайтов полегло из-за того,что скрипты напрямую с гугля тянуло. опять же,если ссылка куда-то,то там может оказаться все,что угодно-аккаунты гита тоже ломают. |
||||||||||||||||||||||
47
Конструктор1С
05.04.20
✎
05:21
|
(0) лучше сделай человечачью подстветку синтаксиса 1с
свой вариант |
||||||||||||||||||||||
48
Конструктор1С
05.04.20
✎
05:24
|
И вообще идеально было бы, если бы можно было одним списком увидеть ответы на свои сообщения в разных темах
|
||||||||||||||||||||||
49
rphosts
05.04.20
✎
06:44
|
(0) если времени есть - пили на чём-то модном чем не владеешь (заодно и немного прокачаешься в теме), если времени не особо - пиши на том чем владеешь в совершенстве.
|
||||||||||||||||||||||
50
rphosts
05.04.20
✎
06:46
|
я-б пошёл хапнуть джина, пожалуй
golang + gin |
||||||||||||||||||||||
51
rphosts
05.04.20
✎
06:47
|
(30) делал лет 5 назад чатик (с шифрованием, длекджеком и дамами)... не-не-не
|
||||||||||||||||||||||
52
jbond
05.04.20
✎
08:00
|
Только Enterprise Java Beans! Только хардкор!
|
||||||||||||||||||||||
53
Asmody
05.04.20
✎
11:49
|
(48) я не представляю зачем такая херь может понадобиться
|
||||||||||||||||||||||
54
ДенисЧ
05.04.20
✎
11:58
|
(53) У тебя фантазия слабая...
|
||||||||||||||||||||||
55
Конструктор1С
05.04.20
✎
17:20
|
(53) чтобы можно было по-быстрому просмотреть цепочку беседы и ответить ответивним. Сейчас для этого приходится нырять в каждую из тем. По-моему "мне ответили" стандартная функция для многих форумов
|
||||||||||||||||||||||
56
Dzenn
гуру
05.04.20
✎
18:25
|
Ключевой вопрос - Зачем? И с какой целью? Какую проблему решит новый API?
да ну его нафиг |
||||||||||||||||||||||
57
ДенисЧ
05.04.20
✎
18:29
|
(56) А почему нет, если время есть?
|
||||||||||||||||||||||
58
dmitryds
05.04.20
✎
18:44
|
NodeJS
свой вариант |
||||||||||||||||||||||
59
dmitryds
05.04.20
✎
18:44
|
(56) +1
да ну его нафиг |
||||||||||||||||||||||
60
MadHead
05.04.20
✎
20:46
|
Rust + actix
Scala + play свой вариант |
||||||||||||||||||||||
61
Asmody
05.04.20
✎
22:33
|
(58) хоть бы не палился
|
||||||||||||||||||||||
62
Asmody
05.04.20
✎
22:36
|
(60) rust я как-то воспринимаю как системный язык. это как на С веб-прилодения писать. можно, но зачем?
а scala... у меня не настолько мощный компьютер, чтобы комфортно программировать на scala. ну не хватает ей core7 + 32Гб |
||||||||||||||||||||||
63
Сияющий в темноте
05.04.20
✎
23:21
|
(62) на Си пишется все,что угодно,особенно,если хочется скорости выполнения.
ну и многопоточность без проблем с общей памятью и стстемными семаформами. а если копнуть в сторону подписок на завершение,то такое можно сделать,чего другим языкам и не снилось. главное,ошибок в коде не делать,а то,порой,стний экран и все... |
||||||||||||||||||||||
64
MadHead
06.04.20
✎
00:03
|
(62) Rust - это не С. Производительность сравнимая, но синтаксис более модный и молодежный. На сколько понимаю цель не просто написать API, но и получить полезный и интересный опыт.
Scala на любителя, но мне нравится. На счет нехватки мощности ПК не понятно. Приведите пример что конретно тормозит? Единственное, что видел как Idea может напряч железо при редактировании SBT файлов, меня - это не сильно беспокоит, но наверняка можно и отключить. |
||||||||||||||||||||||
65
MadHead
06.04.20
✎
00:04
|
(62) https://actix.rs/ все красиво и лакончино.
|
||||||||||||||||||||||
66
MadHead
06.04.20
✎
00:05
|
(62) И для понимания зачем страдать с Rust, если можно проще и быстрее навоять на чем-то другом быстрее. https://www.techempower.com/benchmarks/
|
||||||||||||||||||||||
67
quest
06.04.20
✎
08:05
|
Для тренировки и разбирательств - проекта самое то
elixir + phoenix |
||||||||||||||||||||||
68
ischamael
06.04.20
✎
10:57
|
Поддерживаю golang, с vendoring и modules разберешься.
Для серверной части go подходит. Goland IDE шустрый - лицензии на stepick выдают. |
||||||||||||||||||||||
69
ischamael
06.04.20
✎
11:07
|
gin - martini-like api, чтобы это не значило!
golang + gin |
||||||||||||||||||||||
70
GANR
06.04.20
✎
13:34
|
.
golang + gin |
||||||||||||||||||||||
71
Fragster
гуру
06.04.20
✎
13:38
|
хз, что там у вас в планах, но очень нужна oauth2 авторизация, чтобы к сисечному конкурсу можно было запилить нормальное приложение, для участников, для жюри, для голосующих
|
||||||||||||||||||||||
72
Fragster
гуру
06.04.20
✎
13:39
|
хотя, конечно, если вы готовы логин и пароль вводить на boobzle.mista.ru, то можно и как в (0) оставить
|
||||||||||||||||||||||
73
ДенисЧ
06.04.20
✎
13:45
|
С этим oauth2 весь мир сошёл с ума...
Был в одной конторке - у них там даже корпоративный b24 на двухфакторной авторизации... И это при том, что мордой в чистый интернет он не смотрел... |
||||||||||||||||||||||
74
Fragster
гуру
06.04.20
✎
14:23
|
(73) двухфакторная авторизация тут вообще не причем
|
||||||||||||||||||||||
75
ДенисЧ
06.04.20
✎
14:26
|
(74) Один овосчЪ.
|
||||||||||||||||||||||
76
dmitryds
06.04.20
✎
14:32
|
(61) у меня сейчас весь софт на ноде.
Сначала так же относился, пока не попробовал и не проверил в действии (до этого кроме 1С было: Java, php, C#) |
||||||||||||||||||||||
77
Fragster
гуру
06.04.20
✎
14:41
|
(76) ну, написать то, что не течет и не падает на ноде сильно сложнее, чем на том же 1с, или тем более похапэ (который отработал и издох)
|
||||||||||||||||||||||
78
Asmody
06.04.20
✎
15:42
|
(76) [у меня сейчас весь софт на ноде] - и что, ни один из предложенных вариантов не подошёл?
|
||||||||||||||||||||||
79
dmitryds
06.04.20
✎
16:20
|
(78) о каких вариантах речь?
|
||||||||||||||||||||||
80
Fragster
гуру
06.04.20
✎
17:04
|
забыл сунуть. люмен - это ж кагбэ ларавель?
php + lumen |
||||||||||||||||||||||
81
vfire1000
12.05.20
✎
13:02
|
(0) что по итогу?
|
||||||||||||||||||||||
82
Serginio1
12.05.20
✎
14:23
|
C# не рассматриваю принципиально - не того уровня проект, чтоб так заморачиваться.
А я бы заморочился и еще на Blazor на вэбассембли. Правда сейчас пока как интерпритатор кода, но к ноябрю обещают AOT https://metanit.com/sharp/blazor/1.1.php |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |