Это копия, сохраненная 23 июня 2017 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Юбилейный, отпразднуем же!
ФабрикаТредов фабрикаТредов = ФабрикаЖабаТредов.новыйИнстанс();
Тред тред = фабрикаТредов.создатьНовыйТред();
if (тред.изЮбилейный()) {
ФабрикаПраздников фабрикаПраздников = ФабрикаЮбилеев.новыйИнстанс();
Праздник праздник = фабрикаПраздников.создатьНовыйПраздник();
праздник.праздновать(this);
}
Наконец-то без тупой пизды, респект тебе, ОП.
Это не JavaScript, менять структуру объекта нельзя. Какие поля и методы были в классе - такие и будут у объектов.
И этот язык смеет называться объектно-ориентированным. Он классо-ориентированный.
хах, пiймав не незнание принципов ООП
Надо было фабрику тред билдеров делать.
помогите пожалуйста с задачей. Допустим есть множество чисел, и нужно разбить это множество на 2 подмножества так чтобы разность сумм этих чисел была минимальной. В этих двух подмножествах может быть разное количество чисел. Подскажите, как эту задачу решить, но не с помощью жадного алгоритма.
Динамическое программирование
Ты не туда зашел, мы здесь xml в фабрики одиноких эксепшн-бобов конвертируем.
Мне в голову пришла покачто только сортировка + разбор полусившегося множества попарно. В итоге n(logn+1) в среднем получается.
Сейчас сделал просто вычисление, попадают ли координаты клика а заданный круг. Как-то костыльно, не?
Ну отчего же. Всего десять лет назад была очень полезная штука!
Оно понятно, что лучше уж вальгаллу зарелизили, но ведь 10 лет пилили при живом-то osgi, пора бы и честь знать.
потому что никто на 10 пока не сидит, все релизы делают пока что на 8 только, очень затратно на новые версии порой переходить
>>999902
можешь учить десятую но все новые фишки вряд ли ты будешь юзать на практике плюс там изменений вообще практически нет, каждое издание дополняется с учетом выхода новой версии SE
С учётом сокращения питерского офиса оракл и перевода разработки в Индию, может оно и к лучшему. И жирбрейнсов реальная возможность получить хороших специалистов.
А интересно, где сейчас используется JavaME? На микроконтроллерах? Судя по сайту Оракла, платформа развивается, выпускают новые версии.
*не шучу
>Ну что, петушки энтерпрайзные, прибытие поезда с релизом java9 переносится на осень? Как вам?
Лучше бы дальше перенесли, очень не хочется учить эти модули.
Я сейчас с OSGi разбираюсь (пишем ERP систему на ядре Eclipse), это пиздец полный. Бандлы, активаторы, голова пухнет.
Нигде. Есть целая одна компания (бывшее подразделение сименса), которая делает контроллеры с этим дерьмом. Сфера их применения сомнительна.
гет гет скоро гет
Все модули это ненужная хуета, для управления зависимостями есть Maven/Gradle, для разделения кода jar файлы.
Но работодатели заставляют кушать сладкий хлебушек и чистить унитаз вилкой.
Java 9 это катастрофа, ведь на каждом собеседовании будут подробно спрашивать про эти модули.
> Java 9 это катастрофа, ведь на каждом собеседовании будут подробно спрашивать про эти модули.
Я уже .NET учу для переката.
Есть библиотека B, которая использует либу C версии 1.1. В твоём проекте A используются B и либа C версии 1.2 (не совместима на 100% с C 1.1). Как решать это будешь через Maven/Gradle?
Вкатился в чудесный мир джавы в 2015 году начав писать с товарищем поделку под ведро. Поделка разрослась, собрала 20к пользователей в гугл плей и угасла. Этот первый опыт мне позволил пройти собеседование на джуниор-макаку в энтерпрайзе, и с Июля 2016 я пилю веб-говно-ECM-DAM на Liferay и Nuxeo.
Вот уже почти год как я занимаюсь этой хуйнёй, и понимаю что надо бы перекатываться в другую компанию. Но при этом я так же понимаю что я за этот год толком нихуя и не выучил. Сделал полтора портлета, списывая всё со стака и учебников, сверстал несколько сайтов, пошатал jQuery немного, потупил над сборщиками, освоил всякие ойти-штуки полезные типа Jenkins, GIT, SVN, JIRA и проч. Короче дошёл до уровня собсна самого днищенского дауна-джуниора.
Так вот, уважаемые джаваны: какие основы должен знать каждый уважающий себя J2EE-разработчик? А то как глянешь список вакансий, так глаза разбегаются. Спринг-хуинг, Ваадин, рест, гора фронт-энд фреймворков плюс пачка разных БД. Бросаться учить всё одновременно - нихера не выучу, сидеть и дрочить одну технологию - выйдет несколько новых версий пока учиться будешь.
Извините уж за платиновый вопрос. Всем своевременного вызова GC.
Spring must have
Да, поднимать ценник говна, которое написали с ней. Значительно поднимать.
Т.е. эту проблему OSGI не решит?
А а чем проблема? Gradle позволяет использовать разные версии библиотек в classpath. Транзитная зависимость будет использовать старую версию, твой софт - новую.
Насчёт Maven не знаю, но наверное он тоже должен такое уметь.
Дошел до классов и обьектов, начал разбирать программу-угадывалку, и меня просто доебали баги. Помогите в них разобраться или хотя бы намекнуть, откуда эти бляди лезут?
На первых трех картинках сам код всех трех классов, последняя - результат работы проекта. Как вы могли заметить, какого-то хуя конвертируется в ноль предположение третьего игрока. А если третий игрок выдал верное предположение, то true приписывается первому игроку. И да, третий обнуляется. как показала практика, такая картина наблюдается при загадывании числа больше или равном 5
Программа, к слову, ни разу не сработала идеально и без ошибок.
Ради интереса добавил четвертого игрока - он тоже нулевой. Есть предположение, что информация о guess третьего и четвертого где-то теряется во время вызова\передачи в код игры.
С двумя игроками все работает как часы.
>Gradle позволяет использовать разные версии библиотек в classpath
Как ты себе это представляешь, наркоман?
В плагине JSON API:
GET api.timezonedb.com/блаблабла пишу, а как вытащить оттуда именно дату (formatted) и засунуть ее в созданный user attribute не ебу. Помогите, если кто-то сталкивался.
Вполне. Время менять проект и просить поднять ЗП. Если морозят просьбу - раскидывать резюме в hh.
Зп попрошу, но сваливать пока ссыкотно. Лучше протянуть до года и уйти уже на мидла наверно
Очевидно, что кресты - unmanaged, а Java - managed.
- Прямое управление памятью
- Шаблоны
- Множественное наследование
- Очевидная обратная совместимость с С на уровне исходников
- Неймспейсы (!= жабьи пакеты, т.к. нет привязки к реальной файловой структуре)
- Виртуальные методы (в жабе все по умолчанию виртуальное, в крестах нужно указывать руками)
- жабий байткод интерпретируется виртуальной машиной
- жабья стандартная библиотека срать на одном поле не сядет со стандартной библиотекой крестов
- детерминированность уничтожения объектов и управление этим процессом (детерминированные деструкторы в крестах vs недетерминированный finalize() в жабе)
Пока все, может, еще что вспомню потом.
Зарплаты, ты забыл медианные уровни зарплат.
Спасибо, анон,
Выглядит как просто заточка крестов под более обозначенные цели. И откуда столько холиваров?
>жабья стандартная библиотека срать на одном поле не сядет со стандартной библиотекой крестов
поясните эту строчку тому, кто на с++ не знает
pre-intermediate, параллельно с джавой учу и английский, читаю простенькую литературу, подтягиваю грамматику и улучшаю произношение.
В джаве я почти нуб и учу на данный момент java core, не думаю, что для этих целей нужен учебник на инглеше, уверен, есть хороший материал и на русиче, вот и спрашиваю. А пока читать такую литературу на инглише крайне стрёмно.
Pre-int и не можешь тех литературу читать - вот что стрёмно.
Фу блять, мерзота сьеби.
> pre-intermediate
> читать на инглише крайне стрёмно
Диагноз уровень сам себе поставил. Так или иначе:
> Пиздуй в филач отсюда и до intermediate.
Без умения использовать английский максимум куда ты сможешь вкатиться это в жопу или в 1С.
У явы шикарная стандартная библиотека, у крестов вместо нее буст.
Сап братцы, вкатываюсь потихоньку в Джаву, по этому прошу помощи с обучением, посоветуйте годных книг/ туториалов на русском языке, а то в шапке учебники на английским коим я не настолько хорошо пока владею.
Может кто то расскажет как он пришёл к успеху и какие материалы для него были наиболее полезны.
Всех благ
Жава неудачный вариант для новичка. Язык сложный, возможностей мало, работы тоже мало, а на каждую вакансию десяток макак. Сейчас каждый школьник учит жаву, а потом не знает что делать с ней. Лучше попробуй Haskell. На нём и конкуренция пониже, и зарплаты больше, и сам язык понятней. Если никогда не занимался программированием, то начинать лучше всего с Haskell. Работы полно, платят отлично. По книгам. Если есть хоть немного знаний программирования, читай это: http://www.ozon.ru/context/detail/id/30425643/ Если совсем новичок, пойдет эта книга: http://www.ozon.ru/context/detail/id/28346038/ Ну и куча онлайн-учебников. Вот, например: https://anton-k.github.io/ru-haskell-book/book/home.html Хороший учебник, всё расписано подробно. Сам по нему учился. Рекомендую.
Бери Pro Standart Ultimate Mega Edition
>Работы полно, платят отлично
Не пизди, на Хаскелл 1 вакансия в месяц, если не меньше. Хотя бы 5 вакансий актуальных кинь.
А вообще Хаскелл отличный язык.
Ну бля...
Сап жавач. Есть один класс, Person, в нем ФИО, возраст и т.д. Мне надо вывести ФИО из всех объектов, для этого я использую ListView<Person> listView;
добавляю все объекты в ObservableList<Person> personCollection; , далее listView.setItems(personCollection); Ну и понятно, выходит говно, выводятся ссылки объектов.
Как запилить это? Я в жаваФИкс ньюфаг.
Ну и нахуй оно нужно, если кроме текстовых полей ничего нет. Только усложнит код.
Нахуй нужно добавлять интерфейс и реализацию представления объекта в списке, точно. Можно же наговнять toString, а когда потребуется представлять в таблице дабавить switch-ей, а потребуется показывать что-то кроме строк - подговняем еще что-нибудь.
>основное назначение toString - отладочный вывод
Это ты скозал?
>>1001344
Вот когда нужно будет отображать что-то еще, тогда и будем мудрить.
Предлагаю заранее предусматривать в каждом приложении все возможные варианты, включая проблему переполнения 64-битного timestamp-а. Настоящие помидоры пишут только так.
Кретин, не путай теплое с мягким. Есть здравый смысл и логика вещей, если их придерживаться, это уже половина дела. Про toString, макака, к сожалению в javadoc таких деталей не нашел, возможно у Блоха прочел, ну это и очевидно, жалко что не для тебя.
нужно как-то сделать так, чтобы последний чар менялся на +1.
То есть получить aaaaab, затем aaaaac и так до z. Когда дойду до z, применять символы от 0 до 9.
Затем вторую с конца a заменять на b.
Как это реализовать?
Казалось простым, но что-то не могу понять
<!DOCTYPE html>
<html>
<head>
<meta charset= "UTF-8"
<title>виселица йоу</title>
</head>
<body>
<h1>Виселица, твоя</h1>
<script>
var words = [
"макака",
"двач",
"диван",
"бабах"
];
var word = words[Math.floor( Math.random( )*words.length )];
var answerArray = [];
for ( var i = 0; i < word.length; i++ ) {
answerArray = "_";
}
var remainingLetters = word.length
while ( remainingLetters > 0 ) {
alert( answerArray.join(" ") );
var guess = prompt( "Угадай букву или нажми 'Отмена' для выхода из игры" )
if (guess === null) {
break;
}
else if (guess.length !== 1) {
alert( "Введи одну букву" );
}
else {
for( var j = 0; j < word.length; j++ ) {
if( word [j] === guess) {
answerArray [j] = guess
remainingLetters--;
}
}
}
alert( answerArray.join(" "));
alert( "Было загадано слово " + word );
</script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset= "UTF-8"
<title>виселица йоу</title>
</head>
<body>
<h1>Виселица, твоя</h1>
<script>
var words = [
"макака",
"двач",
"диван",
"бабах"
];
var word = words[Math.floor( Math.random( )*words.length )];
var answerArray = [];
for ( var i = 0; i < word.length; i++ ) {
answerArray = "_";
}
var remainingLetters = word.length
while ( remainingLetters > 0 ) {
alert( answerArray.join(" ") );
var guess = prompt( "Угадай букву или нажми 'Отмена' для выхода из игры" )
if (guess === null) {
break;
}
else if (guess.length !== 1) {
alert( "Введи одну букву" );
}
else {
for( var j = 0; j < word.length; j++ ) {
if( word [j] === guess) {
answerArray [j] = guess
remainingLetters--;
}
}
}
alert( answerArray.join(" "));
alert( "Было загадано слово " + word );
</script>
</body>
</html>
Мне здравый смысл подсказывает, что в данном случае человек хочет выводить строки, а не что-то другое, так вот и пусть выводит.
Алсо, я сразу сказал, что не работал с fx и предложил самое очевидное для меня, как незнакомого с технологией, решение.
Оно что действительно так медленно работает?
Раньше же было 0, уже прогресс. Скоро можно будет на нем фрилансить, обоссывая байтопетушков.
>>1001861
>>1001865
Это все байки со времен чуть ли не первой жабы, когда через плюс действительно работало медленно и все хуярили через билдеры, буферы и прочую хуйню. Сейчас конкатенация под капотом работает именно через билдер (или буфер, точно не скажу), так что в большинстве случаев должно быть однохуйственно.
printf - метод для форматирования, использовать его каждый раз, когда тебе нужно к строке пририсовать хуец - глупо.
Буфер - старый вариант билдера, билдера только в пятой жабе завезли.
>Так StringBuilder медленнее printf или нет?
В душе не знаю, погугли. 100% кто-нибудь на стэковерфлоу уже проводил бенчмарк.
Как работает типичный веб Java (Spring, Hibernate и т.п.) Что отвечает за многопоточность, на каком уровне разруливаются запросы?
>100% кто-нибудь на стэковерфлоу уже проводил бенчмарк
Ага: https://stackoverflow.com/questions/513600/should-i-use-javas-string-format-if-performance-is-important
StringBuilder самый оптимальный (с учетом потребления памяти), а петуха, кукарекнувшего про printf/String.format, можно смело обоссывать. Жаль, что буфера нет, интересно бы и с ним сравнить.
На уровне выше твоего понимания.
Можно делать свой строковый класс, свою кучу и складывать на ассемблере через JNI.
С буфером помедленнее будет за счет принудительной синхронизации.
Они стрельнули котлином и попали в гугол, чуют что скоро настанет жава пиздец.
Можно и из буханки хлеба построить троллейбус, вот только зачем? Манагеру похую на твои маняоптимизации, ему надо чтобы проект соответствовал спеке и не падал иногда даже и это не обязательно, так что конкатенируешь ты строки плюсом, билдером или своего говна через JNI напихал - всем насрать. Хотя нет, не насрать, тебя выебут до кучи за то что вместо того чтобы формочек нужных нашлепать, ты с какими-то там коньюктинациями возился и ничего толком не сделал. Идите, ребята, в энтерпрайз.
>>999990
В ДС как-то проходил собеседование в конторке, которая занимается кассовыми аппаратами и смежной техникой. Они используют жаваМЕ и какую-то аналогичную херню для C#. С понтом "пилим код один раз - пользуемся на десятках устройств". Но вообще в электроникомире про эти вещи многие даже не слышали, ибо нахуй не надо, все пишут на С или крестах.
Мимо ньюфаня
А почему нет? 228 превратится в Integer, стринг вообще конвертировать не надо, оба наследуют от Object. А вот если будет Vector<Integer> то тогда нельзя будет.
Не делай только так.
За самописный JNI байтопетушка в любом бодишопе выебут в сракотан прямо на рабочем месте на глазах у всех. Ибо надо писать код, который могут поддерживать индусы.
>самописный
В смысле вместо стандартных Java фреймворков.
А КриптоПро подключается через библиотеку JCP, все уже написано.
Hadoop
Горизонтально масштабирующиеся стейтлесс аппники работающие с реляционной бд / кластером. Если на реляционщину поебать и клиентов прямо до пизды, то хадуп и кассандры.
Как найти в дс2 стажировку на лето на java разраба, если не знаю ничего про Java EE, и вообще не представляю как происходит работа над реальными проектами. Везде требуется опыт и тд, а я хочу устроиться хоть за бесплатно, чтобы понять как вообще процесс этот происходит, и что-то понаписать конечно же. Возможно ли такое найти при нулевом опыте?
У тебя на собеседовании потом спросят почему ты так или иначе реализовал что-то. Пиши тестовое своё сам, хоть научишься чему-нибудь.
Ну если ты ни в какую не хочешь на инглише читать, то могу посоветовать следующие варианты
http://www.ozon.ru/context/detail/id/137377512/
http://www.ozon.ru/context/detail/id/7821666/
http://www.ozon.ru/context/detail/id/28302387/
https://careers.epam.by/content/dam/epam/by/book_epam_by/JAVA_Methods_Programming_v2.march2015.pdf
Можешь любую выбирать, но первая и вторая - ол тайм бестселлеры. В хорстманне нормальный перевод, за хэд ферст не знаю.
А для чего? На всяких википедиях слишком расплывчато.
Хуйня какая-то у твоего папы между ног, а на Spring можно писать ML, самообучающиеся программы с нейросетями. Индусы конечно в Spring не могут.
Нейросети пишут на SPARK, Spring набор фреймворков для создания веб-приложений.
вы заебали, спарк хуярк. спарк это, в основном,аналитическая тулза поверх хадупа или еще какой-нить касандры. а нейросети сейчас пишут на трех либах MxNet, TenserFlow, caffe
Нормально - это когда оно при пользовании не падает и не тормозит шибко сильно. Если будешь писать много - в будущем поймёшь, хуйню написал или нет.
Так что сейчас пиши как пишется, без оглядок на местных двачекодеров которые вызубрили тонну конвенций, фреймворков, знают все различия версий джавы и лучшие практики на каждый случай жизни, они тебя только хуесосить будут.
только через такие костыли. заюзай спринг для DI
на сколько строк у тебя контроллеры, раз один на каждое окно? они же здоровые получаются. можно сделать несколько контроллеров на одно окно, тогда код код будет хорошо сконструирован
Диплом пишу, перепиливаю одну легаси парашу.
>>1002773
Про несколько файлов не знал, а контроллеры не очень большие, самый большой 700 строк. Просто было бы неплохо заиметь какой-нибудь аналог конструктора, чтоб хуякс, и форма открылась с начальными данными, которые ей переданы. Ну и обрано тоже как-то надо, но это не так критично.
>самый большой 700 строк
это очень много
есть метод в fx есть метод initialize же для таких случаев. считай в нём данные из своего синглтона
Ок, понял. Я просто думал, что это не самый идеальный метод, сейчас так и делаю.
Вроде автор буквально на пальцах все разжевывает для нубасов, еще и в каждой своей книги основы ООП вспоминает, а в шапке нет.
Сразу говорю.
Сам вкатываться не хочу, но попросили совета насчет книг.
И какую ИДЕ то выбрать. Тоже кстати добавьте в шапку. А то на вашу эту Джаву их как собак.
Правда что Intellij IDEA в бесплатной версии не поддерживает веб разработку?
Или стоит просто поставить НЕТ БЕАНС и не париться?
Если захотите обновить шапку нашел вот такую статью пока искал
http://info.javarush.ru/javarush_articles/2016/10/06/eclipse-netbeans-intellij-idea.html
Может добавите, если она адекватная.
Я не согласен где-то с 80% того, что он говорит, но мне нравится, что он всегда чешет против шерсти. Регулярно читаю потому, что заставляет задуматься, а иногда даже переубеждает.
>НЕТ БЕАНС
Беги от этой мрази, как от чумы. По дурости выбрал в качестве иде для последнего своего проекта (жава на бекенде + жс на фронтенде) - каждый день плююсь и матерюсь. Краткий список охуенных фич нетбинса:
1. Вечно что-то индексирует, обновляет, проверяет, синхронизирует. Не так, как идея - один раз проиндексировалась за две минуты и дальше все летает - нет, нихуя. Постоянно. Особенно радует, когда эта параша начинает выполняться параллельно с каким-нибудь maven build, из-за чего приходится десятки минут ждать, пока соберется проект.
2. Каждый раз при запуске просит у меня какие-то пароли, причем иногда просит системным диалоговым окном, а иногда своим собственным, и никак не может этот ебучий пароль наконец-то запомнить.
3. Стабильно раз в рабочий день крашится без объявления войны и объяснения причин.
4. Ткнул однажды то ли в эксепшн в стек-трейсе, то ли в ошибку - нетбинс услужливо мне ее выделил в коде, да так, что ничем, кроме рестарта, убрать это выделение мне не удалось. К слову, выделено было настолько вырвиглазно, что не видно было выделенного текста.
5.Настроить можно чуть менее, чем нихуя. Настройка работы с длинными строками - хуй. Настройка стиля расстановки скобок - хуй. Настройка отступов - хуй.
6. Элементарные вещи называются непроебически умными и длинными именами и находятся в максимально неожиданных местах. Например, переименование файла находится в меню "Средства реорганизации кода".
7. Не умеет автоматически добавлять импорты, обязательно требует нажатия ctrl+space на каждый ебаный класс.
8. Постоянно куда-то проебывает документацию стандартной библиотеки js. Если подключаешь js-библиотеку с документацией - 90% вероятности, что нетбинс ее проебет и нихуя тебе не будет показывать.
9. Самый пиздец - это регулярное (раз в неделю по умолчанию вроде) обновление репозитория мавена. Оно может проходить сколь угодно долго. Я однажды около часа прождал. Стоит ли говорить, что выключить этот процесс невозможно, и работать в то время, пока он идет - тоже. Слава богу, хоть эта погань в настройках отключается.
10. Пидорасит jsx по страшному, несмотря на заявленную поддержку.
Единственная хорошая фича, которую я нашел у нетбинса - это возможность прямо из него без лишних телодвижений развернуть томкэт.
Итог: сраный кусок тормозного, нестабильного, неудобного и кастрированного говна.
>НЕТ БЕАНС
Беги от этой мрази, как от чумы. По дурости выбрал в качестве иде для последнего своего проекта (жава на бекенде + жс на фронтенде) - каждый день плююсь и матерюсь. Краткий список охуенных фич нетбинса:
1. Вечно что-то индексирует, обновляет, проверяет, синхронизирует. Не так, как идея - один раз проиндексировалась за две минуты и дальше все летает - нет, нихуя. Постоянно. Особенно радует, когда эта параша начинает выполняться параллельно с каким-нибудь maven build, из-за чего приходится десятки минут ждать, пока соберется проект.
2. Каждый раз при запуске просит у меня какие-то пароли, причем иногда просит системным диалоговым окном, а иногда своим собственным, и никак не может этот ебучий пароль наконец-то запомнить.
3. Стабильно раз в рабочий день крашится без объявления войны и объяснения причин.
4. Ткнул однажды то ли в эксепшн в стек-трейсе, то ли в ошибку - нетбинс услужливо мне ее выделил в коде, да так, что ничем, кроме рестарта, убрать это выделение мне не удалось. К слову, выделено было настолько вырвиглазно, что не видно было выделенного текста.
5.Настроить можно чуть менее, чем нихуя. Настройка работы с длинными строками - хуй. Настройка стиля расстановки скобок - хуй. Настройка отступов - хуй.
6. Элементарные вещи называются непроебически умными и длинными именами и находятся в максимально неожиданных местах. Например, переименование файла находится в меню "Средства реорганизации кода".
7. Не умеет автоматически добавлять импорты, обязательно требует нажатия ctrl+space на каждый ебаный класс.
8. Постоянно куда-то проебывает документацию стандартной библиотеки js. Если подключаешь js-библиотеку с документацией - 90% вероятности, что нетбинс ее проебет и нихуя тебе не будет показывать.
9. Самый пиздец - это регулярное (раз в неделю по умолчанию вроде) обновление репозитория мавена. Оно может проходить сколь угодно долго. Я однажды около часа прождал. Стоит ли говорить, что выключить этот процесс невозможно, и работать в то время, пока он идет - тоже. Слава богу, хоть эта погань в настройках отключается.
10. Пидорасит jsx по страшному, несмотря на заявленную поддержку.
Единственная хорошая фича, которую я нашел у нетбинса - это возможность прямо из него без лишних телодвижений развернуть томкэт.
Итог: сраный кусок тормозного, нестабильного, неудобного и кастрированного говна.
> не лез в java 8.0 только особо
Лучше залезь - там много няшного: лямбды, стримы и т.п. И про EE изучи.
> вообще не представляю как происходит работа над реальными проектами.
На Java пишется довольно много веб-приложений например, с использованием таких фреймворков как Play, GWT, ZK, Spring и т.п. Погугли про тот же плей и поймешь, как и какие аппликухи пишутся на жабе. Вообще готовься к тому, что надо будет дрочить какой-нибудь фреймворк, а также HTML+javascript+jquery (для клиентской части).
>Возможно ли такое найти при нулевом опыте?
Да. Вообще как раз программисткая специальность (и в частности Java-программиста) хороша тем, что там много стажёрских вакансий, где опыт не нужен. Ищи.
Сделай массив/лист чаров со всем алфавитом по порядку и дальше манипулируй им и индексами элементов строк.
Десктопная джава ещё существует? В смысле вакансии на неё.
С чего начать вкатывание в Scala? С Java знаком, писал на Spring, но не прямо лютый enterprise.
На сколько вообще это популярный язык? Вчера я подохуел насколько легко на нем написать все, что я делаю сейчас на работе.
Однако вторая мысль, которая меня посетила - да пиздец же это тяжело обслуживать.
Скала слишком академична. На каждое простое действие есть тысяча разных способов это сделать. Очень сложно поддерживать.
Если хочется чего-то более прагматичного - посмотри KOTLIN.
Если не упираться в монады, макросы и прочую лапшегенерирующую ебеню — самый продуктивный статический язык на жвм, спокойно поддерживается. Используется в тинькове, тумблере, твитере и ещё полусотне хипстерских контор, и просто топ 2 после питона язык для бигдаты и прочего анализа данных.
Если хочется больше прибитых к полу деревянных игрушек со странным синтаксисом и без библиотек — прислушайся к этому >>1003058
> без библиотек
Лол, также ведь это ровно наоборот дела обстоят: скала - это отдельная экосистема, зачастую несовместимая с джавой. У котлина же 100% интероперабельность с джавой, никаких своих отдельных библиотек ему не нужно: просто берёшь и пользуешься библиотеками джавы. В одном проекте можно писать и на джаве и на котлине одновременно, вообще никаких проблем нет.
Конкретно с джава-библиотеками скала совместима точно так же как и котлин, и как бы тебе не мыли мозги евангелисты ЖБ, лозунг "В одном проекте можно писать и на джаве и на котлине одновременно" применим к любому ЖВМ языку. Суть везде в еле с системами сборки, не более.
Инструкция по поиску фреймворков и прочего готового кошерного кода для любого изучаемого языка: гуглишь вот такие https://github.com/lauris/awesome-scala списки и смотришь.
>И ещё поясните за фреймворк Play. Он вообще изначально для чего задумывался?
Как монолитная залупа для всего, очевидно, ты сам знаешь какой фреймворк они пытались скопировать.
Поразительная ныне у анона дедукция.
Ясно, посоветую тогда Интежи Идею спиратить.
Есть бесплатная идее которая может в вебразработку?
Блядь как эта мерзкая наигранная шмара в хипстерских очоках доебала.
Осталось дождаться пока андройд порашу смоет и можно будет заходить в раздел без отвращения.
У меня с эклипсом прям больших проблем не было за последний год, хотя конечно с идеи тяжело было пересесть. Какие у тебя проблемы с эклипсом? Обновиться до чего-нибудь более свежего чем Джуно или Кепплер пробовал?
Она не симпатичная. По крайней мере в этом образе вообще.
Видео наигранные.
Как и любая рекламная параша.
Вызывает только отвращение.
Пердит наверное очень вонюче.
> Version: Neon.3 Release (4.6.3)
Я хуй знает, конечно, у меня тоже мнение предвзято, ибо я на Идее сидел и иногда нетбинсе. Но из последнего почему-то перестали подсвечивать ошибки, если скомпилировать, тогда все ок. Еще пресеты бесят, java/debug, ну и хоткеи непривычные, хотя их и поменять можно наверно. Да и вообще интерфейс не нравится.
Просто тебе везде уже шмары мерещатся.
>Как монолитная залупа для всего, очевидно, ты сам знаешь какой фреймворк они пытались скопировать.
Рельсы рубиновые?
>Лучше залезь - там много няшного: лямбды, стримы и т.п. И про EE изучи.
Собственно там 3 вещи:
1. Лямбды - через класс с 1 методом
2. Стримы - обработка коллекций методами map, reduce и т.д., включая ленивую и параллельную, аналог LINQ без Expression Trees
3. Методы, имеющие реализацию внутри интерфейсов - при реализации можно взять готовую либо переписать (если вспомнить, откуда вообще взялись интерфейсы - крайне плохая идея, extension методы в C# лучше)
+ небольшие доработки стандартных классов
Поразительная ныне у анона дедукция.
Пишешь "jdbc:oracle:thin:@//192.168.0.123:1521/TestDatabase" - выдает SQLException с текстом:
Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
Пишешь "jdbc:oracle:thin:@//192.168.0.123:1521/xe" - устанавливает соединение, но SELECT запросы возвращают пустой результат, т.к. имя базы не задано.
Тут двачую, на текущей работе без тестов хуярим, но тут и зарплата днищенская. А если в галерку перекатываться, то без тестов никуда.
Ебать деьмл
SQLite считается эталоном по покрытию тестами, 100% branch coverage, 100 MC/DC, код тестов на несколько порядков больше кода самого приложения.
Там правда не Java, а C, а для тестов - Tcl:
http://www.sqlite.org/testing.html
Тестирование позволяет быстро находить баги, уменьшая время отладки и соответственно разработки в целом. Логические ошибки в коде, допущенные по невнимательности, ловятся сразу же.
Только многие почему-то ограничиваются юнит-тестами, а вот интеграционные не проводят.
Спасибо няш, а можно все же что-то не такое пиздатое, но с тырпрайза и на жабе.
Как по мне, так интеграционные тесты важнее множества юнит-тестов, если сразу писать нормальные тестируемые классы и юнит-тесты только на сложную бизнес-логику.
прост лень руками тестировать
Хотелось бы поиграться с этой темой.
Задача такая: существует множество заказов. Каждый из них меняет свои статусы в зависимости от результата на каждом из этапов.
Сейчас единственный подход, который есть в голове - пересчитывать метрики, такие как сколько заказов дошли до конца успешно, сколько заказов не дошло, каждый час, записывая в БД, а потом предоставляя отчет.
Убого же, да? Как вообще построить охуенную аналитическую систему?
> И ещё поясните за фреймворк Play. Он вообще изначально для чего задумывался?
Как мощный серверный фреймворк для веб-приложений.
>пересчитывать метрики
>каждый час,
>записывая в БД,
>а потом
Слетать на йух.
>предоставляя отчет.
Алан Бьюли, «Изучаем SQL».
так я не понял, никто не масштабировал чтоли, все блять под свои вендроиды скрипты пишут?
>Amazon AWS Lambda
Ты объясни как руками это делается (на машинах), а не через один облачный сервис.
Бамп.
Конвертирую в байты https://pastebin.com/LNgVScAD
Так вот вставляю setBlob(1, new javax.sql.rowset.serial.SerialBlob(picture.getFile())); это строчка из метода, офк
Тут все хорошо, в базе появляется инфа. Вот, теперь надо извлечь все это дело обратно. Извлекаю из базы picture.setFile(result.getBytes("File")); Пока все норм, что-то приходит.
И вот тут я объебываюсь. В чем фишка, где я обосрался?
image = pic.getFile();
Toolkit.getDefaultToolkit().createImage(image); //потом нихуя не кажет
ImageIO.read(new ByteArrayInputStream(image)); // тут img2 вообще нулл
тебе же ответили уже. ты что, шизик?
или ты матрицы перемножать в домашней сети собрался?
в офисе запускают эклипс, потом сливают код в гит - вот тебе и горизонтальная масштабируемость
Не правильно вставил, вот так.
byte[] image = pic.getFile();
img = Toolkit.getDefaultToolkit().createImage(image); //потом нихуя не кажет
BufferedImage img2 = ImageIO.read(new ByteArrayInputStream(image)); // тут img2 вообще нулл
Микросервисы, лол.
Берешь машину, ставишь на неё свое приложение.
Берешь машину, ставишь на неё свое приложение.
...
Берешь машину, ставишь на неё свое приложение.
Перед Машинами ставишь балансер/очередь/любой другой источник данных. И поехал.
Каждая машина берет из него информацию, обрабатывает и сохраняет куда надо. Пиши приложения таким образом, чтобы данные не приходилось синхронизировать.
Чтобы что-то подробнее написали - опиши задачу, которую ты собираешься горизонтально масштабировать, ибо, может быть, твоя задача все ещё решается вертикальным масштабированием.
Например, очереди типа FIFO, которые гарантируют доставку сообщения одному и только одному потребителю.
Сообщение пришло, его взяла одна из копий твоего приложения и обработала. Другие копии даже об этом не знают.
Что бы не извращаться? Можно из булки хлеба сделать троллейбус, ну ты понял.
Если ты тот чувак, который спросил о распределенных вычислениях, то ты долбоеб, потому что не рассказал о задаче.
Да в любом случае ты мудила. Иди к сессии лабы пиши.
Я думал декстоп на джаве умир.
как там в 20 веке, еще пишут софт для 2-ядерных ксеонов, соединенных через коаксиал в "распределенную систему"? Приходилось писать такое еще на Аде, но это никому уже не нужно, разве что в качестве лабы для 1-го курса.
Уже сказали тебе аноны - стателесс микросервисы. Или это не распределенная система по-твоему?
С хуяли ты думал что коммерческая компания даст тебе удобный и полный тулинг за бесплатно?
Не тот.
Да вы скрипт-киди, нет бы спринг посоветовать, редисы всякие, микросервисы (архитектуру), в край EE. Нет хуйню какую-то несут.
>Уже сказали тебе аноны - стателесс микросервисы. Или это не распределенная система по-твоему?
Нет, тупое ты животное, это архитектура предоставляющая возможность делать горизонтальное масштабирование (т.е. это можно делать на любом языке), вопрос был конкретно как делают это на джаве (какой стек технологий юзают и прочая информация в контексте джава экспирианс).
>Как (чем) в джаве горизонтально масштабируют приложение и как синхронизируют данные?
Не маневрируй, или ты настолько туп что:
как, чем (каким способом, какими решениями)
в джаве (в джаве КАРЛ!)
горизонтально масштабируют (распределяют, масштабируют!)
приложение (не твои скрипты, а полноценное приложение, демон/служба)!
и как синхронизируют данные? (если это позволяет архитектура, то как? Например в EE)
Понимаешь теперь насколько ты туп?
Мс всегда подмазывал девелоперов, а для джетбренска это единственных хлеб. Бесплатно чтобы подсадить, а обмазаться - покупай.
Они лучше какого евангелиста подмажут, чтобы на конфиренциях IDE посвятил, или даже язык сделают для самопиара компании, чем тебе бесплатно что-то дадут годное
что вижуал студио, что идея алтимейт не могут быть хорошими по определению. это закрытое по. используйте свободное по
Всё просто - чтобы научиться и похалтурить для себя достаточно платформы и базовых плагинов. Если хочешь полноценно зарабатывать - заплати за DLC промышленные плагины.
Настоящий жабокодер должен любить сладкий хлебушек швабодку. А IDEA это для латентных спермохлебов, которые втайне мечтают о C# и Visual Studio.
У баз разный sid или service name (в строке коннекта он в самом конце). Если ты про две схемы в одной базе, то либо коннектишься к нужному пользователю, либо к таблицам обращаешься по schema.table_name (при этом должны быть права у пользователя под которым коннектишься).
Гугле распределённый кэш
всё верно
Да не пизди. Большинство программистов на джаве и 60% community edition не используют, не говоря уже о Ultimate. Это как с фотошопом: большинству пользователей хватит функций бесплатного гимпа, но все хотят фотошоп.
Она подходит для всего. Если хочешь удобств - купи плагины.
Vim
Стандартную библиотеку лучше вообще в блокноте учить. Дальше по вкусу - на чём работаешь, на том и учись.
>Стандартную библиотеку лучше вообще в блокноте учить
Вот не понимаю. Материал ты лучше не выучишь, а времени будешь тратить больше. IDE подсвечивает синтаксис и все конструкции быстрее запоминаются. Она опять же указывает на ошибки, которые ты в итоге запомнишь и не будешь больше допускать. Так в чем же профит учить "в блокноте"?
Какой материал? От недоджуна требуют знания стандартной библиотеки, которую можно разве что гуглить и зубрить. IDE может помочь, но с большим успехом она потакает лени.
> которые ты в итоге запомнишь
Оно так, только если ты разобрался в чём ошибка и сам её исправил, а не нажал на кнопку "сделать заебись".
>Какой материал?
>Стандартную библиотеку
Одной зубрежки недостаточно. Нужно еще и писать всякие калькуляторы.
Нажимая кнопки "сделать заебись" язык не выучишь, согласен. Но если человек чмо которое не хочет учиться, то неважно что он использует - IDE или блокнот. Результата не будет.
if (<cond1>)
{
if (<cond2>)
{
<body>
}
}
Прописано в Code Conventions корпоративного стандарта. Это правильно вообще? Ни в одном open source проекте для жабы такого стиля не видел. Писать тяжело, т.к. непривычно, читать тоже - код увеличивается в размере, короткие методы становятся большими (а другой пункт к тому же запрещает методы длиной более 30 строк).
писать правильно так, как принято в конкретном проекте или соглашениях в организации.
Ну читать код ещё ладно, и правда непривычно, а писать - настроить IDE на автоформат, или гит-хуки сделать, чтобы все писали, как им удобно, а по гит-хукам автоформат бы проходил
>писать правильно так, как принято в конкретном проекте или соглашениях в организации.
Блин, и руководитель так же сказал.
https://pastebin.com/LNgVScAD
У тебя на работе оборзевшие сисярподебилы, тащащие свое говно и проеб строчек в джаву.
> Это правильно вообще?
Пиши по java code conventions. На любые вскукареки тыкают лицом в стандарты сана и теперь оракла. Если упорствуют в сисярподебилии и трате лишних строчек, то вали от этих долбоебов.
>>1004496
> писать правильно так, как принято в конкретном проекте или соглашениях в организации.
В общем случае да. Но у Java есть конкретный законодательно закрепленный стандарт написания и форматирования кода. Он незыблем. И все корпоративные расширения должны расширять JCC, где надо. Но не противоречить ему.
>законодательно закрепленный стандарт написания и форматирования кода
Где можно про это прочитать, чтобы объяснить ему?
Самый умный? Скажи это гуглу, с их "the indent increases by two spaces"
https://google.github.io/styleguide/javaguide.html
Из гугла теперь тоже валить?
Я всё понимаю, хотел пиздануть, что ко-ко-ко, стандарты JCC незыблемы
пожалуйста, никто не мешает это сделать в комьюнити версии.
Только удобной поддержки не будет, там комплишена для работы с Java EE, Spring, базами данных. Для научиться вполне подходит. Везде, где будешь стрелять в ногу, научишься находить ошибку, IDE не предупредит. По сути останется полезным только дебаг и автокомплит кода на джаве
Так для обучения норм же, а на работе хозяин полную версию купит.
А тебе именно в базу их позарез надо блобом сохранять? Вообще так не делается обычно, картинки а каталог сохраняются, а в базу кладутся имена файлов/ссылки.
помогите советом , пожалуйста
https://paste.ubuntu.com/24841492/
есть три листа - Test, Quest, Reward (по сущностям)
у каждого теста есть несколько квестов, у каждого квеста в свою очередь несколько ревардов.
таким образом как в пасте собираю джсон из базы ( база - динамо дб)
проблема сейчас в том, что запрос на такой полный джсон со всеми деталями ( 160 тестов, у каждого 2-3 квеста, у каждого квеста 2-3 реварда) уходит 5 минут. вопрос - или это сложность работы с базой, или тот код что в пасте надо распараллелить на несколько процессов?
Заранее спасибо
Насчёт базы - ну можешь попробовать выполнить SQL запрос для одного теста (или как там у тебя) и проверить, нет ли в нём тормозов. А вообще да, код в котором для множества объектов идёт сложная сериализация с подсосом к базе лучше распихать по тредам для оптимизации. Попробуй сначала этот подход и проверь, насколько улучшилось время.
Может какие-нибудь свистелки, кэширование там, хуе мое.
мои соболезнования, совершенно пидорский стиль
1. берешь простейший гайд с spring.io по типу REST Endpoint
2. тупо делаешь то, что там написано. если тут возникают трудности, то непонятно как у тебя хватило мозгов написать в этот трэд
3. радуешься, что уже есть реальное приложение
4. осознаешь, что познавать спринг можно еще много лет. лезешь по ссылкам.
5...
6. профит
Harvey Deitel - Java How To Program. -
Охуенно теория написана, охуеннейшие примеры кода. После каждой главы - задания. Читаешь, разбираешь примеры, делаешь задания - охуенно понимаешь тему. Учил по ней. Всем рекомендую.
Head First Java, (2nd Edition) by Kathy Sierra, Bert Bates -
Из шапки книжка. Для даунов на пальцах обсосано ВСЕ, чего она касается. Охуенные и прикольные примеры кода, веселые картинки - чего еще нужно, чтобы понять?
> но они видать рассчитаны на тех, кто хоть какой-то тырпрайз на чистой J2EE пилил до этого
Почитай про сервлеты до этого. Глубоко не въезжай, это тебе не нужно. Но это центральная тема веба под тырпрайзом. Поделай хэлло ворлды на них - не особо больше.
Главное - изучи объекты, классы, интерфейсы, которые там используются, как конфиги делаются. Что описывается. Все это будет и в спринге. Что-то явно, а что-то неявно.
А, вот оно что.
Добавил сборщика мусора, после затратных операций с построением таблиц, ситуация стала ещё тупее, было видно, что раньше он вызывался, но память не чистилась, сейчас он заранее вызывается, но память всё равно так и остаётся выделенной непонятно на что.
Всё таки главным остаётся вопрос, как его ограничить так, чтобы не получился outOfMemory?
1. Тебя не должно волновать что там делает JVM под капотом. Не выжрала больше xmx? Ну и прекрасно!
2. Подумать и рассчитать.
Ну не траль пжалста.
Меня волнует случай, что в планах сейчас сделать программу, которая будет обрабатывать большой объем данных после передачи их по сети, а остальное время простаивать и ей возможно будет необходимо совсем небольшое количество времени 1гб памяти, но остальное простаивать, я и интересуюсь, можно ли сделать heap size процентом допустим от используемой, чтобы он динамически менялся с used memory, на 10% например всегда был больше.
Я чутка шизофреник, не обращайте внимания на речь.
Никто этой хуйней не занимается, потому что это удар по производительности. Кроме того, если твоё приложение отожрало один раз N памяти, то оно когда-нибудь и второй раз отожрет этот объем снова. В случае, если память под кучу уже выделена, это не сулит никаких проблем. В случае, если лишняя память освобождена, её может не хватить при очередной необходимости и твой сервис упадет. Довод не то что бы железный, но достаточно ясно показывает, почему эти лишние телодвижения не нужны.
На случай, если ты лучше рантайма знаешь, как работает твое приложение, какие объемы данных обрабатывает и каких ресурсов ему достаточно, ты можешь указать рантайму лимиты этих самых ресурсов.
> в планах сейчас сделать программу
Сначала пишется программа, а потом начинаются оптимизации. Обратное является разновидностью соплежуйство и деструктивно влияет на процесс разработки.
> которая будет обрабатывать большой объем данных после передачи их по сети
Объем требуемой памяти далеко не всегда напрямую зависит от объема обрабатываемых данных. Иными словами, можно терабайты циферок перемолоть, зарезервировав для алгоритма сущие килобайты. Смотри на свои алгоритмы, а не на цифры в диспетчере задач.
Рекомендую тебе выкинуть хуйню из головы и делом заняться, пока не придешь к просветлению.
мимо-не-джавист
Пасиба. Так и поступлю. Сейчас книжки умные стараюсь читать и на практике осваивать как всё это устроенно.
Слышь, ты давай не выёбывайся, а объясни как из этого говна сделать JAR, который потом будет запускаться. Что за петушиный язык? Я хуею.
Тебе английским языком сказали почему валится.
Никто тебе не обязан ничего объяснять, скам. Так что засунь себе язык в жопу и иди rtfm.
Блядина, тебе сложно в двух словах пояснить как скомпилить jar? Я уже и парашную ИДЕ поставил, лишь бы тебе не пришлось много писать. Просто скажи как получить JAR и я съебу из этого треда навечно.
Всё, нашел и без вас, пидарасов. Какое же дно эта жява, пиздец просто. Как хорошо что мне только хеловорд нужен. Я бы умом тронулся писать на этом говне.
Разработать в тестовых целях простой распределенный сервис, для запуска которого предполагается иметь несколько (4 или 6, в зависимости от выбранного количества нод) контейнеров. Пусть 2(3) контейнера будут нести приложение, общающееся с внешним миром по HTTP, а оставшиеся 2(3) - базу данных этого приложения. Приложение лучше написать на Java (можно написать сервлет и запустить его в контейнере сервлетов Tomcat). База данных - любая, которая поддерживает multimaster-репликацию и с которой нетяжело работать из Java (выбрать самостоятельно, выбор обосновать). Сценарий использования такой: приходит запрос "положить в параметр v значение 1" или "дать значение параметра v", этот запрос прозрачно перенаправляется сервлетом к БД (пусть экземляр БД выбирается каждый раз разный, по кругу, как бывает в Round Robin DNS). Если экземпляр БД упал, то просто выбрать другой экземпляр по кругу.
Вопрос в чем:
Работадатель хочет что бы ему написали архитектуру на халяву?
Или это нормально?
Кстати, как-то предложили поработать удаленно, но для этого выполнить тестовое задание:
написать блог со всей пердой кэшированием админкой и т.д. за день. Это норма вообще?
> и с которой нетяжело работать из Java
и прикручиваешь Hibernate
@
и устанавливаешь все базы данных
Это на джуна собеседование? Чую я мне повезло с тестом уровня "какой результат выведется в консоль"
Потому что Cloneable это еще интерфей-маркер, как Serializable. и если ты не имплементишь CLoneable, то просто получишь CloneNotSupportedException.
Аз да забыл, я собственно согласен с мнением на стеке: "This is one of the most badly-designed parts of Java. Usually, you should prefer using a copy constructor instead of using clone()." Хорошо зоть эжтот clone() - protected, уже намекает что это какая-то залупа.
но получу я исключение не потому, что это маркер, а потому что просто в клоне проверяется, реализует ли класс клонабл или нет. Или я не прав?
> Serializable
> CLoneable
> CloneNotSupportedException
Пиздец, это просто какой-то ебаный заповедник аутистов.
я понимаю, что клон это плохо. Просто объясни, почему изначально нельзя было сделать без маркера?
Потому что был бородатый 1996 год. Ты ж смотри в какой версии его сделали.
Дефолтная сериализация не эффективна. И это только первая из ее проблем. Сразу могу вспомнить что она не поддерживает версионирования. Вроде как еще какие-то уязвимости с ней, но это не точно и скорее всего это фиксится обновлением джавы.
Да, есть. Я буду продакт оунером и скрам-мастером.
Я хочу чтобы ты сделал рогалик во всем как дварф фортресс эдвенчур мод, только не дварф, а гном.
Приступай к поставленной задаче. При необходимости проведи анализ и декомпозицию. Ежедневный скрам-митинг в 9 утра. Завтра расскажешь что сделал сегодня и что сделаешь завтра. Приступай.
Шоколадный.
Че за контейнеры, блять? При чем тут ноды?
На сеньера позиция? Че за хуйня тут происходит?
Мимо мидл.
> за контейнеры, блять?
Сервлеты я так понял, пишем 2 сервлета или что-то там и деплоим томкатом.
Ноды хуй знать
Сеньйора? Внатуре? Вообще показалось не так уж и сложно. На джуна только Core спрашивают штоль? Хуле тогда я сижу еблом щелкаю.
cum
В данный момент читаю "Spring 4 для профессионалов", читаю гайд по PostreSQL.
Спрашиваю потому что не знаю куда уже направлять свои усилия. Более-менее ориентируюсь в Spring и Hibernate. А на работу всё ещё как-то неохотно зовут.
определись для начала хочешь ли ты идти по пути фуллстэк или специализироваться на бэкэнде. везде свои плюсы и минусы. но в каждой команде есть негласное (иногда и более ярко выраженное) разделение ролей. слишком напрягаться на сопутствующих технологиях вроде БД я бы не стал. Основы знать надо, а детали узнаешь в боевой обстановке. Нет смысла читать много книг по БД, ведь ты же не на позицию админа/дев БД собираешься.
п.с. напиши пет проджект, который можно показать. для вменяемых людей это большой плюс, они увидят что ты уже можешь сделать сам
ну, я то хочу бэкенд. Меня прёт делать штуки, а не заниматься вёрсткой. Только вот в моей мухосрани какой-то пиздец по вакансиям.
Пет проджект уже написан, это да. Штука действительно помогает. Намного чаще начинают перезванивать и приглашать на собеседования, но тем не менее.
Явно надо куда-то съёбывать, но пока нет возможности.
Спасибо за овтеты, анончик.
Брюс Эккель - Философия Java
Хорстман и Корнелл в двух томах
сам хочу перескочить на спринг. сейчас заканчиваю очередной пет проджект на молодежном спринг клауд: микросервисы, стримы, амазон и все такое. надеюсь что найду что-то подходящее. ну а если вакансий мало, то идти надо от обратного: смотреть что они хотят и учить эти технологии/фреймворки (ну или написать что уже знаешь, если вытянешь потом)
удачи анон
Библиотеки должны быть обратно совместимы. Если есть конфликт зависимостей то юзай shade plugin.
Тебе нужно знать только спринг (ioc, data, security, mvc), JPA, JTX. Если ты норм спец, то адекватный работодатель закроет глаза на незнание какого-нибудь гвт, монги или че там у них еще.
Полезным будет прочитать Clean Code и научиться писать юнит тесты, если еще нет.
Попробуйй System.getProperty("user.home")
Весь код лежит в такой чудесной иерархии. Я совсем всё неправильно делал?
>Как к готовому проекту на Java подключить систему сборки любую?
Что это значит?
На скрине я вижу грейдл проект. Хочешь использовать мавен - пиши pom.xml. Структура для современных проектов одна и та же:
```src/main/java/whatever```
Вполне себе. Их обычно либо на Java, либо на Python пишут. Иногда ещё R для анализа данных и предобработки используют.
И что годное можно прочитать по нейронным сетям на джаве? Может уже есть готовые инструменты, которыми можно воспользоваться
Пощупал нейронные сети твоей мамаши.
Да блэт, у меня готовый проект уже, я не понимать как с ним работать. Мануал с нуля показывает только
Ну иди вагоны тогда разгружай или улицы подметай. Не знаю, что ещё тебе тогда посоветовать.
Ну я буду лично к кровати твоей мамаши.
Фронтенд освой, а потом запили свой проект
Пишу ботов для вк, хощу на raspberry pi. На чем экономичнее их будет держать, на питоне или jvm?
Сейчас они на питоне просто дёргаются по крону, работают и выключается в течение 30 секунд, в случае с джавой лучше будет запущенными держать?
Ну ей будет смысл быть все время включенной, только если она действителньо все время работает, но вряд ли ты заметишь разницу между питонов и джавой в плане производительности.
Раскажите как он это делает/скиньте исходники/посоветуйте аналогичную программу для анализа
Хочу перевести большой someApp.jar с кучей строк, но если пытаться дизассемлить ебала получается. Направьте меня на путь истинный.
В Java не шарю, дизассемблированный код выдает кучу ошибок.
Потому и спросил про ту прошу и как она все это делает. Ведь в идеале надо все строки экспортировать, удобным образом перевести и импортировать в .class обратно
Я под линем. Да и под виндой эту мокропиську с помоек скачивать не стал бы.
Бесплатно за тебя могу погуглить:
https://stackoverflow.com/questions/10682042/change-string-constant-in-a-compiled-class
https://stackoverflow.com/questions/14069082/how-to-change-already-compiled-class-file-without-decompile
https://stackoverflow.com/questions/38014675/java-class-file-change-string
Твою проблему могу решить за шекели prakop29 @ mail . ru
Интересует строка
Timer t = new Timer(1000, super::greet);
Вторым параметром нужно передать объект типа листнер. А мы передаем ссылку на метод родительского класса. Почему это вообще работает?
Java 8. Почитай про лямбды и method reference
Ссылка на метод превращается в интерфейс с одним методом.
public class Hello {
public final String name;
public Hello(String name) {
this.name = name;
}
public static void sprint(Hello hello) {
System.out.println("Hello, " + hello.name + "!");
}
public void print() {
System.out.println("Hello, " + name + "!");
}
public static void main(String[] args) {
Hello hello = new Hello("Yoba");
Hello.print(hello); // instead of Hello.sprint
}
}
Разве нестатический метод не отличается от статического только тем, что у него есть дополнительный параметр this? Что-то не могу въехать.
Static method - class level
Non static - instance level
С большой буквы ты обращаешься к классу, а у него нет такого метода, он есть только у экземпляров
Это в первой же главе любой книги по джаве пишут...
Но внутри JVM они устроены одинаково? Зачем было вводить такое отличие и делать static method(Class) несовместимым с нестатическим Class.method() неясно.
Ну я знаю что виртуальные методы в специальной таблице хранятся, а обычные нестатические чем отличаются от статических?
В байткоде блять операции разные. И стоимость вызова разная, на старой джавке чуть ли не 20% обещали прироста если статические использовать.
Поясните мне нубу, второй месяц вкатываюсь в Java, прошёл видео курсы от Javabegin, посмотрел все лекции по Java от мэилсру, прочёл Шилдта "Руководство для начинающих" от корки до корки, написал пару простеньких программ (аля миниигры, мп3 плеера, органайзера и т.д), так же освоил git, Sql.
И собсна сам вопрос, что изучать дальше? Spring, или стоит перед ним ещё, что то изучить, почитать, и что делать после него.
Понимаю, что я освоил лишь базу и ещё очень далёк от просвещения, но насколько я близок к вакансии ебучего джуниора?
В общем, что посоветуете братцы?
Я с подобным бэкграундом (даже меньшим - трехнедельные курсы жабки, где изучил основы языка, базовые классы, сервлеты и JDBC) смог устроиться джуном. Но это в 2008 было. Погляди сейчас какие требования у джун-вакансий, варианты разные бывают, может и найдешь такую, на которую уже сейчас заслать можно. Заодно узнаешь, какие требования основные. А вообще c HTML/javascript/jquery у тебя как? На жабе много веб-приложений и от кандидатов могут ещё и это потребовать. Можешь ещё про паттерны всякие почитать - MVC например, просто для общего развития.
Года 2 назад пробовал сайт писать на HTML но занимался этим мб неделю, помню точно, что с ним нечего тяжёлого не было и синтаксис немного помню, но думаю подтянуть его не очень сложно, а вот с js и jquery совсем всё плохо.
Думаю может стоит пойти на курсы какие или подучить ещё пару месяцев и пробовать заджунится.
Офф рекомендации Гугла для ведра, на ведре конечна своя недовм, но все же.
Нужно хорошо знать Core, включая многопоточность, ввод-вывод, Stream API из 8-й версии и все стандартные коллекции (лучше с изучением исходников, они есть в архиве src.zip в каталоге с установленной JDK).
Инструменты - обязательно владение системами сборки Maven и Gradle, системой контроля версий git (+ лучше и Mercurial), владение консольными командами java, javac и jar.
Базы данных - нужно знать SQL, теорию и основные реализации (типа что такое транзакции и уровни изоляций), JDBC и Hibernate с аннотациями.
Веб - сервлеты, REST веб сервисы, уметь настроить хотя бы Tomcat и деплоить на нем WAR приложения. Уметь создавать веб-приложения со встроенном сервером типа Jetty. Spring - большая тема, как минимум нужно знать Boot, CDI, MVC и Security. Также нужно знать front-end, сейчас это не только jQuery, но и ReactJS (а также с большой вероятностью webpack и Redux).
В legacy проектах может потребоваться знание EJB, SOAP и XML/XSD/XPath/XQuery.
К сожалению, я не знаю книги, где описывались бы все основные EE технологии, но можно посмотреть серию ...in Action, например, Spring in Action.
Да, и к вебу переходить, только когда уверенно пишешь десктопные приложения. Там все намного сложнее. Начинать лучше с сервлетов, деплоящихся на Tomcat'е.
>Также нужно знать front-end, сейчас это не только jQuery, но и ReactJS (а также с большой вероятностью webpack и Redux).
И еще хаскелль, куда же без него?
> Также нужно знать front-end, сейчас это не только jQuery, но и ReactJS (а также с большой вероятностью webpack и Redux).
Для джуна/стажера это всё же некритично я думаю, хватит и некоторых знаний JS/jquery, этого достаточно чтобы в ходе работы начать изучать реакт или аурелию (или что там в конкретном проекте используется). В плане контроля версий знаний SVN и гита в 99% случаев хватает за глаза. Мавеном и прочим если что очень быстро научат пользоваться и на работе.
на моём первом месте работы вот так пользовались Apache Wicket + спринг + самописный ад вместо нормального орма. Всё это как-то функционировало вместе. Пришлось учить викет, EJB, SOAP и всю эту прочую поебень.
После того, как я заебался мигрировать их legacy проекты со второго спринга и wicket 1.4 на современные версии, я успешно от них съебался.
Никогда не знаешь, что пригодится даже на самое первой работе
Лет 10 назад так было, до перегрева. Сейчас отсев в Java жесткий, требования заоблачные.
У нас есть Анкета, в которой каждый кандидат указывает желаемую з/п. Мы стараемся учитывать предпочтения каждого=)
>отсев в Java жесткий, требования заоблачные
С чем это связано? Алсо для спецов с опытом такие же жесткие требования?
Вот мое решение:
public boolean nearHundred(int n) {
int absN = Math.abs(n);
return (absN >= 90 && absN <= 110) || (absN >= 190 && absN <= 210);
}
При отрицательных значениях тест не проходит, вопрос почему? Я же использую Math.abs().
Модуль тебе нужен для разницы, а не для n:
public boolean nearHundred(int n) {
return (Math.abs(100 - n) <= 10 || Math.abs(200 - n) <= 10);
}
Пиццевозы и школота с жабораша нахлынули, прознав о "самых высоких зарплатах". В итоге теперь и зарплаты стали меньше, и требования выросли. В .NET вкатиться проще, например, достаточно пары проектов на github'е.
> Сейчас отсев в Java жесткий
В крупных конторах - возможно. В других нанимают если ты в состоянии && от || отличить и вложенный цикл написать, потому что научить сносный код на джаве писать сейчас можно за год.
>В других нанимают если ты в состоянии && от || отличить и вложенный цикл написать
Ну-ка приведи пруф такой конторы. Только чтобы не в ДС и оклад не 20к.
Меня так наняли. Французская контора, сижу джуном год. Тест на первом собеседовании прошел на 16/30 с мультитредингом обосрался. Чем тебе пруфать?
А если бы не брезговал - мог бы писать в резюме что ты бисексуал фуллстак и работу проще найти было бы.
Давай ссылку на сайт конторы.
>>1009845
У меня и так в резюме fullstack. Но писать back-end на PHP, Python, Node.js и тому подобном говне не собираюсь.
Может ещё и флажок с супом в анусе сфотать? Я в компании единственный русский.
На авито купил?
> отказываешься деанониться
Твой деанон никого не интересует. Интересует, где есть подобные места:
>В других нанимают если ты в состоянии && от || отличить и вложенный цикл написать
Да еще и релокация в Европу, лол.
> На авито купил?
Продолжай отрицать.
> Да еще и релокация в Европу
Релокации не было, меня после учёбы во Франции наняли.
Скачал в гугле текст и распечатал. Чернобелая этикетка? Хоть принтер бы цветной купил, хохол
Какой ты доёбчивый однако. Ещё и хохлы тебе мерещиться начали.
ParisTech
Никак.
Линейка, пропорции. :3
При чем тут рекурсивные зависимости?
Это копия, сохраненная 23 июня 2017 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.