Pull to refresh
-2
0.1
Денис И. @dplsoft

Системный Аналитик / Разработчик Java / etc…

Send message

Как там говорили?

"Не понимаю, почему минкульт платит тем, кто снимает фильмы, а не тем, кто их смотрит? Смотреть же ЭТО сложнее ..."

А можно вот всё точно так же, но только если ушел с киносеанса в течении первых 30 минут - и тебе возвращают деньги?

про вытеснение на Андроиде: см выше. это не свойства языка. Это результат политики/коммерческой деятельности Гугля. Котлин - это сейчас по факту - нишевый язык, аналогичный Свифту или Обджектив-си, который поддерживается исключительно усилиями платформодержателя.

Даже С#, как по факту, платфоменный язык для разработки под Виндоус, созданный после провальной попытки создать собственную несовместимую с основной спекой реалищацию java (юристы Sun знатно тогда поимели Майкрософт за J#), создаваемый на замену winApi+VC - он по факту более адекватен в этом плане (как универсальный промышленный язык выходящий за границы платформы и претендующий на создание бизнес-решений).

Про стиль джавы: новомодности в джаве, конечно придают популярности "среди молодежных движений", но повторюсь: они одни не способны вытянуть язык.

Вспоминайте историю последних 10 лет: ни одного "убийцы джавы" нет в живых, а джава есть. Может быть, у джавы есть что то более серьёзное чем модные фичи, лямбды и синтаксический сахар? что то касающееся подробного описания спецификации языка, тестирования на совместимость, наличие альтернативных совместимых компиляторов и обратную совместимость? читайте мой основной пост выше чтобы найти ответ.

увы но это в основном андроид. и это не свойства языка.

андроид - область в которой есть 2 аспекта:

(1) гуглю нужен "запасной аэродром" от нападок оракула. Собственно, если бы не гуль, никому Котлин и даром не вздался бы. А гуглю Котлин нужен вовсе не из-за технических качеств языка. более того - см ниже - Котлин джаве не конкурент, потому что ... (см ниже)

(2) у андроид программ короткий жизненный цикл, завязанный на выпуск новых версий андроида (т.е. о переносимости старых программ на новый андроид речи не идет). а это значит я что ваша систему надо перерабатывать/дорабатывать/обновлять каждый раз как гуль сделает новый андроид.

а это означает, что системы на котлине Андроиде, не могут быть большими - точнее с ростом объема, затраты на их содержание растут, и как правило совсем не линейно.

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

"Ах моська, знать она сильна..."

Народ, скажите, у нас что - криокапсула с адептом "напишем свой язык" откуда-то вывалилась? Ведь это уже давно было - только с языками.

Вспоминайте, как 10-12 лет назад, ту же Java ругали как только можно, совершенно игнорируя ключевые, важные для бизнеса фичи не столько самого языка, сколько поддержки и стиля развития. Каждый изучивший теорию компиляции/интерпретации делал своего убийцу джавы... С кучей синтаксического сахара, лямбда выражениями, и чем только нельзя...

Но вот - прошло 10 лет, джава есть, новых языков способных тягаться с джавай - нет. Потому что это очень дорогого стоит - не просто полностью описать внутреннюю модель языка, но и наладить тестирование и сертификацию на совместимость, обеспечить ~100% обратную совместимость. Но кто-ж это объяснит тем, кто кричит про архаичность, в погоне за синтаксическим сахаром ?

Вот и теперь. Дитё Человек воспитанный роботами модно-молодежными технологиями в упор не видит даже не армии методистов-архитекторов, создавших удобные и хорошо продуманные учётные механизмы (читай регистры. я очень хочу иметь такой же инструмент в джава - засунул туда измерения, накидал данные - а оно само посчитало остатки, движения, развернуло обороты и промежуточные срезы "буквально как только хочешь"... и olap тут во многих аспектах - рядом не стоял), механизмы отчётности (дайте мне такой же табличный шаблонизатор в java с визуальным редактором! я хочу просто клепать отчёты за полдня, а не это всё вытягивающее нервы-время-и-деньги тряхомудие с беком, рест-функциями, недопсевдомикросервисами, фронтом, джаваскрипт-библиотечками и семинаристками фронтендерами пилящими любой чих по полтора месяца...), систему метаданных с орм (хибернейт с jpa тут рядом не валялся потому, что не знает ничего про бизнес-сущности - документы и справочники с табличными частями)...

... вот не столько он не видит этого всего, сколько "не замечает" системы выпуска обновлений под постоянно меняющееся законодательство и налоговые требования, армии юристов и методистов это всё изучающими.

Это очень дорогого стоит - выпускать своевременно обновления под квартальную отчётность. И бизнесу важно ЭТО, а не "эти ваши кубернетиксы", открытые системы, и вся та чушь, написанная автором в разделе "почему это архаика" в статье выше.

Пожалуйста, изучайте вопрос, прежде чем делать такого рода выс... выбросы вбросы.

Если штука существует, существует долго, вопреки всему (как вам кажется), значит, как правило - что-то она делает правильно.

Давайте лучше винду все вместе поругаем, а? Ну реально же, больше толка будет))) Всем бобра.

Это изделие умеет "в несколько проектов" как эклипс или это такая-же модно-молодежная однопроектная фигня/среда для разработки курсовых как и идея?

а... это форк опенсорсной идеи ? вопрос снимается.

Ну что я могу сказать... не прошло и пяти десяти лет с тех пор как каждый второй школьник, не читавший Брукса и проблему серебряной пули, вдохновившись коллективным безумием и хайпом писал статью про то как он пилил монолит на микросервисы, а за оспаривание этого безобразия можно было отхватить и дизлайки и минусы в карму... как вот, наконец, до авторов начало доходить понимание, что маркетологов и школьников нельзя пускать в архитектуру.

Это, конечно, похвально. Нет, я серьезно - я то вот как бы сразу говорил, что "и миллиард муравьёв не вытащат бульдозер из карьера - для этого нужен другой бульдозер", что "микросервисы - очень частный случай компонентно-ориентированной архитектуры" и уже из-за того, что в них маниакально выкрутили в абсолют "фичу развязанности" - их нельзя применять огульно без понимания зачем это тебе... да кто-ж меня слушал ))))

Но, теперь то, дорогие мои, что делать то будем с уже наклепанными на коленке системами, в которых сотни дублирующих друг друга микросервисов, мирриады практически одинаковых ДТО-шек, которые боязно трогать... и разваливающиеся дышащие на ладан процессы завязанные на кучу "независимо разработанных фич", между которыми (о ужас! "никогда не было и вот опять!") есть зависимости, которые никто никогда не документировал, ни понимал.. ?

А ведь ещё есть толпы спринг-бут-овцев заточенных строго на один процесс разработки, один (имхо, достаточно примитивный) инструмент, и считающих что спрингбут=java....?

Что? бюджеты освоены, лохи окучены обучены на курсах "программист за 3 месяца", проекты радостно сданы, а проблемы поддержки - это проблемы тех кто следующим выиграет госконтракт ?

Риторический вопрос. Но решать надо. Всем добра.

а где в этой архитектуре находится модуль/подсистема, контролирующая бизнес процесс?

подсказка: у вас не архитектура "среднегагруженного проекта" - у вас архитектура "проекта в котором нет бизнес процессов" или они (процессы) примитивны - на уровне задач фейсбука, твиттера или вконташечки. нагрузка - это не только "тысячи примитивных рест-запросов к мьетлесс-микросервтсам", это ещё и "сотня ниток сложных бизнес процессов", которые дают вам такую же, а то и большую нагрузку.

пс: даже миллион микросервисных муравьев не вытащат из карьера промышленный бульдозер хоть сколько нибудь сложного бизнес-процесса. тут нужен другой бульдозер.

пс2: и если вы не контролируете юизнес-логику на сервере - у вас начинается утекание бизнес логики в код клиента, и в итоге вы получаете систему в которой высока вероятность "сделать запрещенное", послав запросы не в том порядке, как это предусмотрено нужным вам процессом.

действительно... IPMA с PMI тихонько и нервно курят в сторонке... их пошатнули.

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

да хоть возьмите классификацию проектов от IPMA и её кибернетическую многомерную модель проектной деятельности. и уже сразу станет понятно насколько узка и не полна предлагаемая в статье классификация деятельности.

то что деятельность на определенном уровне в направлении исполнения уже поставленной задачи можно уложить как фрактал... эта мысль вроде и понятна. это прямое следствие концепции декомпозиции.

очень часто атомарные задачи для управляющего - это мини проект для подчинённого.

да, непонимание этой простой истины часто приводит к идиотии вида "интеграции мс-проджекта и вижуал-студии", когда задача в плане менеджера - это "просто галочка" в списке туду в видал студии. галочки даже без иерархии. в одноуровневом списке галочек (фейспалм).

....

попытки систематизировать деятельность конечно можно только приветствовать. но надо бы и изучить хотя бы уже существующие систематизации и классификации проектной деятельности, прежде чем заявлять про универсальность в управлении проектами.

а то напоминает заявления вида "багзилла это инструмент управления проектом". и кучу... мухи, котлеты, ракеты, мясо , суп...

ну право.

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

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

а сейчас - у меня в эклипсе штук 5 рабочих пространств, под те проекты которыми мы занимаемся уже по несколько лет.

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

и рефакторинг очень удобно проводить. например ты переименовываешь функцию в каком-то общем модуле/библиотеке - а эклипс тебе находит где это используется во всех зависимых открытых проектах и одним махом рефакторит и их тоже.


______________
но поначалу может быть не привычно, понимаю)

там вон подсказывают, что джетбрейнзы, наконец, почти осилили : https://habr.com/ru/companies/spring_aio/articles/852526/comments/#comment_27481152

но не так как вы показываете.

это не мы отстали от жизни - это джетбрейнс отстали ))

джетбрейнз "нестормозили", и, на 10й (?) год существования среды разработки, наконец осознали/признали что концепция одного проекта ущербна и осиливают то, что в нормальных IDE всегда было из коробки ?))

вот это - уже сильно более адекватно походит на то что есть в эклипсе от рождения.
остается потом разобраться как эти элементы в мультипроектном пространстве работают друг с другом, и т.п
.______
offtop : вообще, вся эта эпопея напоминает историю вокруг яблочной "однокнопочности". сначала всем впаривали что "одной мышиной кнопки" хватает и "нашим пользователям сложно с тремя будет управляться", а потом яблоко выпускает "типа однокнокнопочную мышь", но у которой если нажать на левую половину тачпада - это клик, а на правую половину - о великое чудо - контекстное меню будет".

вот и тут. однопроектность - ну суть как та кнопка. не прошло и 10 лет.))

нет) это 2 проекта между которыми ты переключаешься. но они не открыты одновременно.
они не могут использовать как общий ресурс например третий проект.

это то-же самое, что открыть 2 проекта в 2-х разных окнах. только переключаешься ты между ними не через альт-таб, а верхним перелючателем, который вы показали.

для сравнения: в эклипсе у меня например в пространстве открыто (условно) 3 проекта (в реальности конечно больше). один - это модуль в исходных кодах, который используется двумя другими. например это может быть общий модуль с описанием сущностей и 2 проекта - например сервер, и тестовый клиент который продергивает запросы по заданному сценарию.

я просто правлю сущность, и перезапускаю тест. а сервер эклипс сам передеплоивает на томкат, причем частично и нагорячую - только те классы что изменились.

и все три у меня открыты одновременно, в одном рабочем пространстве. мне не надо между ними "переключаться".

Ну может для webStorm оно и работает. А вот для "IntelliJ IDEA" - нет. Как минимум текущая доступная версия "2024.*.* (Community Edition)" демонстрирует совершенно иное поведение.

в указанном окне в идеее нет кнопки attach.

Простите но повторю ответ данный вашему коллеге, тоже пользователю WebStorm: https://habr.com/ru/companies/spring_aio/articles/852526/comments/#comment_27480202

