Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Java - ваш итог(недостатки, прочее)
#11
Blakkky Написал:Я знаю, что отказались, но (внезапно) для строк и других оберток на атомарные типы данных (Integer, Double, etc) операторы (+-*/) перегрузили "из коробки".

Натив очень хочется, чтобы не прибегать к JNI на СИ, а писать все на одном языке (пусть и не все приложение в натив, а только отдельные классы/методы, пусть даже на своем диалекте платформозависимом). Да и по большому счету, портируемость - это хорошо, конечно, но много ли приложений, которым она нужна? Массово - это клиент-банки и игрушки для телефонов, все остальное можно и скомпилить в натив для 3х-4х платформ и не таскать за собой ява-машину.

О! Еще забыл, чего очень-очень не хватает: препроцессора и беззнаковых типов данных!

А про язык - ява не на много проще остальных языков, так что особо разницы нету.


уже писал - посмотри Jna&BridJ - норм либы

Старые песни о Главное. Generic as Runtime

[Изображение: 2492736ce0eb9b69d97e81595367.png]

source

Добавлено через 20 минут
немножко обновил что б наглядней видить

Добавлено через 30 минут
забыл написать это napile
consulo.io - Consulo - multi-language IDE
Ответ
#12
Устраивает java
Ответ
#13
Ява устраивает на все 100%, правда иногда все же не хватает множественного наследования но в принципе всегда выкручиваемся)))

А на счет ручного управления памятью, то это точно так же как и с ручной коробкой передач, это пантово и перед "телачкоми" можно повыделоватся, но все же с автоматом на много удобней ездить.

Добавлено через 2 минуты
Я не вижу смысла в ручном управлении памятью.
Ответ
#14
DiagoD Написал:А на счет ручного управления памятью, то это точно так же как и с ручной коробкой передач, это пантово и перед "телачкоми" можно повыделоватся, но все же с автоматом на много удобней ездить.
Неудачное сравнение, я вот лично люблю когда у меня и руки заняты, и обе ноги, так сказать, "полностью погружен в управление машиной"... но это другая тема.

По сути да, я тоже не вижу смысла ручного управления памятью. От утечек годами избавится немогут.. а тут ручное управление :redlol:.
Ответ
#15
Ro_0TT Написал:Неудачное сравнение, я вот лично люблю когда у меня и руки заняты, и обе ноги, так сказать, "полностью погружен в управление машиной"... но это другая тема.

Это вы просто не ездили на автомате)

Сравнение может быть и не совсем удачное, но суть была в том, что ручное управление памятью это хорошо когда ты им умеешь правильно пользоваться, но все же автомат на много удобней.
Ответ
#16
Я бы не ставил ручное управление памятью, которое и не ставят, потому что java юзают все кому не лень и те кто могут ездить, и значительно больше новиков, которые ездить может никогда и не научается.

Добавлено через 1 минуту
Ro_0TT Написал:Неудачное сравнение, я вот лично люблю когда у меня и руки заняты, и обе ноги, так сказать, "полностью погружен в управление машиной"... но это другая тема.

По сути да, я тоже не вижу смысла ручного управления памятью. От утечек годами избавится немогут.. а тут ручное управление :redlol:.
Избавится не могут единицы, которые понимают что делают и реально могут делать л2-серверо ядро, остальные просто притусовываются)

Если не получается - то нужно тренироваться и все получится.
Ответ
#17
Blakkky Написал:Компиляции в натив не хватает ужасно и многословность явы иногда напрягает (особенно когда без IDE писать/править что-то надо).
О нет, только не перегрузка операторов....
а то будет
Код:
mystream a;
a << 8;
Вот смотришь в книгу и думаешь то ли это
a.out(8) то ли (int)a << 8....
Ответ
#18
Все что нужно от java для меня - есть и устраивает. Для win приложений использую шарп.
Ответ
#19
Azagthtot Написал:О нет, только не перегрузка операторов....
а то будет
Код:
mystream a;
a << 8;
Вот смотришь в книгу и думаешь то ли это
a.out(8) то ли (int)a << 8....

