Тёмный

Почему Java для десктопа это плохая идея и какие есть аналоги 

Sergey Nemchinskiy
Подписаться 360 тыс.
Просмотров 71 тыс.
50% 1

Рассказал, почему использовать Java для десктопа плохая идея. Ну и на чем с моей точки зрения лучше писать такие приложения. Спойлер - с моей точки зрения сейчас это C#
Новый тренинг для новичков (Киев и онлайн): инструментарий Java bit.ly/2waKckJ
Проверь, достаточно ли тебе знаний чтобы начать обучение на курсе Java менторинг в FoxmindEd? bit.ly/30kGQct
Advanced он-лайн курс Enterprise Patterns: bit.ly/2HmlBQg
Сайт учебного центра: bit.ly/2VJAeFV
Учебный центр в ФБ: / foxmindedco
Разработка: software.foxminded.com.ua
Web-разработка: foxminded.agency
Мой Telegram: t.me/nemchinskiyOnBusiness
Мой блог: www.nemchinsky.me
Мой ФБ: / sergey.nemchinskiy

Опубликовано:

 

15 май 2019

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 349   
@NickMukhin
@NickMukhin 3 года назад
Категорически не согласен! 1) Время запуска десктопного Java приложения в наше время - совершенно не узкое место. Во первых JVM стали намного эффективнее, а во-вторых объемные библиотеки можно подгружать динамически по мере необходимости. 2) Среднему бизнес-приложению все эти свистелки-перделки, красоты и анимации на фиг не нужны, а чтоб окошки и кнопки выглядели не как жопа, а нормально и эргономично - есть кучи библиотек. В конце концов, для особо упоротых любителей "голубизны" есть JavaFX. 3) Конечно на всех осях есть свои средства разработки десктопных прилад, но какие ещё кроме Java позволяют скомпилить один раз и запускать везде? Тот факт, что на Java пишут сложнейшие IDE уже опровергает все аргументы против ее использования для десктопа. Однако соглашусь с Сергеем, что Java действительно все реже применяется на десктопе, но не потому, что она плоха, а потому, что не модна. За 30 лет в IT я видел немало прекрасных технологий, которые ушли в небытие из-за агрессивного маркетинга "новых, улучшенных с банановым вкусом" фреймворков и языков
@user-xn3ub2nn7s
@user-xn3ub2nn7s 2 года назад
С запуском у Java всё хорошо, если сравнивать с Python. У меня есть старые скрипты на Python + cli, по сути, там логика при запуске: прочитай конфиг (десяток записей), прочитай файл на пару Кб и покажи вопрос в консоли. Так вот это чудо стартует 5-7 секунд. Сейчас переписываю на Java, ещё не всё готово, но запуск до момента вопроса примерно 0.3 секунды. Есть ещё приложение на Python+Qt, можно успеть потереть красные глаза, пока оно запускается
@user-gc3lm8pi2v
@user-gc3lm8pi2v 2 года назад
Стоит ли при изучении java уделять много времени изучению gui? Нравится язык, пишу свое приложение для понимания более-менее всего и понимаю, что на данный момент есть два основных пути далее - андроид и бэкенд. Стоит ли добавить себе в изучение линию десктопных приложений или это будет не востребовано? Или сразу для десктопа (не могу не уделять этому внимание в принципе, так как закостенел благодаря делфи и в моем понимании это мастхев) учить какой-нибудь .нет или react native?
@thelensky
@thelensky 2 года назад
@@user-gc3lm8pi2v Не стоит.
@thelensky
@thelensky 2 года назад
Работал с javafx, минус технологии в том что разработка выходит дороже нежели js + electron (к примеру). На мой вкус и поддерживать чуть сложнее.
@romecold411
@romecold411 2 года назад
Nick прав - сейчас java-desktop работает очень прилично ! Сергей тут не прав и сильно погорячился в этом ролике !
@user-su2io1fp3r
@user-su2io1fp3r 4 года назад
Вы забыли про целый пласт ПО - промышленная автоматика. Существует много видов АРМ-ов управления системами, изолированных от внешнего мира по понятным причинам, поэтому там нет Web-а в принципе. Случай из моего опыта - АРМ управления был написан на Java+Eclipse SWT под Windows, а насколько лет назад "сверху" пришло указание отказаться от Windows и перейти на opensource(Linux). Представьте, что было бы, если бы пришлось всё переписывать заново! А так пару месяцев на проверку и всё.
@ivankipyatkov2968
@ivankipyatkov2968 8 месяцев назад
Всё так. Сергей, скорее всего, разделяет десктоп и интерпрайз.
@volodymyrsukrut7915
@volodymyrsukrut7915 3 года назад
Не знаю, я балдею от ретро стиля окон в Swing :)))
@irgendwer234
@irgendwer234 3 года назад
Я тоже, только этой gui библиотекой и пользуюсь
@Warfazer
@Warfazer 5 лет назад
Сергей, Вы не совсем правы в своих сравнениях - некоторые жопки очень даже ничего =)
@LobanovSpace
@LobanovSpace 5 лет назад
Хехехех
@dreamer_vi905
@dreamer_vi905 4 года назад
Давно мучал этот вопрос, Сергей, спасибо!
@AntiSmithhh
@AntiSmithhh 3 года назад
а как же Майнкрафт? ))
@JohnHeppner
@JohnHeppner 5 лет назад
Десктопные продукты от JetBrains, которые по сути написаны на Java, работают очень круто. Тот случай, когда "если очень захотеть, то можно".
@dmytro_dd
@dmytro_dd 5 лет назад
и жрут как не в себя. Больше, чем приложения на электроне
@sno-oze
@sno-oze 5 лет назад
TornadoFX они используют
@dmChanal1
@dmChanal1 5 лет назад
@@dmytro_dd а Вы попробуйте написать тот же функционал на электроне - боюсь вообще не запустится
@andrewelvlasov6316
@andrewelvlasov6316 5 лет назад
@@dmChanal1 VSCode with plugins ?
@dmytro_dd
@dmytro_dd 5 лет назад
@flakerZ vscode это мощный инструмент, стандарт де-факто для golang разработчиков. Так что не надо сказок
@user-re1pg5rw1x
@user-re1pg5rw1x 5 лет назад
Спасибо за видео. Поверхностно слышал про Qt, но не совсем пониманию в чем его плюсы и чем он лучше, например, той же джавы. Было бы неплохо, если бы вы сделали обзор по этой технологии - интересно ваше мнение.
@arboleet
@arboleet Год назад
плюсы qt это плюсы бдум тсс
@linuxoidovich
@linuxoidovich Год назад
Ещё gtk есть
@user-rp7ej6pq6j
@user-rp7ej6pq6j 5 лет назад
Я использую. Через javafx. В этом случае все выглядит красиво (благодаря css). Пока доволен.
@08284
@08284 5 лет назад
Как всегда, объяснили просто и понятно. Как всегда, лайк...
@angelpensive9145
@angelpensive9145 4 года назад
QT вам в помощь. С++
@wlasov
@wlasov 2 года назад
От c++ я на МК плююсь, но деваться некуда. Разработка В РАЗЫ дольше, чем на джаве. Гуй на этом делать - это надо быть извpaщенцем.... Разве что сишники сильно дешевле, единственный аргумент. Обычно прикладную дрянь на QT пишут для обмена с мк, и да, это криво, трудозатратно и необслуживаемо. Единственная причина - потому что программист микроконтроллеров кроме C как правило ничего не знает, чудо если с плюсиками знаком. А прикладную десктопную часть тоже пишет он. Я же на джаве под любое устройство пишу эмуляторы, и это офигеть как быстро и удобно. Вероятность искать ошибку днями и неделями вообще нулевая.
@comachine
@comachine Год назад
@@wlasov да неужели прям в разы? С гуи там все тоже самое что и с джавой же, чтобы добавить кнопку, не нужно трахаться с памятью, сарказм, это та же работа с гуи как и везде. А в принципе по кодингу сами плюсы очень похожи на джаву
@MaksymVashchenko
@MaksymVashchenko 5 лет назад
Вот ты говоришь java в десктопе плоха и т.д. А устроиться работать как раз на десктоп для первой работы у меня и вышло) Про eclipce RCP почему-то не все говорят, хотя это очень масштабируемая технология для десктопа.
@laochang938
@laochang938 3 года назад
благодаря комментам определился с тем, что мне нужно) спасибо за видео!
@TheDergraue
@TheDergraue 3 года назад
Жопа? 😁
@dmitriywhite8279
@dmitriywhite8279 5 лет назад
Сергей, не думали ли Вы сделать небольшие курсы/уроки для OCP?
@pamrpabkey4231
@pamrpabkey4231 4 года назад
Сергей, вы удивительно легко и приятно рассказываете! Очень рад, что нашел ваш канал =)
@SergeyNemchinskiy
@SergeyNemchinskiy 4 года назад
спасибо за такие чудесные слова)
@mikevinogradov3878
@mikevinogradov3878 Год назад
@@SergeyNemchinskiy заврался кое-кто об "убогом диалоговом интерфейсе". Трабл в том - что СUI и прочая лабула потом через Design Language "украшается".
@AlexFeaT
@AlexFeaT 4 года назад
У нас оффлайн приложение для проигрывания аудио и видео контента. Иногда взаимодействует с сервером для обновлений. Делать кросплатформенное решение для android/win/linux гораздо удобнее, чем держать 2/3 команды. Плюс тестированию проще, так как логика одинаковая. И необходимость в однотипных тестах на разных системах меньше. У нас был опыт, когда под android писали на java, а под win писали на c#. Логика работы приложений была разная, не смотря на то что задачи ставил один и тот же человек. Так же разнился функционал. Тем самым кросплатформенная разработка на java бывает выгодна, просто всё как всегда зависит от задач. Да и java удобна за счёт того, что если на ОС можно поставить java машину, то это означает, что там можно запустить наше приложение. Возможно понадобятся небольшие доработки, но это не разработка с нуля всего функционала.
@doit6695
@doit6695 5 лет назад
Сергей на прошлом стриме вы обещали подробный разбор по ЯП и сферах их применения .Вы не забыли ?Уже.......
@glebskachko1811
@glebskachko1811 4 года назад
Я пока ещё студент, но если честно, пока не сталкивался с идеей во front-end'е, которая не решалась связкой JavaFX + CSS
@HowItWorks
@HowItWorks 5 лет назад
Помимо производительности есть такая штука как удобство разработки. Если нужно быстро наваять полноценное десктоп приложение под винду работающее с базочками данных, то на мой взгляд самое лучшее что было это FoxPro. Там всё заточено под работу с БД (перечислять вкусности долго). Если нужно тоже самое, но не только БД, а какая то графика, звук, то Delphi. На последнем можно как просто декстоп с окошечками, кнопочками, так и игрушки под DirectX/OpenGL, а так же всевозможные динамические библиотеки для других приложух (например WinAMP, да и встраивал мультимедиа в тот же FoxPro посредством самописных библиотек). Это просто, быстро, эффективно. Джава хороша в мобильных девайсах, в вебе, кросплатформенность (это её фишка, для чего её и создавали).
@lynx6511
@lynx6511 5 лет назад
Для C++ есть прекрасный фреймворк Qt (учил довольно долго), позволяющий писать код, работающий на основных операционках (и даже микроконтроллерах, но не углублялся), в т.ч. и использующие фичи каждой (хоть и небольшой список) - Android/MacOS/Windows Extras. Есть также GTK, Wx, но ну их в пень, скажу честно. Сейчас вот net core будет новый, мб там и Forms какие-то завезут, вот это уже что-то интересное будет. А так, Java элементарно не затачивалась под десктоп, вот задачи там такой не стояло (не смотря на Swing и JavaFX).
@developerninja619
@developerninja619 5 лет назад
Мне кажется десктоп лучше писать на C#. Он приятнее и проще, чем C++ как язык. На нем пишут с помощью WinForms приложухи под винду, на Xamarin Forms под Android, IOS, Windows Phone, Mac OS X. А если надо что-то запилить под линукс, то MonoDevelop #GTK. По моему очень хорошая альтернатива Qt
@developerninja619
@developerninja619 5 лет назад
Я изучаю C++ и думаю, что выбирать: C# со всем его стеком .NET. Или же дальше учить C++ и потом Qt. Но все же пока что больше склоняюсь к C# .NET, думаю купить книгу по C# 7.0. на днях. Сможете переубедить?))
@saimonshaplygin7867
@saimonshaplygin7867 5 лет назад
Qt есть и для python, что позволяет быстрее разрабатывать чем на С++ и если нужно использовать ML и другие различные библиотеки
@user-xl2tf4gq1g
@user-xl2tf4gq1g 5 лет назад
@@developerninja619 flutter под Android/IOS, Java либо C++ Qt под Win, Linux, MacOS А под windows phone как-то странновато писать, когда их поддержка прекратилась Microsoft
@mihax56
@mihax56 5 лет назад
@@developerninja619 если всю жизнь планируешь писать десктопное ПО - флаг в руки учи сишарп. к вопросу выбору языка - сможешь назвать хотябы 2-3 программы уровня мелоксофтофиса/фотошопа итд, написанную целиком на шарпе?
@foxil4370
@foxil4370 5 лет назад
Здравствуйте, можете подсказать, у меня в городе появилась летняя академия от большой компании, она набирает студентов с небольшими знаниями и учит их бесплатно (если пройти небольшой экзамен )если успешно окончить курс то берут на работу, там есть курс Java я хотел пойти туда, но проблема в том что как оказалось это курсы по разработке софта на Java а софт клепать мне не очень нравится (но терпимо), душа лежит к web (front, beck оба направления оч нравятся). Подскажите пожалуйста что выбрать: идти к ним в академию ( просто это отличный шанс " войти в IT") или же самому учить web ?
@arturianec100
@arturianec100 5 лет назад
Я "мимо проходил", но советую идти к ним. Java прочно сидит в web backend со своими Spring Framework и не только. Другое дело, что Java многословнее скриптоты а-ля php, js, python. Зато на джаве пишут крупные надёжные приложения (из них очень много веб приложений).
@user-qf2xk1fg6e
@user-qf2xk1fg6e 5 лет назад
Про использование Golang в больших проектах. Что вы об этом думаете. Запишите пожалуйста. Очень прошу.
@user-sp3mv9kw9k
@user-sp3mv9kw9k 5 лет назад
На Java ещё и UML-редакторы делают, например Visual-Paradigm (наверно самый крутой UML редактор).
@alexandermaymin2621
@alexandermaymin2621 5 лет назад
Ну линейка ide от jetbains весьма сносна на разных ОС, и как я понимаю, написана на java.
@LobanovSpace
@LobanovSpace 5 лет назад
Da
@SpaSergo
@SpaSergo 5 лет назад
Он сразу сказал что ide как раз и делаются, а всё остальное уходит в веб
@LedoCool1
@LedoCool1 5 лет назад
@@SpaSergo Хах я слышал эту замечательную пургу, что все уходит в веб. Правда, рассказывают ее одни веб разработчики. В какой-то степени правда, в какой-то - нет. Но если говорить категорично "все уходит в веб", то однозначно пурга. Те же мобильники вот почему-то наоборот развиваются - веб заменяется набором приложений - каждое для своего сайта. Те же десктопные системы продолжают нуждаться в сервисных приложениях. Документооборот по принципу saas попросту на любителя. Если вы делаете свой dropbox то надо писать нативку. Да и вообще много чего так просто не выкинуть в облако. А мелкие компании выкидывают в облако как правило приложения для своего внутреннего пользования. Все что наружу идет, пытаются хоть как-то завернуть в скачиваемый апп - пусть даже через electron (буээ).
@SpaSergo
@SpaSergo 5 лет назад
@@LedoCool1 согласен. Десктоп будет жить ооочень долго. Точнее вечно, как минимум как альтернатива вебу.
@SpaSergo
@SpaSergo 5 лет назад
@@LedoCool1 те же операционки и прошивки это фактически десктоп
@kentforthable
@kentforthable 5 лет назад
я писал десктоп приложение на JavaFX, работает то оно работает, но вот много минусов. Например, там CSS обрезанный, нет доступных анимаций, как есть в вебе. А ещё всякие глюки, например когда назначаешь на ALT + какую либо клавишу, вызов какого-либо метода, воспроизводится звук не забиндиных клавиш(если в виндоус делаете приложение) ДА и для того,чтобы упаковать работающий jar с базой данных и со всеми библиотеками в exe инсталлятор тоже пришлось помучаться
@pahan51
@pahan51 5 лет назад
Плохо как то тема раскрыта. Нет упаминания конкретных библиотек графических элементов. Типа Swing, SWT, JavaFX. Все три вполне годные. JavaFХ сейчас очень активно развивается. Для медицинских учреждений, кассовых аппаратов, инвентарного учета и тому подобному вполне себе пишут на Java. Особенно раньше, до того как все на WEB перешли. Просто этот софт широкой публике не известен. Если десктопное приложение грубо говоря состоит из окошек, кнопочек и полей для ввода, то Java вполне хороший вариант.
@alexey3295
@alexey3295 5 лет назад
но ведь JavaFX уже не поддерживают
@pahan51
@pahan51 5 лет назад
@@alexey3295 Не совсем так. Начиная с Java 11 исключена из состава JRE/JDK и теперь развивается в рамках отдельного проекта OpenJFX, как набор модулей. openjfx.io/ Также как Java сейчас развивается в рамках проекта OpenJDK. openjdk.java.net/
@FrickUA
@FrickUA 3 года назад
+++, Хотя у меня был веб проэкт для касовых апаратов, ну точнее там полноценное рабочее место касира. Но десктоп будет жить еще ооочень долго. Пока все попытки мигрировать в облака разбиваются об отсутсвие адекватных интернетов, да и юай в браузере еще далека от идеала. Те же месенджеры у многих установлены десктопные , хотя у большинства есть и веб версии....
@developerninja619
@developerninja619 3 года назад
@@FrickUA я ниче не имею против Java и JavaFX, но чем плох web UI? HTML/CSS (CSS Grid, Flexbox, Bootstrap), JS (React, Vue, или тот же Jquery) и все очень красиво выглядит
@FrickUA
@FrickUA 3 года назад
@@developerninja619 дело ж не только во внешнем виде. Софт который активно использует внешние устройства сложно написать на "вебе". Для работы с графикой(хотя хтмл 5 отлично поддерживает канву) тоже часто нужны "десктопные" возможности. Ну и производительность, увы хоть веб и ооочень развился за последние 5 лет, всеравно ни джаваскрипт ни хтмл с цсс не рассчитаны на супер высокую нагрузку. В джиес нет многопоточности например(есть асинхронность) Постоянно нужно искать компромисс - много запросов к серверу тормозит из-за интернета, много данных на клиенте тормозит браузер. К счастью сейчас в моде минимализм и для большинства приложений вполне достаточно веба) у меня было несколько серъезных проэктов десктопных, поэтому я не могу согласиться с тем что джава там не состоятельна. Swing и JavaFX с поддержкой графического редактора интерфейса - супер удобные и очень мощные и отлично работают как на линукс так и под виндой без кроскомпиляций. Есть приложения которые обрабатывают например довольно объемные данные, для обработки в вебе нужно загрузить сначала на сервер, потом скачать с него результат, да и интернет должен быть хорошим и какая мощность сервера нужна для этого. Хотя сейчас есть гибридные приложения десктопные, которые во время установки просто поднимают локальный веб сервер и работают с ним, по сути совмещая мощь десктоп приложений с повсеместностью веба, и решают частично и проблемы производительности и отсутсвия хорошего интернета. Также нужно помнить что безопасность тоже не позволяет прям все реализовать через браузер. P.S. Да и честно говоря даже сейчас, глючность js библиотек, да и вся веб инфраструктура оолчень не стабильна, вроде и развивается все, и реально стает лучше, и типизацию ввели(тайпскрипт) но всеравно очень много багов и недопонимания.
@Roma4086
@Roma4086 3 года назад
а из чего вообще строится фротенд приложений для внутренних операций в компании? Например, вы пришли в банк и сотрудник банка заходит в систему работает с ней, на чем строится UI этой системы?
@ssurrokk
@ssurrokk 5 лет назад
что думаете о Kotlin?
@YWNWA-ZXC
@YWNWA-ZXC 5 лет назад
как раз шапры тоже упали в WPF, чем JavaFX плох?
@McRay8
@McRay8 5 лет назад
Из минусов можно добавить, что не каждый юзер хочет себе помимо приложухи ещё и jvm отдельно ставить. Можно упаковать, но тогда размер вырастет
@velsah5763
@velsah5763 2 года назад
Извините. На сколько? Я не в теме.
@McRay8
@McRay8 2 года назад
@@velsah5763 на размер jvm - при мне было где-то 200 мбайт
@FrickUA
@FrickUA 3 года назад
Блин. Вы приводите пример из статейки про джаву, с момента ее выхода. Вы видели сколько стартует современные Microsoft Office например, Photoshop? Они ж не на джаве написаны. Серьезные декстоп приложения тоже часто запускают раз в день/неделю/месяц, апотом просто включают сон на компьютере вместо выключения. Или программисты ide и все тулзы для работы с БД и чем то еще кажды день перезапускают?)) Java FX дает замечательную картинку. В любом случаи программа должна быть со стандартным интерфейсом, а не с рюшиками, фиг пойми как пользоваться. В чем проблема вызвать с джавы нативку, под разными осями разную, если это действительно важно для работы этого приложения? SAAS подходит далеко на для всех приложений. Пример? Посмотрите сколько не клиент-серверных приложений под андроид в плей маркете. Увы даже html 5 с его канвой, не дает хорошо реализовать сложные юай интерфейсы. Точнее дает, но писать нужно многое с нуля. Пример - палнировщики мебели, есть онлайновые, но либо убогие в использовании, либо с кучей самописных фишичек. Я как бы тоже за то что б делать веб ориентированые приложения, где эт о только возможно. Из минусов нужен хостинг, с поддержкой той же джавы, которые обычно доступны только на VDS, ну или клауд, а это все не очень дешево для мелких приложений, особенно если интернет им не нужен для основных функций. Да и даже современные html+css требуют хорошего бекграунда для построения адекватных интерфейсов. Что начинающему джависту может быть сложно. Это не кнопочек натягать на формочку, и по двойному клику события поописывать.
@zemskov88
@zemskov88 5 лет назад
С удовольствием смотрю Ваши видео, но с этим видео не согласен. На работе активно использую Swing с системным look and feel, и выглядит все как нативное приложение и под windows, и под linux, все достаточно симпатично. Со временем запуска и скоростью работы тоже никаких проблем не замечал. У java приложения интерфейс получается гораздо отзывчивее, по сравнению с web приложением, по крайней мере в случае если в приложении отображаются большие объемы данных, или если есть формы с большим количеством компонентов в них.
@andreymorozov1189
@andreymorozov1189 5 лет назад
Спасибо, вполне доступно изложено
@user-bp4co9ey5q
@user-bp4co9ey5q 5 лет назад
5:30 а как же qt?
@Maggistr44
@Maggistr44 2 года назад
Под ваши видео хорошо кодится (это комплимент).)
@HITROME
@HITROME 3 года назад
Сейчас весьма быстро запускаются десктопные приложения, написанные на Java, и если руки программиста не кривые, то и красоты сейчас чтоб навести всего в Java достаточно. Игрушки вообще классно клепать. Хоть 2d, хоть 3d.. Рендеринг быстрый, всякая акселерация используется. JIT компилирует в бинарник при первом проходе, и это заметно, к стати, на десктопных приложениях очень хорошо. Да и на WEB, когда та же JSP-шка при первом проходе слегка подвисает, зато при втором моментально отрабатывает. Где там 3, 5 или больше проходов - я не знаю... Ну, не видел такого ещё.. Гарбидж-коллектор - тот да, подстраивается иногда заметно как.. Особенно, когда какую-нибудь графическую демку делаешь или игрушку - запускается быстро, но через некоторое время иногда бывают проглюки в скорости, особенно, если сильно много процессорного времени забрал... На Java, конечно, много разных инструментов для разработчика.. Почему-то мало джавовского софта для работы с мультимедиа. И часто как-то так криво написаны бывают такого рода поделки, что поплюёшься и снесёшь.. Хотя я пробовал работать со звуком - если сделать всё качественно, то вполне всё бегает без каких-либо глюков... С видео серьёзно не работал, но что делал - сносно работало. Видел WEB-морды для видеокамер, где видеопроигрыватели были написаны на Java, как апплеты (ещё в старые добрые времена :-) ). Так там они и расшифровывали поток, и показывали.. И, самое главное, работали под любой ОС, что меня, как линуксоида, радовало. Так что, ничего подобного: Java для десктопа - это нормальная идея. Не сказать, всё-таки, что отличная, но вполне годная, особенно если её помножить на преимущества кросплатформенного приложения. ИМХО
@zakharbondarev7814
@zakharbondarev7814 2 года назад
Добрый день.Правильно я понял.Что декстоп капилируется под любую опериционную систему.То есть ма пишим программу на декстоп и она будет работать на линукс, юникс, и виндувс? Помогите понять пожалуйста.
@HITROME
@HITROME 2 года назад
@@zakharbondarev7814 Да. Java решает проблему кроссплатформенности. Главное, чтобы под платформу имелась JVM.
@user-sp3mv9kw9k
@user-sp3mv9kw9k 5 лет назад
Плюс, Open office и Libre office. Благодоря им, можно пользоваться вордовыми документами на линуксе, или на винде, без самого ворда.
@user-ip1tw5xo1i
@user-ip1tw5xo1i 5 лет назад
Если что, то они написаны на C++
@user-sp3mv9kw9k
@user-sp3mv9kw9k 5 лет назад
@@user-ip1tw5xo1i "Написана на C++ и Java[2] Операционная система Linux, Microsoft Windows и macOS Языки интерфейса Русский, английский и др. Первый выпуск 30 апреля 2002[1] Аппаратная платформа Java Virtual Machine" Вики. Это опен офис. А вот либре, действительно на C++. В любом случае, он был начат на Java. Он обладал всеми недостатками и достоинствами, приложений на Java (переносимость win/linux, тормоза в работе, большой функционал, по сравнению с другими десктоп приложениями).
@user-ip1tw5xo1i
@user-ip1tw5xo1i 5 лет назад
@@user-sp3mv9kw9k джавы там очень мало, в core 87% - С++ github.com/LibreOffice/core
@velsah5763
@velsah5763 2 года назад
Из опыта. На текущий момент мы возвращяемься к нехватке ресурсов. Понятное дело, что это касается не всех. Но средний бизнес страдает. Слишком разбаловались. Так что в будущем в пределах бывшего СНГ вижу тенденцию к менее ресурозатратным системам. (в сторону мелких)
@kirillsushilnikov9614
@kirillsushilnikov9614 5 лет назад
Спасибо за видео.
@msvru
@msvru 3 года назад
Как я ненавижу тормозные веб приложения. Очень прискорбно что всё туда скатывается. Разработчику удобно, пользователь страдает.
@comachine
@comachine Год назад
думаю это из-за того, что в основном разрабы пытаются впихнуть в веб тот функционал, который разумно действительно под силу только десктопу например
@ram0973
@ram0973 Год назад
Как под MS-DOS хорошо было))) Всё летало
@ruden6623
@ruden6623 Год назад
Хз, у меня норм всё. Хотя ещё смотря этот веб берётся с сервера или локально.
@user-vg1sr9ye5s
@user-vg1sr9ye5s Год назад
Кроссплатформа - это плюс, а не минус. Выглядеть приложение должно одинаково и на виндовс и на Линукс, что в этом такого. Реагировать на перемотки рабочих столов оно будет так же как и другие приложения, потому что это не от приложения зависит.
@user-rc5vv8sh5l
@user-rc5vv8sh5l 5 лет назад
4:39 Лучше,в случае необходимости потом продать портирование.(переписать для другой ос. за деньги)
@developerninja619
@developerninja619 5 лет назад
7:10 что такое "саас" приложения? Кто-нибудь может пожалуйста объяснить?
@ruslansergazin8239
@ruslansergazin8239 5 лет назад
SaaS - software as a service, гугли
@user-sp3mv9kw9k
@user-sp3mv9kw9k 5 лет назад
Также, есть Paas, Iaas, и т.д.
@developerninja619
@developerninja619 5 лет назад
@@ruslansergazin8239 спасибо
@AlexAlex-rc9di
@AlexAlex-rc9di 5 лет назад
Шарп прекрасен и логичен. Вот бы все языки были такие френдли. Да и много где сейчас используются интерпретаторы. Тот же Unity потом код из шарпа переводит в С++, а оттуда загоняет его в Java через дэв киты для совместимости с мобильными устройствами(может я не прав по поводу прослоек, и там немного иначе, но на выходе имеем Java). А для портирования в браузер, переводит шарп в html5. Ну т.е. со временем будет почти без разницы на каком языке писать, не считая определённых особенностей архитектуры языков, например когда на питоне удобнее писать машин лёрнинг.
@0imax
@0imax 5 лет назад
И всё-равно останутся ярые фанаты С++, доказывающие, что это не язык устарел, а программисты обленились (и будут правы).
@iteospace
@iteospace 7 месяцев назад
ML на шарпе легко делается
@MRoose
@MRoose 4 года назад
Спасибо за видео. В защиту винды скажу - пишите на шарпе + WF или WPF, в топку кросплатформенность
@111shooter1111
@111shooter1111 5 лет назад
Насчет текста, гугл док конечно работает в браузере, но вот MS Word Работает в браузере ограниченнее и медленее чем на десктопе. Веб хорошо тем что сам ей управляешь, обновление сам ставишь, не даешь доступ ко всем потрохам. Но вот софт вроде фотошопа онлайн маловероятен.
@barbershop1540
@barbershop1540 3 года назад
Облачный гейминг)))))))))))))))) скоро и до фотошопа дойдёт
@zhabrovets
@zhabrovets 4 года назад
А почему бы не загрузить java машину в память и не выгружать? Или сделать java машину частью операционной системы (по моему лет 15 назад эти идеи были)?
@SergeyNemchinskiy
@SergeyNemchinskiy 4 года назад
ага. и эти идеи привели к появлению ОС, в которую джава-машина встроена. И, привет, скорее всего на ней и работает ваш телефон. Это - андроид
@comachine
@comachine Год назад
@@SergeyNemchinskiy странно, почему бы не сделать тоже самое с виндой, линуксом и маком
@Cat_Programmer
@Cat_Programmer Год назад
@@SergeyNemchinskiy по этому ОС Android так много места занимает? Всё из-за JVM?
@ffelicius
@ffelicius 4 года назад
Подскажите пожалуйста, кто разбирается в теме. Почему на C# получаем нативный виндовый код, когда программы на шарпах точно так же под виртуальной машиной CLR работает?
@sergeydostovalov6180
@sergeydostovalov6180 3 года назад
У сишарпа виртуальная машина вместе с виндой поставляетя
@ffelicius
@ffelicius 3 года назад
@@sergeydostovalov6180 но ведь это не отменяет того факта, что между железом и кодом есть прослойка в виде CLR. В моем понимании нативность - это исполнение сгенерированных компилятором инструкций напрямую на процессоре, а не на виртуальной машине.
@sergeydostovalov6180
@sergeydostovalov6180 3 года назад
@@ffelicius C# не компилируется в нативный код, он так же как и джава исполняется в виртуальной машине. Медленный гуи на дескотопе у джавы связан с философией - всё делать на джаве, даже рендер. Обычно же, в С# делают биндинги к нативным вызовам вин апи, где C# просто задает конфигурацию компонентов и их состяне, а рендером занимается уже сама ОС.
@ffelicius
@ffelicius 3 года назад
@@sergeydostovalov6180 я и говорю, какая здесь нативность, если C# не компилируется в нативный код. Ну если в шарпах гуи биндится на винапи, тогда да, похоже на нативность. Спасибо за разъяснения)
@sergeydostovalov6180
@sergeydostovalov6180 3 года назад
@@ffelicius не за что ) Ну вот в качестве примера для джавы можно взять андройд. Там гуи тоже биндится нативно и поэтому приложения работают быстро, т.е. дело не в скорости виртуальной машины, а в биндинге к нативному гуи.
@codeline9387
@codeline9387 5 лет назад
Android так же использует jvm и там нет проблем описанных вами в видео.
@pavlotalashchuk6741
@pavlotalashchuk6741 5 лет назад
Разве приложение написаноe для андроид запуститься на ios? Тут не много не корректно сравнивать, в адроиде jvm (art) запущена постоянно и ее не нужно подымать по запуску приложение, во вторых еще пару лет назад ходили слухи что адроид разработка перейдет на какой то нативный язык, потому что запуск и работа приложений на адроид уступали тем же на ios если сравнивать на релевантных девайсах и-за как раз jvm
@homo-ergaster
@homo-ergaster 4 года назад
​@@pavlotalashchuk6741 На Kotlin они переходят. Только Kotlin тоже работает поверх JVM. Они на него переходят не потому, что на андроиде что-то плохо запускалось, а из-за растянувшегося спора с Oracle относительно авторских прав на Java.
@arammartirosyan2233
@arammartirosyan2233 5 лет назад
"Спойлер - с моей точки зрения сейчас это C# " Я человек простой, вижу любимый C# в рекомендациях == лайк не глядя.
@LobanovSpace
@LobanovSpace 5 лет назад
Я так же про Java могу сказать)
@KirillTerekhov
@KirillTerekhov 5 лет назад
Очень странно слышать аргумент про быстродействие и интрепретируемость в 2019 когда GraalVM позволяет полностью скомпилировать код AOT и выдаёт бинарник. Аргумент про ненативный UI тоже звучит странно. Большинство приложений сейчас пишутся на Web-технологиях. Там тоже UI ненативный, но он красивый и всем нравится. На мой взгляд, desktop на Java не пишут потому что нет хорошего фреймворка для этого. Mobile разработка на Dart тоже считалось дикой, пока не появился Flutter. Люди, когда начинают писать, выбирают технологии, а не языки.
@edkachalov
@edkachalov 5 лет назад
Пойди попользуйся Photoshop в WEBе.
@rebrov_vyacheslav
@rebrov_vyacheslav 5 лет назад
Зачем упоминать веб технологии если речь о десктопе
@megabaytm
@megabaytm 5 лет назад
@@rebrov_vyacheslav про electron слышал?
@rebrov_vyacheslav
@rebrov_vyacheslav 5 лет назад
Причем здесь электрон, явно же речь в другом контексте. П.с. - нет, до этого ролика не слышал, не моя сфера интересов.
@KirillTerekhov
@KirillTerekhov 5 лет назад
@@edkachalov я думаю, если бы Фотошоп начинали писать сейчас, то UI для него бы написали на на Web, а работу с графикой, "движок", - на языке с ручным управлением памятью. Так сейчас устроены VSCode, Skype, Hangouts. Список можно продолжать долго и он будет пополняться. Это не потому что JS лучше Java, Kotlin или C++, а потому что React, Vue и Angular лучше, чем JavaFX и Qt. Появился Flutter и куча людей стало писать на Dart, хотя этот язык сочетает в себе синтаксис Java с системой типов JavaScript. Думаю, если завтра появится крутой фреймворк для UI от какого-нибудь Амазона на Java, то все побегут писать на нём.
@sergeybure
@sergeybure Год назад
На Java написаны DBeaver, PyCharm и многое другое. На современных PC и Mac все быстро и хорошо работает.
@s1xshg09e197
@s1xshg09e197 4 месяца назад
На Java под десктоп хорошо написаны только продукты от жидбрейнс. Все остальное - полное гoвно, в том числе и дибивер
@dmChanal1
@dmChanal1 5 лет назад
Скорее дело еще и в том , что многие привыкли GUI разрабатывать, добавляя в редакторе формы и меняя их свойства - преимущественно мышкой. Еще с делфи и визуал-бейсика такое. Поэтому думают, что изучать джаву надо тоже с десктопа - типа легче и уже умеют. Но на самом деле для написания десктопного приложения на джаве надо знать намного больше - включая многопоточность и паттерны. Десктопные приложения в джава - это не для новичков. Еще не видел ни одного десктопного приложения у новичка в джаве, где бы код был нормальный. Но если Вы это все умеете - то может получиться офигительная вещь типа IDE от JetBrains
@tupsdupa5734
@tupsdupa5734 5 лет назад
Тормозная хрень все иде на жаве. Если на машине нет ССД диска и памяти минимум 8гб - работа в таких виде просто невозможна, это не работа а воспитание психопата который рано или поздно расколотит комп от тормозов выражающего меню 😌
@dmChanal1
@dmChanal1 5 лет назад
@@tupsdupa5734 расскажите об альтернативных IDE для больших проектов, которые имеют такой же функционал и работают быстрее. С меньшим функционалом их вагон и маленькая тележка. Кроме того, никто не запрещает RAM диск
@tupsdupa5734
@tupsdupa5734 5 лет назад
Даже vsc работает быстрее. А про функции если все тормозит их вызывать никто не будет🐱
@dmChanal1
@dmChanal1 5 лет назад
@@tupsdupa5734 мы про разработку на Java еще говорим? Если нет - то я могу привести пример blackbox component builder, который супермаленький и быстрый, и еще является каркасом Вашего будущего приложения. Но это совсем не про то. Если Вы работаете программистом, то знаете, что большую часть времени уходит на чтение кода и дебаг. Есть претензии к скорости по навигации по коду по этому вопросу к intelidea или к эклипсу? А что может тормозить реально - это сборка проекта. Ну тут это уже не от ide зависит. Я иногда и в jeany программирую, но это не заменит в больших проектах intelidea. Требования к железу Вы правильно указали. Но это Java вообще много кушает - Вам же еще приложение локально подымать. Я бы еще в требования хороший проц добавил. Если разрабатывать на старом железе, то надо или язык менять или брать старые версии ide которые намного быстрее так как у них функционала меньше. Раньше например для андроид разработки очень хорош был еклипс. А вот андроид студия у меня даже не запускалась на старом компе. В целом думаю если выпилить кучу функций типа интеллектуальной постановки из интелидеа (ради которой ее и юзают многие) то скорость сильно вырастет
@tupsdupa5734
@tupsdupa5734 5 лет назад
@@dmChanal1 именно удивительно даже просто прокрутка текста и то тормозит на этих новейших иде. Что они туда натолкали, очевидно если пользователь листает текст ненадо никаких интеллектуальных процессов делать. Когда сидит думает кнопки не трогает тогда и считайте. Только еще момент начали считать и все остановится не могут 😜 и все опять тормозит. Для человека вроде 100 мс считается уже раздражающей задержкой отклика интерфейса...
@vufer3d
@vufer3d 5 лет назад
Qt для плюсов шаг к аросплатформенно ти
@seka1309
@seka1309 5 лет назад
Для ВЭБ-а что лучше Java или C#?
@SirMenschsein
@SirMenschsein 5 лет назад
Приложения на JavaFX выглядят не так уж плохо.
@danilishei
@danilishei 5 лет назад
Даже очень. Там полностью кастомизируется
@LobanovSpace
@LobanovSpace 5 лет назад
Хм...
@alex-uk-kharkiv
@alex-uk-kharkiv 5 лет назад
​@@danilishei и костылизируется из-за сырого функционала.
@Ilyas377
@Ilyas377 5 лет назад
не впечетлил. был один проект, писали на fava fx. но оно жестко загрузил jvm
@developerninja619
@developerninja619 5 лет назад
Qt рулит))
@user-jw6fv7wz7o
@user-jw6fv7wz7o 3 года назад
А как же JavaFX ? Там с помощью CSS можно чудеса творить . И смотреться будет на всех системах одинаково. А одинаково красиво или жопошно зависит уже от вас)
@MrRedM1KE
@MrRedM1KE 4 года назад
Что-то не понял... В чём тогда коммерческая ценность языка, по Вашему мнению? В каких реальных проектах может использоваться, не считая разработки под Андроид? С чем тогда связана такая популярность языка? Под веб более удобнее, чем какой-то PHP, получается? - Не думаю, 90% сайтов на php почему-то.. Остается ещё какая-то "разработка сложных и хорошо защищенных распределенных систем" на серверах и клиенты к ним, получается, но явных примеров не знаю.
@Slash7b
@Slash7b 3 года назад
Рекомедационный алгоритм, дата платформа и т.д.
@alevlako
@alevlako 2 года назад
Хоть java на десктопе и не тренд, тем не менее, для десктопа на классической java с обычной библиотекой Swing и своими анимашками написаны не только офисная прога, но и несколько резвых приложений, работающих со сторонними устройствами по стандарту real time. Стартуют да, не по сишному из-за jvm, но в остальном проблем нет. Чтобы GUI быстро работало - потоки использовать и создавать UI так, чтобы на экране было именно то, что нужно, остальное пусть себе бегает на уровне данных, пока нет нужды показывать. Если кастомизировать L&F самому не хватает ресурсов, то вполне себе симпатичные шкурки есть в JTattoo.
@MiCola12
@MiCola12 2 года назад
Спасибо. Очень познавательно. Интересно что по факту все пытались делать всякие там JRE и .NET. А по факту универсальной средой SaS приложений стали: HTML, CSS, JS броузеры!
@user-mu1ul8qj1x
@user-mu1ul8qj1x 2 года назад
Ага броузеры это мошная срыда разработыкы
@mrixss
@mrixss 5 лет назад
По поводу Java-приложений, которые выглядят как жопа. Есть JavaFX, там всё сильно лучше. А по поводу аналогов, странно, что не был упомянут Electron. Множество кроссплатформенных приложений сейчас пишется на JavaScript и Electron (сходу могу назвать Atom, VSCode, Slack)
@vanhalen2210
@vanhalen2210 5 лет назад
Насколько хорош java как язык для обучения? Или стоит постигать азы с с++?
@kawaikaino5277
@kawaikaino5277 5 лет назад
Начинающий? - бери питон , от с++ полысеешь быстро
@dmChanal1
@dmChanal1 5 лет назад
Для азов если совсем никогда не программировали лучше pascal как бы его не ругали не придумано. Ну или можно из более современных golang или oberon-07
@protiv_bio
@protiv_bio 3 года назад
Да все ходит по кругу. Открываем Олиферов, хотя бы и первое издание, и смотрим аналогию на текущую ситуацию в виде мэйнфреймов и терминалов. Но потом почему-то перешли на индивидуальные компы. Разгадка одна - что дешевле в пересчете на единицу полезности, то и используется. Если у каждого будет дешевая память и программы не будут прожорливы, как сейчас, выгодно будет все из облак перенести на распределенные десктопы. Гит - по смыслу десктопное приложение, хоть и консольное в основном, а не UI. Если приложение пользуется минимумом сетевых функций, то оно не перейдет в веб. Например, документы я редактирую на машине для себя, а если нужно расшаренный документ - пользуюсь веб-приложением, но таких документов < 1% от всего, что я редактирую. Я вот игру купил mk11 - без подключения к интернету в принципе не работает. Когда сервера прикроют, этот "продукт" просто отправиться на помойку, и кто о нем вспомнит через пару лет?
@111shooter1111
@111shooter1111 5 лет назад
Сергей, ну не ОС все же выполняет команды :) код всегда выполняется процессором и исполняются непосредственные инструкции процессора. ОС предоставляет различные системные вызовы.
@Lorienl2master
@Lorienl2master 2 года назад
Ну не знаю про жаву машину относиться ко всем виду програм, а щас ПК то мощные, мы к примеру на работе юзаем javafx, как клиент для разных сервисов, именно мой проект это спринг Бут сервесы
@Selavy82
@Selavy82 5 лет назад
... ну есть AOT - начиная с Java9 в стандарте, а Excelsior Jet давным давно уже делали. Там такой проблемы нет
@dmChanal1
@dmChanal1 4 года назад
excelsior jet и компилируете (!) java(javafx) в очень компактный и быстрый дистрибутив.
@slayertmb
@slayertmb 3 года назад
чет все равно не понятно. если все упирается в веб в конечно счете то все интерпретирующиеся языки такие же ос- независимые. в чем же плюс именно явы
@user-io2gl1xi7b
@user-io2gl1xi7b 5 лет назад
Серьёзно? На JavaFX плохой дизайн UI? В ютубе полно обучающих видео с реализацией Material Design. Соглашусь, на запуск приложения, написанного на JavaFX уходит какое-то время, в среднем 1-2 секунды, но блин, что в этом криминального?)))
@user-bo4fh7of8l
@user-bo4fh7of8l 5 лет назад
Согласен. Мелкие красивые утилиты, которые должны одинакового отрабатывать в любой кофеварке - это скорее джава, чем кути. Какие то крупные десктоп приложения так или иначе касаются сети и лучше сразу делать вебсервис. Мое мнение.
@user-io2gl1xi7b
@user-io2gl1xi7b 5 лет назад
@@user-bo4fh7of8l В своё время (лет 10 назад) кодил на PHP и скажу что без JS или CSS не получится реализовать что-то футуристичное, например скрывающихся окон и плавающих кнопок. Проблема в том, что JS и CSS не работают стабильно в разных браузерах, а для enterprise это очень плохо. Плюс к тому, если Вы fullstask dev, и приложение должно работать в локальной сети, то будет удобнее писать приложение на одном языке, чем на 2+ языках.
@user-bo4fh7of8l
@user-bo4fh7of8l 5 лет назад
@@user-io2gl1xi7b я и не спорю. Сам когда то сидел на этом стеке (пхп джс/джиквери ксс хтмл мусикул). Я просто рассуждаю за выбор между джавой (и ЮИ джаваФХ) и плюсами с библиотекой кути. И плюсы и джаву я знаю, но рекомпилить приложуньку под разные архитектуры такое себе, так что я все таки склоняюсь к написанию на жабе. Пусть джава машину рекомпилят, а нам надо один раз написать и чтобы везде работало.
@yuriyuldashev9513
@yuriyuldashev9513 4 года назад
1-2 секунды, так .Net приложения дольше запускаются.
@JohnHeppner
@JohnHeppner 5 лет назад
Имхо, зачастую в 2019-м десктоп приложение - это Electron (или nw.js), в который заворачивают веб-приложение.
@PugachevIgor
@PugachevIgor 5 лет назад
Electron хорошая вещь, но там тяжело вызывать нативные API операционной системы. Хотел написать приложение под MACOS, которое работало бы в background и считало, какое расстояние прошел курсор за день. Нашел, с помощью чего сделать github.com/TooTallNate/NodObjC, но так и не понял, как с этим работать.
@JohnHeppner
@JohnHeppner 5 лет назад
@@PugachevIgor Есть вариант с C# - библиотека electron-edge-js.
@yuriyuldashev9513
@yuriyuldashev9513 4 года назад
Вопрос не так прост, как кажется на первый взгляд, аналоги java на десктопе тоже так себе, тот же с++ и с# за последние 20 лет сменили кучу фрэймворков для разработки под десктоп, другой вопрос, по соотношению выгоды и усилий, если уж пишешь на java, то пиши серверные приложения, там тупо денег больше. К слову сказать, те десктопные приложения, с которыми я сталкивался в аптечном и банковском бизнесе, выглядели на голову лучше, чем конкурирующие приложения на с#, но там возможно дело было в профессионализме разработчиков. Про скорость запуска - java запускается не медленней, чем .Net приложение. Про администрирование - положить рядом jre и настроить пути в скрипте запуска гораздо проще, практически на любой операционке, от linux до winxp, с .Net всё сложнее, если у вас не последняя версия десктопа или сервера от microsoft, то приложение может и не взлететь и никак это не исправить.
@catlogoc1722
@catlogoc1722 4 года назад
А на чем всякие дропбоксы, яндекс диск под win пишут?
@JackDaniels-yx3vg
@JackDaniels-yx3vg 3 года назад
Жаль что за год так и не ответили ((
@Konstantin_Terletskiy
@Konstantin_Terletskiy 4 года назад
Вот бывает такое, чтобы десктоп-приложение должно работать под всеми ОС и это прямо must have. Бывает. www.gses.com/simulation-technology/ например. Десктоп на Яве. Так что не вполне с автором соглашусь. Ну и, скажем, Станция Инструктора у атомного тренажёра и на C, C++ написанная нативно под конкретную ОС всё равно будет стартовать медленно, ибо ей кучу всего надо грузить. Это не баловство, нужно кучу всяких списков из базы подцепить, связаться по сети с Главным Моделирующим Компьютером и т.п. Опять же, у указанной фирмы, да и у той, где я сейчас работаю, кроссплатформанность декстопа обязательна, ибо заказчики бывают такие, что хотят Винду, а бывают такие, которые требуют только Линукс, а Винду либо на дух не переносят, либо им её нельзя поставлять по причинам санкций или безопасности. А держать несколько версий таких приложений под каждую ОС для компании излишние расходы. Красоты под конкретную ОС - ну сейчас уже и этот вопрос решается, есть возможность и под каждую ОС красоты дописывать. Видел я такие приёмчики. Кроме того, использование JavaFX делает вид GUI уже весьма красивым, и уж этим неприглядным словом это никак не назовёшь. А ещё сейчас появилась новая виртуальная машина OpenJ9, как утверждается, заточенная под уменьшение времени запуска. Так что не всё уж так плохо, что прям вот нельзя десктоп на Яве и всё тут.
@SergeyNemchinskiy
@SergeyNemchinskiy 4 года назад
спасибо за пример. не слышал о таких
@Konstantin_Terletskiy
@Konstantin_Terletskiy 4 года назад
@@SergeyNemchinskiy Справедливости ради замечу, что написание десктопов для разработчиков тренажёров электростанций и рабочих мест инструкторов и операторов весьма специфическая область. В России есть всего три известных мне компании, включая моего работодателя, которые этим делом занимаются. А то, что у GSE Systems на той страничке, я был одним из основных разработчиков JADE, JDesigner, JStation, у истоков ещё стоял. Ну ещё сталкивался по работе, ВНИИА написал на Свинге среду разработки диаграмм автоматики. Ну это тоже вещь такая, там красоты и супербыстрый запуск не требуются, а переносимость, вероятно, как раз требуется.
@sergdefault
@sergdefault 5 лет назад
У нас в продакшене приложения на swing и javaFx и нет никаких проблем. Все работает и на линуксе и на Винде.
@user-um6ru5gf2p
@user-um6ru5gf2p 5 лет назад
@Serhii Tsymbaliuk, у кого это "у вас"? Можно подробнее? Название компании хотя бы.
@user-hy3jf9oc4x
@user-hy3jf9oc4x 3 года назад
Завод гоша дудуарь
@chipsoft1
@chipsoft1 5 лет назад
Тем не менее знаю парочку крупных корпораций, которые используют Java для Desktop приложений. Количество клиентов - я так думаю сотни тысяч, а может и миллионы. Да, оно все громадное, да, оно не так быстро работает, но тем не менее от этого никто не собирается отказываться. И что самое интересное - приложение исключительно под Windows.
@EdwVee
@EdwVee 5 лет назад
Эх, как у меня пригорало от работы с Gephi написанной на джаве. Прога для работы с графами. Но мои сильно связанные, и она жрала сто гигов оперативы и жутко тормозила. Как разрабам пришло в голову тут джаву юзать.
@igoraleksandrovich1498
@igoraleksandrovich1498 3 года назад
C и C++ будут в тренде ещё долго.
@howareyou1674
@howareyou1674 Год назад
Вечные языки
@KKZ_5000_RUB
@KKZ_5000_RUB 3 месяца назад
Ну если примитивные всякие штуки то можно и через веб версию или RDP. А для чего-то более серьезного конечно нужно ПО и да лучше под конкретную ОС. Хрено что эта java не подходит. Чего же её тогда везде все учат кругом, если она не для чего толком не подходит?
@amr3184
@amr3184 4 года назад
а как же всеми любимый DevelNext ?
@SergeyNemchinskiy
@SergeyNemchinskiy 4 года назад
всеми? 8-0
@amr3184
@amr3184 4 года назад
@@SergeyNemchinskiy было большое сообщество у jPHP , поддержка прекратилась , но данная ide не потеряла актуальность (в качестве прототипирования десктоп приложений) . Эксперты их хабрахабр считают что писать десктопный софт на DevelNext это рискованное дело.
@nerveid
@nerveid 5 лет назад
А Minecraft который в первых версиях был запилен на java Desktop?
@user-qo4oc7uc1c
@user-qo4oc7uc1c 4 года назад
Он до сих пор разрабатывается на java, есть отдельное издание на С++. Если попробовать поиграть в java версию майна, то можно увидеть, насколько сильно она тормозит
@nightkosh3849
@nightkosh3849 4 года назад
@@user-qo4oc7uc1c как человек, занимавшийся модингом кубача очень долгое время, могу с уверенностью сказать, что тормозит он в первую очередь потому, что там внутри невероятно лютый говнокод. Хотя, конечно, это ещё не гарантирует, что он не тормозил бы при прямых руках его разрабов.
@LobanovSpace
@LobanovSpace 5 лет назад
Люблю видео про Java.
@merabc
@merabc 5 лет назад
В десктоп Rad Studio Delphi или C++ builder по моему хороши решение
@merabc
@merabc 5 лет назад
@@SergeyNemchinskiy борланда нет но Embarcadero занимается этим embarcadero.com, ну видите учиться надо всем и всегда ;) Может методология устарела но десктоп аппликация нам даёт больше возможностей для идентификации пользователя и использовать системные фичери, все таки решает задачи. Мне нравится ваша видео и соблюдаю всегда, может сделаете видео про десктоп приложении? Посмотрите новый версии Delphi и C++ builder
@romansmaksjutovs4291
@romansmaksjutovs4291 5 лет назад
Сергей, здравствуйте! Запишите пожалуйста видео о том, насколько надо углубляться в Java обучение, если планирую только писать для Android?
@juanantonio5941
@juanantonio5941 5 лет назад
Для Android, сегодня, kotlin
@Mike19910711
@Mike19910711 5 лет назад
Какие-то серьёзные приложения когда пилятся на C++ под несколько ОС, там как правило, пилится, грубо говоря, абстрактный класс для доступа к основным контролам, а затем под каждую конкретную ОС пилятся в виде отдельных библиотек реализации для вывода этих контролов под конкретную ОС. В самом коде приложения уже напрямую с гуем ОС не общаются, а юзают методы того абстрактного класса. По-моему так в Opera Presto даже делали (потому у них дизайн контролов одинаково на разных ОСях выглядел). Впрочем, существуют уже готовые решения для мультиплатформенной разработки приложений с гуем на C++: Qt, wxWidgets и др. Естественно, если речь идёт о написании очередного калькулятора или блокнота, так заморачиваться никто не будет (проще взять ту же Джаву и Swing и на них всё запилить). Я пробовал писать небольшие приложения на Java при помощи Swing, мне понравилось в общем-то, очень похоже на тот же WindowsForms у MS. С точки зрения пользователя, десктопные приложения на Джаве имеют ряд неудобств: во-первых, пользователю нужно устанавливать JRE (как я подозреваю, не на многих компьютерах она установлена пользователем заранее); во-вторых, есть инфа, что при работе через удалённый доступ интерфейс может не отображаться нормально (поскольку Swing использует hardware acceleration); в-третьих, потребление памяти, тормоза при вызове GC. И кстати, та же Intellij IDEA хоть и является лучшей IDE на сегодняшний момент, все минусы Java в ней ощущаются очень хорошо: долгий запуск, постоянные тормоза (вероятно, при сборке мусора); у меня Android Studio периодически зависает на пару минут, когда я просто пишу код в редакторе и IDE вдруг начинает искать предложения для автозавершения.
@mihax56
@mihax56 5 лет назад
серьезные приложения так пилились лет 20 назад, сейчас просто берут готовый фреймворк, а не изобретают трехколесный велосипед.
@Merkury778899556644
@Merkury778899556644 5 лет назад
=во-первых, пользователю нужно устанавливать JRE (как я подозреваю, не на многих компьютерах она установлена пользователем заранее); = если вы не знали, то jre можно поставлять свою собственную вместе с приложением простым копированием. Потом только как запускать будете ява -файл, укажите полный путь до java.exe \javaw.exe . Т.о. пользователю дополнительно ничего не надо ставить
@Mike19910711
@Mike19910711 5 лет назад
@@Merkury778899556644JRE 1.8.0 в установленном виде весит порядка 200 МиБ. Имхо, многовато будет, если к каждому распространяемому приложению на всякий случай прицеплять такой "багаж".
@user-nr2lj5ek4r
@user-nr2lj5ek4r 5 лет назад
OptionParalysis 200 будет если вы прицепите со всей документацией, исходниками и утилитами из директории bin. Если упаковать непосредственно среду и jar в один исполняемый модуль то будет гораздо меньше
@dimadima7904
@dimadima7904 2 года назад
Ну, смотря какая жопа. Есть даже конкурс вроде в Бразилии. У финалисток совсем даже не плохо выглядят.
@noone-hi6kq
@noone-hi6kq 4 года назад
в смысле не используют? КучаCRM разработаны на Джаве. И они все говно, но используются практически везде - от коллцентров до обычных офисов
@Merkury778899556644
@Merkury778899556644 5 лет назад
Не согласен насчет убогости. Под JavaFX вполне себе красивые приложения писать можно, которые будут мелькая всеми цветами радуги и иметь произвольные размеры и поведение
@user-ol6pw2uk4t
@user-ol6pw2uk4t 4 года назад
Не понял, говорите что java-приложение на десктопе долго стартует, а почему тогда на Android скорость старта java-приложений всех устраивает?
@SergeyNemchinskiy
@SergeyNemchinskiy 4 года назад
Там джава-машина зашита в ядро
@user-ol6pw2uk4t
@user-ol6pw2uk4t 4 года назад
@@SergeyNemchinskiy Но если Intel процессор помощней, то это не компенсирует скорость?
@user-ol6pw2uk4t
@user-ol6pw2uk4t 4 года назад
@@SergeyNemchinskiy А почему тогда пишут десктоп-приложения на python, если он ещё медленнее исполняется?
@msvru
@msvru 3 года назад
@@user-ol6pw2uk4t Не поэтому ли андроид старается не закрывать приложения а усыплять их, чтобы потом быстрее стартануть? На питоне пишут потому что проще писать. А тормоза пользователи потерпят.
@user-zi4xh4kz2k
@user-zi4xh4kz2k 2 года назад
Ну вот объясните мне, ведь на Яве пишутся приложухи для андроид?
@SergeyNemchinskiy
@SergeyNemchinskiy 2 года назад
пишутся. Там джава-машина является ядром системы
@denisbogoslovskiy6208
@denisbogoslovskiy6208 5 лет назад
QT ;)
@mikevinogradov3878
@mikevinogradov3878 Год назад
немного сгущает краски автор об "убогости визуальности", CUI ( common user interface ) специально отделён от Design Language. А вот имплементация Design Languag как раз и обеспечивает всякие "визуальные эффекты". Но Design Language ведь отдельный для совокупности проектов. Java FX - это ведь CUI. Ну а "надстройка" потом в виде стилей и прочих "тем" делается. По сравнению с Python ( wxPython , tkInter и т.п ) как раз на Java намного удобнее всё пишется. И управляемость всего этого намного лучше )..
@kookaburru
@kookaburru 5 лет назад
Все давно пишут десктоп на Delphi начиная с XE2, причём как для Винды так и для Мак и иОС, или Андроид.
@andgr8928
@andgr8928 5 лет назад
Умерла твоя Эмбаркадеро, последние 5 лет ее электрошокером приводят к жизни. Я сам перешел на Visual Studio, там и веб и андроид и iOS и Windows и поддержка нормальная и документация отличная.
@kookaburru
@kookaburru 5 лет назад
Это глубокое заблуждение, на Delphi намного проще писать код под все платформы.
@developerninja619
@developerninja619 5 лет назад
@@kookaburru 😂😂😂😂
@retriever7061
@retriever7061 4 года назад
Староверы пишут, и особенно бохатые, она же немеренно денек стоит. А молодешь всё пишет исключительно на Петоне, самое модное и бесплатное, и главное - без противных {скобок}. Вчера тут график анимированный смотрел в динамике, им даже и Джава не нужна.
@romecold411
@romecold411 2 года назад
Ничего подобного ! Сейчас Java-Desktop широко используется и работает очень прилично !
@yurim7756
@yurim7756 3 года назад
Тю. В .Net те же проблемы, но при этом проблема десктопа легко решена. Есть Xamarin, проекты этого типа компилируются в десктоп под любую систему. Под макось, под андроид, под ios и там остальное. При этом, Xamarin, в отличие от Unity 3d, платформа не для разработки игр, а именно для разработки десктопа. И фокус там в том, что интерфейс описывается в Xaml, т.е. xml язык, в котором просто описываются в общих чертах необходимые элементы, а Xamarin компилирует уже под конкретную систему так, чтобы они выглядели как принято в той системе. Код практически тот же, а выглядит, как родное для каждой системы. Т.е. проблема красоты решена. Проблема оптимальности сильно как бы преувеличена. Под дотнетом уже 20 лет пишут для винды как основным средством для разработки десткопа, вообще никто не замечает скорости насколько оно медленно или быстро стартует. Это на глаз не очень-то заметно. Но а размер, да. Есть такая печаль. Пока люди ходят в кармане с дешевыми калькуляторами, то приложение с 3-мя кнопками сразу так за 20 мегабайт на андроиде, это пока что может кого и отталкивать. Но такие же мысли когда-то были и у виндовых разработчиков, типа надо каждый байт трахать )), а потом оказалось, что вообще никого не волнует, 1 мегабайт или 20. Или даже 200, если приложение нужное. Только упоротых преждевременных оптимизаторов байты на диске интересуют. Так что и джава могла бы такое делать. Видимо не хочет этот рынок.
@ram0973
@ram0973 4 года назад
Это слабая позиция, если отказываться от чего-то. Типа мы за вас решили, вам этого не надо. C# не отказался, там и Prism, и WPF, и Unity. А что на Java? JavaFX и тот выпилили из библиотек. И если человек будет сейчас выбирать что учить, Java или C#, он выберет C#. Достаточно посмотреть, как развивается язык, и библиотеки (я в курсе, что энтерпрайз консервативный), да и конкуренты тот же Котлин развиваются быстрее (мне Java нравится если что)
@BossVspMax
@BossVspMax Год назад
Почему Python для Android плохо?
@calchome2768
@calchome2768 3 года назад
Delphi/Lazarus отличная ide... Или processing... Все мультиплатформенное
@user-nh5yb2uv4b
@user-nh5yb2uv4b 4 года назад
На С++ пишут не потому- что тремя пальцами крестятся, а потому-что он быстрее явы раз в сто, а если сделать в релизе, то и в 200 )))
@trenkvaz
@trenkvaz 4 года назад
Для интерфейса вообще не важна эта разница в скорости.Ни один пользователь на заметит разницу, что кнопка откликается на сколько-то миллисекунд медленнее. Большая часть кода в пользовательской программе не требует больших скоростей выполнения. Если в программе есть кусок, для которого критична скорость, ну ее можно написать на С++ и вызвать из Java. Все знают, что чем сложнее структурно программа, тем выгоднее использовать именно java.
@user-nh5yb2uv4b
@user-nh5yb2uv4b 4 года назад
@@trenkvaz конечно все знают что сложные вещи пишутся на JAVA, а вот всякая мелочь - как-то ОС, CADы, компиляторы, виртуальные машины, браузеры пишутся на плюсах)))
@msvru
@msvru 3 года назад
@@user-nh5yb2uv4b Так им нужно быстрее хуяк-хуяк и в продакшн, а не за байтами следить. Иначе конкурент первым впарит товар лоху.
@user-nh5yb2uv4b
@user-nh5yb2uv4b 3 года назад
@@msvru А потом имеем что имеем. Как-нибудь интернет-магазин, с 10 покупками в неделю, требует для своей работы 3-4 ноды, хотя должен со свистом работать на расбери пи ))
@SoBoL9500
@SoBoL9500 4 года назад
А как же Minecraft?
@user-wn9ir6zs5e
@user-wn9ir6zs5e 5 лет назад
Java на декстопе отлично работает и отлично смотрится. Рассуждения, что java не подходит для десктопа по крайней мере убого.
@markbeaver4806
@markbeaver4806 9 месяцев назад
Да, все зависит от прямоты рук. А то все критикуют - а само в последний раз пробовали какой-нибудь awt
Далее
Редакция. News: 117-я неделя
46:26
Просмотров 1,4 млн
Как выбрать - JAVA vs Python
10:41
Просмотров 243 тыс.
Что такое Git? Зачем он нужен?
14:30
Что должен знать джуниор?
12:12
Просмотров 75 тыс.
Редакция. News: 117-я неделя
46:26
Просмотров 1,4 млн