|   |   | 
| 
 | 1С, Java, Kotlin. Управление НСИ с раздачей по API. | ☑ | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 0
    
        GANR 31.10.19✎ 19:58 | 
 
        Как Вы считаете, на чем лучше разработать систему управления НСИ. Вот список источников НСИ:
 1. Справочники с ftp://free:free@ftp.zakupki.gov.ru/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-м прогам разным сразу одновременно писать код.
 И в любой момент добавить/расширить/допилить - заменить один из микросервисов. | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |