|
1С, Java, Kotlin. Управление НСИ с раздачей по API. | ☑ | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
0
GANR
31.10.19
✎
19:58
|
Как Вы считаете, на чем лучше разработать систему управления НСИ. Вот список источников НСИ:
1. Справочники с ftp://free:[email protected]/fcs_nsi/ . 2. ФИАС https://fias.nalog.ru/Updates.aspx . 3. ЕГРЮЛ/ЕГРИП - закрытый ftp-ресурс. 4. Самопальные системы, кидающие данные на РЕСТ-ы НСИ. Обновление НСИ в базе по расписанию ежедневно с поддержкой версионирования по дате. 5000 потребителей, нужен полнотекстовый поиск информации в таких справочниках, как ФИАС, ЕГРЮЛ и ЕГРИП. 1С или Java/Kotlin и почему? |
||||||||||
1
Garykom
гуру
31.10.19
✎
20:16
|
(0) Лучше писать на том что лучше подходит для задачи из того что хорошо знаешь.
ЗЫ Я бы писал на Golang, ибо подходит идеально и уже хорошо знаю. |
||||||||||
2
Garykom
гуру
31.10.19
✎
20:20
|
1С кстати не подходит ибо не потянет 5000 потребителей на разумном по цене железе.
Java подходит, но вот Kotlin это больше для Android. Да можно смешивать Kotlin/Java в одном проекте но это изврат с точки удобства и доработки/поддержки. |
||||||||||
3
GANR
31.10.19
✎
20:23
|
(2) [Kotlin это больше для Android.] Чем именно Java лучше Kotlina? Вроде та же Java, только компактнее.
|
||||||||||
4
Лефмихалыч
31.10.19
✎
20:26
|
(0) на чем умеешь, на том и пиши
|
||||||||||
5
CrushBy
31.10.19
✎
20:28
|
А 5000 потребителей на 1С это как ? 5.000 пользовательских лицензий покупать ?
|
||||||||||
6
Garykom
гуру
31.10.19
✎
20:29
|
(3) К сожалению нет, чтобы писать на Котлине сначала придется хорошо выучить Джаву.
Потому что либы нужны а их тупо на Котлине пока нет, придется на Джаве брать. В итоге очень мало смысла от Котлина пока, да писать быстрее но фактически код как на Скала конвертится в Джава байт код, можно и в Джава нативный код конвертить. |
||||||||||
7
GANR
31.10.19
✎
20:34
|
(6) [Потому что либы нужны а их тупо на Котлине пока нет, придется на Джаве брать.] Так Java-библиотеки без проблем к программам на Kotlin-е подключаются. В чем же загвоздка?
|
||||||||||
8
H A D G E H O G s
31.10.19
✎
20:35
|
(6) Легким нажатием сочетания кнопок Java превращается в Kotlin
|
||||||||||
9
Garykom
гуру
31.10.19
✎
20:36
|
(7) А разбираться как эти библиотеки использовать кто будет? Когда все примеры на Java.
И бывает приходится в либах ковыряться, например вот пилишь ты чтение dbf и тут оппа. Либу писал англичанин и даже не подумал о том что есть на свете кириллица )) |
||||||||||
10
Garykom
гуру
31.10.19
✎
20:37
|
(8) Хрена с два превращается, вот Котлин в Джаву да превращается.
Джаву в Котлин можно только нечто из базовой Джавы. |
||||||||||
11
Garykom
гуру
31.10.19
✎
20:39
|
|||||||||||
12
GANR
31.10.19
✎
20:43
|
(10) [Хрена с два превращается] Хотите сказать, главная трабла в том, что может возникнуть надобность допиливать Java-код?
|
||||||||||
13
Ник080808
31.10.19
✎
20:50
|
(0) 1с + веб клиент шоб за лицензии не платить)
1С |
||||||||||
14
Garykom
гуру
31.10.19
✎
20:51
|
(12) Хочу сказать что не парьтесь и пишите на чистой Java используя только готовые либы на Kotlin целиком.
Т.е. надо правильно продумывать структуру проекта и его разделение для смешанной разработки Java/Kotlin. А лучше писать на чем то ином. Имхо для задачи нет ничего лучше Golang, мое мнение не голословное а как программиста который писал и на Java и пробовал на Kotlin. Про разные C#/.Net которые тоже хорошо знаю и речи нет. Еще есть вариант NodeJS но это когда под рукой есть JS спецы и хочется чтобы бэк/фронт были на чем то одном. Если такой задачи нет как в данном случае где по сути только бэк, то или Golang или Python пока наилучший выбор. Питон я не люблю, хотя сильная местами штука. |
||||||||||
15
GANR
31.10.19
✎
21:00
|
(13) А полнотекстовый поиск и 5000 юзеров? Даже если от наворотов БСП при начале сеансов избавить достаточно ли быстро сможет стартовать подключение к РЕСТ-ам?
|
||||||||||
16
Garykom
гуру
31.10.19
✎
21:00
|
(14)+ Кста у Golang есть огромный плюс, оно компилируется в бинарники, не требующие ничего для работы допом. Кросслатформенная компиляция, можно писать/собирать на винде под линукс и наоборот.
Java/Kotlin хочет JRE, для C# надо .Net/Mono, для Python/PHP тоже их интерпретатор ставить как и для NodeJS. А и никакого веб-сервера на Golang не надо, этим похоже на NodeJS. Просто бинарник запускается и он слушает порт. Для микросервисной архитектуры просто идеально. А микросервисная идеальна для задачи (0). |
||||||||||
17
GANR
31.10.19
✎
21:03
|
(16) Коллега тоже хвалил Go.
|
||||||||||
18
ДенисЧ
31.10.19
✎
21:04
|
Просто оставлю это здесь...
Содержимое папки d:\Go\Work\Hello World 10.10.2019 21:10 <DIR> . 10.10.2019 21:10 <DIR> .. 10.10.2019 21:10 2 074 624 hello.exe 13.05.2019 08:28 379 hello.go 2 файлов 2 075 003 байт |
||||||||||
19
Garykom
гуру
31.10.19
✎
21:04
|
(17) Угу штук потрясная для своей задачи, вот глянь это https://github.com/Garykom/akstat.ru было наваяно за несколько часов.
Тут работа с БД и реализация API. |
||||||||||
20
Garykom
гуру
31.10.19
✎
21:07
|
(18) Да есть такой минус, от размера бинарника можно офигеть.
Как и от размера использования RAM. Но ты еще добавь сюда (или вычти) размер веб-сервера того же apache или nginx, который часто требуется для работы кода на других языках. А еще есть виртуальные машины для Java/C# или интерпретатор который тоже место занимает. Когда у тебя контейнеры (докер или нечто вроде) это гм. |
||||||||||
21
Ник080808
31.10.19
✎
21:07
|
(14) твое мнение не объективное - ты фанат го) (15) а зачем тебе там бсп?
|
||||||||||
22
Garykom
гуру
31.10.19
✎
21:09
|
(21) Фанатом Go я стал после того как изучил многие другие языки/технологии.
И только для конкретной задачи производительного бэка, который потом еще пилить и пилить. |
||||||||||
23
Garykom
гуру
31.10.19
✎
21:10
|
(22)+ Кста недолго побыл фанатом node.js до того как столкнулся с офигенными граблями в нем.
|
||||||||||
24
GANR
31.10.19
✎
21:12
|
(21) Мне просто интересно насколько шустрее без БСП REST/Web-сервисы работать будут. Ни разу без неё их не делал.
(19) А есть ли под Go аналог Apache Camel (библиотека интеграции)? В 3-5 строчек кода позволяет по расписанию взять zip-файл с ftp, распаковать его и на РЕСТ содержимое отправить. |
||||||||||
25
Ник080808
31.10.19
✎
21:17
|
(24) ты неправильно решаешь задачу. Что это за сервис, кто ты в этой организации - штатный сотрудник или внешний на проект? кто это будет поддерживать и обслуживать?
|
||||||||||
26
GANR
31.10.19
✎
21:23
|
(25) Мы - системный интегратор, я - разработчик, конечный потребитель - бюджетные организации, поддерживать будем мы (по крайней мере первое время).
|
||||||||||
27
Ник080808
31.10.19
✎
21:27
|
(26) право собственности на сервис у кого будет? кто потом будет это сопровождать? что бы не получилось что заказчик заказал, вы сделали сервис а потом разошлись с ним и заказчик в мыле ищет специалиста по какому нибудь стеку и найти не может.
|
||||||||||
28
Garykom
гуру
31.10.19
✎
22:08
|
(24) >аналог Apache Camel (библиотека интеграции)
https://github.com/go-kit/kit Но имхо golang немного по другому устроен и применяется, там нет сложных XML описаний (если их сам не напишешь) там кодом. Причем предполагается для каждой отдельной задачки свой микросервис и еще один который использует предыдущие. Т.е. в любой момент можно любое узкое место переписать/заменить не останавливая работающую систему. >по расписанию взять zip-файл с ftp, распаковать его и на РЕСТ содержимое отправить Тут один микросервис берет с фтп, другой взятое распаковывает/трансформирует/пишет в базу и третий который готовое (например из базы) на rest выдает. А по какому расписанию и что запускать четвертый управляет по расписанию или аля админка. |
||||||||||
29
Garykom
гуру
31.10.19
✎
22:09
|
(28)+ Прикол состоит в том что можно согласовать интерфейсы и поручить 4-м прогам разным сразу одновременно писать код.
И в любой момент добавить/расширить/допилить - заменить один из микросервисов. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |