Тёмный

Как работает Java - ликбез 

Хороший программист
Подписаться 48 тыс.
Просмотров 67 тыс.
50% 1

Как и почему возникла Java, и зачем нужна виртуальная машина и чем Java отличается от традиционных языков программирования.
© «Хороший программист»
#QnA_программиста

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

 

19 фев 2018

Поделиться:

Ссылка:

Скачать:

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

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 112   
@brayanhustler93
@brayanhustler93 4 года назад
ошибку в коде: трудно найти легко потерять и невозможно забыть...
@tilekzholdoshbek726
@tilekzholdoshbek726 3 года назад
while(true) { System.out.println("Спасибо, очень понятно!"); }
@allonbillon
@allonbillon 5 лет назад
Большое спасибо! Это краткое видео по объему и полезности информации на единицу времени просто супер! И главное, очень понятно
@goodprogrammer
@goodprogrammer 5 лет назад
Спасибо! Лайк, подписка, кинуть ролик другу! :)
@allonbillon
@allonbillon 5 лет назад
@@goodprogrammer само собой )))
@foxes2307
@foxes2307 6 лет назад
Крутой формат объяснения
@WofWca
@WofWca 6 лет назад
Только вот есть подозрение, что видео спизжено с какого-то англоязычного источника, а "афтар" чисто перевёл и зачитал.
@goodprogrammer
@goodprogrammer 5 лет назад
@@WofWca обижаете, у нас только эксклюзив, только топ.
@DevPlayGame
@DevPlayGame 3 года назад
@@WofWca даже если так - спасибо автору.
@niko852
@niko852 6 лет назад
Примерно так я и представлял себе сборщика мусора)) Ну а в целом хорошее видео, приятный формат!
@anastasiiapavlenko3858
@anastasiiapavlenko3858 2 года назад
жаль, что нельзя поставить больше одного лайка. Спасибо Вам за отличную подачу материала
@jhvjhbkjn6050
@jhvjhbkjn6050 4 года назад
Крутой формат! Просто, понятно, музыка приятная))
@Deletedeletedelete
@Deletedeletedelete 6 лет назад
Классный формат! Дикция отличная
@FessNiklas1987
@FessNiklas1987 3 года назад
ахуеть. нормально объяснил, нормальная дикция, прикольная визуализация. я думал так не бывает
@goodprogrammer
@goodprogrammer 3 года назад
На нашем канале бывает )
@ZAZA-fo2ts
@ZAZA-fo2ts 4 года назад
Чувак, надеюсь ты хорошую зарплату получаеш за програмирования!!! Очень круто!!!
@liiapavlenko8138
@liiapavlenko8138 3 года назад
Благодарю за прекрасное объяснение 😌👍
@sergeykireev1431
@sergeykireev1431 5 лет назад
Объяснил понятным языком спасибо !!!
@dikiykipovec4918
@dikiykipovec4918 5 лет назад
Прикольно смотрится!
@axaxa6681
@axaxa6681 5 лет назад
Очень интесное и познавательное видео!
@eugenegreer7542
@eugenegreer7542 6 лет назад
Классный формат, хотелось бы и курсы по Java от Вас ))
@ZAZA-fo2ts
@ZAZA-fo2ts 4 года назад
Согласен
@DevPlayGame
@DevPlayGame 4 года назад
Искал что такое jvm и нашел ответ именно тут) Спасибо)
@dmytroboiko1
@dmytroboiko1 4 года назад
Очень хорошая падача, и рисуночки топчик )) Спасибо!
@goodprogrammer
@goodprogrammer 4 года назад
Спасибо!
@chydomonahsilver7855
@chydomonahsilver7855 Год назад
Очень доступно. Спасибо большое!
@check_and_test
@check_and_test 2 года назад
Прекрасно, спасибо!🙂
@adolfkozarski4556
@adolfkozarski4556 4 года назад
Круто, спасибо!
@user-xk5qx3cj2m
@user-xk5qx3cj2m Год назад
Очень доходчиво. Спасибо
@user-uy9jr8hs6r
@user-uy9jr8hs6r 4 года назад
Просто лучший!)
@raccoon8230
@raccoon8230 3 года назад
Божественное объяснение!)
@goodprogrammer
@goodprogrammer 3 года назад
Спасибо!
@user-ix9no6lk3o
@user-ix9no6lk3o 11 месяцев назад
agree, I'm impressed, I was thinking I could never understand this but now it's more than clear to me. Thanks a lot.
@user-dv8sl7xh7d
@user-dv8sl7xh7d 6 лет назад
Интересно, а главное все понятно, ++++СПАСИБО++++
@alexanderalexander1637
@alexanderalexander1637 3 года назад
смотря кому. мне понятно все но я сам могу рассказать подробнее.
@tsimbaland2905
@tsimbaland2905 3 года назад
классно, но хотелось бы чуть побольше про JIT
@M27B_our_victory
@M27B_our_victory 3 года назад
I like this tutorial!) I want more these video!) You have good channel!)
@danil007777
@danil007777 Год назад
Офигенная подача
@robin_hood22
@robin_hood22 3 месяца назад
Видео мне понравилось)
@amylouis7750
@amylouis7750 6 лет назад
Чувак спасибо
@user-wo3nm2gz1b
@user-wo3nm2gz1b 2 года назад
Спасибо супер спасибо за работу.
@user-ib7vx3yc4i
@user-ib7vx3yc4i 6 месяцев назад
Классный ролик
@vasilym5
@vasilym5 3 года назад
Для новичка в программировании визуальный формат подачи материала - лучше и не придумаешь!
@user-hp3xr8it8n
@user-hp3xr8it8n 3 года назад
Автор, спасибо тебе за видео, это одно из лучших видосов по проге, которые я видел в ютубе. Ты прям четко по теме говоришь, а многие авторы много воды льют, в итоге видос на 10 мин, а сути 0. Подписался на канал, буду следить за твоими видосами)
@darkhunter777
@darkhunter777 Год назад
урок рисования без PAINT 😁
@TheLogiko
@TheLogiko 5 лет назад
Наконец то я понял все это муть с языками. Спасибо:)
@goodprogrammer
@goodprogrammer 5 лет назад
Отлично! Рады, что помогли! :)
@alexchabanenko6347
@alexchabanenko6347 3 года назад
спасибо
@slavianskiy
@slavianskiy 17 дней назад
ошибка в обьяснении 3:58, байт-код не джава машина компилирует, а принимает его на вход
@davlatbekmirakilov2061
@davlatbekmirakilov2061 3 года назад
Java рулит
@kirbulichev3329
@kirbulichev3329 3 года назад
Супер super like
@SuperRusticus
@SuperRusticus Год назад
Java классный язык. Он - первый из тех, что я начал изучать. Из минусов для меня, Java громоздкая для небольших программ (утилит), поэтому для них лучше другие языки: python, kotlin и т.д. Но для больших приложений Java почти идеальная.
@100nirosta
@100nirosta 3 года назад
а почему в андроид устройствах нет java, но ест байт-код? Я нигде не могу найти java, где она спрятана?
@goodprogrammer
@goodprogrammer 3 года назад
Да там же, рядом с байткодом!
@lifeisstrange3134
@lifeisstrange3134 6 лет назад
Только недавно читал такую статью на википедии,не знал что выйдет это видео(
@Artistofun
@Artistofun 6 лет назад
эх, придется вернуть инфу обратно на википедию (
@MrRomanque
@MrRomanque 6 лет назад
Очень интересно и наглядно, в классических традициях Хорошего программиста. А где находится JVM? Вот например пишется приложение на Java под Andriod, соответственно JVM - это компонента Android Studio?
@Artistofun
@Artistofun 6 лет назад
jvm в андроид называется иначе en.wikipedia.org/wiki/Android_Runtime и работает она в самом андроиде, для каждого приложения запускается системный процесс, в котором оно выполняется (очень грубо говоря)
@zoomzoomchannel
@zoomzoomchannel 5 лет назад
JVM находится там же где все остальные программы и с какими либо IDE статической связи не имеет.
@Name-wo9jo
@Name-wo9jo Год назад
👍
@zloypatrick4232
@zloypatrick4232 5 лет назад
Это ты все парты изрисовал?
@goodprogrammer
@goodprogrammer 5 лет назад
Неприличными словами из 3х букв типа... JVM ?? )
@FeelUs
@FeelUs 6 лет назад
Вот почему они не сделали джаву с ручным удалением мусора? Я хочу это делать САМ!!!!111
@Artistofun
@Artistofun 6 лет назад
что за бред, пишите на С++ и будет вам как джава без управления памятью )
@FeelUs
@FeelUs 6 лет назад
Но это не кроссплатформенно. Чтобы было кроссплатформенно - надо тестить код сразу на куче платформ.
@Artistofun
@Artistofun 6 лет назад
Филя Усков пишите по стандартам и на кроссплатворменных либах, будет кроссплатформенно. Серьезные приложения все равно надо тестить. Вы придумали себе искусственную проблему. Зачем вам вручную управлять памятью??
@rembata3097
@rembata3097 5 лет назад
Филя Усков можно вызвать в коде гарбадж-коллектор и он очистит память, но там есть нюансы
@alexpiskal173
@alexpiskal173 Год назад
Почему нельзя написать свой компилятор для каждой операционки? Их не так уж и много
@RedkeiGost
@RedkeiGost 5 лет назад
У нас есть два компилятора, которые могут компилить код в байт-код под две разные операционки. Ок. Берем код, отдаем его двум разным компилятором на двух разных операционках - получаем два результата. Теперь у нас есть код, который компилится в джава-байткод, который отправляется двум виртуалкам, которые умеют компилить его каждая под свою операционку. У нас был универсальный код на языке программирования, теперь мы взяли универсальный код на языке программирования и сделали из него тоже универсальный джава-байткод и скормили его уже не компилятору, а виртуальной машине? В чем разница? Если не говорить об управлении памятью? И вроде как джава-машина интерпретирует джава-байткод прямо по ходу исполнения, нет?
@Artistofun
@Artistofun 5 лет назад
Разница в том, что на плюсах по-настоящему универсальный код возможен только в очень узких классах задач или очень простых проектах. Потому что ЖВМ для вас абстрагирует ОС почти полностью, включая низкоуровневый доступ, например, к USB портам. На плюсах вам надо под каждую ОС искать свои либы для работы с железом и с самой ОС.
@RedkeiGost
@RedkeiGost 5 лет назад
​@@Artistofun, я на плюсах не писал, я писал на питоне. Вот устанавливаю я питон на линукс через апт или на винду через .exe - он у меня и там и там интерпретирует один и тот же код. И если я не могу через встроенную либу питона подключиться к usb портам, это значит, что в интерпретаторе питона просто нет такой библиотеки. И все. Ну, допустим в ДжВМ есть такая под винду и такая же под линукс. Нужно разрабатывать две версии виртуальных машин под разные операционки, чтобы одинаковый код на джаве работал и там и там. Допустим, в питон добавили встроенную либу, которая умеет работать с усб-портами. И допустим, разработали два интерпритатора для винды и линя. Чем это отличается от разработки двух виртуальных машин с похожим функционалом, но под джаву?
@Artistofun
@Artistofun 5 лет назад
RedkeiGost ну питон гораздо ближе к жаве в этом плане, чем к сям
@RedkeiGost
@RedkeiGost 5 лет назад
@@Artistofun так заменить в примере питон на си, а интерпретатор на компилятор - суть вопроса моего не поменяется, я разницу не понимать.
@RedkeiGost
@RedkeiGost 5 лет назад
@@Artistofun тут виртаульная машиныа умеет в порты усб, там либа в компиляторе умеет в порты усб. Или компилятор не может дополнительные либы включать?
@stepanbazrov6330
@stepanbazrov6330 3 года назад
А разве я не могу 1 раз написать на c, а на разные платформы просто компилировать разными компиляторами?
@goodprogrammer
@goodprogrammer 3 года назад
Теоретически можете, но упоретесь портировать и адаптировать ваш код под каждую платформу. Если это сложное приложение, использующее множество библиотек и сложных функций системы. А не hello world
@stepanbazrov6330
@stepanbazrov6330 3 года назад
@@goodprogrammer ну наверное я могу использовать кросплатформенные библиотеки-прослойки для этих функций?
@goodprogrammer
@goodprogrammer 3 года назад
@@stepanbazrov6330 ну попробуйте и расскажите нам как получится
@UnitXXVII
@UnitXXVII 4 года назад
СПС
@user-uc4pf5to9h
@user-uc4pf5to9h 6 лет назад
Только Java принадлежит Oracle, как и Sun
@maxforest7133
@maxforest7133 5 лет назад
JVM написан на C++ , Jit на Cи.
@domeno8525
@domeno8525 2 года назад
Интересно, а почему вы стали преподавать руби, а не java?
@goodprogrammer
@goodprogrammer 2 года назад
Для новичка лучший язык - руби, а не java
@inbuckswetrust7357
@inbuckswetrust7357 2 года назад
Джависты сделали круто виртуальную машину ? :)))) В то время когда жава машина требовала обновления железа до топового на протяжении многих лет та же самая смалталк машина летала на железе 90х только в путь. Причем установка этой самой машины под ту же винду требовала просто папки с дллками :)
@Aleksei_Filatov
@Aleksei_Filatov Год назад
JVM писалась для бытовых устройств. Какое топовое железо?
@evan_kirk
@evan_kirk 7 месяцев назад
C# >>>>>>
@user-pm7ui9gc3c
@user-pm7ui9gc3c 6 месяцев назад
На плюсах же тоже есть сборщик
@gobpblueex
@gobpblueex 11 месяцев назад
И на самом деле да, это будет тормозить. Слава закону Мура, который сделал возможным плодить говнокод, абстракции над абстракциями над абстракциями. И наш Hello World соберется в файл на несколько мегабайт, запуск потребует уже под сотню и пару секунд времени, пока стартанет jvm. На железе, которое еще 30 лет назад считалось бы суперкомпьютером. Триумф потре#лядства.
@rubizer
@rubizer 2 года назад
Пипец хоть и малолетка, но понял, спасибо!
@askarovich6601
@askarovich6601 3 года назад
Код - uncountable понятие, нельзя говорить коды/кода
@goodprogrammer
@goodprogrammer 3 года назад
Только если это исходный код программы. Если речь о машинных кодах например это еще как countable. Потому что таких кодов (как чит-кодов в doom) всегда определенное количество.
@darkhunter777
@darkhunter777 Год назад
Мущина, запили видос как EXE шник из JAVA добывать - йа чото ваще непойму. После плюсов все как то убого выглядит
@mrsergey7469
@mrsergey7469 Год назад
Через graalvm
@100nirosta
@100nirosta 3 года назад
я обсалютно ничего не понял.
@neghahfa5645
@neghahfa5645 Год назад
Концепция автоматического сборщика мусора - самый тупой маркетинговый миф, что можно было придумать. Фактически, если вы не хотите «out of memory» вам нужно ВСЕГДА отслеживать области видимости и где нужно вручную освобождать ресурсы. Последние 20 лет разработки, факапы из-за утечки памяти вижу только на Java-проектах среди секты Свидетелей Сборщика Мусора. 😁
@a.o.yaroslavov
@a.o.yaroslavov 4 года назад
Лучше расскажи зачем нужен Stop The World. Хехе.
@goodprogrammer
@goodprogrammer 4 года назад
Александр Ярославов обязательно
@PROGamersf36
@PROGamersf36 3 года назад
Музыка мешает смотреть
@ruslanbu9924
@ruslanbu9924 4 года назад
не джава а ява назван в честь кофе ява
@Artistofun
@Artistofun 4 года назад
А у вас какой стаж "ява" программистом?
@goodprogrammer
@goodprogrammer 4 года назад
Питон или пайтон? Пхп или пиэйчпи?
@ruslanbu9924
@ruslanbu9924 4 года назад
@@goodprogrammer ну если ты Вася то питон а если Джонни из канзаса то пайтон как ты думаешь как правильней будет звучать у нас
@ruslanbu9924
@ruslanbu9924 4 года назад
@@goodprogrammer кто курил яву 100 и катал на яве 350 никогда не назовет остров ява джавой и яванское море джаванским как и японский авто джапанским
@Artistofun
@Artistofun 4 года назад
Пока вы курили яву, я «курил» джаву. И не надо сюда, где не шарите, свои гоп порядки тащить.
@arturiobn
@arturiobn 4 года назад
машинные КАДА - 80 уровень! Machine code или на Машинные коды! Дальше уже даже не интересно, dislike однозначно!
@goodprogrammer
@goodprogrammer 4 года назад
Вот сколько ни встречал программистов, если начинает докапываться до написания/произношения слов (не путать с code style) в первую очередь - так себе специалист. А видео отличное на самом деле (см. соотношение лайков и дизлайков).
@arturiobn
@arturiobn 4 года назад
​@@goodprogrammer Я просто улыбнусь в ответ.
@goodprogrammer
@goodprogrammer 4 года назад
@@arturiobn И хорошо (bit.ly/32CwNkj)
@oldjohn1503
@oldjohn1503 9 месяцев назад
Ты бы с динозавров еще начал.
Далее
Зачем нужна Java машина?
10:56
Просмотров 15 тыс.