угу привет, С++. ВОт мне интересно как в Scala с этим сделали, вроде там переегрузка операторов есть

Добавлено через 2 часа 50 минут
В переопределении есть свои минусы и плюсы
consulo.io - Consulo - multi-language IDE
Ответ
#20
Azagthtot Написал:О нет, только не перегрузка операторов....
а то будет
Код:
mystream a;
a << 8;
Вот смотришь в книгу и думаешь то ли это
a.out(8) то ли (int)a << 8....

Ну тут проблема либо в особо выпендрежистом разработчике, который сует перегрузку куда только можно и нельзя не документируя ничего, либо в читателе кода, который не удосужился посмотреть документацию на библиотеку и не знает внутренних договоренностей команды разработчиков, но уж точно не в возможности перегрузки операторов.
В принципе, на любом ЯП, если постараться, можно написать абсолютно неоднозначный и нечитабельный код, и проблема не в языке как таковом.

А Вы попробуйте на яве и на С++ написать код для поиска, всего-то навсего, корней квадратного уравнения, если изначально известно, что числа будут большими (4кбита, скажем, чтоб точности хватило для запуска ракет Smile), а потом прочитать тот и другой код. Программирование, оно не только рисование окошек и вываливание строк текста в лог, там и математика встречается Wink
Код:
Double4k *x1, *x2, *a, *b, *c, *d;
.....
d = b * b -  4. * a * c;
x1 = ( -b - Double4k::sqrt( d ) ) / 2. / a;
x2 = ( -b + Double4k::sqrt( d ) ) / 2. / a;
С++ оставляет запись оригинальной и читабельной, почти все записано на языке математики.
Код:
Double4k x1, x2, a, b, c, d;
......
d = b.mul( b ).sub( new Double4k( 4.0 ).mul( a ).mul( c ) );
x1 = new Double4k( 0. ).sub( Double4k::sqrt ( d ) ).div( a ).div( new Double4k( 2. ) );
x2 = new Double4k( 0. ).sub( Double4k::sqrt ( d ) ).div( a ).div( new Double4k( 2. ) );
А вот ява явно пытается научить нас литературному языку. Имхо, заставлять писать такой код математика - это садизм.
И, кстати, add/mul/sub/div - это не совсем в канонах названия методов на яве, если называть как положено, то будет еще более не читабельно Smile

ЗЫ: опечатался в формуле на яве, интересно, сколько времени уйдет на поиск опечатки (я 4 раза код прочитал, пока нашел, хотя ошибка наибанальнейшая).
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Java с нуля Sensation 11 3,242 03-22-2016, 10:22 AM
Последний пост: mountaineer
  Миграция с C# .NET 4.0 на JAVA 7 TieLay 12 5,416 10-18-2013, 05:47 PM
Последний пост: VISTALL
  Java, командная строка Grindelvald 2 1,921 08-24-2013, 09:38 AM
Последний пост: Grindelvald
  .NET vs Java praetorianec 56 10,463 12-05-2012, 03:52 PM
Последний пост: ProDev
  Java/.NET Руткиты (Эксплойтирование платформы JVM/.NET) OPPAIN 0 1,378 11-09-2012, 07:04 PM
Последний пост: OPPAIN
  Java Scripts - конфликт библиотек Gambit_J 18 6,208 10-03-2012, 11:31 PM
Последний пост: popropusku
  Java [Исходники Бота] Florentino 0 2,388 09-30-2012, 01:45 PM
Последний пост: Florentino
  linux debian ошибка java 2ndGuy 11 4,619 07-16-2012, 01:41 AM
Последний пост: Zubastic
  Помогите, проблемы с Java - не хочет работать Counter 24 11,958 10-24-2011, 07:39 PM
Последний пост: PaInKiLlEr
  Дайте пожалуйста ссылки(книги) по изучению Java для нуба :D loverane1 7 2,931 10-02-2011, 04:20 PM
Последний пост: Felixx3452

Перейти к форуму:


Пользователи, просматривающие эту тему: 8 Гость(ей)