Q: ЧТО СКАЖЕТЕ ЗА ДЖАВАРАШ? A:Худшая инвестиция в твоей жизни. Огромное количество говнокода, оторванные от жизни задачки, 1000 заданий по выводу в консоль какого-то говна.
Q: Посоны, собираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом? A: На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.
Книги: - Head First Java, (2nd Edition) : Kathy Sierra, Bert Bates - для совсем нулячих простым языком. - Core Java (9th edition) : Cay S. Horstmann, Gary Cornell - тоже для нубасов, но на серьёзных щщах. - Thinking in Java (4th Edition): Bruce Eckel - для тех, кто уже умеет в программирование на другом языке, но хочет перекатиться. - Effective Java (2nd Edition): Joshua Bloch - для тех, кто знает джаву, но хочет перестать писать костыли. Больше здесь: http://www.proklondike.com/books/java.html - Soft Skills: The software developer’s life manual : John Sonmez - сказки на ночь.
Q: Хули все книги на английском? A: Без английского ты не нужен и можешь смело идти нахуй. Ну или в 1С-тред.
Q: Я не могу в книги. Наткнулся на джавараш, но в самом верхнем вопросе уловил нотки сарказма. С ним все правда плохо? A: Это очередной курс(выучи джаву за 60 секунд и получай 300к в месяц), основная цель которого - выкачать из тебя деньги.
Q: Я выучил кор, достаточно ли этого, чтоб взяли на работу? A: Лол, конечно нет хотя некоторым всё же везёт. Цикл статей что в каком порядке учить: http://dou.ua/lenta/articles/java-beginner-guide-1/ (заблочен РосКомПозором, юзайте прокси)
Q: Всё это хорошо, но без алгоритмов меня на работу не возьмут. A: Не беда, вот курсы от Принстонского университета: https://www.coursera.org/course/algs4partI То же самое но в бумаге: Роберт Седжвик, Кевин Уэйн - Алгоритмы на Java
>Q: ЧТО СКАЖЕТЕ ЗА ДЖАВАРАШ? >A:Худшая инвестиция в твоей жизни. Огромное количество говнокода, оторванные от жизни задачки, 1000 заданий по выводу в консоль какого-то говна.
>Q: Посоны, собираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом? >A: На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.
>Книги: >- Head First Java, (2nd Edition) : Kathy Sierra, Bert Bates - для совсем нулячих простым языком. >- Core Java (9th edition) : Cay S. Horstmann, Gary Cornell - тоже для нубасов, но на серьёзных щщах. >- Thinking in Java (4th Edition): Bruce Eckel - для тех, кто уже умеет в программирование на другом языке, но хочет перекатиться. >- Effective Java (2nd Edition): Joshua Bloch - для тех, кто знает джаву, но хочет перестать писать костыли. >Больше здесь: http://www.proklondike.com/books/java.html >- Soft Skills: The software developer’s life manual : John Sonmez - сказки на ночь.
>Q: Хули все книги на английском? >A: Без английского ты не нужен и можешь смело идти нахуй. Ну или в 1С-тред.
>Q: Я не могу в книги. Наткнулся на джавараш, но в самом верхнем вопросе уловил нотки сарказма. С ним все правда плохо? >A: Это очередной курс(выучи джаву за 60 секунд и получай 300к в месяц), основная цель которого - выкачать из тебя деньги.
>Q: Я выучил кор, достаточно ли этого, чтоб взяли на работу? >A: Лол, конечно нет хотя некоторым всё же везёт. >Цикл статей что в каком порядке учить: http://dou.ua/lenta/articles/java-beginner-guide-1/ (заблочен РосКомПозором, юзайте прокси)
>Q: Всё это хорошо, но без алгоритмов меня на работу не возьмут. >A: Не беда, вот курсы от Принстонского университета: https://www.coursera.org/course/algs4partI >То же самое но в бумаге: Роберт Седжвик, Кевин Уэйн - Алгоритмы на Java
>Предыдущий: https://2ch.hk/pr/res/959011.html Джава питухи соснули даже у гоферов. >кокок 64 GB хватит всем >8 ядер и IDE почти не глючит >Solaris отличный выбор
>>963318 Я даже не представляю каким дегенератом нужно быть чтобы в 2017 дать миру ебаную консоль. У них project valhalla несколько лет висит, его ждет весь жава мартыханский мир. Но нет, давайте захуячим за пару дней максимально урезанную ide под видом консоли, чтобы красноглазым прыщавым пидорам после релиза было что обсуждать на стаковерфлоу.
>>963325 Доброго времени суток, уважаемые. У меня к вам 2 вопроса. 1. Есть ли у вас конфа в телеграмме, или что то подобное? 2. Прохожу туториал для начинающих и застрял на заданиии где переделан метод say подклассе Fish, и должно возвращаться что рыба не говорит, при попытке вызвать его. Однако при выполнении программа тупо не выполняет ничего. Где мой фейл? Заранее приношу извенения за такие нубские вопросы, и благодарю за потраченное время.
Есть вот такой класс: public class ClassA implements InterfaceA { public void doShit() {} } При конпиляции for(ClassA a : listOfA) a.doShit(); вылазит ошибка "Cannot resolve symbol, method "doShit()" При замене типа a на InterfaceA все конпилится и нормально работает. Вопрос: почему так получается, ведь в классе ClassA определен метод doShit()?
Пишу интерфейс на Java Swing. Есть окошко с двумя вкладками. На каждой из них своя JTextPane, обернутая в свою JScrollPane. В JTextPane на первой вкладке выводится программой текст. Если переключить вкладки, то текст в текстовое окошко не добавляется (тот текст, что был - сохраняется). Типы проверил, именно javax.swing.JTextPane. Если не переключать вкладки, то текст выводится. Почему так получается? Как сделать, чтобы текст выводился в JTextPane после переключения вкладок?
>>963465 Я читал, вроде как в таких случаях перегоняют в пдф. Да и это решение ещё до меня было сделано. Проблема в том, что документы сами по себе очень ебанутые.
>>963470 Проблема оказалась в том, что на другой вкладке были текстовые поля JTextField. Если их убрать, то работает как надо... Какое отношение имеет JTextField к JTextPane?
>>963325 Да чего ты петушишься так, будто тебя погонщик заставляет им пользоваться. Мало ли какое говно кто делает. Почему это тебя так тронуло? Тебе совсем скучно жить?
>>963539 Дак я и не собираюсь. Просто это глупо уделять делать вещи которые никому в хуй не сдались, вместо того чтобы уделять внимание на действительно важные вещи.
Сегодня я познал боль, узнав после деплоя, что Stream.spliterator() закрывает стрим. Тогда как, блядь, мне узнать, с сплитераторе есть что вообще? Без коллекта и костылей?
1. Насколько хорошо нужно знать тему многопоточности джуну? Книжки Брюс.Эккеля или Хорстманна хватит? или же пробывать осилить Java Concurrency?Меньше всего знаний по этой теме
2.что учить после javaCore? я прям разрываюсь, сразу пытаться за Spring сесть или написать пару легких crud приложений на java-ee? Можете написать порядок освноения, что бы не хвататься за все подряд?
3. Насколько хорошо нужно знать SQL? Нужно ли знать PL/SQL?
Уже путаюсь совсем, чего учить, ведь кучу фреймворков, куча технологий, прошу джедаев помочь
>>963860 учи коллекции хорошо, чтоб от зубов отскакивали. многопоточность достаточно туториалов оракла, не увлекайся, в работе не столкнёшься с ней, всё от тебя скрыто будет. потом sql с jdbc, потом hibernate. запили веб-круд на спринг(читай спринг ин экшон). если на работе будет ejb, то не парься, там всё сильно похоже. в jsp не углубляйся, можешь ваще не учить его. сделай простенький круд на голом html и angularJS, к примеру. который данные подтягивает через ajax. и можешь уже пытаться идти на собес. главное не ссы, а то многие уже готовы по знаниям, но всё тянут и так и не устраиваются и советую потом, когда уже устроишься, глянуть сервлеты, весь спринг на них построен, но от тебя всё скрыто
>>963909 На удалёнку есть шанс джуном вкатиться? Готов за двадцать тыс. работать, блядь, т.к. город умирает, а переехать в ближайшее время не могу. Всё что ты перечислил — знаю.
>Роберт Седжвик, Кевин Уэйн - Алгоритмы на Java Планирую читать параллельно с Хорстманом и решать оттуда задачки, чтобы набить руку в элементарных вещах и учить алгоритмы. Что думаете? Есть ли какие-нибудь задачки на ООП? И вообще, как вы решали проблему практики при изучении?
>>964099 >Что думаете? Думаю, что ты переоцениваешь важность знания алгоритмов для трудоустройства. Возможно они тебе и пригодятся, но скорее всего даже не в ближайшие пару лет работы. На собесах тебя разве что спросят "какие паттерны знаете", так что можешь пролистать любую книжку по ним или даже любую статью, обычно дальше названия никто не спрашивает, разве что саму концепцию. Ответа уровня "ну, бля, эти, фабрики, синглтоны там, декораторы" обычно более чем достаточно. Если с этим совсем всё плохо и ты даже не представляешь, как массив отсортировать - можешь прочитать несколько статей, но сильно углубляться не стоит. На собесах будут заёбывать знанием либ и спецификаций, а не алгоритмов. >Есть ли какие-нибудь задачки на ООП? Я читал Эккеля, там прилагаются задачи. >И вообще, как вы решали проблему практики при изучении? Пока учишь SE - делаешь всякие учебные задачи, когда переходишь к EE - сразу начинаешь пилить свой проект и параллельно читать, можешь попробовать какие-нибудь "Spring in Actoin" или "EJB in Action", они специально построены так, чтобы было максимально удобно читать и пилить по мере изучения материала.
>>964106 Спасибо, анон. Тогда ещё вопрос, платиновый, раз ты затронул трудоустройство. Сколько в среднем времени занимает подготовка до джуниора с работой за еду? И как быть с sql? Везде его требуют так-то.
>>964137 >Сколько в среднем времени занимает подготовка до джуниора с работой за еду? Ну, ты же сам понимаешь, что это сложный вопрос и зависит много от чего: насколько интенсивно ты будешь заниматься, твой начальный уровень, что там с работой в твоём городе, насколько тебе повезёт, в конце концов. Вообще, если особо не ебланить, от полугода до года. >И как быть с sql? Лол, а как с ним быть? Учить, ясное дело. От тебя никто не станет требовать быть экспертам по БД, но писать базовые запросы ты должен уметь. Вообще, чтобы ты представлял, во что ввязываешься, с чистым SE сейчас хуй вкатишься. Тебе нужно знать ЕЕ хоть на каком-то уровне, спринг, хибернейт, вся хуйня. Ещё пригодится умение писать тесты, логирование, знание систем сборки (Maven так точно нужно знать), систем контроля версий (git будет достаточно для начала), SQL, про который ты уже говорил. Ещё хорошо бы иметь общее представление о работе сетей (хотя бы знать гет-пост запросы и уметь объяснить, что такое tcp/ip и нахуй оно нужно), минимальные представления о фронтенде (хотя бы не впадать в ступор при виде html), если умеешь писать скрипты под виндой и/или линуксом - тоже будет плюсом.
>>964137 >И как быть с sql? Хотел было написать sql-ex.ru, но подумал, что эту ссылку неплохо бы поместить в шапку треда. Заглянул в шапку, а там уже всё это есть. Сложно было прочитать, пидор?
>>964161 Спасибо ещё раз. Очень помог. >>964193 Не, шапку я читал, взял набрал оттуда всякого. Интересовала именно значимость sql, а не где и как учить.
У меня есть вопрос не совсем по языку а скорее по мавену: 1. Есть условно назовём его главный проект, это обычное приложение имеющие зависимости в мавене библиотекам. 2. Есть некоторое количество дополнительных проектов каждый из которых является набором классов реализующих интерфейсы из главного проекта (проще говоря он использует главный проект как библиотеку) У каждого дополнительного проекта есть свои зависимости в мавене. Что нужно, главный проект запускается после чего в процессе свой работы, он получает список дополнительных проектов которые загружает, причём до запуска приложения точно сказать какие именно дополнительные проекты будут использованы и где они находиться. Поэтому это исключает возможность подключить их через мавен или classpath. Теперь вопрос как лучше это сделать? Сейчас я придумал только жуткий велосипедный вариант, с генерацией файла содержащего полный classpath для дополнительного проекта включая ручное покрытие всех зависимостей и с последующим ипортом это в главный проект через кастомный класслоадер. Объяснил наверное нихуя не понятно, но если кто то сталкивался то должен понять меня.
>>964697 >Есть некоторое количество дополнительных проектов каждый из которых является набором классов реализующих интерфейсы из главного проекта (проще говоря он использует главный проект как библиотеку) Это циклические зависимости, с ними никто не билдит проект мавеном. Вообще никто. Как это обходится? Могу только про спринг пояснить. Используют короче принцип dependency inversion. У тебя 1 проект зависит от 2. При этом, ты хочешь в 2 вызывать методы 1 проекта. Просто в зависимостях такое не прописать, потому что цикл. Что делают: создают интерфейс в 2 проекте, но его реализация лежит в 1 проекте (поскольку 1 проект видит 2 и может этот интерфейс реализовать). Потом, когда 2ому понадобиться вызвать метод из 1ого проекта, он @autowired тащит интерфейс из спринг контекста, вызывает метод интерфейса (интерфейс лежит в 2 проекте, поэтому никакая зависимость к 1 не нужна). И вызывается реализация из 1ого проекта (ну спринг автоматом подгрузил его в рантайме).
>>964736 >osgi Возможно да, сейчас посмотрю подходит ли он мне. >>964740 Можно вынести все интерфейсы в отельную библиотеку, тогда будет что все "проекты" зависят от одной библиотеки, и всё. И между собой никак не связаны. И ты видимо не дочитал, что это не один проект. Это запускаемый проект + N проектов, и на момент запуска ты ничего не знаешь о них, и только в процессе работы у тебя уже появляется список состоящий из имя_класса реализующего нужный интерфес + путь по которому можно найти нужные классы, включая все зависимости. И даже если использовать спринг он не сможет ничего сделать так как классов не будет, их нужно будет правильно загрузить вместе с их зависимостями.
Аноны, к вам платиновый вопрос Как относитесь к кусам по java от учебного центра Специалист? Стоят ли своих денег, или можно всё то же самое изучить дома? От себя добавлю, что способность к самообучению есть, но требуется база, на которую можно будет накидывать что-то самостоятельно.
>>966682 В душе не ебём, что это вообще, ссылку пили на курс. А вообще всё просто, можешь сам учиться - учишься, не можешь - платишь, чтобы дали погонщика с кнутом.
В идее мавен (на виндоус) при создании проекта ставит версию джавы на 1.5 и еще приходится руками выставлять настойки и еще прописывать UTF-8 иначе кодировка ломается на русском языке, что это за шляпа такая, как можно задать мавену глобальные настройки по умолчанию?
>>966756 да ты заебал со своим грейдлом, человек вопрос задал блядь >>966742 юзай мавен враппер для каждого проекта, у меня в системе мавен вообще не установлен.
Подскажите ньюфагу. Собрался делать курсач с JavaFX(впервые с ним знакомлюсь). Использую IDEA. Собственно проблема в том, что она не хочет видеть javafx "cannot resolve javafx" при import javafx. Стоит jdk8 и openjfx, гуглил, все файлы вроде на месте.
>>963909 От себя добавлю: после всего того, что тот анон написал, можешь посмотреть spring-data, spring-data-rest, spring-cloud, netflix zuul, netflix eureka, spring-boot для микросервисов. Некоторые компании начинают на них перекатываться, да и писать легко, большая часть мешанины скрыта.
>>963964 Посмотрел вакансии — требуются только сеньоры. Сама контора — бодишоп, руководители которого изрядно экономят на аренде помещения и обедах для сотрудников.
Программач, поясни, пожалуйста, следующий момент. Необходимо проанализировать информацию с веб-страницы. Я правильно понимаю, что нужно либо построчно выполнять анализ по тегам самому, либо загружать всю страницу в файл, чтобы потом уже по-человечески с xml работать? Наверняка я что-то упускаю из виду, и есть какой-то задроченный классический способ анализа. Посоветуй, пожалуйста. С ООП знаком, но никогда не работал с сетями.
>>963325 В этой консоли будет удобно проверять неочевидные моменты в жабе. Не создавать же для этого проект новый в самом то деле (сам юзаю ideone обычно).
На самом деле дела обстояли до недавнего времени примерно так, как написано. Но! Во первых, Java EE к самой Джаве имеет не так много отношения. Не как Джаваскрипт, но тоже, название — самое главное, что их роднит. Spring прекрасно себя чувствует, развивается, и всё отлично у Джавы в энтерпрайзе. Если всё таки вы упёртый адепт Java EE, то для вас тоже есть хорошие новости, Оракл передумали, и собираются выпускать Java EE 8 не смотря ни на что — http://www.theregister.co.uk/2016/07/07/oracle_java_ee_8?mt=1468338078987
Помогите построить алгоритм по переводу арабских чисел в римские. Писать на джава могу на уровне жуниора, почти все задачки решил кроме этого калькулятора.
Жавач, надо запилить простое приложение с БД. Что взять? Hibernate еще модный, стоит поковырять code first? До этого просто рисовал базу в лягушке, накатывал, ну и цеплялся через jdbc. Хочу чтоб просто, быстро, модно.
>>968898 Это статистика чисто для джавыее. Кроме нее параллельно еще есть спринг, плей и подобное говно. То, что джаваее падает в популярности, вообще не говорит о снижении популярности джавы как таковой.
Есть спринг-контроллер, в котором надо бы перед каждым RequestMapping'ом выполнять один и тот же код. Очевидно, сделать это можно с помощью метода, помеченного @ModelAttribute, но как-то выглядит оно ну слишком уж костыльно.
Так вот, есть ли какой-нибудь вариант получше, или и так сойдёт?
А теперь условия посложнее. В этом методе нужно брать значение другого ModelAttribute'а, а также при некоторых значениях этого самого атрибута возвращать редирект.
>>967615 Ой да везде есть жаба десктоп, целый пласт девелоперов есть, которые на вебе никогда не писали и есть целый пласт пользователей, которым десктопные апликухи - норм.
Посланы, заясните за годный развивающийся опенсорсный проект, в который реально вкатиться и пилить. Не для того, чтобы показать на собеседовании (не надо), а для интереса.
>>969788 >заясните за годный развивающийся опенсорсный проект, в который реально вкатиться и пилить Все очень просто: пользуешься каким-то софтом, обнаруживаешь, что он опенсорсный, при желании добавить что-то свое или исправить баги берешь и вкатываешься.
>>963306 (OP) ЧТО СКАЖЕТЕ ЗА ДЖАВАРАШ? Лучшая инвестиция 11К рублей в моей жизни. Легко освоил базовую джаву, затем работу с вебом и пару фреймворков, сейчас работаю в ДС на 120К.
По поводу критики: ты пришел учить джаву или учить создателей курса, как делать курс, лол? Со своей задачей курс справляется, критиковать нелепые выпады смысла нет, нормальному разработчику такое говорить и в голову не придёт. Читая комментарии, я выделил 2 группы хейтеров: 1) Он все знает, знает как надо, учит авторов курса (которые пилят и улучшают его 5й год) как надо учить джаве. Ему дали разжеванный пошаговый материал - просто бери и пользуйся. Но он не хочет, в универе было не так, хочу как в универе. 2) Жлоб. Он легко купит новый смартфон, будет покупать игры в стиме, новый ноутбук возьмет, но не хочет покупать курс по джаве. Ну не хочет и не хочет, есть список литературы, читай да учи. Но нет, он придет в комментарии и начнет рассказывать, что все это развод, что в Интернете есть все бесплатно. Да, есть. Да, бесплатно. Кроме задач. Ну так иди и учи, чего ж не выучил до сих пор и бродишь по сообществам тех, кто хочет выучить Джаву?
>>970284 Ну хоть кто-то что-то хорошее сказал. Сегодня купил подписку. Я правильно понят что помимо решения задач нужно еще дополнительно где-то читать литературу? А то я завис на интерфейсах и полиморфизме.
>>970556 >Я правильно понят что помимо решения задач нужно еще дополнительно где-то читать литературу? Да, это обязательно. В лекциях, да и в шапке этого треда есть список литературы- его обязательно прочитай. Джавараш даст быстрый старт и легкое усвоение материала, а книги дадут ответы на вопросы "почему оно работает так, а не иначе" и вообще улучшат понимание языка.
>>970625 Нахуй кубики, должны быть кабинеты, на 5 человек максимум. Хозяева конторы экономят на площади, устраивая опенспейсы-загоны для скота. Это плохо, когда люди, занимающиеся умственным трудом, работают в тесноте и в большом количестве. Опенспейсы хороши только для коллцентров, бухгалтеров и продажников.
Котоны, тут такая поблема: с помощью мавена собрал джарник, у него в манифесте написано Class-Path: mongo-java-driver-3.2.1.jar. Драйвер этот лежит в /usr/share/java, оно в окружении обозначено как CLASSPATH. Но при запуске класс этот не находится. Пробовал в команду добавлять этот путь через -cp - то же самое. Только если кинуть джарник с драйвером в тот каталог, где лежит основной, оно его находит как надо. Почему такое?
Скажите мне программисту пишущему на дядю в канторе есть ли фриланс джаве? Сколько он может приносить денег, и как туда вкатиться? Навыки, фреймворки, связи, или там один андройд?
Анон, хочу выучить джаву и съебаться в сшашку. Но как только представлю, как целая виртуальная машина запускается в моем компе чтобы запустить милипиздрический скомпилированный кусок кода - меня тянет блевать. Или вот BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
Или что в 2017 году ебаный сборщик говна не может проссать, что нехуй хранить все промежуточные объекты в памяти вот здесь: String result = ""; while (true_over_dohuya_raz) { result += somethingElse; }
и что вместо логики приложения я должен думать о том, как ебаная виртуальная машина работает с ебаной памятью и использовать StringBuffer или ебаный StringBuilder. Для того, чтобы соединить ебаные 2 строки, анон! Почему, почему, почему джава такой пиздец, а? И почему еще не изобрели ничего лучше?
Вот у меня четырехъядерный процессор. Я сделал программку, которая принимает целое число N и находит все простые числа от 2 до N. При этом я все это дело распараллелил на несколько потоков. Если потоков 4, то первый считает простые числа от 2 до N/4, второй от N/4 до N/2 и т.д. Так вот, если поток один, то при N = 100000 числа считаются 1000 ms, если потоков 2, то 600ms. И казалось бы на четырехъядерном процессоре максимально быстро должно считаться при 4-ех потоках, но нет. Быстрее всего при 12-ти потоках - 250 ms. При 13 уже 280, при 14 - 300 и т. д. Почему так?
>>971822 потому что на разных интервалах считается за разное время? вот от 2 до N/4 быстро посчитал, а для N/4 до N/2 в два раза дольше, а для последнего интервала ещё дольше.
Поэтому когда одно ядро досчитало первый интервал, можно нагрузить его ещё чем-то, и досчитать всё быстрее.
Но если побьёшь на слишком много тредов - то второй поток на одно ядро запланируется до тех пор, пока оно ещё не закончило считать свой кусок. И из-за расходов на вытесняющую многозадачность и управление структурами для потоков получается медленнее.
>>970284 Именно так. Покупал безлимит за 100 баксов по скидке, на 13/14 год вообще нормальных альтернатив не было. Как сейчас не знаю, но на то время без jr тупил бы в пять раз дольше с кором, а скорее всего вообще бы нахуй забросил и охранял магазины.
>>963909 >многопоточность достаточно туториалов оракла, не увлекайся, в работе не столкнёшься с ней, всё от тебя скрыто будет. Ну ты и мразь. мимоПмНанимающийДжуновМидловНаКонкарэнсиПроект
>>972815 Даже если всякую смарт хуйню отключить, тормозит в файлах с несколькими тысячами строк. Или может работать нормально, а потом процессор полностью нагрузить хуй пойми для чего. Вся эта годнота есть в эклипсе.
оффтоп, не кидайтесь говном. Правда интересно. сейчас листал хайрез раздел, там есть тред ПРОГРАММИСТЫ и там все пилят свои столы с линуксом. Почему программисты сидят на линуксах, или это просто красноглазики ебанулись и никаких плюшек для программиста в линуксе нет. мимо начинающий джава программист
>>972890 Всех красноглазиков в детстве травила собственная мамаша. Она им постоянно говорила что скажут люди, не делай так, на тебя же все смотрят, все над тобой будут смеятся. И вот дитятко выросло, и ему до сих пор кажется что за ним все следят и его оценивают. Поэтому красноглазик старается быть максимально скрытным. Он не сидит на виндовс, потому что виндовс собирает данные о нем. Он сидит через тор, потому что фсб следит за ним. Он не оставляет своих реальных данных на сайтах, потому что за ним идет охота. Но реальность такова, что красноглазик нахуй никому не нужен и его поведение вызывает только смех у нормальных людей.
Ну и хули меня тут дизмаралят коментариями, что джава хуйня, жизнь хуйня, и я нахуй никому со своей джавой не нужен? я тут изучаю ее значит 2 месяца, потихоньку спускаясь все ниже и ниже, а потом на нахуй, и дизморалька подлетает. Товарищи, действительно ли это все так, или они пиздят по полной и их жизнь обидела? Утешьте джуниора
Java - это как Кобол в начале нулевых. Такая же умирающая.
— Вот как вы, коллега, решили бы задачу портирования святого кода с КОБОЛа на богомерзкую джаву? Через алгоритмы Плисса-Волошина или Филда-Рамалинга? Али что своё придумали бы? — Какой КОБОЛ, отец? — устало отпирался захмелевший фрилансер. — Этих кодеров давно уже похоронили, и они уже сгнили давно. Рефакторинг в моде, а не портирование. Кто не работает – тот ест, закон зоны! — Спасибо, родной, за похороны! — недовольно ответил дед. — Вот и слили все полимеры, программистишки. Кстати, добро пожаловать к нам, на помоечку.
>>973206 Ну на смену коболу появилась джава, а что на смену джаве? Шарп не смог, котлин сам на jvm сидит, скала слишком сложная для массового запуска в тырпрайз, нет ни одного реального конкурента джаве и скорее всего не появится в ближайшее время.
>>973207 Нода и питон уже здесь и сейчас. >>973222 Скала не годится для массового тырпрайза, го го вно, раст высратое говно без задач. >>973223 Не нужно, когда есть асинхронные неблокирующие запросы.
>>973228 Ты же понимаешь, что питон не справится там, где нужна высокая нагрузка, а нода явно не тот язык на котором будут писать банковский софт в промышленных масштабах. Я сам за ноду, так как круто все писать на одном языке, но нужно реально смотреть на вещи.
Есть список строк (1). У каждого списка строк есть свой отдельный список строк (2). И у каждой этой этой строке соответствует одно значение (3). Как лучше всего это организовать? Думал над списком списка, но что-то я не совсем понимаю, возможно ли как-то будет во втором списке неуникальное число хранить. Очевидно, как-то надо либо общий класс создавать, либо список классов, вот хуй знает. В общем, подскажите, пожалуйста.
>>974057 Это же жава, ты чо, сделай класс с листом <String, Integer> и переменной String. Лист можешь обрезать и целое значение запихать в строку, поставив первым или последним символом.
Сап аноны, нужно запилить простую прогу с несколькими кнопками и таймером, показывающим сколько времени осталось до определённой даты, потом добавить в неё регистрацию и показ данных из бд SQL, подскажите как проще это сделать и что для этого понадобится, хотя бы кнопки и таймер, а то я нуфаг и гайды из гугла не помогли
Ребята, есть вопрос. Хочу написать приложение веб+бд, раньше такое не делал. Я правильно понимаю что этот должен быть сервлет который открывает бд, что-то в ней делает итд. Например у этого сервлета есть реквест и респонз, клиент передает/получает через них данные например создать юзера айди1, дальше я в сервлете пишу это в базу, и если удачно то отвечаю клиенту что ок, или это так не делаться??
>>974174 Веб приложение делается, как правило, по паттерну mvc. Model - бизнес-логика, View - веб странички и Controller - это сервлеты. Погугли, почитай, что к чему.
Приложение надо разделять на слои. Слои взаимодействуют между собой с помощью сервисов. С базой данных взаимодействуешь по паттерну DAO. Почитаешь, кароч, про него.
В результате из сервлета будешь вызывать методы сервиса. А из методов сервиса будешь обращаться к дао и к слою бизнес-логики. И, получая результат, сервлет будет формировать и отсылать респонс на страницу.
В сети дохуя разных примеров ебанутых, где дохуя чего делают в сервлетах. Но это не тру. Тру - это так, как выше написал У всего здесь своя роль. У сервлетов - только обрабатывать реквест, вызывать сервис нужный и формировать респонс, на основе полученной инфы от сервиса. А сервисы будут работать похуй с чем. Какой-то будет с дао, какой-то - с другой какой приблудой, третий - проверять еще какую-то третью хуйню. Как-то так.
>>974174 А еще читай про spring+hibernate что бы не городит свои велосипеды. И да, добро пожаловать в мир тырпрайзы и AbstractSingletonProxyFactoryBean.
>>974174 Делается примерно так, но со свистелками и перделками. Плюс для непростых приложений зачастую наварачивают многослойную архитектуру типа >>974181 На чистых сервлетах сейчас мало кто что делает. Spring MVC (как самый популярный пример) позволяет не использовать их напрямую. Айдишник выдается БД самостоятельно в 99.99% случаев и никто их не назначает руками.
>>974183 Это, конечно, хорошо. Но лучше пусть, для начала, в сервлеты въедет и в jdbc, хотя бы лайтово, без сильного углубления. А потом и спринг с хибернейтом логично пойдет.
>>968069 >Java скоро вообще всё: джава - ёбнутая помойка. Нахуй не нужна. Она просто ни для чего не нужна. ОС, железо любое, микроконтроллеры - C, GameDev весь - C++, линупс, винда, да любые десктопы - C++, веб - жабаскрипт, пыха. На серваках - перловка, змея.
Вот реально, я в своей жизни вообще не сталкиваюсь с системами, требующими жабы. Про банки там пиздеть не надо, это все можно на крестах сделать. И лучше бы это было сделано на крестах. Можт хуй бы меньше сосали.
>>974291 >перл >с++ >2017 Вот мне всегда было интересно, все эти любители расставить языки по масти и точно знающие за всех, в какой сфере и какой язык стоит использовать, вроде тебя - сами-то пробовали на этом же перле написать что-то сложнее лаба1.pl? Хоть обосрись от старания, а через несколько тысяч строк получится ебучая ссанина. Про кресты вообще пушка. Если жаба почему-то вдруг стала помойкой, то как назвать кресты? Выгребной ямой, не иначе.
>>974310 Если уж на то пошло, то игори и на крестах не особо попишешь. Максимум движок нахуярить можно, а для, например, скриптов, уже приходится каким-нибудь lua в жопу долбиться.
Есть прога для создания графического интерфейса где не надо много кода писать, а просто перетаскивать в окно нужные элементы и настраивать их? Для других языков видел такое
>>974308 >сами-то пробовали на этом же перле написать что-то сложнее лаба1.pl? ебать тупорылый пидорас поносит перл сидя в помойке на этом самом перле написанной
>>974739 Еблан, дело не в том умеешь или не умеешь: эта хуйня отвлекает и рано или поздно проебывается из-за невнимательности. Какие преимущества у крестов по отношению к жабе? У жабы это на порядки большая скорость разработки, очень удобная отладка, кроссплатформенность без лишней ебли, меньшая требовательность к знаниям и опыту. И этим список преимуществ не заканчивается.
С переменным успехом изучаю java около полугода, и заметил за собой проблему психологического характера - очень неохотну копипащу код, и чувствую себя абсолютным неучем, когда дело доходит до задач - 90% приходится подглядывать. При этом, хорошо читаю чужой код и понимаю его, нравится концепция ООП, неплохо строю абстракции в голове, могу рисовать схемы на бумаге, но когда дело доходит до кода - ступор. Была у кого нибудь схожая проблема? Как справлялись?
Господа, сам ведроидомакака. Сейчас делаю диплом, нужно проводить вычисления на разных машинах. Причем не всегда функцию можно символьно записать, то есть может быть какая-нибудь кусочно заданная статистическая хрень. Но это все лирика. Какой максимально простой и легковесный способ сделать модель мастер (выдает задания, проводит анализ полученных данных)? Я думал сокеты, но потом понял что там я буду выковыривать потоки вилкой и вообще nio модно и молодежно, а консервативный io -нет. Есть советы?
Кто занимался 2D играми, какой среднеуровневый фреймворк уровня SDL/SFML для C/C++ сейчас модный? Хочу резко вктатися в джаву и сделать небольшую игру, сам язык должен осилить без дополнительного изучения наверное
Нужен прогер, для разработки и дальнейшей работы над мобильным приложением. Опыт работы обязателен. Мои контакты [email protected] Зарплата от 500зеленых в месяц. В перспективе рост зп В письме рассказать немного о себе, о своих проектах и т.п., возраст.
>>963306 (OP) Чикибрики. Короче нужен совет по дизайну проги, есть файл, который может содержать один тип данных - числовые или строковые, режим чтения данных задается параметром при запуске файла. Нужно эти данные считать и обработать, собственно вопрос, в каком месте разделять программу, можно в самом начале, то есть разбить на две ветки инты и строки, потом пердолиться отдельно с каждой, или каждый раз иф/елсе писать в зависимости от параметра. Понятно, что мужно использовать дженерики, но надо без них. Такие дела.
>>976367 Смотри названия классов. Название главного класса в файле должно совпадать с названием файла. Смотри импорты. И еще для джавы важен регистр, а у тебя вроде там обосрамс. Алсо, что за среда?
class JavaApplication1{ //название класса совпадает с наванием файла public static void main(String[] args){ //метод с таким названием вызывается при запуске программы. Пиши сюда свой говнокод } }
>>976410 https://pastebin.com/jTe9cuec Вот, держи и учись. Я знаю, что у тебя получится. Класс ForAnon переименуй так чтобы он назывался так же как файл. Если нужна помощь по компиляции в джава, пиши.
А есть IDE не написанные на джаве? У меня тормозит всё это говно вроде eclipse и netbeans, vs code тоже Code::Blocs может, но он так себе, выглядит не нативно >>976432 Наркоман или тредом ошибся? Как ты собрался AbstractProxyFactoryBean.InitFrameInitFrameInitFrame писать без IDE?
>>976444 зачем новичку дебагить это? Я говорю про обучение. В IDE много фишек которые перегрузят тебя если ты еще учишься. Конечно легко напечатать PSVM и нажать таб, но может случиться так, что ты просто не будешь знать что это.
>>976358 Хуячишь сервисный слой на котором абстрагируешься от типа файла. Хуячишь мапу адаптеров с ключами - значениями твоего параметра и значениями - ссылками на синглтоны адаптеров. В сервисе делаешь гет на мапу и вызываешь чтение файла и маппинг данных в соответствующем адаптере. Само собой адаптеры числовых файлов и строковых должны иметь один интерфейс.
Суп, джаваны. Что нужно использовать, для работы с консолью? Вот если хочу, например, сделать апликейшен, который будет в консоль команды давать. Понятно, что надо скрипты использовать, а не java. Но ради спортивного интереса?
>>963306 (OP) > Это очередной курс(выучи джаву за 60 секунд и получай 300к в месяц), основная цель которого - выкачать из тебя деньги. >Не беда, вот курсы от Принстонского университета: https://www.coursera.org/course/algs4partI
>>976900 Ну такое. Сочетание var и <> вряд ли будет хорошо работать. Я больше рад был бы алиасингу типов. Чтобы можно было назначить простому типу (String) или параметризованному Pair<String, Integer> дать ещё одно имя, например RequestId. Длинные сигнатуры типов обычно возникают из-за того, что дженерик класс объявлен final, и дать название его специализированной версии наследование нельзя.
При запуске программы из IDE пикрелейтед выполняется нормально, однако при запуске скомпилированного jar-файла выбрасывается исключение. Если указать асболютный путь к файлу, то всё ок. ЧЯДНТ?
>>976447 Можешь писать код в чем угодно и компилять в консоли. В чем проблема? А IDE не тормозные, а требовательные просто, на адекватном железе та же IDEA работает очень плавно и стартует быстро, особенно если ненужные плагины поотключать.
День добрый. Только начал учить джаву и сразу возник вопрос: можно ли обойтись без Шилдта и учить чисто по туториалам оракла + использовать ссылки из оп-поста? или вообще без разницы?
>>977078 Мне шилдт не понравился сразу. Дохуя воды. Но кому-то может вкатывает, дело вкуса.
Туториалы - это одно из лучших, что есть, для нубасов. Я так и делал, например. И если не хватало для понимания - в книжках дочитывал тему, причем в разных.
До какого уровня учить SQL, чтобы устроиться джуном? В шапке только пара сайтов, есть какие-то книги (прочитав которую будет ок)? Вообще шиком был бы какой-нибудь видеокурс.
>>963306 (OP) Котоны, хелп плиз. Вылетает ебучий иксепшн, когда пытаюсь прочитать из комнадной строки, подчеркнуто на пике. Есть имя файла, подается при запуске, я проверяю его на существование, если он существует, то спрашиваю перезаписать ли его и тут все валится. Я пробовал сканер и другие ридеры, одна хуйня. Думал остаются остатки от предыдущего ввода, но нихуя.
>>977219 >>977219 расскажи, как лучше всего парсить методы из строк? Например есть массив строк и вызывается метод с названием как вторая строка в массиве.
>>977441 Потому что в процессоре тогда одним и тем же электронам приходится выполнять двойную работу и они теряют свой потенциал быстрее. Это приводит к неравномерному распределению нагрузки и подвисаниям программы в момент использования истощенных электронов.
Салют, хикканы-братаны. Решил вторым языком Java изучить. Знаю С, С++, win32 api c++. На OpenGL программировал на с++. Записался на курсы 120 часов Java se8 основы и разработка клиент-серверных приложений. Нормально зайдёт язык? Можно потом на работу куда-нибудь устроиться, зная как писать многопоточные приложения?
Сап, ананасы. Есть одна вакансия от ростелекома на джун девелопера оракл/sql/java, всё с виду стандартное, но в конце добавлено >Командировки - редко Куда командируется разработчик оракла? Чем он там занимается?
Писал рещение к задаче про бесконечный поезд и наткнулся на багу. Когда прога генерирует рандомное число и оно меньше чем длина поезда это воспринимаэтся как правильный ответ. Если же рандомное число больше или равно длине, то всё ОК
>>978547 Леммы\теоремы преподы доказывают, а потом студенты эти доказательства разбирают Нам же не показывали, как бинарную кучу написать на джаве с помощью связного списка, поэтому хочу найти конкретный пример (автор вопроса)
Короче. Пилю я такой рест-сервис на спринге. Как мне сделать загрузку аватарок юзеров при регистрации? Вот есть у меня метод api/register/ и как в него кроме прочего отправлять картинку? а? а? а?
>>978738 Я об этом думал. Но это нужно как-то совместить при регистрации. Вот есть у меня форма: заполняю все поля, и жму "регистрировать". А дальше чё? Отдельно отправлять запрос на api/loadPhoto а потом на api/register - ну такое.
Я пытаюсь запилить простенькое приложение на свинге и я уже хочу сдохнуть. Как в этом говне нормально нарисовать окно, без всякой хуйни? Что я не так делаю? Этот GUI Designer такой хуёвый, я быстрее нарисую на бумажке по пикселям, блядь.
>>978736 MultipartFile >>978740 >регистрация >2017 Дай угадаю в форме 10 полей + аватарка + неразбираемая капча и всё это обязательно для заполнения? Вернись в свой 2007-ой.
>>978799 Минимум кликов, главное что бы пользователь оставил тебе свой email, все остальное он введет если твой сервис будет ок и в этом будет смысл. и социалок хуйни по-больше (в меру, и то если сервис широкодоступный)
>>978799 Вход через социалочку/гугл-акк. Регистрация - вариант для остальных (или тех кто не хочет палить акк). Для регистрации: ввести email (может пароль ещё), нажать ок. В "личном кабинете" позже залить аватарку если надо.
Ты сам поставь себя на место юзера. Зачем тебе ещё один аккаунт в каком-то говно-сервисе, котрым ты даже не начал пользоваться? Чтоб через 5 минут уйти от туда и забыть о нём навсегда? Такое шапито с заполнением форм прокатывает, если юзеру твой сервис НУЖЕН. Последний раз я так регался на nalog.ru. Десяток обязательных полей: кто, где, зачем, рост, вес, длина хуя, кличка собаки и т.д, но мне был НУЖЕН этот сервис.
Скажем, я получаю запросом данные из базы (id, first_name, last_name from employees) методом queryGetEmployees(). Эти данные потом отображаются в таблице с такими же полями. Что этот метод должен возвращать, по хорошему? Я думаю создать отдельный класс Employee(id, first_name, last_name), но клёвые пацаны же используют что-то другое, а не плодят по классу на каждый запрос?
>col.setCellValueFactory(new Callback<CellDataFeatures<ObservableList,String>,ObservableValue<String>>(){ >public ObservableValue<String> call(CellDataFeatures<ObservableList, String> param) { >return new SimpleStringProperty(param.getValue().get(j).toString()); >} >}); что это вообще? Вы как это читаете? Сука я хочу обратно в паскаль блядь
>>979154 почитай например google style guide. Это все можно немного удлинить на пару строк чтобы все было понятно. Еще табы играют роль. Добро пожаловать во взрослое программирование
>>979184 Хули тут понимать, блять? Тут одно действие, одна строчка кода. >return new SimpleStringProperty(param.getValue().get(j).toString()); Код конечно не фонтан, но тут вопрос не к автору кода, а к автору апи, которым он пользуется.
>>979186 >>979188 На второй взгляд я стал понимать, что к чему тут. Но ебашить ебанутую тучу цепочек вызовов методов - я считаю говнокодом. Хоть это и просто сделать. Но читать такое - можно ебануться.
Есть arraylist обьектов Надо отсортировать по одному из полей а так же убрать из листа обьекты, у которых одинаковые значения в этом поле.
Есть ли в джаве для этого удобный инструмент, если нет, то подскажите с алгоритмом, а то я могу только очень сложный придумать, либо же укажите на алгоритм-тред, если такой есть.
выбрать другую колекцию (hashSet) не могу, т.к. нужен именно arraylist для последующей обработки (метод принимает только arraylist)
Аноны, собираюсь для опыта написать небольшую библиотеку по генерации шума Перлина. Для работы с ней в теории все что понадобится это импортировать пакет, создать новый объект PerlinNoise(int seed), потом получать значения методами get(int x; int y), либо сразу получить двумерный массив со значениями методом asArray(). Аноны, этого хватит для начала? А так же предложите, какой еще функционал бы вы добавили сюда.
>>979154 Это JavaFX. Установка колбэка для получения значения, которое будет выводится в колонку. Чуваки писали апи с прицелом на лямбды, собственно на Java 8 код выглядит так
col.setCellValueFactory(param -> new SimpleStringProperty(param.getValue().get(j).toString()));
Ты, правда, где-то объявление j проебал в своем фрагменте.
Собственно, изучал JavaFX еще до восьмерки (когда фреймворк еще не был частью JRE), и то спустя время такие конструкции читались без затруднения в понимании.
Я внезапно понял, что в моей любимой Intellij нельзя работать с вебом (jsp, servlets, вся хуйня) в бесплатной версии. Перекатываться в нетбинс или эклипс?
>>979452 Это-то понятно, но когда я перстану хикковать и найду работу, там вряди ли будет интеллиж куплена (хотя хуй знает). Я под впечатлением, что в основном эклипсом пользуются.
Но! Есть один компилятор. Которого зовут Jasper. Он компилирует код JSP, и из него получается сервлет, который оказывается подключенным к этой странице.
В общем, после первого обращения к странице, вызывается компилятор и из jsp получается обычный html, css, js - все остается на месте который оказывается на фронтэнде и выдается пользователю, и в контейнере сервлетов, на серваке, появляется сервлет, который работает с этой страницей. Такие дела.
Понемногу подбираю книжки для изучения ЕЕ. Получился такой список. Проблема в том, что темы в них судя по оглавлениям довольно сильно пересекаются. Что скажете про книги? Какие выкинуть из списка? Может быть что нибудь добавить?
>>979944 Инжект можно и через гугл жуис сделать. А вот если аннотации не будут выходить за пределы модели, например, было бы охуенно. Для всяких котлинов проще это все. Пока что нашел только JOOQ
>>979947 Короче, нашел ebean XDDDD, в котором из аннотаций - только маппинг классов, кайфую. Че для рест-сервисов взять? Попробовал spark не апач, но он чет для котлина-скалки скорее.
>>980354 Я прост хуйню сказал и не то имел в виду. В хибере есть лишняя ебля с entitymanager'ами и их факторями, в ебине- все говно доступно их модели или из Ebean-класса статическими методами, что более удобно ящитаю.
>>963306 (OP) Я думал, опенспейсы - это мемс какой-то, прихожу на собеседование сегодня - человек 8 сидит в однои офисе и что-то пишут. Это норма вообще? Как хикканам выживать в таких условиях?
>>980434 Самое классное это когда большой зал разбит на небольшие рабочие комнатки. А когда как школьный класс информатики это пиздец конечно. крокодил
>>980085 Ну в любом случае учить одновременно EE стек и Spring нет особого смысла. Я выбрал там наиболее простую для чтения и наиболее полезную книжку.
>>980372 Когда ты работаешь в контейнере (а ты работаешь обычно), никакой ебли нет. Вон посмотри туторилы какого-нибудь спринг бута - там вообще всё в полторы строки делается.
>>980573 Да ну нахуй этот спринг и его аннотешн-дривен девелопмент. Начинаешь копаться а какой-нибудь спринг клауд- там пиздос кромешный, лучше самому наваять
>>980757 Дженерики это фактически надстройка над Object, в рантайме там все равно жава будет оперировать Object вместо твоих строк и интегеров.
Т.е. твой фрагмент после компиляции будет выглядеть так
>static boolean isIn(Object x, Object[] y) { > for (Object v : y) { > if (x.equals( v )) { > return true; > } > } > return false; >}
Соответственно сравнение строки с числом никогда не вернет true.
При самой компиляции жава попытается привести передаваемые объекты к наиболее обзему типу. В твоем случае String будет интерпретирован как Serializable, Integer в свою очередь сам является Serializable соответственно конструкция <T,V extends T> будет обработана корректно
>>980815 >ниасилил Да не, прост спринг клауд не гибкий ни в одном глазу. Предлагает только один набор фреймворков. А если я хочу заменить сервис-дисковери фреймворк, то я могу член лишь отсосать. Какая-то совсем декларативщина макакерская получается.
Анонсы, киньте мне, плиз, сайт, где нормально описана структура любого EE проекта. Я прочитал про Hibernate, Spring, сервлеты, но как всё это живёт вместе и что за что отвечает я не слишком понял. Хочу написать свой проект для понимания и резюме, на мелкой базе, но не хочется где-нибудь обораться и нагородить говна.
>>981210 Наилучшим будет увидеть именно реальный проект, дабы ощутить все тонкости, скажем так, на пальцах. Идеально с первого раза все равно не выйдет, да и описания тяжеловато найти. Мартин Фаулер много пишет про корпоративные приложения и энтерпрайз. Есть как минимум "Архитектура копоративных приложений" (https://www.ozon.ru/context/detail/id/1616782/) но это не быстрое чтиво и не инструкция по типу "берем говно X и Y и делаем из этого бизнес слой".
>>981212 >>981213 Это 300 страниц теории из 2003 года? Я с теорией уже захотел совершить суицид в универе, я предпочёл бы что-нибудь готовое покипастить, потрогать и тд. я быдло да
В ВАКАНСИИ ТРЕБОВАНИЕ ОРАКЛ <НЕПОНЯТНАЯ АБРЕВИАТУРА> (не БД, офкос) @ ЗАГУГЛИЛ @ НА ПЕРВОЙ СТРАНИЦЕ ГУГЛА ИЗ 10 РЕЗУЛЬТАТОВ ПЕРВЫЕ 8 САМ ОРАКЛ И ОСТАВШИЕСЯ 2 ВИКИПЕДИЯ
>>981300 Без теории программирования ты никогда не станешь хорошим программистом, хоть сколько у тебя будь практики. Будешь очередной фронтэнд или Джава Макакой
Никогда не делал сайты. Начал делать примитивный интернет магазин на сервлетах(в планах потом перейти на jsp->jsf->Spring). Столкнулся с проблемой, что нужно вывести содержимое корзины пользователю на экран. Это нормально, что у меня html выводится через OutputStream в сервлете?
>>981618 Ага. Из сервлетов будет идти респонс на страницу. Динамические элементы на странице можно сделать с помощью jsp, например. Если не можешь в js. А если можешь - лучше его.
Со страницы будет приходить запрос. Сервлет будет его обрабатывать и формировать респонс. В который можно засунуть и передать на страницу данные, лист какой-нибудь, например, содержащий товары. Если мы про инет магаз говорим. И на странице будет из этого листа браться данные и отображаться.
>>981624 Так, спасибо за совет. Вроде как у меня все так и происходит. Я когда говорил про html код, я как раз таки и имел ввиду динамический элемент, корзину товаров. У меня сервлеты получают запрос, обрабатывают и прокидывают дальше в sql класс, который является моделью. Я просто хочу для начала все на сервлетах сделать.
Жаваны. Я тут решил учнуть джавца, пошел на курсы-хуюрсы, вторая ж домашка была про написать охуенно полезный код, который на вход получает двумерный квадратный аррей (матрицу, кароч), а и заполняет обе диагонали единичками.
Ну у меня есть немного опыт хобби-коднга, и было свободное время, поэтому я подумал, и написал говно. Сказал - ну нахуй, и переписал говно. Стало лучше. На следующий день я открыл этот код и ВНЕЗАПНО увидел что там реально куча ненужного говна. Выкинул все в нахуй, и в итоге получил такоэ:
Сдал домашку преподу, а препод такой: Говно написал. надо было цикл в цикле, и в каждом тике устраивать проверку что i==j и плясать от этого, а у тебя говно нечитабельное, и "ничего не дает в приросте к быстродействию".
Я конечно понимаю я лоххуй, и нуб сратый, и может реально код не самый очевидный, и midpoint это да, совсем уже выебоны сраные (и, в принципе, можно вообще без переменных обойтись), НО НАХУЙ ИДТИ ПО ВСЕМ ЯЧЕЙКАМ когда само определение диагонали это arr? что блядь значит "ничего не дает в приросте к быстродействию", если у меня массив 5х5 пробегается за ТРИ тика, а не за ТРИДЦАТЬ. Если в "правильном" варианте 25 операций сравнения, а у меня НОЛЬ? Понятно, что на современных компах о такой хуйне говорить смешно, как атомы водорода на залупе считать. Но если в "правильном" коде количество итераций растет экспоненциально с увеличением числа ячеек, а в моем коде - строго линейно, как это может не давать прироста к быстродействию?
Это я чего-то не понимаю фундаментального, или таки препод сморозил хуйню? Или оба?
>>981772 >arr = 1; >определение диагонали это arr? стратая макаба, конечно, сожрала arr[!][!] (внутри i, конечно) как свою сраную разметку, и читать его следует стоит именно с i и скобками.
>>981607 Между реализациями через сервлеты и jsp разница только в динамических элементах, правильно понимаю? Так как мой магазин примитивный, то уже скоро переделаю его на jsp.
>>981926 Не совсем. В динамических элементах будет разница между чистым html и jsp+html. Оно так >>979598 работает.
Бэкэнду похуй на чем фронтэнд. Сейчас годно его делать на разных реактах и ангулярах. Но, если делаешь простой свой проектик и не можешь в js - можно взять jsp. Хотя все равно может понадобиться пару функций на js написать. Но там нехуй делать, погуглишь и справишься.
>>982062 да всем похуй сколько оно обрабатывает, o(n) все равно, там разница минимальная препод мог бы и не выёбываться, умное решение и всё такое, но в реальном мире никто не хочет такое читать
>>982069 Да. ну так по мне смысл учебы в том, чтобы тренироваться на совершенно искусственных задачах и постигать внутреннюю работу. Понятное дело, что если ты в работе будешь сидеть по два дня над простенькой и некритичной функцией тебя просто нахуй выгонят, даже если твой код будет оптимален до теоретического предела. Зачастую нужны простые, а не гениальные решения.
Но задача то - научиться думать нужными категориями. понять как работают инструменты.
И все, я догадался до более прямого способа, и теперь если мне нужно округлить деление интеджера вверх, могу не ебатся с конструкциями или приведениями типов.
так то, если подумать, эту задачку, наверное, можно решить даже рекурсией. Это нахуй не нужно, кроме как потренироваться с рекурсией.
Можно мне, пожалуйста, по порядку расписать, что и как надо учить, чтобы сделать сайт на джаве. Вот как обычно это для тупых делают: сначала читаешь то, делаешь это, потом читаешь то, делаешь другое.
>>982453 Лучше первый тоже пройти. Не углубляясь. Сервлеты входят в стандарт Java EE. И тот же Spring mvc, когда его применяешь, по сути становится оболочкой над сервлетами.
Можешь сделать простой сайтик на несколько страниц, используюя первый набор. Ну, если можешь в js, тогда можно без jsp обойтись. Это еще лучше. А если нет - с jsp быстрее будет. Там все просто.
А потом уже в спринг углубляйся. И, хотя бы немного, в какой-нибудь актуальный js фреймворк, на свой вкус и на то, как часто он встречается в вакансиях. Тот же ангуляр.
>>982450 >>982460 Очень интересно, спасибо анон. Атгде брать информацию по этим темам? Повторять все как обезьяна за автором в туторе или же взять толстые книжки, по типу spring in action и учить по ним?
>>982472 По сервлетам и jsp - книжки не стоит точно. Хотя я в свое время читал. Head first, например, хорошая книжка. Можно туториалы какие-нибудь простые почитать. И примеры готовые разных крудов и прочих хэллоу ворлдов посмотреть.
Главное - представление нужно получить о интерфейсах, контекстах, методах, которые там применяются. Со спрингом они тоже пересекаются. Ну и как сервлеты писать. Ну, про фильтры и лиснеры можно, если есть интерес. А можно и забить.
Вот по спрингу можно и нужно книжки почитать. Или кому-то больше документация доставляет. Спринг большой, там много всего. Но все учить не стоит. Можно охуеть. Лучше смотреть по потребностям смотреть.
По hibernate все много проще. Там основные сложности в настройках. В примерах и в документации это можно найти. А использовать его - изи.
Скажем, я сделал jsp страницу с формочкой логин/пароль и сервлет, проверяющий эти логин/пароль и отправляющий респонс на следующую jsp страницу. В сервлете же не должно быть jdbc кода? Я правильно понимаю, что мне надо сделать ещё один класс и присоединяться не напрямую к базе оракла, а как-то через tomcat?
Типа того. Правильно делать через интерфейсы. Interface Segregation, хуле.
Делаешь дао, где будут методы для работы с базой. Сохранить, там, селектить, удалить, апдейтить. Ну, которые тебе нужны будут в приложении.
И делаешь сервис, который будет иметь ссылку на дао. И у сервиса будут методы, которые уже могут содержать нужную тебе логику. Например, из того, что населектили, какую-то инфу вытягивать. А сервлету даешь ссылку на сервис на сервис.
Сервлет получает от страницы реквест, и обращается к сервису, используя методы сервиса. Сервис выдаст какую-то инфу сервлету, или тупо что-то сделает. Сервлет что-то пихнет в респонс, и отошлет его на страницу.
>>982635 Как это не будет? Конечно, будет. Это нужно для расширяемости. Для полиморфизма.
Пускай сейчас тебе не надо. Делаешь один интерфейс. Но интерфейс тут должен быть. Щас у тебя юзер дао, потом сделаешь суперюзер дао, потом днищеюзер дао. Это ж ооп. Ну, про дао не очень показательно. Но будет юзер дао, например, месседж дао, логин дао, дохуя чего дао, что нужно, дао.
>>982642 Окей, с юзерами и суперюзерами хороший пример, спасибо за все ответы. хули мне в универе так не объясняли вещи, как какой-то аноним на дваче за бесплатно
>моё лицо когда я 2 (два) часа пытался понять почему томкат не коннектится к базе данных с разными эксепшинами и на третьем часу замены рандомных строк на новые строки из гугла он внезапно начинает работать
>>982672 Что популярнее, нефть или аи-95 (здесь и бензин имеется в виду)? >>982696 Просрал два часа жизни впустую. А мог читать исключения и чем они вызваны.
Q: ЧТО СКАЖЕТЕ ЗА ДЖАВАРАШ?
A:Худшая инвестиция в твоей жизни. Огромное количество говнокода, оторванные от жизни задачки, 1000 заданий по выводу в консоль какого-то говна.
Q: Посоны, собираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом?
A: На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.
Q: Значит, я должен буду всю жизнь сидеть в опенспейсе, конвертируя XML в эксепшны? Ура, мне подходит! С чего начать?
A: Туториалы:
BEGINNER: http://myflex.org/books/java4kids/java4kids.htm
MEDIUM: http://www.tutorialspoint.com/java_technology_tutorials.htm
HARD: http://docs.oracle.com/javase/tutorial/
Книги:
- Head First Java, (2nd Edition) : Kathy Sierra, Bert Bates - для совсем нулячих простым языком.
- Core Java (9th edition) : Cay S. Horstmann, Gary Cornell - тоже для нубасов, но на серьёзных щщах.
- Thinking in Java (4th Edition): Bruce Eckel - для тех, кто уже умеет в программирование на другом языке, но хочет перекатиться.
- Effective Java (2nd Edition): Joshua Bloch - для тех, кто знает джаву, но хочет перестать писать костыли.
Больше здесь: http://www.proklondike.com/books/java.html
- Soft Skills: The software developer’s life manual : John Sonmez - сказки на ночь.
Видео:
https://habrahabr.ru/company/golovachcourses/blog/215275/ : 1000+ часов видео по Java на русском.
Q: Хули все книги на английском?
A: Без английского ты не нужен и можешь смело идти нахуй. Ну или в 1С-тред.
Q: Я не могу в книги. Наткнулся на джавараш, но в самом верхнем вопросе уловил нотки сарказма. С ним все правда плохо?
A: Это очередной курс(выучи джаву за 60 секунд и получай 300к в месяц), основная цель которого - выкачать из тебя деньги.
Q: Пока читаю, все понимаю, а сам ничего сделать не могу. Что делать?
A: Практика, больше практики.
Уровня laba1.pas: http://codingbat.com/java http://codehunt.com
Чутка серьезнее: http://programmr.com/zone/java http://codingame.com/puzzles
Рулеточка: http://postimg.org/image/xdfbvgps9/
Олимпиадка: http://codeforces.com
Примеры той-проектов: http://eax.me/programming-language-learning/
Ежедневные задачки, разделены на три уровня сложности https://www.reddit.com/r/dailyprogrammer
Q: Я выучил кор, достаточно ли этого, чтоб взяли на работу?
A: Лол, конечно нет хотя некоторым всё же везёт.
Цикл статей что в каком порядке учить: http://dou.ua/lenta/articles/java-beginner-guide-1/ (заблочен РосКомПозором, юзайте прокси)
Q: Слышал, SQL знать надо обязательно. Где его учить?
A: Начни с малого: http://www.w3schools.com/sql/default.asp
Затем переходи к: http://www.sql-ex.ru/
Q: Всё это хорошо, но без алгоритмов меня на работу не возьмут.
A: Не беда, вот курсы от Принстонского университета: https://www.coursera.org/course/algs4partI
То же самое но в бумаге: Роберт Седжвик, Кевин Уэйн - Алгоритмы на Java
Q: Я готов к первому собеседованию.
A: Проверь свои знания здесь: http://www.quizful.net/test
И здесь: http://www.careercup.com/
Q: Вопросы на собеседование.
A: http://jsehelper.blogspot.ru/2016/01/blog-post_59.html : куча вопросов с ответами не всегда правильными
http://becomejavasenior.com/blog/2015/07/01/327-inter..
Q: Какие еще ресурсы можно почитать?
A: https://android-arsenal.com/ : android
https://google.github.io/styleguide/javaguide.html : google java style
http://blog.jooq.org/ : Java, SQL, and jOOQ
http://virtualjug.com/podcast/ : подкасты
Q: Где можно пообщаться на java тематику?
- В этом ITT треде.
- https://www.reddit.com/r/java : reddit
- http://stackoverflow.com/questions/tagged/java : платформа для вопросов и ответов
Список java фреймворков, библиотек и по на любой вкус:
https://github.com/akullpp/awesome-java
Шапка треда:
http://pastebin.com/37Ldgi60
Предыдущий: https://2ch.hk/pr/res/959011.html