"Увы, но ваши представления об idea, java-ide, в данном случае, не соответствуют действительности.".

Итог: Тов. Java-разработчики, не кочевряжтесь. Переходите на Эклипс, Нетбинс или другую классическую IDE.

"Лошадь сдохла - слезь"(c).

С жабой не работаю, поэтому нюансов модулей не знаю.

Вот и ответ. Очень рад за вас, как пхпшников, но увы.

Ваши представления об idea, которая java-ide, в данном случае не соответствуют действительности.

Открыть 2 java проекта в idea, без костылей с псевдо-модулями - нельзя. А в конфигурации 2 проекта с общим модулем - как это можно без проблем сделать в "классических" IDE и том же эклипсе - и с костылями в идее выглядит геморройным квестом.

Ну, или показывайте пошаговое описание, и именно в "IntelliJ IDEA 2024.*.* (Community Edition)".

Тогда вы, пожалуйста, ответьте на вопрос заданный @PsychodelEKS
вот тут: https://habr.com/ru/companies/spring_aio/articles/852526/comments/#comment_27458508

1) Что надо сделать что бы в Идее открыть несколько проектов? и какой именно версии идеи и как её получить ?

2) Причем открыть не как модули одного проекта, а как 2 проекта, с разными "групповыми" помниками, - использующими один общий модуль ?

3) И как получилть продемонстрированный @PsychodelEKS скриншот ?

Потому, что, есть стойкое впечатление, что вы путаете "несколько модулей к одному проекту" и "2 независимых проекта с общим модулем".

Коллега, давайте разберемся подробнее.

Во первых, какая у вас, версия идеи ? )) у меня "IntelliJ IDEA 2024.1.2 (Community Edition)" и там нет такой кнопочки в меню открытия проекта.

Поиск по сети по картинке выдал какой-то пост в телеграмме про PhpStorm ( https://telegram.me/s/beerphp/62?q=%23packages ) и, насколько я понял, там речь идет об открытии нескольких репозиториев, причем как модулей к проекту.

С моей точки зрения, как человека далекого от погружения в особенности настройки Идеи - это как-то отдаленно похоже на то, как написано тут: https://www.jetbrains.com/guide/java/tutorials/import-project/open-multiple-projects

Это несколько сильно другое, чем несколько проектов в одном рабочем пространстве.
Это несколько модулей к одному проекту.

А в Эклипсе, например, я могу открыть совершенно разные даже не связанные проекты, причем даже под разные платформы. И не "фазовращать" всю эту конструкцию через настройки проекта, как описано в постах выше и как упоминал @mr-garrick ... а просто "открыть".

Например, пока разработка под андроид велась в эклипсе, у меня была связка 2-х прекрасных java-проектов, один под андроид, второй серверный - два проекта, использующих один общий модуль с объявлением сущностей. У меня в Эклипсе было 3 проекта - "контейнер с общим кодом и сущностями", и 2 "запускаемых" проекта. Я просто правил атрибуты сущностей, и перезапускал проекты - что бы проверить связку клиента и сервера с новым набором атрибутов.
Это, знаете ли, тупо удобно ).

И как вы понимаете, я описываю вариант, когда не "несколько модулей к одному проекту", а "2 проекта с общим модулем".

В описанных выше сценариях для Идеи - такое сделать невозможно.
А вот Эклипсе - "проще паренной репы".

И так. коллега. Расскажите, пожалуйста подробнее.
1) Что надо сделать что бы в Идее открыть несколько проектов? и какой именно версии идеи и как её получить ?
2) Причем открыть не как модули одного проекта, а как 2 проекта, может даже с одним общим модулем ?
3) И как вы получили продемонстрированный вами скриншот ?

Мы, кажется, снова о чем-то разном говорим.

Я говорю про "несколько проектов в одном окне", фиче, которая визуально всего-лишь добавляет в дереве "Project" ещё один уровень вложенности в дереве - проект. и эта фича не может "жрать место по вертикали".
Ну как минимум так это сделано в Эклипсе или нетБинсе )

