Вы видите копию треда, сохраненную 18 мая 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
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С-тред.
Тех.поддержка английского >>201049
Q: Я не могу в книги. Наткнулся на джавараш, но в самом верхнем вопросе уловил нотки сарказма. С ним все правда плохо?
A: В наших тредах постоянно появляются люди, спрашивающие о джавараше. Громко обьявляют, что начинают заниматься, задают пару тупых вопросов и куда-то пропадают. Похоже, большинство адекватов бросают джавараш из-за дебильных заданий типа "десять сраз скопипасти этот кусок кода". Тем не менее, иногда появляются и люди, говорящие что прошли его целиком, и что дальше задания получше. Короче, хочешь - пробуй, первые десять занятий бесплатно же. Но, как минимум, лучше совмещать с обучением по другим источникам. На самом деле ты просто потратишь свое время на какой-то мусор.
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: Лол, конечно нет хотя некоторым всё же везёт.
Вот майндмап с джава-технологиями: https://atlas.mindmup.com/2015/10/3d59a040592a0133d02a5d31ebcc5420/java/index.html
Цикл статей что в каком порядке учить: 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
Предыдущий тред тонет тут >>703806 (OP)
Возникла задачка слепить несложное десктопное приложение (табличка-круд и обновление некоторой статистики собираемой по каждой записи в ней).
Взял netbeans+swing и почувствовал боль от того что компоненты не потокобезопасны, и надо танцевать вокруг SwingWorker-а.
Вроде простая задача - обновление таблички из бэкграунд-треда превращается в какой то ад из колбэков и всяких там invokeLater.
JavaFX в этом плане будет лучше (GUI раньше никогда не делал) или те же грабли?
Сохранил на всякий случай.
Собственно вопрос: нужно ли мне для этого ide и какой посоветуете. Также хочу знать, нужно мне ставить jdk от oracle или open подойдет ?
ОС: Linux
нахуй тебе ide? пиши в блокноте, и через статичный компилятор прогоняй sudo rm -rf* - yousource.java
нахуй тебе ide? пиши в блокноте, и через статичный компилятор прогоняй sudo rm -rf* - yousource.java
Ставь jdk от оракл, а в качестве иде ставь idea или эклипс.
Open подойдёт.
Почему данный код:
public class Solution
{
public static int min(int a, int b)
{
int m;
if (a<b)
m = a;
else
m = b;
return m;
}
public static void main(String[] args) throws Exception
{
System.out.println( min(12,33) );
System.out.println( min(-20,0) );
System.out.println( min(-10,-20) );
}
Считается правильным, в отличие от этого:
public class Solution
{
public static int min(int a, int b)
{
int m;
if (a<b)
m = a;
if(a>b)
m = b;
return m;
}
public static void main(String[] args) throws Exception
{
System.out.println( min(12,33) );
System.out.println( min(-20,0) );
System.out.println( min(-10,-20) );
}
По сути ведь тот же перебор возможных вариантов.
Почему данный код:
public class Solution
{
public static int min(int a, int b)
{
int m;
if (a<b)
m = a;
else
m = b;
return m;
}
public static void main(String[] args) throws Exception
{
System.out.println( min(12,33) );
System.out.println( min(-20,0) );
System.out.println( min(-10,-20) );
}
Считается правильным, в отличие от этого:
public class Solution
{
public static int min(int a, int b)
{
int m;
if (a<b)
m = a;
if(a>b)
m = b;
return m;
}
public static void main(String[] args) throws Exception
{
System.out.println( min(12,33) );
System.out.println( min(-20,0) );
System.out.println( min(-10,-20) );
}
По сути ведь тот же перебор возможных вариантов.
Ублюдок, мать твою, а ну заливай свой гавно на pastebin
http://ideone.com/V5eic4
Ты, кажется, не так понял предложение. На пике утверждается, что это делать годно, а потом рядом пишут False, то есть это нихуя не годно, но никто не мешает тебе так делать
>то есть это нихуя не годно, но никто не мешает тебе так делать
А, теперь понял. Но почему это нихуя не годно? Нарушается читабельность? Или попадает под какие-то экшепшены?
Ебаный пидорас! Няша, во-первых, научись, блять, оформлять правильно код, а, во-вторых, сука тупая, заливай его в онлайн-интерпретатор, как я.
Делается это так: http://ideone.com/OOS4Sr
Айдеон не умеет в паблик классы, так что пришлось сделать ссылку на твой статик метод. Но суть ты, надеюсь поймешь.
Итак, отвечая на твой вопрос: оба варианта правильные, но: нахуя плодить сущности добавлять лишнее условие, когда можно обойтись одним? Я бы сделал код еще проще, но был бы нанесен ущерб читабельности. Суть ты понял, в общем?
Откуда столько ньюфагов в этом ИТТ треде? Не заходил месяц, и вот на тебе. Весна...
Я люблю спойлеры, когда хочу скрыть свою НЕНАВИСТЬ, лол.
Кстати, из-за таких вот тупых вкатывальщиков нас и не берут на работу. Печалити.
Второй вариант неправильный. Есть тривиальный случай, когда он возвращает неправильный ответ.
a == b
Исключительно для читаемости. Ну чтобы ты просматривая код сразу понял что это статичный метод
Я вангую оптимизации под капотом, статические методы тупо заинлайнить можно.
Йобаный в рот, захожу я на сосач, тут блядь жявамартышки выпердолили свой тред на нулевую и несут хуйню. Дибилам вроде тебя нужно запретить писать без саги, серьёзно.
Статические методы – просто ебаная абстракция не влияющая на перформанс, заинлайнить всегда можно что угодно, вопрос только в том, что влезет в первый (самый мелкий и главный) кеш процессора, как всё расфасуется в остальные уровни кешей, и сколько соответственно кеш миссов совершится или удастся избежать из-за твоего инлайна, чем и занимается жит. А ты лучше просто пиши абстрактные фабрики и не пытайся в оптимизацию.
Просто обычная запись и чтение из файла переменных не очень крутая и безопасная штука, а может сериализация?, и я уверен, что вы, котаны, знаете какую-то спешиал секретную альтернативу, которая мне поможет. Собсно, подскажите, что вбивать в гугл.
> обычная запись и чтение из файла переменных не очень крутая и безопасная штука
Сойдет.
Гугли библиотеки для журналирования.
>заинлайнить всегда можно что угодно
Где-то вдали послышался дикий хохот создателей (оптимизирующих) компиляторов.
>ебаная абстракция не влияющая на перформанс
Ну, если ты не видишь разницы между вызовом статического и обычного метода... Тут предположение было о том, что вызов статического метода на классе и объекте происходит чуть по-разному, мало ли ты какой извращенец, мало ли что допускает спецификация. Если предположение неправильное - меня без проблем можно ткнуть носом, а потом обоссать.
>чем и занимается жит
Ну ты же понимаешь что до JIT свою лепту еще и байткод-компилятор вносит, и первому так легче.
>и не пытайся в оптимизацию
Даже не думал.
Есть простой метод, проверенный дедами:
1) сохраняешь данные во временный файл
2) закрываешь
3) переименовываешь в нужный (с заменой старого)
Ну так я и сказал, что это диванная теория, проверять ее у меня нужды и желания нет.
Заграница:
Хэй, парни, я тут такую крутую библиотеку знаю, обязательно попробуйте.
Рашка:
Вы че, пидорасы, не знаете эту библиотеку? Ну вы и хуесосы.
Если не считать, что из-за тебя пидараса, мне пришлось марать пеку накатывая ждк...
http://pastebin.com/fqPtJHSn
Вот собственно и всё что надо. Статический метод действительно будет быстрее при первом вызове (без прогрева, в явке оказывается все нестатические методы по умолчанию виртуальные, т.е. вызываемый метод вычисляется в рантайме а не компайлтайме, тормозное говно оно такое). На этом, собственно, все отличия - память в статических методах придётся выделять точно так же, так что на лишние инструкции в конкретно этом листинге можно не обращать внимания.
Как видишь, сам компилятор такие базовые вещи не инлайнит, а оставляет это хотспоту. Если у тебя хэловорлд с 1 функцией и ты хочешь выиграть 0.001 мс (при том что сама вм будет стартовать 2-3 секунды) - делай методы статическими и наслаждайся прогрессивной оптимизацией.
мимо >>718206
Дурачок совсем?
Тебе дается утверждение, мол "вызывать статический метод через ссылку это нормас". Справа написано False, что как бы намекает, что нихуя не нормас, но при этом остается возможным
>мне пришлось марать пеку накатывая ждк
Ну кто же виноват, что ты вот такой - из штанов лезешь, доказывая свою охуенность на анонимном форуме.
Ты не понял, я предположил, что вот эти два метода будут вызываться слегка по-разному.
Class.staticMethod()
object.staticMethod()
Посмотри, пожалуйста.
Btw, никто не говорил, что тут будут ощутимые выигрыши и вообще в этом есть какой-то смысл - это уже ты себе додумал.
>Как видишь, сам компилятор такие базовые вещи не инлайнит, а оставляет это хотспоту.
Совсем не факт, что в другом месте не заинлайнит, но тут я совсем не спорю.
>Ты не понял, я предположил, что вот эти два метода будут вызываться слегка по-разному.
>Btw, никто не говорил, что тут будут ощутимые выигрыши и вообще в этом есть какой-то смысл - это уже ты себе додумал.
Сейчас я ссу тебе на ебало повторно:
>>718204
>Я вангую оптимизации под капотом, статические методы тупо заинлайнить можно.
>>718239
>Тут предположение было о том, что вызов статического метода на классе и объекте происходит чуть по-разному
>Ну кто же виноват, что ты вот такой - из штанов лезешь, доказывая свою охуенность на анонимном форуме.
Я знаю что я ахуенен, я лезу из штанов вон (аж 1 строку в консоли написал, во) чтобы нассать тебе на ебало, доказывать себе что я ахуенный я смогу без твоей помощи.
>Совсем не факт, что в другом месте не заинлайнит, но тут я совсем не спорю.
Если ты не понял что я тебе объяснял в своём первом посте - просто иди нахуй а лучше грузчиком, дегрод. ЖВМ за него под каждую машину персонально всё оптимизирует с ниебической эвристикой, за счёт чего работает на серверах не хуже нативных языков, а он хочет обычной статической оптимизации как в нативных языках.
Ты какой-то странный. Всего хорошего.
Сраные кретины с инлайноптимизацией
Собственно, смотри, при вызове на классе он в стек лезет. Может быть, JVM это починит в процессе.
cls.doSmth();
Cls.doSmthStatic();
cls.doSmthStatic();
9: invokevirtual #4 // Method Cls.doSmth:()V
12: invokestatic #5 // Method Cls.doSmthStatic:()V
15: aload_1
16: pop
17: invokestatic #5 // Method Cls.doSmthStatic:()V
20: return
*на объекте.
Рашка:
Сейчас я ссу тебе на ебало повторно: ко-ко-ко
Я знаю что я ахуенен, чтобы нассать тебе на ебало
У нас самые охуенные дегенераты.
Так лол, дело не в вызове, если ты не заметил по моему листингу, жвм так делает вообще при любой инициализации класса:
Main();
Code:
0: aload_0
1: invokespecial #1 // Method java/lang/Object."<init>":()V
...
EbatMoiHui();
Code:
0: aload_0
1: invokespecial #1 // Method java/lang/Object."<init>":()V
4: return
Очевидно что aload_0 пушит в стэк ссылку на новоиспечённый объект для быстрого доступа (и определения конкретной реализации в рантайме), тут нечего поправлять.
>>718299
Таких даунов как ты мало просто обоссать, в этом вся печаль.
Поссал на хохла. Уебывай на учин чушкарь
Есть вроде годные книдки akka in action @ reactive design patterns, но пираты не подсуетились, если у анона есть линки с меня патч на jvm чтоб плюсы обгоняла как обычно
Автор Ананий, а книжка годная.
В оп посте лучшие книги для изучения джавы.
Последовательно, сжато и с примерами есть только курсы, но они тебе дадут нихуя. Читай какой-нибудь учебник из шапки и применяй полученные знания, пробуя всяко-разно вертеть код и создавая какие-нибудь крутые штуки. Если у тебя нет желания всяко-разно вертеть код чисто из любопытства, то программистом тебе не стать.
помогите пожалуйста разобраться с Graphics2D, как повернуть ось Oy в обратную сторону, то есть как сделать ориентацию базиса правой? По умолчанию она левая, и как ещё сместить точку начала координат, которая находится в левом верхнем углу, в середину моего JFrame?
О, идеальные люди с безграничными знаниями подтянулись.
Ну расскажи ему, че ты как этот, не просто так же спросил.
Ну блядь, добавляешь к каждому иксу половину ширины области рисования - в итоге все съезжает вправо.
Делаешь y = (0.5 * height - y). Теперь точка с координатой 0 будет рисоваться в середине, с координатой - 0.5h внизу, +0.5h вверху.
RTFM
спасибо.
https://docs.gradle.org/current/dsl/org.gradle.api.tasks.bundling.Jar.html#org.gradle.api.tasks.bundling.Jar:filter(java.lang.Class)
Фильтром-то это понятно, просто, может, есть какой-то более правильный способ?
Я для своей игры тупо все состояние мира сериализую в файл. Получается пара мегабайт. Минимум ебли, главное с serialVersionUID не проебываться и не забывать его добавлять, а то потом веселуха с совместимостью сейвов между версиями начинается.
Из треда в тред оп пос то обсирает джавараш, то превозносит. Какие-то шизофреники в треде сидят. Вы уж блядь определитесь штоле?
Каждый тред который я перекатываю, будет с такой шапкой. Не нравится - перекати сам.
Ты когда-нибудь слышал про биполярное расстройство личности?
>>719830
>Каждый тред который я перекатываю, будет с такой шапкой. Не нравится - перекати сам.
Претензия не к тому что не нравится, читай внимательно. Претензия к тому, что У ОПа каждый новый тред - новое мнение. Сижу в треде с 2014 года, и с тех пор как вы тут срались про джавараш, так и срётесь.
слово1 - слово2
слово3 - слово4
слово5 - слово6
как достать с файла любую строку но с четким указанием номера строки?
Пропустить нужное число переносов строки?
http://paste.fedoraproject.org/356889/52431146/
Можешь здесь еще посмотреть https://commons.apache.org/proper/commons-io/
> На джаве фриланса нет
Вруша, зачем ты заставляешь лолисичку плакать.
Все есть, пусть и не в таком количестве как на PHP.
https://hh.ru/search/vacancy?text=Java&schedule=remote&order_by=relevance
https://www.upwork.com/o/jobs/browse/?q=java
Внезапно.
Что делать если меня забанили на одеске?
Года полтора назад.
До этого был пиздатый акк с 200+ часами и охуеным рейтингом и тестами. Просто забил как то и заказчик на мея петишку кинул.
Меня зобайнели. Теперь никак?
За создание второй учетки пидорнут?
>Претензия к тому, что У ОПа каждый новый тред - новое мнение
Какого, блять, ОПа? Тут не один человек перекатывает, а тот, кого раньше заебёт писать в тонущий тред.
Обычное дело для зекачера.
>>719915
На toptal.com иди, его создали специально для программистишек-аутистов.
ищи учебник мфти
он года 2003 примерно там коротко 10 лекций
не смотри на возраст - почти нихуя не изменилось
если ты писал на крестах, то проблем вообще никаких не должн быть
Какой нафиг жсон? Стандартный джавовский сериализатор. Нахуй с чем-то изъебываться? Размер сейвов и скорость в данном случае не особо важна, плюс-минус пара метров или пара секунд на сохранении не принципиальна. Зато пишется в три строчки фактически.
Спасибо, лол.
не знаю таких
Ты данные в чем хранить собрался?
>почти нихуя не изменилось
Восьмая Java - дивный новый мир.
http://paste.fedoraproject.org/356950/97711614/
Все таки я не понимаю зачем эти выебоны:
Consumer, UnaryOperator, BinaryOperator, Predicate, Function ...
Почему бы просто не назвать
Action0, Action1, ..., Func0, Func1?
> Все таки я не понимаю зачем эти выебоны - языки, компиляторы?
> Почему бы просто не назвать
> 011111101100011101111100100011001010111010100100101101010001001111010101001
Мань, ну нервись ты так сразу, дай обсудим.
В том же RxJava/Kotlin/C# не пытаются блеснуть лингвистическими познаниями, а делают как удобнее запомнить.
Наверное это из-за того что в java пока нет auto и объявление переменных некрасиво бы смотрелось.
Иногда кажется что здесь тусуются в основном умственно-отсталые.
Или у зеленых такая защитная реакция, когда нет аргументов.
> 2016
> Не писать на Spring, Akka, Vert.x, Ratpack, RxJava
Хорошо, жди некро-EE8 дальше.
>>720105
BiPredicate лучше, чем TwoArgumentFunctionToBoolean. И UnaryOperator - это лучше, чем FunctionWithSingleArgumentOfTheSameTypeAsReturnValueType.
> UnaryOperator - это лучше, чем FunctionWithSingleArgumentOfTheSameTypeAsReturnValueType
Java-интерпрайз-программист детектед , есть же Action<T1, T2> и Func<T, R>
UnaryOperator - "функция, которая имеет единственный аргумент того же типа, что и возвращаемое значение".
Как это можно обозначить в Action<T1, T2> и Func<T, R>? Никак. Если ты не считаешь нужным придерживаться конвенциям наименований и поддерживать code style, то иди нахуй.
Удваиваю.
Там и ввод-вывод и многопоточку на практике поймешь.
Школьники, что с них взять.
Не хочу учиться, хочу сразу EE и вкатываться в энтерпрайзы за 120 тысяч.
Ну и зачем тут вторая wildcard, аутист?
Это всего лишь значит что получить ошибку в данной ситуации нормально и просто не хотелось делать выебоны с возвращением кортежей/Result'ов, как в Go/Rust'e.
Заставили - учи, в чем проблема?
Вебсферу предложат поучить и щитай песта тебе
Надо красиво спиздеть в резюме про основные ачивменты и решенные сложности в разработке приложения на сервлетах+jdbc+mysql, которое я еще нихуя не разрабатывал. Мордой, по легенде, не занимался.
С меня как обычно.
Судя по всему ты будешь устраиваться джуниором - от них вообще сильно ничего не ждут. Поэтому не нужно пиздеть, а просто честно ответить на вопросы, уровня отличия абстрактных классов от интерфейсов.
Ну, как повезёт, меня на интерна спрашивали как настраивать хибернейт и скопы спринговых бинов.
ну джун такое должен знать, хули тут такого
Ответил на своем первом собеседовании.
Меня, естественно, не взяли но сказали что не терминально тупой, дали больше 5 книжек на почитать, сказали добавишь ачивок в резюме, прийдешь через пол-года.
А позвонили через месяц, мол, присылай обновленное резюме, новая позиция. И на собес если резюме ок.
Я как-бы нихуя джедаем за месяц не стал, но не слать тоже не вариант. Надо сейчас выслать резюме и до собеса хорошо разобрать что я там напизжу.
Хипстор конченый
Я настоятельно рекомендую тебе не пиздеть, поскольку с очень большой вероятностью ты будешь это приложение на сервлетах разрабатывать сразу, а там уже подставишь людей своим незнанием и заработаешь себе плохую репутацию.
>>720475
Ты очень толстый.
>>720731
Бери любую из трех >>720731
>Ты очень толстый.
Ну правда же спрашивали. Хотя, конечно, вряд ли меня стали бы прям подробно расспрашивать о них, если бы я не указал это в резюме. Кстати сильный повод не особо увлекаться пиздежом в резюме: недавно к нам собеседовался один кун на тестировщика, в резюме указал, что знает джаву и плюсы, ему дали простенький код на джаве и попросили объяснить, что он делает, а он взял да и обосрался. В итоге впечатление было испорчено и куна так и не взяли, хотя по остальным пунктам он подходил, а джава для этой вакансии вообще не была нужна.
https://bitbucket.org/tschool/javaschool/src/6edff31d2bac733f9ee2a79a87714551dcc0f5b8/tasks/?at=master
Просто берешь любое из этих заданий и делаешь. Перед началом прочитай пару статей про мавен, там ничего сложного нет. Куришь Spring in Action (ну, я его читал, например, есть и другие книги) и делаешь понемногу, параллельно гайды по хибернейту. Логи потом уже допилишь.
Там еще есть папка с лекциями, но это только презентации, по ним одним особо ничего не поймёшь без пояснений, но можешь тоже поглядеть, хуже не будет.
Как лучше поступить? Свой проект вечерами пилить?
Начал изучать javarush, дошел до 20 уровня, но, чувствую, это не совсем то что надо джуну (возможно, я ошибаюсь).
Если ли что-нибудь прикладное с грамотным разбором для Java, как курсы Гилева для 1С?
Вообще, пригодится ли опыт (серьезный, 10 лет, кучи внедрений в куче предметных областей) 1С в Java-разработке?
Мака, спасибо за кнопку скрыть у постов
Твой уровень - голый Эккель, Антош, который научил пользоваться if-else и вызывать методы библиотечных классов. Effective Java написана архитектором для практикующих программистов, вряд ли ты понял ее, а Design Patterns без фундаментальных знаний из CS, того же SICP, вообще смысла не имеет. Многопоточное программирование, работу с сетью и базами данных нужно учить отдельно, прочитав по каждому как минимум 1 книгу в 500-800 страниц. Не ходи в мир EE пока, не аутируй за компьютером - читай литературу, в противном случае возведешь шаткое здание без фундамента, которое развалится либо на первом же собеседовании, либо на первом же проекте.
Оставайся на 1С.
Стоит ли браться за него вместо джавы с начальными знаниями о джаве? В чем существенное отличие, кроме синтаксиса? Как его подключить в идее/андроид студии? Просто начать писать код на нем или как?
Kotlin можно было бы посоветовать Senior разработчикам для увеличения продуктивности, но они все уже Scala знают. Вощим, учи Java, не отвлекайся.
>В чем существенное отличие, кроме синтаксиса?
В то что его никто не юзает на продакшне, кроме самих брейнсов.
Если хочешь работать, учи джаву. Если для себя развлечься, учи котлин.
Если просто для себя - учи на здоровье, если собираешься работать за деньги - потеряешь время.
>>720815
А на джава-программиста реально устроиться? Я даже не рассматриваю этот вариант, там как-то сложно все, непонятный ентерпрайз, куча направлений, которым сложно самому научиться и раобраться, вряд ли меня возьмут даже через десять лет самообразования. Так-то для работки учу пока питон и околовеб, а джава - просто для себя наверное, попытки сделать несложные андроид приложения в надежде что они кому-то пригодятся.
Чтобы устроиться на джуна надо больше коллективу подходить, чем что-то знать. Бывали случаи когда брали абсолютно нулевых ребят и за месяц из макаки делали программиста. Главное хотеть и пытаться. Много.
Можно быть неебаццо профессионалом, но редкостным говнюком без работы.
У Python нет будущего в Web, учи JavaScript: jQuery, Lodash, Node, Angular, MongoDB. Туда можно вкатываться сразу без особой боли, через год домашних экспериментов устроишься тысяч на 35 с последующим ростом и возможностью фрилансить на дядю за доллары.
>брали абсолютно нулевых ребят и за месяц из макаки делали программиста
Ты аккуратнее с такими оборотами, а то неподготовленный мозг за правду посчитает.
Ну, мое дело наставить - ваше послать на хуй, благо друг от друга нам ничего не надо.
Ну, мое дело - наставить, ваше - послать на хуй, благо друг от друга нам ничего не надо.
Чот проебался с русским языкой.
>Effective Java написана архитектором для практикующих программистов, вряд ли ты понял ее
С примерами уровня "мы вернули из метода коллекцию и почистили её, теперь у нас почему-то в объекте пустая коллекция! Как же так произошло и что же теперь делать?!"
Охуеть сложность.
Да да, нахуй пошел.
На jsf + primefaces?
Дело не в сложности.
Простейший тезис "Воровать - это плохо" знают все дети лет с трех, но в полной мере понять эту истину у людей получается годам к 25, пока придет жизненный опыт, пока найдется время порефлексировать на эту тему.
Effective Java - это не книжка с рецептами "Как делать надо", она выступает проводником, который шагает по языку вместе с программистом и "подсвечивает" некоторые особенности языка (ремесла), оставляя программиста с этими "указателями" и своими мыслями (опытом) наедине, позволяя сделать далеко идущие выводы и выстроить общую картину. У новичка же после прочтения останутся только "указатели", которые вне "единого знания" вскоре пропадут из памяти.
Ну я не знаю. Меня на протяжении всей книжки не покидало ощущение "да что ты блять говоришь". Такие простые истины в ней описаны, что я даже хз, для кого эта книжка нужна.
Ну тогда накидай книг, которые для меня must read в данный момент. Java Thread Programming читаю прямо сейчас, куда дальше копать?
Чтобы на выходе получилось что-то типа массива {"00:00", "01:00", "02:00" ... "23:00"}
google гдз по java
Например. Документ:
(root
(animal tag=animal
(cat tag=felis size=17)
(dog tag=canis size=15)))
Запрос doc.search("tag=animal") должен вернуть три ноды, а запрос doc.search("tag=felis and size<20") - одну. Какие будут поля у каждого элемента заранее не известно, т.е. вместо tag и size может быть десяток других.
В общем мне это напоминает xml и кажется что задача уже решена, но я не знаю что гуглить.
Если без теории категорий и всей хуйни, то порядок примерно такой:
1. SICP (для понимания Java 8 и Design Patterns)
2. Алгоритмы (Седжвик / Кормен / Левитин)
3. Design Patterns (половина книги с приходом Java 8 устарела, но прочитать надо)
4. Java Concurrency in Practice (половина книги с приходом Java 7-8 устарела, но прочитать надо)
5. Что-нибудь по сетям, бери русского автора
6. Что-нибудь по реляционным базам данных, бери русского автора
Далее легонечко обмазывайся сервлетами с JSP (нужно просто базовое понимание) и переходи к JSF, а потом Spring Framework. Далее тебя ждет огромный мир, в котором найдешь дорогу сам, я в тебя верю.
apache MetaModel есди быть точнее
Почитай немного про синтаксис, потом переходи к коллекциям и дженерикам, потом конкьюренси. Или просто посмотри оглавление любой книги и прочитай то, чего не знаешь.
У меня уже есть парсер.
Думаю создать xml документ и выполнять xpath запросы используя dom4j - ок?
>>720976
Судя по описанию, он для табличных данных. Как он себя поведёт если у меня будет пара тысяч нод с десятками тысяч уникальных свойств? Запилит одну таблицу с десятью тысячами столбцов? Или пару тысяч таблиц?
HTML + CSS
Берешь свой код на плюсах, выкидываешь из него delete, функции оборачиваешь в классы - профит, ты теперь кодер на джаве. Ну стандартную библиотеку подучи только, она в джаве сильно богаче чем в плюсах.
Вы прослушали юмореску "Вкатился в Java с 0, положив свое ЧСВ на CS и алгоритмы".
Вывод типов ещё не завезли, как и метопрограммирование – нахуй вообще надо в 2076? Вот ява-то прогрессивный язык.
>>720967
Блин, не катит. В xml, внезапно, нельзя записать объединение интервалов (пример: [1, 2] ∪ [5, 7]) так, что бы xpath запросы работали как надо.
>как и метопрограммирование
Нахуй оно вообще надо? Ну да, на шаблонах можно вроде даже машину Тьюринга сделать в плюсах. Но зачем?
Продолжай копипастить, тут ничего полезного не написано.
И на хуй с работы.
Ладно, неположивший-чсв-на-cs-и-алгоритмы, посоветую мне генератор парсеров для контекстно-свободной грамматики.
Алсо, почему ты алгоритмы выделил в отдельную категорию? Знание CS подразумевает знание их.
> Примеры той-проектов: http://eax.me/programming-language-learning/
При устройстве на позицию джуниора, проекты такого уровня на гитхабе котируются?
Посмотри уровень дипломных работ любого ВУЗа, выпускающего программистов - это уровень Junior разработчика.
Дипломная - это чаще всего исследование. Ничего общего с разработкой программного обеспечения оно не имеет.
Занимаются такие своими "композициями алгоритмов, основанных на случайном лесе" и потом сосут хуи в НИИ за 15к. А Васян возьмет выучит пхп и будет на одеске 30$ в час хуярить.
Пожааалуйста
Доставил, проверяй.
Эх. А мне как-раз и нужны эти дипломные, но очень часто они потом лежат на шкафу, а Ваня идёт учить похапэ.
Таки это ВМК. Открой любую другую кафедру, разницы не увидишь. А все потому, что вуз - это исследователи. А программисты - это пту.
Блеать, скажите можно ли 30$ в час на похапэ и как? Я грузчиком работают. PHP вроде прост.
если я напиздел то тогда antlr.
Хотя бы 3 года опыта в офисе + хороший английский. Ну и умение пиздеть, продавать себя. Потом идешь на одеск и конкурируешь с индусами. Но таки свои 30$ сможешь делать.
А в вузах погромистам дефакто преподают в 4 раза больше матана чем всех остальных вместе взятых предметов (ещё бывает дохуя физики и инж. параши в шаражках).
ВМК - это не кафедра, а факультет. Один из лучших, чуть-чуть уступает ФИВТу МФТИ. Специальность - прикладная математика и информатика. Но "программистов" ни там, ни там не готовят. Среда-то академическая - ученые, исследователи. Это не обслуживатели ЭВМ, которым хватает 3-месячных курсов и дальнейшего набивания руки за станком.
Будто, джава-девелопер не макака.
Смешно, когда кидают описание кафедр твоего же вуза.
И, кстати, там нет ни слова о программистах, CTRL+F в помощь.
Нету ни по одному тегу, вообще. Мань, успокойся.
У тебя отсутствуют базовые умения классификации информации.
И именно поэтому ты необучаемый отброс из шараги, а я МФТИ-бог.
Ты сам этот формат придумал? Если да, то не городи велосипеды. Если нет, то парси в какую-то структуру (AST) и гоняй запросы на ней. Для запросов сделай что-то на подобии Criteria в JPA. Теперь ты можешь либо использовать этот criteria-like API, либо написать поверх него свой язык запросов (тот что у тебя в примере). Для DSL используй javacc, например.
Правильно он все пишет (правда утрирует слегка). Вуз не готовит программистов (не готовил и не будет). Программирование - инструмент, пусть и не самый простой. Я вот только не понимаю, почему ещё не создали нормальных ПТУ, которые бы за 4 года готовили бы именно кодеров.
>Но "программистов" ни там, ни там не готовят. Среда-то академическая - ученые, исследователи
Кекнул чет. На самом деле вузы готовят борщехлёбов и небольшое количество предателей родины. Самые умные из рашки валят в науку Европы. Вот моя преподавательница алгебраической геометрии защитила в рашке диссер и несколько лет назад завела трактор.
Ну и что с того, что твой препод-трап свалил? Это ничего не решает.
В дсах так со всеми джуниорами или только джава?
Как взлетит, пили контакты, хоть образование получу
Похоже я не достаточно ясно выразился. Пользователь вводит свой запрос во время работы программы. И помимо аст и поиска по его элементам придётся реализовывать парсинг и выполнение запроса, чего мне не очень хочется, т.к. слабо представляю как это сделать без говна, палок и костылей.
> сделай что-то на подобии Criteria в JPA
Ты говоришь про какие-то внутренние особенности реализации criteria или то как примерно программист с классом взаимодействует?
Ты и сейчас не достаточно ясно выразился.
Во-первых, ты не ответил на вопрос откуда такой формат. Если можешь не использовать его - не используй.
Во-вторых, парсинг можешь реализовать с помощью javacc - за вечер разберешься. Ну или свой парсер костылять. Ты ведь как-то парсишь сам документ. С помощью чего?
В-третьих, под criteria-like api я имею ввиду что-то типа
document.find(new And(new FieldEqual("tag", "felis"), new FieldLess("size", 20)));
книги в оп-посте
А где сейчас работаешь? Энивэй хуевая у вас там работа, раз ты книги читать во время перекура собрался.
"Learn Java in the 1 week spending 1 hour per day"
По качеству устраивает readability api https://www.readability.com/developers/api
но там жесткие лимиты, а у меня 100к урлов в день минимум.
Сам нагуглил
https://github.com/wuman/JReadability
https://github.com/kohlschutter/boilerpipe
https://github.com/karussell/snacktory
https://github.com/GravityLabs/goose (scala ни разу не пробовал)
Смущают последние обновления пятилетней давности. По описаниям лучше всего snacktory, потестил, очень много мусорного текста.
Если кто имел дело, посоветуйте пожалуйста лучшее решение.
Я low-skill. Максимум нагорожу тонну регулярок, как в оригинальной версии readability. Денег нанять Программистов нет.
в ~/ вылез файл java.core весом в 700 ёбаных мегабайт!
опенжлыка 8
никсы
Вот запустил пользователь программу, скормил ей файл, программа построила аст - это я умею и уже делаю.
Теперь пользователь вводит строку, по которой будет фильтроваться это дерево. Например: "sex=male & age>17 & age<28".
И вот эту строку сложнее парсить и не понятно как потом применять.
Pocket?
https://getpocket.com/developer/docs/rate-limits
>Each user is limited to 320 calls per hour
Неужели в /pr/ никто не занимается бигдатой.
Разве это всё не на стороне браузера? https://github.com/mozilla/readability
boilerpipe смотрел? http://boilerpipe-web.appspot.com/
Тонко.
>почему ещё не создали нормальных ПТУ
Потому что само слово ПТУ у нас стало синонимом "шарага для дебилов". Непрестижно, никто не пойдет, всем ВУЗ подавай. Хотя часть вузов по факту ПТУ и есть
Я проебался полтора часа честно пытаясь разрешить это говно (хотя изначально дико тупанул из-за невнимательности), но когда сдался... Сука! Откуда, блядь, откуда там пробел!? Или же почему его нет в правильном ответе!?!?!?
PIZDOSSSSSSSSSSS
Читай в оригинале, там обычно нету проблем с переписыванием кода. В том же эккеле просто миллиард ошибок, почти нигде в коде нету кавычек. Или скачай на оф сайте сорцы к заданиям.
Я полный ноль. Учебник толстый и там обещали научить меня программировать! лол. Там всё объясняется тем, что визуальная информация усваивается на дохуя процентов лучше текстовой и скучной
>>721758
Знания английского боюсь не хватит. Хотя не хороший ли это способ одновременно натренировать и английский, и жабу...
>визуальная информация усваивается на дохуя процентов лучше текстовой и скучной
Ты будешь кнопочки перетаскивать или текст печатать будучи погромистом?
Так там не только интерактивные задания. Эти "головоломки" тип не обязательные. А "обязательные" -- практические. Так что всё норм.
Бюджет 7-10к рублей, в зависимости от уровня помощи. Объяснить некоторые моменты, или помочь с выполнением. Хоть скайп, хоть вк, хоть почта.
Готов перечислить на любой кошелёк, частями по мере выполнения.
jacobson.theodor @yandex.ru
Посоветуйте годных ресурсов, где можно изучить жабий байткод.
Черт хуйня какая-то.
Я вообще имел в виду, может есть где-либо годная спецификация с примерами.
jvm specification, chapter 4
Со запросом то же самое - парсишь в аст. Потом пишешь функцию find(DocAST docAst, QueryAST queryAst). Ну это грубо говоря, конечно. Для парсинга используй что угодно. Мой выбор - javacc. Там сразу пишешь грамматику и парсишь в структуру.
Отписался братишке.
https://habrahabr.ru/post/256057/ - обзор Java 8
https://habrahabr.ru/post/224593/ - про лямбды
https://habrahabr.ru/company/luxoft/blog/270383/ - про stream'ы
Спасибо, анон.
> javacc
> parboiled
Спасибо, посмотрю. Хотя, судя по всему, у меня получается контекстно-зависимая грамматика.
>>722198
>А почему ты в UI фильтры не нарисуешь?
Во первых, не могу придумать нормальный ui. Получается сложное говно и не только для использования, но и для написания.
Во вторых, я лучше поиграюсь с парсером, чем с очередным интерфейсом.
> заставляет пользователей писать на своем говно-DSL
> я лучше поиграюсь с парсером, чем с очередным интерфейсом
Типичный программист-аутист, замкнувшийся в своем манямирке и желающий решать задачи.
> сложное говно и не только для использования
Нет.
> написания
Смотря как напишешь.
а не - есть
> Типичный программист-аутист, замкнувшийся в своем манямирке и желающий решать задачи
Это внутренний продукт и вся ЦА не против. Если бы вариант с xml подошёл, то ей бы пришлось писать xpath запросы, что, на мой вкус, гораздо неудобнее.
> Нет.
Что нет? Конкретно мой интерфейс для конкретно этой задачи получается говёным и сложным, т.к. я не могу в интерфейсы.
> Смотря как напишешь.
Ну да. Если накидать неподдерживаемый код, то будет достаточно просто написать.
Ну охуеть. Пусть пишут на Sql тогда.
Решение у тебя говеное. Одну таблицу на Swing /JavaFX с динамическим фильтром написать сложно, а писать парсеры несложно. И ещё что-то говорит про поддерживаемость. Ты сегодня у мамы человек дождя?
Велосипеды, зеркалки, КПК и интересные проекты - вот анатомия программистишки!
С арийским приветом в честь дня рождения Дедушки, Ганс-пулеметчик.
А хуле читать? Нормальный формат не нужен, SQL ему не нравится, XPath / XQuery тоже, гуй слишком сложно. Сначала придумал проблему, а потом и решение - парсеры писать.
Ты сам откуда будешь, чтобы так говорить?
Сколько времени понадобилось учиться?
Если все свободное время буду учить, а свободное 24\5, сколько времени нужно, чтобы пойти на учебные курсы от айти-конторы?
если прришел на джаву итак понятно что знаешь что такое extend
Часто учат месяцами жаву, а потом идут в пхп или фронтенд, потому что работы нет.
Потому что компании важно понять, насколько хорошо ты ПОНИМАЕШЬ концепцию ООП.
Т.е. буркнуть заученное: "Ой, да инкапсуляция - это сокрытие данных, сеттеры/геттеры пишем и вуаля" - не катит. Сойдёшь за не шибко умного, мягко говоря. Должен рассказать, насколько важна инкапсуляция при написании какого-либо кода, привести примеры как эта парадигма помогает писать библиотеки и после совершенствовать их, не меняя API. Как влияет на уровень абстракции кода.
Я на собеседовании по поводу только ОО-подхода говорил минут 40/60.
ну ок про инкапсуляцию и книжки пишут
а наследование ну че там бля такого
или полиморфизм ну тоже две копейки же не?
Тот кто тебе отвечал - не я.
Твоё предложение с таблицей не подходит, т.к. данные плохо представляются в виде таблицы.
Можешь представить их себе как xml документ, каждый тег - нода в дереве, атрибуты тега - атрибуты этой ноды по которым нужно фильтровать, вложенные теги - дети, при чём они наследуют все атрибуты родителей.
Ну и как это таблицей представить?
Поэтому и sql не прикрутишь.
xpath/xquery - они не поддерживают объединённые интервалы: [1, 2] ∪ [5, 7]. Точнее xml их не поддерживает. А так бы подошло.
Гуй тут плохо подходит, т.к. только гуем трудно составить запрос вида: (a < 10 & b > 100) | (c < 4 & d > 6)
Можешь посоветовать литературу на эту тему? А то в тех книжках, что я читал ограничивались одной главой и, как я понимаю, этого мало.
Мне тут надо нахуярить рестик на джаве, вот думаю, сделать старый добрый варник, томкат, все дела, или есть более кошерные решения в современности? Что то типа spring mvc, play, netty.
Сервис - простолйка между юзерами и облаком, будет чекать права на файлы у запрашивающегл клиента.
Короче, каков современный уклад дел в сфере написания бекендя веб дрисни?
только spark web framework
По поводу полиморфизма.
Во-первых, его четыре, если не ошибаюсь, вида. И overriding - лишь один из них. Так-то, надо понимать, почему в некоторых языках нельзя полиморфно вызывать метод.
Во-вторых, неплохо знать о типах связывания методов: late binding, early binding. Короче, понять, что Java за инструмент, какие задачи решает, и почему именно так, а не эдак.
Теперь про наследование.
Примером сложностей, которые возникают при его использовании, можно назвать работу метода Object'овского equals. Чтобы я тут не переписывал тебе книгу, уважаемый, вот прям сейчас вбил в Google "Effective Java 2nd edition", открыл главу про equals и понял сложность проблемы. Иначе как-нибудь отстрелишь себе ногу на тех же HashMap.
>>722434
Советую Effective Java/Эккеля и практику. Я гуглил задания разных компаний на практику/стажировку. Купил себе Эккеля/Блоха в бумажном виде, обклеил закладочками цветными. Часто во время кодинга что-то забываю и возвращаюсь к этим книгам. И совет: не пытаться заучить, а понять. Этот процесс долгий, но когда мозги вправишь, если не уже, будешь залипать в эти, отчасти, философские вопросы перед сном.
цпасибо!
> Эккеля
Посмотрел сейчас оглавление. Там же всего пара глав на эту тему. Точно подойдёт?
И у меня есть интуитивное понимание принципов ООП и как его использовать, но я не могу на собеседованиях умными словами рассказывать про это.
> late binding, early binding
А про это где читать? В документации первое упоминается один раз, второе - ноль.
>А про это где читать? В документации первое упоминается один раз, второе - ноль.
Джяваее-макаке это знать необязательно. Это для байтоёбов.
Никто не мешает загуглить дополнительно какой-либо вопрос.
Алгоритм: прочитал что-то -> выписал непонятные места -> копнул глубже(или шире) с помощью Google -> написал простенькую программку с комментариями "Здесь так, тут - вот так"
Этот >>722493 отчасти прав - практической выгоды не несёт. Нужно для более глубоко понимания своего инструмента и собеседующего
почему это не считается валидным?
в effective java написано (если я не забыл английский) примерно следущее: наследники могут захватывать лок на объект и не освободить его, более валидно будет объявить private final lock объект и синхронизировать по нему.
может кто-то более конкретно объяснить?
Это тестовое задание на стажировку. Обязательно ли использовать потоки? Пока первая идея - это пройтись в методе refresh быстрой сортировкой, отсортировать в лексикографическом порядке, попутно меняя местами время, затем уже в методе guess снова пройтись быстрой сортировкой, заранее поделив массив на 2 части.
>Вендор и интегратор решений для бизнеса и органов власти
>Российские разработки, способные лидировать на мировом рынке
вроде догадался
причина в том что лок на этот объект может захватить левый класс и заблочить эти три метода
приватный константный монитор дает нам гарантию того что никто не сможет занять лок извне.
Да похуй. Это хоть как-то шанс пройти стажировку в моем мухосранске.
Если будешь сидеть 24/7, то желание учить джаву пропадет через неделю. И ты положишь хуй на программирование.
Удаляй пару часов в день изучай понемногу, пробуй понемногу , если придумаешь себе проект и втянишься, то тогда уже и будешь сидешь по 12 часов не вставая из-за компа. Я в итоге ровно 1 год учил джаву. Но я очень ленивый и иногда делал перерывы на 2/3 недели, иногда и месяц к кодингу не подходил. А вот когда прижало(отчислили из универа на уебищьной спецухе) и пора было искать работу, перспектива работать продавцом-консультантом (менджером по продажам) не прельщала мне, то за месяц узнал больше чем за весь предыдущий год(попщупал фреймворки, написал пару веб приложений) и еще месяц ходил по собеседованиям ипараллельно еще писал код. В итоге 1 год и я уже джава программист за 50к. Через пару месяцев повышение зп, кстати
Решил вкатиться в джаву параллельно пиля на ней на ней вёб сервис с картами/маршрутами.
Но не совсем понимаю с чего начинать. От такого количества разношёрстных аббревиатур в голове бардак.
Что брать, чтобы не весь файл в память грузить, а кусками? Нетти?
> Никто не мешает загуглить дополнительно какой-либо вопрос.
Я, конечно, могу загуглить late and early bindings уже сделал Но это отрывочное знание, просто один кусочек пазла, который ни куда не подходит.
Та же ситуация с thinking in java. Там даются базовые понятия ооп и что с ним делать, но цельная картина не складывается. Будто прочитал теорему и основные выводы из неё, но без доказательств. Вроде и применять можешь, но как обезьяна - не до конца понимая что к чему.
Есть корневой проект, который содержит ещё два проекта в себе.
В билд-скрипте корневого проекта есть что-то подобное:
allprojects { task buildShit }
Если вызывать buildShit внутри модулей, то всё нормально. Однако, если вызвать его, находясь в корневом проекте, то этот таск запустится для КАЖДОГО проекта (и в корневом, и во всех модулях).
Как сказать грейдлу, что если buildShit запускается из-под корневого, то и выполнять надо только в корневом проекте?
Akka Streams
1)
i = 0
a = i++ + ++i
2)
i = 0
a = ++i + i++
3)
i = 1
a = i++ + ++i
4)
i = 1
a = ++i + i++
Чему равно а во всех 4 случаях и каким чёрт побери образом он вычисляется? Убил пол часа - нихуя не понял :\
++i -- возращает i + 1 и затем увеличивает і на 1;
i++ -- возвращает i и затем увеличивает i на 1
Результаты инфиксной и постфиксной операций - так же как в сях.
В джаве выражения вычисляются с лева на право и это гарантируется. А вот в сях, вроде бы, в стандарте не прописано и зависит от компилятора.
bmp
Можешь рассписать по шагам, как будет выполняться данный метод?
Хотя бы два варианта, остальные сам догоню.
Я не он, но мне не с кем поговорить
> a = ++i + i++
пусть i = 3
++i - сначала i увеличивается и теперь i = 4, потом возвращается значение i, т.е. грубо говоря джава подставляет вместо ++i четвёрку:
> a = 4 + i++
Потом вычисляется i++. Сначала возвращается значение i (сейчас там 4), а потом уже i увеличивается и становится равно 5, но в выражение подставиться 4 потому что это значение было возвращено. Ну и дальше понятно:
> a = 4 + 4
Алсо помедитируй над этим кодом:
int i = 10;
int j = ++i;
int k = i++;
Нихуя не понял, но в оракле нет никаких проблем писать sql-запросы для xml. Правда выглядит как обёртка над xpath, но если вникнуть, то вполне можно использовать.
http://docs.oracle.com/cd/B28359_01/appdev.111/b28369/xdb04cre.htm
Как в xml сохранить информацию об объединении интервалов так, что бы потом к этому можно было делать xpath запросы?
Например записать x = [1, 2] ∪ [5, 7], а потом в запросе x > 0 этот интервал будет, x > 4 будет частично (ну или даже полностью, не важно), а при x > 8 - нет. Ну ещё как принадлежность надо проверять.
Что такое x? Значение в ноде или некое представление интервала?
По факту, любой такой интервал представим в виде объединения интервалов, которые можно запихнуть в массив структур из двух полей. Такой массив можно в xml хранить и в ячейке таблицы как объявленный табличный тип из двух столбцов.
>>722433
Ты там что ли конструктор гуя для пользователей делаешь? Да легко - нужно три идентификатора.
1 - object_id - идентификатор самого дерева.
2 - element_id - идентификатор элемента в дереве.
3 - parent_id - идентификатор родителя.
Только искать по такой хреновине становится труднее.
> Что такое x?
Можно считать, что это имя свойства ноды.
> Такой массив можно в xml хранить и в ячейке таблицы как объявленный табличный тип из двух столбцов.
Но xpath по этому делу нормально искать не будет и, в таком случае, какой смысл его использовать?
> Ты там что ли конструктор гуя для пользователей делаешь?
Фильтрация/поиск в древовидном документе.
Я понимаю, что это можно представить в виде таблицы, но не уверен что будет удобно этим пользоваться. Структура получится такая
первая таблица: element_id, parent_id
вторая таблица: element_id, property, value
И как тут реализовать удобные запросы?
просто сядь и замути свой проект, оприаясь на то, что выучил, не стесняйся кодить так как понял из материала, похер на сомнения, тупо так как понял. Потом, походу, найдутся моменты, где все через жопу, подумай почему и исправь, и это и будет опыт. Потом будешь за версту чувстовать потенциальный костыль, который не к месту, даже при поверхностном дизайне.
Я тебе про изучение теории, а ты мне про практику.
Вот, например, я знаю какая теория стоит за функциональными языками: лямбда исчисления.
А ооп сколько уже существует - должно же и за ним что-то стоять? Понятно, что никакого матана за ним нет это не плохо но где-то же должны быть описаны его принципы, на что опирались при создании, что получилось, какие взгляды на ООП у разных его идеологов.
Почитай историю. Какого нибудь смаллтолка или эйфеля. Я уже не помню где там впервые придумали ооп
1. ctfl+f
2. "конф"
3. если нашел конфу - идешь туда, конец
4. если не нашел - идешь в оп пост и оттуда попадаешь в предыдущий тред
5. переходишь к п.1
Как вы заебали, малолетние долбаебы которые приходят и ноют что им не разжевали и в рот не положили.
Конфу не создали.
Книги на русский не перевели.
Да и вообще не посоветовали годную книжку чтобы сразу вкатиться.
Лабу не решили.
Шапку для треда нормальную не сделали.
Полотенце под ноги не бросили.
За жавараш не пояснили.
Инфу по конфам не выдали.
Тут должен был быть мудрый совет и подзатыльник от обладателя седых мудей, но его не будет, страдай.
Object o = mapper.readValue(JSON, Object.class);
Все отлично, но как быть с тем, что приходит в виде идешника и нужно вытягивать объект из базы? Можно и руками все сделать но может можно предикат какой джексону скормить?
Пиши свой десериалайзер (... extends JsonDeserializer<...>). Туториалов в гугле достаточно.
так вот, думаю запилить какой-то элементарный веб-сервер, чтобы с бд как-то сотрудничал и все такое.
но я не очень понимаю в организации и устройстве этого всего дела. посоветуйте литературы может какой, по запиливанию веб серверов, про то как работают и с чем его вообще едят
спасибо заранее
>хочу вкатиться в одну контору работать в бекенде
>не очень понимаю в организации и устройстве этого всего дела. посоветуйте литературы может какой, по запиливанию веб серверов, про то как работают и с чем его вообще едят
Пиздец, ты охуел мразь? Мы тут значит с полными гитхабами и программированием с 12 лет ждём когда нам перезвонят, а он собрался вкатиться вообще не зная как сделать ебаный ВЕБ-СЕРВЕР блять, это же основы сука, уёбок, червь-пидор чтобы ты сдох.
но ведь можно какой-то пример элеметнарного сервера создать, по минимуму? показать как что взаимодействует и все такое.
Ну так то легче айдишники отдельными аргументами передать а потом уже в готовый объект вставить.
Я думал я мож это предусмотрели. Я ж тупой, обычно узнаю что ТАК МОЖНО БЫЛО уже постфактум.
Хочеться понять, ява это зубрежка или больше понимание?
Очевидно же
Зубрёжка. Что как работает и во что раскладываются твои абстракции нужно плюсовикам, сишникам и прочим господам с языками низкого уровня. Тут за тебя вся низкоуровенная ебля реализована, память чистится сама, код хорошо оптимизируется сам (да, лол), каких-то сложных вещей просто нету — язык примитивен и код сеньёра не часто будет отличаться от кода джуниора (если не брать всякие хайлоды в расчёт, хотя туда не допустят нюфагов, да и не особо такой код отличается от сишного).
Зубри стандартную библиотеку, гуавы и всё вот это вот + вопросы на собеседование и ты уже почётный ява-макакгражданин.
Залил на ргхост: http://rghost.ru/6RcWTDL4G .
Выразил свой батхёрт в пикрилейтед.
Подтупливал иногда, но особых проблем не было.
loooooooooooool, вся суть говнописак
Давно так не проигрывал, добра тебе.
Только хорстман.
Не эккель не ссаный шилдт. Только хорстман научит вас говноедов яве!
Умнее всех? Ну и жрите говно!!
Полнотой, проработанностью, академизмом.
Что-то вроде учебников Страуструпа по плюсам.
Книжка Эккеля, даже не вдаваясь в ее "качество", уже просто морально устарела, а у Шилдта вообще справочник.
// другой Анон
Ок, я не новичок в программировании. И экель мне кажется достаточно скучным. Дропать его и начинать Хортсмана или сначала дочитать? Или есть что-то по лучше не для новичков?
>Полнотой, проработанностью, академизмом.
Приводится полный джавадок линкед листа, а не только на метод add?
Собственно, написал курсач, работающий в консольном режиме - задача была показать иерархию. Теперь затребовали гуй - на чем его пилить? Интерфейса минимум будет.
Это только методы, в самой главе объясняет как устроен линкед лист + дофига схем.
Проебался с 1 картинкой.
> top-books-for-advanced-level-java-developers/
Это же список для тех кто уже знает джаву и хотят стать продвинутыми джава программистами, а я писал на пайтоне и, давным-давно, шарпе.
Если ты не новичок, то смысл фразы Kokoko<E> koko = new Kokoko() тебе объяснять не надо, равно как и со стандартной библиотекой ты без проблем сможешь ознакомиться в интернете - пакеты, классы и методы говорят за себя.
Годных гайдов не накинешь?
Нет, в гуголе не забанили, но вдруг есть что-то особенно годное и доходчивое.
Без понятия.
Ничем не проще.
Btw, соль в том, что когда-нибудь GUI на Java может понадобиться, и лучше уметь JavaFX, чем устаревший Swing.
Бля, я же пошутил. Ну типо, "еще одна книжка, которая учит обходить массив", а это правда. Пиздец. Пиздец нахуй.
https://yfain.github.io/Java4Kids/#_introduction_to_gui_with_javafx
Надеюсь сам разберёшься.
Все эти книжки, которые рекомендуют для вкатывания в яву - глупость. Они на самом деле для тех, кто вкатывается в программирование с нуля. Там тебе рассказывают про циклы и ифы, про массивы и листы, про классы и методы, в итоге если ты писал что-то сложнее helloworld'а на любом другом языке, читать все это говно типо Экеля ну просто нереально. А я предполагаю, что в яву вкатываются те, кто уже писал хэллоуворлды на других языках. Так что лучше сразу отправлять читать всяких там Фаулеров, либо изучать всякие там спринги, чем искать _лучше_книгу_по_изучению_основ_языка_. Основы на тысячу страниц, я ебал.
Вот я знаю другие языки и сейчас читаю thinking in java. Что интересного из него узнал за сегодня:
- как организована память (registers, stack, heap, constant storage)
- про обёртки и автобоксинг
- в джаве не функции, а методы
Остальное было очевидным/скучным. Несколько полезных вещей на ~20 страниц. В общем не много. Но в какой книге я это прочитал бы в сжатом виде, без воды?
А если ты уже знаешь какой-то материал, слабо его проскипать?
>>724922
Тот же риторический вопрос.
>А если ты уже знаешь какой-то материал, слабо его проскипать?
В итоге я проскипал весь Thinking in Java. Затем проскипал Effective Java, потому что та же очевидная хрень.
>>724922
>- как организована память (registers, stack, heap, constant storage)
Не касается явы, особенно про регистры.
>- про обёртки и автобоксинг
Изначально не нужны.
>- в джаве не функции, а методы
Разные названия одних и тех же вещей.
>типо Экеля ну просто нереально
Ну х.з., я писал на Дельфи и плюсах проги уровня лаба02, и для меня в Эккеле много чего полезного было. Пока не начался лютый пиздец который мне мозги разносит, начиная с Анонимных классов, генериков, RTTI, прочего. Куча кода, в котором хуй разберешься, куча классов. Хортсмана что ли попробовать, или там еще хуже будет?...
Двачую этого джава господина.
бывает.
Да нихуя, сам на экеле высушил себе мозги, не смогу написать почему, но эккелевские куски кода на удивление тяжело воспринимаются, до сих пор скипаю код, когда освежаю память по какой-нибудь теме, а ведь уже сотни кода просмотрел, гитхаб, исходники, андроид.
другой анон
>эккелевские куски кода на удивление тяжело воспринимаются
Что посоветуешь тогда, чтобы освоить core? Complete reference довольно легко воспринимается, но там оче кратко и неглубоко.
Шилдта я дропнул почти сразу, для обучения хуита, для справочника есть гугл и "СтекПереполнение". Читай Эккеля, просто пропускай код, ты ведь не из тех кто наслово не поверит, а еще и в исходники жавы полезет чтобы убедиться что автор не наебывает?
Хорстмана для core еще советуют, книжка так и называется java core. Я не читал, но заебенил другую книгу этого автора: скала для нетерпеливых, ультрагоднота!
>>724960
> Не касается явы, особенно про регистры.
Разве? Без понимания как оно работает будешь писать плохой код.
> Изначально не нужны.
Может тебе всё же стоит thinking in java прочитать? Там написано зачем всё это нужно.
> Разные названия одних и тех же вещей.
Ага, вот только в сообществе принято употреблять термин метод, а не функция. И не следовать этому негласному правилу всё равно что ходить в носках и шлёпанцах.
Хотел рассказать как запилил шлюз jms-telegram. Но тут одни ебалаи сидят.
Расскажи же, мне инетресно
А на явке можно запилить плагин для фотошопа?
Гугл транслэй, транслит или пишут прямо по-русски?
Хз, я бы сделал редизайн, убрал плитки и ушел в плоский интерфейс аля линух.
int den'gi_v_kassu_ebana=0;
Как быстрее, так или так?
List<Yoba> list = new ArrayList<Yoba>();
for(int i = 0; i < list.size(); i++){
call_func(i, list.get(i));
}
List<Yoba> list = new ArrayList<Yoba>();
int size = list.size();
for(int i = 0; i <size; i++){
call_func(i, list.get(i));
}
>Разве? Без понимания как оно работает будешь писать плохой код.
Серьезно так думаешь? Мне кажется, что ты выбрал не тот язык. Иди посмотри на си.
>Может тебе всё же стоит thinking in java прочитать? Там написано зачем всё это нужно.
Я и без невдалых книг знаю, зачем оно нужно. Чтобы закостылить примитивы. Правильный вариант - убрать примитивы.
>Ага, вот только в сообществе принято употреблять термин метод, а не функция.
Т.е. про регистры ты знать хочешь, а про реализации методов в самом низу - нет?
Быстрее так:
List<Yoba> list = new ArrayList<Yoba>();
for (Yoba yoba : list) {
call_func(yoba);
}
> Серьезно так думаешь?
Конечно. Если ты только смутно догадываешься как работает инструмент/технология, то ты не сможешь эффективно его использовать.
> Правильный вариант - убрать примитивы.
И получить падение производительности, ага.
> про реализации методов в самом низу
Про что?
>>Конечно. Если ты только смутно догадываешься как работает инструмент/технология, то ты не сможешь эффективно его использовать.
Ява - это не про работу с кучей и стеком.
>>И получить падение производительности, ага.
Это проблемы jvm. А типы-примитивы - проблема всей концепции. Может ты еще всякие там битовые флаги используешь, потому что так быстрее?
List<Yoba> list = new ArrayList<Yoba>();
list
.stream()
.forEach(yoba -> call_func(yoba));
На самом деле однохуйственно, компилятор будет по максимуму пытаться в оптимизацию и во всех этих вариантах мы получим примерно одинаковый байткод.
Ну расскажи, как тебе поможет знание работы регистров (которое у каждого вида процессоров разное) при пейсании на жяве. Нахуя тебе нужно знать про стэк и константный блок памяти, если нигде кроме как на куче выделять ты сам не можешь? да, это может сделать жит, но ты для этого нахуй не нужен
Ява тот язык, при пейсании на котором даже не нужно думать что и как выделять – всё за тебя дефрагментируется, жит сам всё оптимизирует под конкретную машину и тд. Платформа специально сделана для людей с низкой квалификацией.
>Платформа специально сделана для людей с низкой квалификацией
ну ни над(
Квалификация - штука относительная. Скажешь ли ты, что программист хуевый, если он не умеет играть на фортепьяно? Так же и здесь. Кто-то хорошо знает низкоуровневые штуки, а кто-то проектирование и готовые решения. Стоит посмотреть код какого-нибудь биткоина, который явно write-only говнецо. Зато написан пэхэдэшниками.
> Это проблемы jvm.
Можешь объяснить где ты видишь проблемы в примитивах?
Субъективное "закостылили" - не катит.
Хотя бы в том, что приходит какой-то Вася и говорит мне использовать в ооп не объекты, потому что так быстрее.
дженерики
Вот именно. Обычному человеку хватит пройти за месяцок курсы, и он уже свободно может макачить на яве. Даже если он не особо будет понимать что вообще делает – всё будет работать. А теперь попробуй посчитать время, нужное человеку чтобы вникнуть в какие нибудь плюсы чтобы написать что нибудь, что не будет падать, и тем более написать код который будет хотя бы недалико от оптимизмрованного житом решения.
Я не засираю никого, просто это развитие индустрии – требуется больше рабов, времени на обучение и ресурсов для контроля ни у кого нету.
>пэхэдэшниками
Я тебе сейчас приоткрою завесу тайны: это ученные. Если не нравится так – исследователи.
>>725248
Кому-то пичот от нарушение консистентности аксиомы "всёце объект".
Integer a = new Integer(1);
Integer b;
b = a;
b++;
System.out.println(a + " " + b);
Да, вполне. Там автоматически разбоксится и забоксится. В этом и ответ, кстати.
Наверное вызывается конструктор с аргументом a , а не просто присваивается ссылка? Не так ли?
Тогда схуяли значение изменяется только у b? после разбоксинга значение не засосывается обратно в b(a?)
> a скопирован
Сделан clone?
>>725288
>конструкторы вызываются только явно
А как же со string-объектами?
Integer a = 1
Integer b = a
int bInt = b.intValue()
bInt++
b = Integer.valueOf(bInt)
Происходит что-то вроде этого.
Потому что Integer -- immutable. Ссылка у 'a' после всех манипуляций указывает на всё тот же объект, который в результате манипуляций не изменяется.
>immutable
Как и строки, получается? Тогда при каждом разбоксе и автобоксе создается новый объект?
Новый, если нет в пуле (тогда он кладётся в пул). Если в пуле есть, то ссылка берётся на объект из пула.
Со стрингами примерно то же самое.
А в каких случаях он из пула берёт? Вот в этом не взял:
Integer a = new Integer(1);
Integer b;
b = a;
b++;
b--;
System.out.println(System.identityHashCode(a));
System.out.println(System.identityHashCode(b));
> 1735600054
> 21685669
Да, соррян. Если создавать Интегеры через new, то кэш не используется.
http://hg.openjdk.java.net/jdk8/jdk8/jdk/file/687fd7c7986d/src/share/classes/java/lang/Integer.java
И ещё, забыл добавить: код в твоём посте компилятор изменяет на следующий:
Integer a = new Integer(1); //new object on the heap, not cached
Integer b;
b = a;
b = Integer.valueOf( b.intValue() + 1); //new object on the heap, cached
b = Integer.valueOf( b.intValue() - 1); //new object on the heap, cached
System.out.println(System.identityHashCode(a));
System.out.println(System.identityHashCode(b));
Зачем вообще юзать петушиные оболочки. Родина вам дала int, нет, не хочу инт, хочу жрать врапперское говно.
Этот макак порвался, несите нового.
>у скаламакак типабизапаснасть с уфкс
>тут смищная щютка про лист, типобезопасность и функцию ++
Вилку вам и чистите говно суки
boolean a, b=true;
if (a=b) {
System.out.println("wtf");
}
> wtf
Благодарю.
Ну а у меня хорстман 7 редакция. Еще по 5 явке. Мой первый учебник. С него начался мой энтерпрайз мирок лол
Именно. Какого чёрта присваивание разрешены внутри условия?
Один из аргументов в пользу джава: трудно выстрелить себе в ногу.
В условии нельзя присваивать небулеаны - уже хорошо, целый класс выстрелов по невнимательности недоступен, но почему оставили возможность присваивания булеанов? Вот в каком случае эта штука вообще может пригодится?
Какие-то сайты, сервисы и прочие вещи, которые облегчают жизнь?
Уже слышал про Git, Maven и тому подобные вещи, но до конца смысла их не понимаю.
PS: Вопрос, у меня на работе и дома JDK. Как сделать так, чтобы когда я на работе написал какую то программу, дома она была скопирована и я пришел и продолжил её.
git/svn
Оставили, потому что присваивание имеет результат. И результат этот - присвоенное значение. Значение булево, значит оно может быть в ифе. Все просто.
Я понимаю почему это работает, не понимаю почему они не сказали: идите к чёрту, не будет у вас в ифе присвоения, что бы в ногу не выстрелили. Риторический вопрос.
минибугурт после го
skipy.ru - читать всем ньюфаням (особенно http://skipy.ru/technics/likbez.html)
Автор охуевший мажор с ЧСВ (доводилось общаться на javatalks.ru), но статьи у него годные.
По началу не мини, а мегабугурт. Но, со временем, понимаешь как писать их так, что бы try-catch были не в каждой строке и мегабугурт сменяется среднебугуртом, в некоторых модулях переходя в минибугурт.
Но глядя на плюсы го прощаешь ему эту "фичу". А потом смотришь на список вакансий и начинаешь учить джаву.
Сам думал над этим. Наследие сишки (и си-подобных ЯП), как мне кажется.
Плюс можно городить хуиту вроде
String line;
while ((line = reader.readLine()) != null)
{
// Do something with a line
}
Блять, тебя ебет штоли? У нас во дворе за такие вопросы убивают нахуй.
Тут хуй проссышь. В проекте, на который приходишь, какой-то гуй обычно уже есть, и выбирать не приходится. Я видел свинг, я видел эф-ыксный браузер вклеенный в свинг, я видел вообще гуй на дотнете для жава-приложения, и это только мой ограниченный опыт.
>>724839
В свете вышесказанного: ознакомься и с тем, и с тем, а подробнее по мере необходимости подботаешь. Для курсача монетку можешь бросить.
>автобоксинг не нужен
А он есть. И надо знать об этом. Иначе может быть больно.
>>- как организована память (registers, stack, heap, constant storage)
>Не касается явы, особенно про регистры.
Хуя ты категоричный. Круды пишешь штоле?
Как устроена память, как работает гэ-мать-его-цэ, почему нужен паддинг, как 4к алиасинг может тебя выебать - все это говно полезно хотя бы в общих чертах представлять.
Ну да, джяваебы признали свою неполноценность и в восьмерке попытались неумело скопировать скалу)
Присваивание возвращает присвоенное значение. Отсюда вытекает всё остальное.
И это документировано.
>Хуя ты категоричный. Круды пишешь штоле?
Ага. Как и 95% программистов на яве. Проблем? Ебутся производительностью явы те, кто имеют дело с хайлоад, а их а) мало; b) вообще не ебет твой стек и хип, у них там беда с горизонтальным масштабированием и иже с ними.
>>726012
Схуяли? Иди набери это в иде и декомпилируй. Все три варианта скомпилируются по-разному, потому что во всех трех написано разное.
То, во что компилируются ванлайнеры из скалы - это вообще ад и израиль, но все же область применения у скалы есть.
Я как приеду к компу - не поленюсь все четыре варианта рассмотреть.
Сладок хлеб тех, кому похуй производительность, че. Ну и хип со стеком и гц таки ебут, нам бы скаляризации побольше, аллокаций поменьше, stw раз в неделю бы вообще.
Вообще ни разу не видел таких, кто путает, но знаю что в плюсах и сишке даже говноконвенции изобретают, писать предикат как 123 == huita вместо huita == 123, чтоб если ты макнин пиздоглаз компилятор ругнулся.
В жабе тоже так любят. Особенно если там equals, а один из аргументов бывает null.
> почему присваивания разрешены внутри условия?
> это документировано
> почему вся дорога в ямах?
> так прописано в ТЗ
> почему дом разваливается?
извините, это браузер опера
> всё согласно плану главного архитектора
А теперь найди проект или конвенцию где такая хуйня присутствует. Ни в бустовом кодстайле, ни в гугловском, ни в фейсбучном и кутешном такой хуйни лично я не видел. Да даже в core guidlines её нету. Книга конечно была достоверным источником для оправдания утверждений.
Потом попробуй провести такой же анализ пхп кода – будешь сильно удивлён.
Понятие не имею как подобные вещи искать. Внезапно, поиск гитхаба не может в спецсимволы.
Первые результат - пхп, но потом пошёл C# и linq:
http://stackoverflow.com/questions/2763252/change-row-column-span-programatically-tablelayoutpanel
http://stackoverflow.com/questions/3975236/how-to-use-sscanf-in-loops
Открываешь любой большой проект и пробегаешься по нему ctrl+f.
Алсо, мне кажется мы хуйнёй страдаем.
In science and engineering, ‘e’ refers to the base of natural logarithms, approximately 2.718. (A more precise double value is available in Java as Math.E.) This is used in exponentiation expressions such as 1.39 x e ^ -43 , which means 1.39 x 2.718 ^ -43. However, when the FORTRAN programming language was invented, they decided that e would mean “ten to the power”, which is an odd decision because FORTRAN was designed for science and engineering, and one would think its designers would be sensitive about introducing such an ambiguity.
Это не то же самое. Такой стиль просто избавляет от лишней ненулл проверки
>>726115
Пыху не видел, но там предполагалось что если ты криворукий уебан и написал в цикле a = 1 вместо сравнения, то это проскочет и превратится в баг, а если 1 = a, то компилятор нахуй пошлет. С плюсами и няшной не работаю и конвенций фб и прочих не читал. Но видел это как минимум в двух книгах про плюсы и в одной про c(вроде даж у Ричи). Плюс в одной статье на хабре про советы от hr, автор на такой хуйне матерых прогеров детектил, лол.
Посоветуйте фремворк для 2D игры на жава?
Оп пост жопой читал?
C++
Бери юнити и пиши на шарпе. Будет удобнее, продуктивнее и найдёшь больше материала на эту тему.
это поведение еще с ебаного си пошло, в шарпе и жабе начали требовать в условных операторах булеан, лет через десять, глядишь, вообще выпилят это говно.
Тебе не кажется что только индусы будут сравнивать булеаны через == (а адекваты через &&) ?
А сам блять не можешь?
винда была завирусена, решил снести. мамка притащила типа диск с виндой, а он ваще без драйеверов. не люблю когда в моем компе чужи дяди роются.
я не про булеаны, а про какую-нибудь такую ебалу:
if ((tab = table) != null && (n = tab.length) > 0 &&
(p = tab[index = (n - 1) & hash]) != null) {
//whatever
}
кстати, сравни-ка мне два булеана через &&.
> сравни-ка мне два булеана через &&
Все ждал когда меня кто-нибудь поправит :)
Конечно я имел ввиду через if (a ^ b)
Ну это тебе не джаваскрипт, если там не булеан словишь эксепшн
>>726394
Ты опять соснул. true ^ true == false.
== <=> !^; не находишь, что все же проще == ?
да ты ко всему придерешься, сасай вот.
Потом моя джуниор мака от твоих охуенных изобретений будет ссать кипятком, спасибо.
> две операции вместо одной. зато не индус!
Одна операция, дебил
if (a ^ b) {
// Неравны
} else {
// Равны
}
В чем конкретно профит от такой замороченной заебы, ты элитности решил прибавить в сранном энтерпрайзе?
не всегда нужны обе ветки.
когда нужны одна - соснешь.
или напишешь пустое условие. зато не индус!
Уже выпилили
func main() {
b := true
if b = true {
fmt.Println(b)
}
}
> prog.go:9: b = true used as value
Да я вообще мимо проходил, просто решил поддержать срач разговор.
Мне вообще кажется что проблема if(a==b) в java переоценена (ни разу не сталкивался).
android-разработчик
бля эта проблема решается в любой нормальной IDE, она бля это вам подчеркнет любым цветиком, сука скупердяи.
>>726474
Заебали обсуждать проблемы косоглазых с глаукомой, ни одна приличная макака x = ophui() вместо x== ophui() в ифе не напишет.
> решается в любой нормальной IDE
> плагин
Oh, you!
>>726497
Сознательно - нет. Но когда горят сроки, ты не спал последние 2 дня, уже 4 утра и сдача через 5 часов, то можешь опечататься и вместо == написать =.
и от меня спасибо -другой Анон
Благодарю
Тьюпл.
Возьми Go / C++ / Rust, зачем тут Java, лол.
>Но когда горят сроки, ты не спал последние 2 дня, уже 4 утра и сдача через 5 часов
Сочувствую бро, в наших краях энтерпрайз макак так не насилуют
Подданный усача
Просто до твоего работодателя еще не дошло, что программистов как говна и ими можно свободно хуевертить.
>>726643 (OP)
Хуя тебя тригернуло, извини браток, не хотел.
братишка, какие нафиг потоки, забудь. главное -- подбери красивую структуру данных под индекс.
читани про gist/gin/btree/radix tree
потом уже можешь попытаться параллелизация добавить
radix tree должно хорошо зайти. но я вообще полный ноль в алгоритмах, так что не стоит бросаться и делать именно так. стоит погуглить статьи на тему индексов заточенных под подобные range запросы
Полный хедхантер. Яндекс, Сбертех, ДБ, Девекс, Джетбрэйнс, younameit. Не ссы спрашивать это на собесе.
>Яндекс
офис в жопе
>JB
сложнааа
>ДБ, Сбретех, Девекс
серьезно? думал там говно в основном. на счет сбертеха не уверен, кончено, но остальное попахивает ЫНТЕРПРАЙЗОМ, не, я не прав, оказывается?
У СберТеха удаленки нет, нужно ехать в Рязань за 50к. Днище ебаное.
Класспас и пэкеджи. В умных книжках про них написано, буквально (вкратце): Х ОЧЕНЬ ВАЖНО, ДЛЯ ДЖАВА ПРОГРАММИСТА ПРАВИЛЬНО ПОНИМАТЬ, ЧТО ТАКОЕ Х, ЗАЧЕМ НУЖНО И КАК ПРАВИЛЬНО ДЕЛАТЬ, НЕ ЗАБЫВАЙТЕ УДАЛЯТЬ ВНИМАНИЕ Х, ПОМНИТЕ, КАК Х ВАЖНО и ещё на три главы подобной воды, но, блядь, ни слова о том, ЧТО ЭТО, КАК ЭТО И НАХУЯ ЭТО.
Вопрос, собственно, такой: что это, как это и нахуя это?
Package это аналог namespace из плюсов\шарпа, что-то типа дополнительного имени в названии классов, чтобы система не путала названия. Допустим есть страндартный list. На самом деле полное название java.collections.list и поэтому если какой-нибудь васян напишет свою реализацию, система все равно отличит, потому что полное имя будет vasya.2ch.ebanoe.dno.list. Вот эта приставка перед list - это и есть package. С другой стороны ты можешь импортировать этот list из нужного тебе пакета и пользоваться как боярин коротким именем.
Classpath это банально название папки в которой находится твой пакет с классами, он может быть задан в переменных окружения твоей ОС, при компиляции, в манифесте. Короче штуке для машины, чтоб она знала где твои сырцы\скомпилированные классы. В 99% случаев тебе ничего руками не надо прописывать, все сделает иде.
Ясно, спасибо.
Короче, ньюфажина.
Как запилить генерацию ориентированных графов без контуров, ну, то есть, циклов? Причем чтобы генерировались в текстовый файл, первое число в котором - число вершин, а дальше по парам, откуда и куда ведет ребро.
Хочу нахерачить для портфолио, чтоб макакой взяли, интересно в какие временные рамки можно уложиться.
Коллекции конечно же
Есть одно HttpURLConnection соединение в котором я делаю пост запрос на https адрес. После этого мне нужно сделать гет запрос в этом же соединении(Connection: Keep-Alive). Какие варианты, антошки?
Вы видите копию треда, сохраненную 18 мая 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.