1.2, Аноним (-), 10:55, 04/04/2015 [ответить] [﹢﹢﹢] [ · · · ]
| –4 +/– |
>а также ориентацией на блочную организацию структуры кода, которая позволяет реализовать задачи в виде легковесных сопрограмм
от этого давно отказались в пользу обычных тредов
| |
|
2.5, Аноним (-), 11:25, 04/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
Они тоже уже полгода как отказались. Автор новости - слоупок.
Но вот утверждение, что корутинам вообще всегда предпочитают обычные треды - это враки, нанодесу.
| |
|
|
2.16, Аноним (-), 12:59, 04/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
уже сделали минимальный рантайм чтобы в виде бандла распространять можно было и не заставлять пользователя ставить JRE?
| |
|
|
|
5.81, Аноним (-), 02:51, 05/04/2015 [^] [^^] [^^^] [ответить] | +2 +/– | Возможность была с шестёрки ЕМНИП, можно было и до этого, но были лицензионные ... большой текст свёрнут, показать | |
|
6.88, Аноним (-), 08:34, 05/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
> Также добавили в сам JDK тулзу для ленивых
ммм.
Для ленивых - это когда я например просто добавляю ключ при компиляции:
javac .... --bundle=compact1
> javac --- A new command-line option will be defined to specify the intended target Profile. It will be a compile-time error for source code being compiled to reference APIs outside of that Profile.
они уже это запилили или нет?
| |
|
7.144, Аноним (-), 12:33, 08/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
ну все нормальные люди используют gradle на крайняк maven но ни кто не юзает javac в ручную.... если у вас конечно не хеллолуролд
| |
|
6.124, vn971 (ok), 21:39, 06/04/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
ЩИТО? Даже title этой страницы однозначно говорит о чём речь -- modularization.
Project Jigsaw: JDK modularization
То есть, разбиение по модулям самой jdk.
Самая первая ссылка которую вы кинули -- это проприетарная контора которая судя по всему пакует обычную jre. Вставляет в ваши exe-шники делая установку jre плохо видимой для обычного юзверя. Вот, например, гляньте раздел "лицензирования": http://resources.ej-technologies.com/install4j/help/doc/index.html
Если что, я сам сейчас деньги получаю за написание кода под JVM (язык Scala). Но врать не стоит в любом случае...
| |
|
|
|
|
2.17, Аноним (-), 13:01, 04/04/2015 [^] [^^] [^^^] [ответить]
| +4 +/– |
> Java с AOT заруливает эту хрень :)
а java многословность никуда не делась.
| |
|
3.19, Stocker (?), 13:46, 04/04/2015 [^] [^^] [^^^] [ответить]
| –2 +/– |
Для тех, кому не нравится многословность есть Xtend. Замечательная вещь. Попробуйте. Я доволен как слон :) Транслируется в читаемый java-код. Жаль только мало популярен, но авторы в данный момент усиленно пыхтя пилят плагин для IDEA после чего надеюсь оно пойдёт на взлёт.
| |
|
|
5.23, Аноним (-), 14:16, 04/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
Зачем молоко когда есть борщь? Ну вот не разбираетесь в вопросе но суетесь с комментариями.
| |
|
6.24, Аноним (-), 14:35, 04/04/2015 [^] [^^] [^^^] [ответить]
| –1 +/– |
Если года три назад это был борщ, то сейчас — полный стол блюд:
* Статическая _или_ динамическая компиляция на выбор
* Доступ к AST на всех возможных уровнях — хочешь городи AOT, хочешь — генерируй байткод, а можно и сразу гнать исходники, всё это с поддержкой локальных и глобальных преобразований
* Возможность использовать всё это с жабными процессорами аннотаций при помощи генерации т.н. Java Stubs.
Зачём теперь вообще другие самопальные языки поверх JVM, ну вот объясните?
| |
|
5.89, Аноним (-), 08:43, 05/04/2015 [^] [^^] [^^^] [ответить]
| +5 +/– |
> Зачем, если есть Groovy?
это который сейчас на кладбище apache проектов лежит, тухнет.
> с возможностями Python, Ruby и Smalltalk.
скрестили разные ЯП, ну и получили гермофродита в итоге.
хочется такого лаконичного ЯП как python. но со строгой типизацией и компиляцией в полноценный java-байткод. чтобы такая же производительность как у java была.
| |
|
6.94, csdoc (ok), 11:07, 05/04/2015 [^] [^^] [^^^] [ответить]
| –1 +/– |
> хочется такого лаконичного ЯП как python. но со строгой типизацией и компиляцией
> в полноценный java-байткод. чтобы такая же производительность как у java была.
http://www.jython.org/
| |
|
7.96, Аноним (-), 11:37, 05/04/2015 [^] [^^] [^^^] [ответить]
| +4 +/– |
оно только недавно начало шивелится опять, но думаю это не на долго версию p3k они не осилят
| |
|
6.121, Аноним (-), 20:58, 06/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
> хочется такого лаконичного ЯП как python. но со строгой типизацией и компиляцией
> в полноценный java-байткод. чтобы такая же производительность как у java была.
И главное чтобы он сам еще программы писал :)
| |
|
|
4.92, Аноним (-), 08:56, 05/04/2015 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Для тех, кому не нравится многословность есть Xtend. Замечательная вещь. Попробуйте. Я
> доволен как слон :) Транслируется в читаемый java-код. Жаль только мало
> популярен, но авторы в данный момент усиленно пыхтя пилят плагин для
> IDEA после чего надеюсь оно пойдёт на взлёт.
- не нашел где есть утилита для использования из командной строки.
он только как плагин к эклипсу чтоли идет - привязка к IDE это жирный минус.
- не намного уменьшает читабельность. static void public final - остаются
| |
|
5.122, Аноним (-), 21:02, 06/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
> - не намного уменьшает читабельность. static void public final - остаются
В сях все это можно переопределить ;). Хоть sv пишите вместо static void, так можно :).
| |
|
6.127, csdoc (ok), 21:59, 06/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
>> - не намного уменьшает читабельность. static void public final - остаются
> В сях все это можно переопределить ;). Хоть sv пишите вместо static
> void, так можно :).
"static void public final" более читабельно чем "sv", "pv", "xv" и т.п. "hzv"
если же проблема в увеличении скорости написания
- это легко решается через https://www.jetbrains.com/idea/help/live-templates.html
| |
|
5.140, Stocker (?), 15:50, 07/04/2015 [^] [^^] [^^^] [ответить] | +/– | Изначально он был привязан к еклипсу это да, и то что это жирный минус все поним... большой текст свёрнут, показать | |
|
|
|
2.37, XXasd (?), 16:13, 04/04/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
А когда это в Java успели сделать семантику одалживания-и-владения? :-)
| |
|
3.39, Аноним (-), 16:30, 04/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
Делают что-то схожее в Checker Framework, но там скорее база. Сама семантика должна реализовываться отдельным инструментом на его основе. Да и сам Checker пока сыроват даже на потрогать.
| |
|
|
|
2.26, Аноним (-), 14:57, 04/04/2015 [^] [^^] [^^^] [ответить]
| –1 +/– |
Дык... вестимо зачем - для неосиляторов С/C++. Им видите-ли сложно offset по указателю посчитать, все время бедняжки за границу выходят. А еще после того как покакают в штан^W в память, забывают подтеретьс^W очистить ее. Вот и нужна этим детям мамочк^W GC, который их обкаканые штанишки менять будет.
| |
|
3.30, Аноним (-), 15:39, 04/04/2015 [^] [^^] [^^^] [ответить]
| +7 +/– |
Ну давай разберем по порядку тобой написанное.
> Им видите-ли сложно offset по указателю посчитать, все время бедняжки за границу выходят.
Ошибки делают абсолютно все. Если ты думаешь, что ты их не делаешь, то у тебя проблемы. Это хорошо, когда язык защищает от части ошибок.
> А еще после того как покакают в штан^W в память, забывают подтеретьс^W очистить ее.
В С++ так не делают. См. RAII.
> Вот и нужна этим детям мамочк^W GC
В расте нет GC. Там используется тот же самый RAII.
| |
|
4.33, Аноним (-), 15:48, 04/04/2015 [^] [^^] [^^^] [ответить]
| –1 +/– |
> В С++ так не делают. См. RAII.
Т.е. в декструкторе не надо delete вызывать? А если я пишу на С++ без классов, но использую перегрузку функций (потому и С++, а не Си).
Ну и потом... если я создал объект класса динамически через "new", то кто за меня delete вызовет? Пушкин? Или может Google?
| |
|
5.35, XXasd (?), 16:08, 04/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
Известно кто -- shared_ptr .. Если только нет циклических ссылок :-)
| |
5.36, Аноним (-), 16:12, 04/04/2015 [^] [^^] [^^^] [ответить] | +/– | Нет Деструкторы unique_ptr, shared_ptr, string и контейнеров уже написаны и сам... большой текст свёрнут, показать | |
|
6.38, Аноним (-), 16:27, 04/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
> Нет. Деструкторы unique_ptr, shared_ptr, string и контейнеров уже написаны и сами вызовутся из деструктора твоего класса
Это всё шаблоны-обертки из boost'а (перекочевавшие в стандарт), в операторе присваивания которого просто счетчик указателей инкрементируется и декрементируется в деструкторе. Под капотом все тот же new/delete.
| |
|
7.40, Аноним (-), 16:37, 04/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
Я знаю, лол. И что с того? Пользователям языка больше не нужно руками работать с памятью.
| |
|
8.44, Аноним (-), 17:11, 04/04/2015 [^] [^^] [^^^] [ответить] | –1 +/– | В С можно так писать что не нужно руками работать Читать надо умные книги, эф... текст свёрнут, показать | |
|
9.117, клоун (?), 17:57, 06/04/2015 [^] [^^] [^^^] [ответить] | +/– | Просвети Есть класс Геометрические фигуры, от него унаследованы классы Круг, Тр... текст свёрнут, показать | |
|
|
11.129, клоун (?), 23:32, 06/04/2015 [^] [^^] [^^^] [ответить] | +/– | Это не шутка Меня в какое-то время надоело бодаться с ООП, которое якобы что-то... большой текст свёрнут, показать | |
|
|
|
8.48, Аноним (-), 17:20, 04/04/2015 [^] [^^] [^^^] [ответить] | +1 +/– | Понимаешь в чем прелесть С - эти шаблоны опциональны и по сути своей реализаци... текст свёрнут, показать | |
|
9.55, Аноним (-), 17:49, 04/04/2015 [^] [^^] [^^^] [ответить] | +1 +/– | Во-первых, у меня уже сомнения в том, что ты напишешь полноценный shared_ptr, и ... текст свёрнут, показать | |
|
10.61, Аноним (-), 18:12, 04/04/2015 [^] [^^] [^^^] [ответить] | +/– | Раньше я как-то писал, а теперь разучился что ли Ты ведь полюбому и сам знаешь ... большой текст свёрнут, показать | |
|
9.57, Аноним (-), 18:03, 04/04/2015 [^] [^^] [^^^] [ответить] | +1 +/– | Я это собственно к тому, что и раньше не надо было руками работать - написал оди... текст свёрнут, показать | |
|
10.73, Ordu (ok), 23:19, 04/04/2015 [^] [^^] [^^^] [ответить] | +/– | Так я не понял -- что тебе надо от языка Работа с памятью напрямую, или возможн... текст свёрнут, показать | |
|
|
|
|
|
5.79, Kroz (??), 01:01, 05/04/2015 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Т.е. в декструкторе не надо delete вызывать?
Послушай, ну, если ты настолько суров, что даже в деструкторе не вызываешь delete, то попрограммируй пока на Бейсике.
| |
|
6.85, Аноним (-), 06:52, 05/04/2015 [^] [^^] [^^^] [ответить]
| +2 +/– |
Пожалуйста, позвольте мне не вызывать в деструкторе delete, если конструктор у меня ничего в кучу не аллоцирует. Можно?
| |
|
|
|
3.41, Аноним (-), 16:53, 04/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
Дык, осиляторов в живой природе пока никто не наблюдал, в комментах разве что...
| |
|
4.43, Аноним (-), 17:08, 04/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
> Дык, осиляторов в живой природе пока никто не наблюдал, в комментах разве что...
Я наблюдал.
| |
|
|
6.51, Аноним (-), 17:26, 04/04/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
>> Я наблюдал.
> Что они написали?
Компиляторы и линкеры пишут, которыми потом неосиляторы свой код компилят/линкуют.
| |
6.54, Аноним (-), 17:46, 04/04/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
Я наблюдал как команда писала ядро проекта на С++ и код был очень ровным. Вот тогда меня и научили "вменяемому" программированию на С++ и научили ненавидеть Java :)
| |
|
7.60, Аноним (-), 18:11, 04/04/2015 [^] [^^] [^^^] [ответить]
| +5 +/– |
От жабки мало кто в восторге, но это не делает плюсокодеров сверхлюдьми, они ошибаются, как и все остальные, постоянные фиксы уязвимостей в тех же браузерах тому доказательство.
| |
|
|
|
|
|
12.115, csdoc (ok), 16:47, 06/04/2015 [^] [^^] [^^^] [ответить] | +1 +/– | Spring Framework уже давно популярнее Java EE во многих областях, Spring Boot о... текст свёрнут, показать | |
|
|
14.135, csdoc (ok), 02:26, 07/04/2015 [^] [^^] [^^^] [ответить] | +/– | По крайней мере, в рунете на Java-конференциях про спринг говорят очень много, а... большой текст свёрнут, показать | |
|
|
16.150, csdoc (ok), 22:29, 08/04/2015 [^] [^^] [^^^] [ответить] | +/– | Git - более популярная система, чем Mercurial, поэтому про него говорят больше ... большой текст свёрнут, показать | |
|
17.153, iZEN (ok), 00:28, 09/04/2015 [^] [^^] [^^^] [ответить] | +/– | gt оверквотинг удален Разница 8212 5 раз Разница 8212 8 раз На деле со... большой текст свёрнут, показать | |
|
18.155, csdoc (ok), 03:02, 09/04/2015 [^] [^^] [^^^] [ответить] | +/– | То есть, основная цель создания Java EE была одна - зарабатывать деньги Демо-ве... большой текст свёрнут, показать | |
|
|
|
|
|
|
|
|
12.120, csdoc (ok), 20:07, 06/04/2015 [^] [^^] [^^^] [ответить] | +/– | Я пока что не нашел ни одной задачи, которую нельзя решить с помощью спринга Та... большой текст свёрнут, показать | |
|
13.125, iZEN (ok), 21:55, 06/04/2015 [^] [^^] [^^^] [ответить] | –3 +/– | В унификации и стандартизации Java EE 7 это далеко не J2EE SOAP уже отменили ... большой текст свёрнут, показать | |
|
14.128, csdoc (ok), 22:34, 06/04/2015 [^] [^^] [^^^] [ответить] | +/– | Каким образом это поможет в решении практических задач, если в спинге можно сдел... большой текст свёрнут, показать | |
|
15.145, iZEN (ok), 20:41, 08/04/2015 [^] [^^] [^^^] [ответить] | +/– | Есть стандарт 8212 есть заменяемые разработчики Нет стандарта 8212 есть з... большой текст свёрнут, показать | |
|
16.149, csdoc (ok), 22:15, 08/04/2015 [^] [^^] [^^^] [ответить] | +/– | Спринг сейчас более популярен, чем Java EE, и разработчиков, которые знают умею... большой текст свёрнут, показать | |
|
17.152, iZEN (ok), 23:57, 08/04/2015 [^] [^^] [^^^] [ответить] | +/– | Так ведь в 2014-2015 году версия Hibernate в WildFly подросла и позволила пройти... большой текст свёрнут, показать | |
|
18.154, csdoc (ok), 02:39, 09/04/2015 [^] [^^] [^^^] [ответить] | +/– | IBM и Oracle продают железо софт в комплекте, так что деньги они берут не зря,... большой текст свёрнут, показать | |
|
19.156, iZEN (ok), 11:30, 09/04/2015 [^] [^^] [^^^] [ответить] | +/– | Оригинал статьи http www oracle com technetwork articles java integrationtest... большой текст свёрнут, показать | |
|
20.157, csdoc (ok), 16:56, 09/04/2015 [^] [^^] [^^^] [ответить] | +/– | Про Test написано и в статье на сайте https netbeans org kb docs javaee java... большой текст свёрнут, показать | |
|
|
|
|
|
|
|
|
|
|
|
|
|
7.158, iZEN (ok), 14:10, 10/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
> Я наблюдал как команда писала ядро проекта на С++ и код был
> очень ровным. Вот тогда меня и научили "вменяемому" программированию на С++
> и научили ненавидеть Java :)
Ненависть была связана с обоснованным отказом от использования Java в пользу C++ или же чисто эмоциональными претензиями/отсутствием навыков программирования на Java и необходимостью его изучать/?
Архитектура сервера онлайн-игры на примере Skyforge: http://habrahabr.ru/company/mailru/blog/220359/
| |
|
|
|
|
3.56, nc (ok), 18:03, 04/04/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
C++ неидеален. К сожалению, D, Rust, Go и прочие - тоже. Но то, что новые языки появляются, в любом случае хорошо, есть возможность обкатать новые идеи.
| |
|
|
5.93, nc (ok), 10:25, 05/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
Нет уж, в С++ лучше ничего не добавлять. А вот если взять лучшие идеи из C, C++, Objective C, D, Go, Rust, Swift, C#, Java, Scala, Nemerle, Nim, Haxe и создать язык, который превзойдет все остальные языки программирования - это да.
| |
|
6.99, systemdanonymousd (?), 16:35, 05/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
> Нет уж, в С++ лучше ничего не добавлять. А вот если взять
> лучшие идеи из C, C++, Objective C, D, Go, Rust, Swift,
> C#, Java, Scala, Nemerle, Nim, Haxe и создать язык, который превзойдет
> все остальные языки программирования - это да.
И назвать ++C.
| |
|
|
|
3.136, Асушник (?), 10:26, 07/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
Ваше высказывание выглядит примерно так: мозилловцы "ниасилили" с/с++, а потому, чтобы менял им обкаканные штанишки, запилили Rust. Мда..
| |
|
2.27, Аноним (-), 15:22, 04/04/2015 [^] [^^] [^^^] [ответить]
| +4 +/– |
судя по мейллистам, главные дишники сейчас чешут головы и обсуждают, что они сделали не так по сравнению с Го
| |
|
|
4.72, pda (?), 23:01, 04/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
Ну, вон Facebook используют. Ну это они скорее всего с гуглем пискомерюются. Типа, у нас тоже есть свой язык. Но тем не менее... :)
| |
|
5.75, na (??), 23:53, 04/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
В Facebook использует D потому, что его там использует Андрей Александреску, который на данный момент один из главных разработчиков D 2.*
| |
|
|
3.82, Crazy Alex (ok), 04:51, 05/04/2015 [^] [^^] [^^^] [ответить]
| +2 +/– |
Это ты Bearophil'а начитался, что ли? D с Go даже сравнивать толком не получается - языки - результат принципиально разынх подходов. D целенаправленно делался так, чтобы сохранить и приумножить всю мощь плюсов, избавившись от их недостатков. Go - чтобы получить что-то минимальное, на чём можно писать компилируемый код.
| |
|
|
1.63, Аноним (-), 19:00, 04/04/2015 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
>А че, D так хорош? Стоит изучать его и перейти с С++ на D ?
Я перешел правда с C#. Очень доволен. Обратно, а тем более на Плюсы не за что не вернусь. Теперь код так же легко как на Питоне писать, разве что либ меньше чем у самого Питона, но зато сишные либы идут на ура.
| |
|
2.68, Аноним (-), 20:33, 04/04/2015 [^] [^^] [^^^] [ответить]
| –1 +/– |
>Я перешел правда с C#. Очень доволен. Обратно, а тем более на Плюсы не за что не вернусь. Теперь код так же легко как на Питоне писать, разве что либ меньше чем у самого Питона, но зато сишные либы идут на ура.
C#, Python - фу, какая гадость. С++ штука отличная но нужно уметь не перегнуть палку. Но раз любители python'a в восторге от D, то я пока повременю с D.
| |
|
3.83, Crazy Alex (ok), 04:54, 05/04/2015 [^] [^^] [^^^] [ответить]
| +2 +/– |
Лучше всё же глянь. Он с питоном сравним в основном простотой писания кода и сильно более "человеческим" синтаксисом, чем у плюсов. А так - как раз для плюсовика там рай, если он не в джава-стиле привык писать с двумя дестяками уровней наследования и тяжелыми паттернами на каждом шагу.
| |
|
4.95, Аноним (-), 11:16, 05/04/2015 [^] [^^] [^^^] [ответить]
| –1 +/– |
>> и тяжелыми паттернами
Что Вы понимаете под "тяжелыми паттернами"?
| |
|
5.105, Crazy Alex (ok), 23:52, 05/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
Много уровней абстракции тянут за собой более-менее стандартный набор - фабрики, медиаторы, фасады, прокси и т.п. - всё, что отвечает за то, чтобы не утонуть в громоздком коде. Как по мне - они очень замыливают глаз в плане понимания "а что мы тут, черт возьми, хотим сделать" - особенно когда тыкаются в глаза в названиях классов и методов. Туда же - запрет иметь классы-реализации без абстрактных классов, попытки конфигурировать то, что никто и никогда не будет менять, вроде используемого движка БД... Оно, насколько я опнимаю, пошло из библиотек джавы, которые, во-первых, должны быть универсальными, а во-вторых - рассчитаны на работу в раках стека Java EE, что автоматом подразумевает монструозность приложения, в-третьих - результат бедности (особенно в прошлом, когда традиция и появлялась) джавовского синтаксиса.
В плюсах всегда был возможен другой стиль - когда наследование используется минимально, зато в ход идут STL, шаблоны, перегрузка, стековые объекты, сейчас еще auto добавилось - в результате в софте небольшого масштаба (скажем, на пару сот тысяч строк) можно иметь более-менее читабльный код именно в плане понимания "что делаем".
| |
|
6.107, csdoc (ok), 00:52, 06/04/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Много уровней абстракции тянут за собой более-менее стандартный набор - фабрики, медиаторы,
> фасады, прокси и т.п. - всё, что отвечает за то, чтобы
> не утонуть в громоздком коде. Как по мне - они очень
> замыливают глаз в плане понимания "а что мы тут, черт возьми,
> хотим сделать" - особенно когда тыкаются в глаза в названиях классов
> и методов. Туда же - запрет иметь классы-реализации без абстрактных классов,
> попытки конфигурировать то, что никто и никогда не будет менять, вроде
> используемого движка БД... Оно, насколько я опнимаю, пошло из библиотек джавы,
> которые, во-первых, должны быть универсальными, а во-вторых - рассчитаны на работу
> в раках стека Java EE, что автоматом подразумевает монструозность приложения,
Кроме Java EE есть и другие фреймворки, например, https://spring.io/ Там все гораздо лучше.
> В плюсах всегда был возможен другой стиль - когда наследование используется минимально,
Использование наследования вместо композиции - это вообще антипаттерн,
для Java нормальным вариантом является именно что композиция, а не наследование.
подробнее об этом написано в http://www.ozon.ru/context/detail/id/6108824/
В плюсах не всегда возможен другой стиль, и это одно из тех мест, где Java
значительно лучше плюсов - в Java есть интерфейсы и есть nested классы,
так что множественное наследование не нужно вообще, интерфейсы и вложенные
классы с этим полностью справляются, причем гораздо более элегантным способом.
В плюсах вообще все делается через наследование - и имплементация интерфейса
и наследование поведения, что не способствует понятности плюсовых исходников.
Поскольку интерфейсы в Java оказались очень удачной идеей -
эту же идею потом реализовали и в новом гугловском языке программирования Go.
| |
|
7.113, Crazy Alex (ok), 12:49, 06/04/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
Что за бред, простите. В плюсах есть мощные шаблоны и auto, которые в подавляющем большинстве случяаев вообще избавляют от нужды в динамическом полиморфизме в пользу duck typing. Вот о мышлении "давайте для всего сделаем интерфейс" я и говорил - оно вообще не нужно в плюсах. Просто берешь и пишешь имплемиентацию. Если нужна фабрика - это шаблонный метод, ты даже не знаешь, какой тип она вернёт и тебе не требуется, чтобы он что-то наследовал - только чтобы сигнатуры методов были совместимы с вызовами. А в случае джавы - антипаттерн или нет - но придётся наследоваться лишний раз.
И, разумеется, в плюсах есть вложенные классы - ещё от сишных вложенных структур пришли. Другое дело, что у них нет автоматического доступа к экземпляру клсса-владельца - надо явно отдать ссылку или указатель на него. А интерфейс от абстрактного класса вообще ничем кроме названия не отличается.
| |
|
8.116, csdoc (ok), 17:08, 06/04/2015 [^] [^^] [^^^] [ответить] | +/– | Способность видеть отличие между интерфейсом и реализацией - это плюс Интерфейс... текст свёрнут, показать | |
|
|
10.133, csdoc (ok), 02:02, 07/04/2015 [^] [^^] [^^^] [ответить] | +/– | То есть, на плюсах - любой класс у которого есть публичные члены является интерф... большой текст свёрнут, показать | |
|
|
|
|
6.111, Аноним (-), 08:20, 06/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
> Оно, насколько я опнимаю, пошло из библиотек джавы, которые, во-первых, должны быть универсальными
Справедливости ради можно отметить, что для библиотек универсальность является плюсом независимо от языка программирования.
| |
|
7.114, Crazy Alex (ok), 12:52, 06/04/2015 [^] [^^] [^^^] [ответить]
| +/– |
Да, должны. Но если универсальность включает в себя требование удобного использоавния в приложениях из многих миллионов строк, а внимание более простым случаям не уделили - то платить за организацию кода прикладной программист будет больше, чем мог бы. Вот теми самыми иерархиями и громоздким кодом.
| |
|
|
|
|
|
|
1.74, Аноним (-), 23:50, 04/04/2015 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
>Предметная область?
Да фактически все тоже самое, что и на C#/C++ пишут пишу на Ди. Прямо сейчас пишу софтину для получения метаданных из спутниковых снимков. До этого писал парсеры и различные утилиты.
Приятель на Ди тоже с Шарпа перешел, пишет серверную часть для сайтов.
| |
|
2.80, Аноним (-), 01:15, 05/04/2015 [^] [^^] [^^^] [ответить]
| –1 +/– |
Хорошо, сложно стыковать D с perl. Интересуют вызовы как из D так и из D-функции(кода) из perl.
| |
|
3.84, Crazy Alex (ok), 05:00, 05/04/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
Любая сишная библиотека достаточно тривиально зацепляется из D, хотя заголовок транслировать, конечно, придётся. Но на практике трансляция заголовка SQlite (а он не маленьки ни разу) требовала у меня пару часов, не больше. Наоборот - C-интферфейс вывешивается тоже совершенно тривиально, с автоматической генерацией сишного хидера. Но на практике пробовать никогда нужды не было, так что за отсутствие подводных камней не ручаюсь.
| |
|
4.86, Аноним (-), 06:58, 05/04/2015 [^] [^^] [^^^] [ответить]
| –1 +/– |
Уговорил, гляну D как-нибудь на досуге. Но посоветуйте нормальную литуратуру по D чтобы не для нубов, но и не практическое руководство. Издавались нормальные книги?
| |
|
5.91, Аноним (-), 08:46, 05/04/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ой не туда ответил:
Андрей Александреску - Язык программирования D - 2012
Ruppe - D Cookbook - 2014
| |
|
|
|
|
1.90, Аноним (-), 08:46, 05/04/2015 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Андрей Александреску - Язык программирования D - 2012
Ruppe - D Cookbook - 2014
| |
|