Можливо хтось мав досвід вивчення Java після PHP?

Поділіться, будь ласка, досвідом та мінусами/плюсами екосистеми, трудностями при переході, перспективами

Є можливість постажуватись влітку з можливістю працевлаштування, як мінімум вивчити ReactJS, а також зануритись у Java SE/Kotlin (Spring)

Буду дуже вдячним за аргументовані думки!

LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

А які перспективи щодо роботи з базовим англійським на ринку серед вакансій Java/Kotlin?

Особисто також переглядав ваканції, склалось враження, що 90% це аутсорс, де вимагають гарну розмовну англійську, а цим наразі, я не можу похвастатись(((

Де працюєте Ви, які задачі актуальні вирішуєте на цьому стеку?

Котлин- мобиледев...Ну и эмбед бывает...

А які перспективи щодо роботи з базовим англійським на ринку серед вакансій Java

поганеньки. знаю по знайомих з базовою англійською. Сам пішов із Джави з інших причин.

склалось враження, що 90% це аутсорс

так і є.
Звісно є й невелички команди що програмують на Java. Але вони беруть тільки мідл+ рівня.

Ну і взагалі — вимоги до програміста на Java як до програміста зазвичай вищі чим до програміста на PHP

Як я кажу — джун на Java повинен впевнено знати або орієнтуватись у речах про котрі мідл на PHP і не чув, хоча й інтуітивно використовує на практиці

Досі згадую цей перехід, як страшний сон. Хоча до того роки 2 писав на PHP, всякі Пітони хелоуворлдив, Делфі, на плюсах щось міг поковиряти, плагіни до Вінампа на асемблері писав. Але от ті тони XML, який читається невідомо ким десь під капотом, викликали лютий біль та ненависть. Всі ці ClassNotFoundException вирішувалися якимось хаотичним гуглінням. Зараз все сильно краще, особливо без SpringBoot. Сама мова то достатньо примітивна.

особливо без SpringBoot

Думаю малося на увазі «з», а не «без»

Саме без. :) Всі ці бути в більшості випадків така сама магія, коли діло заходить трохи далі простих дефолтних конфігурацій. Думаю, новачку з ним буде дуже не просто.

«Возможно, кто-то имел опыт проверки аксиомы Эскобара?»

я перешел с PHP на Java лет 5 назад. Было немного сложно привыкнуть к «strong typing» & Exceptions. Но после того как немного поработаешь и разберешься что к чему, то на PHP вообще смотреть не хочется.
По поводу изучения — сильно зависит от того что вам подходит больше видео, статьи или книги? Я начинал с этого курса www.coursera.org/...​tion=java-object-oriented, после поготовился к сертификации education.oracle.com/...​e-11-developer/trackp_815, небольше статьи и туторилы www.baeldung.com из книг Java in a Nutshell shop.oreilly.com/product/0636920156727.do
В любом случае успехов!

5 лет назад и пхп был другой совсем, к слову. Даже PHP 7 еще не вышел.

Спасибо, но всё-равно нет. Я в php разочаровался и сталкиваться с ним больше не хочу

Так я вроде и не предлагаю. Просто мимо проходил и вижу, что ситуация с того времени сильно поменялась.

анекдот какойто, 80-90 процентов вебсайтов в мире пользуют пхп, а тут такая заява — я в пхп разочаровался.

86%. Як у Пу. А всі інші мови то ліберастичні.

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

Ну так дело-то вкуса, мне PHP не нравится, вам нравится — вот и замечательно! Разные люди — разные вкусы и предпочтения

Количество не признак качества.

Та ну прям совсем другой ? К слову 5 лет назад 7.0 уже вышел i.imgur.com/HsMnGIz.png

К слову 5 лет назад 7.0 уже вышел

когда отсчитывали 5 лет — калькулятором пользовались, надеюсь?

ищи книги Якова Файна, типа жава за 24 часа и т.д.

Дякую! Але в мене підхід інакший, подобається детальне вивчення на pet-проетах

Интуитивно неочевидная вещь в Java после PHP: в жабе код живёт в памяти долго, здесь мало такого что запустил-и-забыл. А значит ты куда меньше внимания уделяешь конструкторам, зато заботишься о том чтобы ничего в памяти не оставалось брошенным. Ну и разумеется, невозможность подсунуть новый код во время работы приложения. Конечно, способы есть — от физического разделения программ на несколько и общения между ними по протоколам, до JRebel и ему подобных франкеншетйнов — но как по мне, первые прочно и надолго обосновались в энтерпрайзе, последним же не место в продакшене, хотя в разработке ценность безусловна.

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

переписать его в уродца просто потому что он многопоточный

почему нельзя взять либу которая делает многопоточку неуродливой? java 5?

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

Те задачи, которым прикрутили многопоточку «из коробки», в большинстве своём в многопоточке и не нуждаются вовсе. Настоящая многопоточка нужна для написания кода с разным жизненным циклом. И вот когда наступает необходимость объединить такого кода поболее двух потоков — тут и начинается КЛАССИКА программирования, которая работала ещё до жабы, и переживёт ещё не одну сотню жаб.

Простой пример: нужно чтобы сервер (сильно чужой) обработал запрос. Запросов не так чтобы много, в пиковом случае 100 000 в час, но вот незадача, сервер иногда не отвечает. Иногда отвечает с опозданием. И его опоздания слишком часто зависят от того что ты прислал. И разумеется иногда шлёт неполные ответы, иногда не так запрос понял (недолетели пакеты). Так вот, надо чтобы оптимально держать нагрузку, на грани фола, чтобы все знакомые тебе ошибки были исключены из лога и велась статистика (при том что поток ошибок общий), и чтобы обрабатывались успешно СЕРИИ запросов от клиентов, а не только случайным образом отказывать. И длина серии примерно 2-10 минут. И вот этого дерьма в корпоративном секторе просто адское количество.

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

Ну дак любая технология принцип работы которой писателю кода неизвестен чревата

несколько гигабайт свежего в лог за сутки
в большинстве своём в многопоточке и не нуждаются вовсе

ты сейчас предлагаешь запросы в один поток обрабатывать?

И вот когда наступает необходимость объединить такого кода поболее двух потоков

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

Запросов не так чтобы много, в пиковом случае 100 000 в час, но вот незадача, сервер иногда не отвечает. Иногда отвечает с опозданием. И его опоздания слишком часто зависят от того что ты прислал.

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

Так вот, надо чтобы оптимально держать нагрузку, на грани фола, чтобы все знакомые тебе ошибки были исключены из лога и велась статистика

Потоки из реактивного програмирования на что?

Для хорошей неуродливой многопточки выглядит как задача претендующая на решаемость.

Задача решается правкой понятия «неуродливой».

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

А есть многопоточность задач с длинным жизненным циклом или захватывающих «бутылочное горлышко». Их нужно понимать, а не только вызубрить набор нужных слов. И есть задачи где этих самых бутылочных горлышек много, и приходится плести из них икебану — и вот тут уже помимо либ нужно знать МАТ.ЧАСТЬ, и не только знать, а ещё и уметь её тестировать, что не самая простая задача.

зашло на ура, только вот обратно очень сложно, много в php начало раздражать после java. Если работать с symfony после java еще можно стерпеть, а вот работать с таким как laravel, ну нафиг.

Симфони больше дает запах интерпрайза, чем Лара?

Та оно насквозь им пропитано, ещё и в Java style

ларавал был слеплен, чтоб его можно было легко взять и получить готовый каркас аппликухи с авторизацией и прочим из коробки. Но местами он отвратителен, многое прибито гвоздями или как попало сделано, очень многие вещи раздуты и пропитаны насквозь DI. Скажем ларавел терпим, но не одобряю его. Он превратился в коммерческий проект, который тейлор дает на аутсорс всяким не очень грамотным девам. И там на пулл реквесты ложат, забивают, или закрывают вообще без объяснений

Хлопцы а кто использовал JPHP habr.com/ru/post/216651 и PHPhipHop www.zzz.com.ua/blog/php7-vs-hhvm
Если да то как оно?

Эскобар использовал, он же эксперт

Лайна більше, код заплутаний вже out of the box. Тобі щоб зрозуміти чому нічого не працює як задокументовано доводилося читати сорци PHP? А з жабою доведеться.

Лайно жаби навіть не в тому, що вона жаба, а в тому скільки під неї «нового» написано, малосумісного зі старим, що по суті робить те саме. І тобі треба знати все це нове-старе кожного покоління маразму, при тому що ніфіга до кінця не дописано, куча «особєнностєй» (читай багів), звісно ж не документованих.

Якщо ти за день не сходив пару разів на stackoverflow, цей день неділя.

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

Если для своего проекта, ты прав. Почему бы и не котлин. Но если для работы... с тебя всё равно потребуют знания жабы, а далеко не Java Core.

я мав. Это даже сравнивать сложно. Это как океан и речка. рекомендую видео Мирончика.

Це як купа калюж проти величезного болота. Під яким другим та третім шарами ще болотця, кожне зі своєю трясиною.

Рівень документованості: бла-бла-бла-які ми хороші та космічно спрямовані, поклоняйтеся нам, а документацію ми колись напишемо, краще купіть книгу двотомник «ях анонірувать на JShinemaHuynia» — звісно ж тим самим бла-бла-бла та посиланням в дальніє стєпі типу «якщо ви знакомі з Ізєю з Дерібасівської, то ви знаєте що треба робити».

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

Дайте, будь ласка, посилання?

У него просто очень толково обоснован переход от джавы к джаве веб...

Подписаться на комментарии