Нет в идее многопроектности. Как минимум не было до последних релизов.
У меня например сейчас стоит "IntelliJ IDEA 2024.1.2 (Community Edition)" и там нет такого скриншота, как показано у PsychodelEKS ниже. У меня только 3 кнопки, без [Attach].

Вы ... "слегка не то... показываете".
В показываете группировку проектов на стартовом окне.
Это "немного" другое чем "открыть несколько проектов в рабочем пространстве".

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

Для "не вранья" стоит бы сказать с какого времени в идее появилась мультипроектность в рабочем пространстве, и как именно она выглядит? ))

Ну и по фичам как именно это выглядит, что умеет? Эклипс, например, умеет у мавеновского многомодульного проекта - если модуль исходниками загружен в рабочее пространство - собирать эти мавеновские модули сам, без мавена, "мавен-инстала" и затрагивания локального репозитория, и включать обновленные собранные классы в сборку исходного - и это происходит практически мгновенно, а не с той скоростью как это делает мавен. А что там у идеи?

"Лошадь сдохла - слезь." Говорят, мудрость есть такая.

Оттягивать неизбежный переход на другие IDE некоторое время, конечно, получится. Но как долго ?

И тут важно понимать, что с IDE ситуация совсем не как с ютубом - в других IDE инструментарий есть, и он такой же рабочий и функциональный, решает такие же проблемы, а местами и даже побольше.

Лучше бы написали как людям, которые привыкли работать в Idea слезть с неё, и освоиться в других IDE. Как найти привычные или аналогичные инструменты в том же Eclipse или Netbeans.

Ни одна здравомыслящая компания не будет позволять вам использовать нелицензионный софт на рабочем месте.

А завязывать процесс работы на хаки и полулегальные сценарии, которые ещё и могут завтра не заработать - это вообще сумасбродство.

Почему завтра у вас опенсорсная идея может накрыться медным тазом ? Потому что "типа опенсорс завязанный на одну частную компанию" - легко закрывается от доступа извне. Посмотрите на Qt - сейчас можно получить сорсы только из линуксовых реп и те, кажется, не последних версий. И только под Линукс.

Вспомните историю : тот же Соурсфордж запрещал доступ разработчикам из Ирана и Ирака. Даже Гитлаб таким грешил.

С чего вы решили что джетбрейнзы позволят скачивать и использовать "опенсорс" версию коммерческого продукта? Они коммерческие обязательства не исполняют и блокируют оплаченное, а вы забесплатно ждёте? нуну...

Ну и напомню : на работе вы всё равно маловероятно будете работать на идее - см выше про здравомыслящую компанию.

_______

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

И с "инструментом хорошо показаашим себя вам на уровне курсовых работ" Idea - вам ... "не то что бы по пути". Многие не согласятся и продолжат пилить свои утилитки, ну и я рад за них, но сейчас не про них, а про удобную организацию чуть более сложных проектов. Например когда вы подключаете общий модуль в виде исходного кода, а не как скомпиленный сторонний джарник и правите одновременно и свой проект и патчи в общий модуль делаете. И собираете как одно целое, а не взвесь библиотек в мавен репозитории, без "мавен инстала" к примеру. и т.д.

Я бы рекомендовал не кочевряжиться и, наконец, освоить Eclipse.

Вроде как в Netbeans тоже похожая организация проектов, но я его не щупал.

Письменный экзамен IPMA - на русском. Совнет - национальная организация IPMA - и всё, в том числе и требования к квалификации - на русском.

Как минимум до уровня собеседования.Но "собеседование на французском" - это уже уровень A - управление международными программами. Ну и участие в этих программах на соответствующем уровне надо подтверждать, лет за 10 минимум кажется - нам с вами до этого далеко)

На уровень D - это 1 день, письменный экзамен на русском, ничего подтверждать не надо (ну может кроме условного стажа, что вы хотя-бы год или два вообще работаете и участвовали хоть в какой-то проектной деятельности - уточните текущие требования в Совнет).

_______________
Насчет крыжения галочек на тему PMI - ничего не скажу. Там, может, вопросы и на английском.

1
23 ...

Information

Rating
4,075-th
Registered
Activity