?

Log in

No account? Create an account
Давайте обниматься, плакать и писать код - In 3.14 we trust [entries|archive|friends|userinfo]
BrotherFlame

[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Давайте обниматься, плакать и писать код [May. 24th, 2018|10:44 pm]
BrotherFlame
[Tags|, ]

Под Breaking Benjamin

-- Шура, чувствуешь себя реальным системным кодером и байтодрочером?

- Я чувствую тебя байтодрочером, а я просто копирую из примеров!


Засели писать эмулятор Hearthstone



LinkReply

Comments:
[User Picture]From: dennab
2018-05-24 07:45 pm (UTC)
Вы когда-нибудь пробовали использовать Groovy вместо Java?
(Reply) (Thread)
[User Picture]From: brotherflame
2018-05-24 07:49 pm (UTC)
Ниивикоем случае, клиент на яве, а сервер вообще на плюсах -- вот это реальный хардкорный олдскул

Если не ошибаюсь, в груви возможности питона, но ява поддерживает функциональное программирование, к тому же в игре нужно тупо старое доброе ооп, и все
(Reply) (Parent) (Thread)
[User Picture]From: dennab
2018-05-24 08:02 pm (UTC)
Ну смотри:
- груви компилицца в .class
- поддерживается идеей
- а плюсы: поддержка полной функциональщины, опциональное типизирование, сокращение кода в разы и проч.

про шлак в виде что у тебя на скрине забываешь напрочь, код превращается в

println response.statusCode.reasonPhrase

трай-кэтч там вообще не обязателен

Мы проекты по возможности уже перевели на груви, даже ентерпрайзы, даже злобные, потому что удобно, и, главное на 146% обратно совместимо.

(Reply) (Parent) (Thread)
[User Picture]From: paynd
2018-05-24 08:53 pm (UTC)
Ну тогда уж котлин!
(Reply) (Parent) (Thread)
From: karajel
2018-05-25 02:46 am (UTC)
По-моему идея плохо поддерживает груви. Еще и тормозить начинает если несколько скриптов открыто.

В самом груви смысл был еще до восьмой явы. Сейчас как-то не очень.
(Reply) (Parent) (Thread)
[User Picture]From: dennab
2018-05-25 03:14 am (UTC)
Идея плохо груви поддерживала десять лет назад. У моей 2017.1.3 точно никаких проблем с ним нет.

Очень-очень. В груви фишка как раз не только в стримах, а именно что в сокращении кода в три-четыре раза. Про "if (a <> null && a.length > 0)" вообще забываешь: оно превращается в "if (a)", и так везде.

Небольшой геморрой что либу таскать надо в рантайме, да apply plugin прописывать в билд скриптах.
(Reply) (Parent) (Thread)
From: karajel
2018-05-25 03:49 am (UTC)
Объем кода меня не напрягает т.к. 90% его пишет идея. И код явы она пишет лучше чем код груви.

В то же время скрипты в основном используют пользователи и питон используется во многих продуктах в отличии от груви.
(Reply) (Parent) (Thread)
[User Picture]From: brotherflame
2018-05-25 09:00 am (UTC)
Обьем кода с современными редакторами как-то не напрягает вообще.
Ну будет класс на 1000 строк кода, а не на 200, это не мешает его читать никак

Скорость набора символов среднего человека 200знаков в минуту, мылегко наберем по 300-400.
Т.е. вопрос набрать код на клавиатуре влюбых количествпх -- это вообще не вопрос. Куда важнее читаемость. Что толку, от того, что у меня одна строка кода с чудовтищной многоярусной лямбдой, которую читаешь как китайский, или 50 строк олдскульного кода цикла, который читается за секунды
(Reply) (Parent) (Thread)
[User Picture]From: brotherflame
2018-05-25 09:08 am (UTC)
Берем org.apache.commons
ArrayUtils.isNotEmpty(a)
Или утилиту для String

Готовить короткий код можно разными способами, мне либы сторонние больше по душе, чем фреймворки или вообще другой синтаксис
(Reply) (Parent) (Thread)
From: passerbynyc
2018-05-24 08:18 pm (UTC)
IDE на русском? О_о
как это развидеть? :)
(Reply) (Thread)
[User Picture]From: brotherflame
2018-05-24 08:47 pm (UTC)
Я не люблю ПО на русском, но раз уж я на нем говлрю, сойдет :)
(Reply) (Parent) (Thread)
[User Picture]From: dikoe_bydlo
2018-05-25 06:51 am (UTC)
И где тут байтодрочерство?
(Reply) (Thread)
[User Picture]From: brotherflame
2018-05-25 08:45 am (UTC)
Тут совершенно никакого, это ява
А в С++ сервере, есть, адские темплейты, access violation, указатели и какой-то гимор с массивами и вот это все
(Reply) (Parent) (Thread)