Всем привет! На javarush по этой теме читаю, что есть класс URL. Когда гуглю, то там в основном речь про TCP и Socket.
Подскажите, пожалуйста, я гуглю что-то не то (у меня так было с потоками stream / thread). Или это это устаревший и новый подходы?
Ada
1 уровень
Работа с сетью в Java
Решен
Комментарии (6)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Стас ПасинковSoftware Developer в ZipyMaster
7 июля 2022, 07:27решение
а что вам надо делать в сети? :)
если коннектиться куда-то - то да, сокеты используются.
если просто в интернет ходить странички сайтов открывать - то часто используется библиотека Apache Http Client
+2
Ada
7 июля 2022, 08:02
а я пока не знаю, изучаю, что я там могу делать 😅
спасибо! поняла)
0
Стас ПасинковSoftware Developer в ZipyMaster
7 июля 2022, 08:45полезный
это просто разные классы для работы на разных уровнях.
сокеты - более низкоуровневый доступ.
класс URL использует там глубоко внутри те же сокеты, когда коннектится куда-то. но с ним там надо со стримами работать явно, а вот тот же HttpClient уже позволяет не ходить каждый раз в стримы чтобы что-то отправить или чтобы прочитать ответ, а просто позволяет вызвать метод типа setHeader() или getEntity(), и там уже под капотом оно либо же запишет в стрим, либо достанет из него
вы сами выбираете с каким уровнем/с какими классами работать. нужны какие-то специфические штуки - работаете на низком уровне, если надо просто из интернета картинку с котиком вытянуть - берете что-то попроще (высокоуровневое)
+1
Ada
7 июля 2022, 12:38
спасибо, что прояснили! а то пока с осторожностью изучаю, как бы не запутаться
0
hidden #598481
8 июля 2022, 09:44полезный
В таком дистиллированной изучении без практики толку чуть больше нуля. Во-первых копилочка в голове не резиновая, и всё туда не влезет, а во-вторых то что влезет всё равно забудется, если к этому не обращаться и не доставать.
Поэтому стремление что-то изучать сверх программы и более актуальное - это похвально, но будет гораздо-гораздо полезнее сразу пытаться что-то написать самостоятельно. Вот прямо не зная фреймворка, не во всём разбираясь, но кодить, и уже по ходу процесса разбираясь и вникая в суть происходящего. Во-первых удивишься, какие штуки вообще существуют, во-вторых кратно лучше разберёшься в материале, потому что это будет не зубрёжка, а живая практика - другие механизмы в голове будут использоваться, ну а в-третьих параллельно ты узнаешь многие те базовые вещи, с которыми не знакома исключительно из-за отсутствия опыта.
Мне в этом плане понравился русскоязычный канал letsCode, автор которого придерживается той же позиции: берём и сразу начинаем что-то делать. Бери любой его плейлист и просто повторяй, он просто написать своё вполне функциональное приложение. Начать рекомендую с плейлиста по спрингу, где он пишет свой аналог твиттера.
Ещё прикольные обучали есть на канале Vaadin official, который посвящён одноименному фреймворка, позволяющему писать веб-ui без JavaScript на чистой джаве, и генерирующему этот джаваскрипт у себя под капотом при компиляции. Прикольная штука, классно выглядит, легко пишется, ну и базу по спрингу они в своих видео тоже объясняют.
А то в сокетах со стримами можно до пенсии разбираться и так и не начать что-то полезное делать 😉
+2
Ada
9 июля 2022, 09:06
я задаю такие вопросы, потому что буквально неделю назад ответить самой себе на вопрос "зачем нужны стримы, какие для чего использовать, если их так много?" я не могла)
как-то вот мне проще разобраться, а потом вернуться к материалу и вспомнить его, чем знать, что есть темы, которые для чего-то используются, только ты не знаешь для чего 😅
я пока делаю вывод, что темы, связанные с абстракцией, требуют у меня большего понимания. поэтому, как человек, изначально далекий от программирования, хочу понять концепцию)
я правда стараюсь практиковаться больше, и поэтому отдельное спасибо за практико-ориентированные ресурсы 🙏
0