The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Бета-выпуск языка программирования Rust 1.0

04.04.2015 10:32

Подготовка первого стабильного выпуска языка программирования Rust, развиваемого проектом Mozilla, выходит на финишную прямую - бета-выпуск Rust 1.0 ознаменовал полную стабилизацию программных интерфейсов всех библиотек и языковых конструкций. Обращение ко всем компонентам API, которые признаны нестабильными, в бета выпуске и релизе будет приводить к выводу ошибки, для использования экспериментальных возможностей отныне следует использовать ночные сборки или явно разрешить данные возможности на этапе сборки. Релиз запланирован на 15 мая.

Основной причиной подготовки Rust 1.0 является желание стабилизировать язык и сделать его пригодным для использования в реальных проектах. В процессе подготовки ветки Rust 1.0 программные интерфейсы и возможности языка подверглись значительной ревизии, после которой по умолчанию оставлены только полностью готовые к применению возможности, реализация которых не будет изменяться в дальнейшем. Все остальные функции переведены в разряд экспериментальных и вынесены из поставки по умолчанию. Таким образом каждый следующий за Rust 1.0 стабильный выпуск будет полностью обратно совместим с предыдущим и будет гарантировать неизменность API. По мере доведения до готовности, экспериментальные возможности будут стабилизироваться и включаться в основные выпуски.

Язык Rust развивается проектом Mozilla и сфокусирован на безопасной работе с памятью и обеспечении высокого параллелизма выполнения заданий (возможность порождать тысячи и даже миллионы подпроцессов). Исходные тексты проекта распространяются под лицензией MIT. Параллельно с Rust совместно с компанией Samsung развивается экспериментальный браузерный движок Servo, написанный на языке Rust и отличающийся поддержкой многопоточного рендеринга web-страниц и распараллеливанием операций с DOM (Document Object Model).

По структуре язык Rust напоминает C++, но существенно отличается в некоторых деталях реализации синтаксиса и семантики. Автоматическое управление памятью избавляет разработчика от манипулирования указателями и защищает от проблем, возникающих из-за низкоуровневой работы с памятью, таких как обращение к области памяти после её освобождения, разыменование нулевых указателей, выход за границы буфера и т.п. Rust поддерживает смесь императивных процедурных и объектно-ориентированных методов с такими парадигмами, как функциональное программирование и модель акторов, а также обобщённое программирование и метапрограммирование, в статических и динамических стилях.

  1. Главная ссылка к новости (http://blog.rust-lang.org/2015...)
  2. OpenNews: Выпуск языка программирования Rust 0.12, развиваемого проектом Mozilla
  3. OpenNews: Подготовлен вариант GNU Coreutils, переписанный на языке Rust
  4. OpenNews: Для GCC подготовлен фронтэнд с поддержкой языка Rust, развиваемого проектом Mozilla
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/41975-rust
Ключевые слова: rust
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (127) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Аноним (-), 10:55, 04/04/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    >а также ориентацией на блочную организацию структуры кода, которая позволяет реализовать задачи в виде легковесных сопрограмм

    от этого давно отказались в пользу обычных тредов

     
     
  • 2.5, Аноним (-), 11:25, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Они тоже уже полгода как отказались. Автор новости - слоупок.
    Но вот утверждение, что корутинам вообще всегда предпочитают обычные треды - это враки, нанодесу.
     

  • 1.9, Аноним (-), 12:14, 04/04/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –6 +/
    Java с AOT заруливает эту хрень :)
     
     
  • 2.16, Аноним (-), 12:59, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    уже сделали минимальный рантайм чтобы в виде бандла распространять можно было и не заставлять пользователя ставить JRE?
     
     
  • 3.20, Аноним (-), 13:58, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Уже лет пять как
     
     
  • 4.76, Kroz (??), 00:37, 05/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Где почитать про это?
     
     
  • 5.81, Аноним (-), 02:51, 05/04/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Возможность была с шестёрки ЕМНИП, можно было и до этого, но были лицензионные ... большой текст свёрнут, показать
     
     
  • 6.87, Аноним (-), 08:27, 05/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    ОМГ

    10 мб - минимальный рантайм??
    океюшки...

     
     
  • 7.143, Аноним (-), 12:31, 08/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    и че? А теперь посчитай весь рантайм какогонить приложения на Qt.
     
     
  • 8.147, Аноним (-), 21:46, 08/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ну и то Для разнообразия посчитаем рантайм программы на си, собранной c -nostdl... текст свёрнут, показать
     
  • 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 после чего надеюсь оно пойдёт на взлёт.
     
     
  • 4.21, Аноним (-), 14:01, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Зачем, если есть Groovy?
     
     
  • 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.22, Аноним (-), 14:04, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Сравнил горячее с зелёным.
     
  • 2.34, Аноним (-), 16:01, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    А что насчёт задержек от сборщика мусора?
     
  • 2.37, XXasd (?), 16:13, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А когда это в Java успели сделать семантику одалживания-и-владения? :-)
     
     
  • 3.39, Аноним (-), 16:30, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Делают что-то схожее в Checker Framework, но там скорее база. Сама семантика должна реализовываться отдельным инструментом на его основе. Да и сам Checker пока сыроват даже на потрогать.
     

  • 1.25, Аноним (-), 14:44, 04/04/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    Зачем нужен Rust если есть Ди?
     
     
  • 2.26, Аноним (-), 14:57, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Дык... вестимо зачем - для неосиляторов С/C++. Им видите-ли сложно offset по указателю посчитать, все время бедняжки за границу выходят. А еще после того как покакают в штан^W в память, забывают подтеретьс^W очистить ее. Вот и нужна этим детям мамочк^W GC, который их обкаканые штанишки менять будет.
     
     
  • 3.28, Аноним (-), 15:25, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    в Rust нет GC, только опциональный подсчет ссылок
     
     
  • 4.29, Аноним (-), 15:28, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Ну в Go есть, разница то, блин.
     
     
  • 5.69, Аноним (-), 21:43, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Главное, что мнение имеешь - подробности фигня :)
     
  • 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.46, Аноним (-), 17:17, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    o_O ... текст свёрнут, показать
     
  • 9.117, клоун (?), 17:57, 06/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Просвети Есть класс Геометрические фигуры, от него унаследованы классы Круг, Тр... текст свёрнут, показать
     
     
  • 10.119, iZEN (ok), 19:35, 06/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ещё для разнообразия Точка, Окружность, Эллипс, Многоугольник ... текст свёрнут, показать
     
     
  • 11.129, клоун (?), 23:32, 06/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Это не шутка Меня в какое-то время надоело бодаться с ООП, которое якобы что-то... большой текст свёрнут, показать
     
     
  • 12.131, ........................ (?), 00:52, 07/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    http cpp-reference ru articles virtual-destructor ... текст свёрнут, показать
     
     
  • 13.137, клоун (?), 11:51, 07/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Когда речь о переменных, это работает, т к компилятор отслеживает человеческую ... текст свёрнут, показать
     
     
  • 14.139, ........................ (?), 15:14, 07/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    http www ycshao com p 338 Effective C item 7 Declare destructors virtual i... текст свёрнут, показать
     
  • 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.59, Аноним (-), 18:08, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Сам чего-то придумал 8211 сам поговорил Ок ... текст свёрнут, показать
     
  • 10.73, Ordu (ok), 23:19, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Так я не понял -- что тебе надо от языка Работа с памятью напрямую, или возможн... текст свёрнут, показать
     
     
  • 11.123, Аноним (-), 21:06, 06/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    И то и другое Хорошо когда инструмент гибкий ... текст свёрнут, показать
     
     
  • 12.126, Ordu (ok), 21:58, 06/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Тогда твоим выбором должен быть rust ... текст свёрнут, показать
     
     
  • 13.148, Аноним (-), 21:48, 08/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Странно, мой выбор ни у кого не занимал ... текст свёрнут, показать
     
     
  • 14.151, Ordu (ok), 22:34, 08/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 [^] [^^] [^^^] [ответить]  
  • +/
    > Дык, осиляторов в живой природе пока никто не наблюдал, в комментах разве что...

    Я наблюдал.

     
     
  • 5.47, Аноним (-), 17:17, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Я наблюдал.

    Что они написали?

     
     
  • 6.51, Аноним (-), 17:26, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> Я наблюдал.
    > Что они написали?

    Компиляторы и линкеры пишут, которыми потом неосиляторы свой код компилят/линкуют.

     
     
  • 7.98, Аноним (-), 12:32, 05/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вечно дырявая JRE тому подтверждение.
     
  • 6.54, Аноним (-), 17:46, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я наблюдал как команда писала ядро проекта на С++ и код был очень ровным. Вот тогда меня и научили "вменяемому" программированию на С++ и научили ненавидеть Java :)
     
     
  • 7.60, Аноним (-), 18:11, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +5 +/
    От жабки мало кто в восторге, но это не делает плюсокодеров сверхлюдьми, они ошибаются, как и все остальные, постоянные фиксы уязвимостей в тех же браузерах тому доказательство.
     
     
  • 8.62, Аноним (-), 18:29, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Сверхлюди тоже не идеальны и бывает, что ошибаются, Таков уж мир ... текст свёрнут, показать
     
  • 8.101, Аноним (-), 19:56, 05/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    На Java ругаются только дети-максималисты, в жизни не писавшие вещей сложнее уни... текст свёрнут, показать
     
     
  • 9.106, Crazy Alex (ok), 23:57, 05/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Проблема в том, что жабка точнее - весь стек J2EE на своём месте в проектах та... текст свёрнут, показать
     
     
  • 10.108, csdoc (ok), 01:00, 06/04/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Java EE уже не нужен, http projects spring io spring-framework подходит для п... текст свёрнут, показать
     
     
  • 11.112, Crazy Alex (ok), 12:31, 06/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вполне возможно Я, в общем-то, говорил о том, откуда пошли традиции писать на д... текст свёрнут, показать
     
     
  • 12.115, csdoc (ok), 16:47, 06/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Spring Framework уже давно популярнее Java EE во многих областях, Spring Boot о... текст свёрнут, показать
     
     
  • 13.132, Crazy Alex (ok), 00:56, 07/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ок, спринг стал мейнстримом Учту Если ещё Hybernate заменяется чем-то менее мо... большой текст свёрнут, показать
     
     
  • 14.135, csdoc (ok), 02:26, 07/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    По крайней мере, в рунете на Java-конференциях про спринг говорят очень много, а... большой текст свёрнут, показать
     
     
  • 15.146, iZEN (ok), 21:45, 08/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    То же самое про GNU Linux Git вони больше, чем по Windows Mercurial , хотя... текст свёрнут, показать
     
     
  • 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 была одна - зарабатывать деньги Демо-ве... большой текст свёрнут, показать
     
  • 11.118, iZEN (ok), 19:25, 06/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Смело Вы Java EE 7 смотрели http habrahabr ru company piter blog 229213 А S... текст свёрнут, показать
     
     
  • 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... большой текст свёрнут, показать
     
  • 14.138, Аноним (-), 12:11, 07/04/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    По поводу SOAP, не мог не написать Например написали апи на нём, для передачи о... текст свёрнут, показать
     
     
  • 15.142, Аноним (-), 01:28, 08/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    soap это анахронизм который кое-где оставили в качестве легаси в яве, и никому к... текст свёрнут, показать
     
  • 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 и прочие - тоже. Но то, что новые языки появляются, в любом случае хорошо, есть возможность обкатать новые идеи.
     
     
  • 4.78, Аноним (-), 00:42, 05/04/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Обкатать новые идеи и добавить их в очередной стандарт C++
     
     
  • 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 +/
    судя по мейллистам, главные дишники сейчас чешут головы и обсуждают, что они сделали не так по сравнению с Го
     
     
  • 3.32, Аноним (-), 15:46, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Забыли стать мегакорпорацией и пропиариться на весь мир?
     
  • 3.45, Аноним (-), 17:12, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    А че, D так хорош? Стоит изучать его и перейти с С++ на D ?
     
     
  • 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 - чтобы получить что-то минимальное, на чём можно писать компилируемый код.
     

     ....большая нить свёрнута, показать (73)

  • 1.52, Аноним (-), 17:32, 04/04/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    не взлетит
     
  • 1.63, Аноним (-), 19:00, 04/04/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    >А че, D так хорош? Стоит изучать его и перейти с С++ на D ?

    Я перешел правда с C#. Очень доволен. Обратно, а тем более на Плюсы не за что не вернусь. Теперь код так же легко как на Питоне писать, разве что либ меньше чем у самого Питона, но зато сишные либы идут на ура.

     
     
  • 2.67, iZEN (ok), 19:53, 04/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Предметная область?
     
  • 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.109, dcdcfd (?), 02:10, 06/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Поскольку интерфейсы в Java оказались очень удачной идеей - эту же идею потом реализовали и в новом гугловском языке программирования Go.

    и не только в ге
    http://wiki.freepascal.org/Interfaces


     
  • 7.113, Crazy Alex (ok), 12:49, 06/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Что за бред, простите. В плюсах есть мощные шаблоны и auto, которые в подавляющем большинстве случяаев вообще избавляют от нужды в динамическом полиморфизме в пользу duck typing. Вот о мышлении "давайте для всего сделаем интерфейс" я и говорил - оно вообще не нужно в плюсах. Просто берешь и пишешь имплемиентацию. Если нужна фабрика - это шаблонный метод, ты даже не знаешь, какой тип она вернёт и тебе не требуется, чтобы он что-то наследовал - только чтобы сигнатуры методов были совместимы с вызовами. А в случае джавы - антипаттерн или нет - но придётся наследоваться лишний раз.

    И, разумеется, в плюсах есть вложенные классы - ещё от сишных вложенных структур пришли. Другое дело, что у них нет автоматического доступа к экземпляру клсса-владельца - надо явно отдать ссылку или указатель на него. А интерфейс от абстрактного класса вообще ничем кроме названия не отличается.

     
     
  • 8.116, csdoc (ok), 17:08, 06/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Способность видеть отличие между интерфейсом и реализацией - это плюс Интерфейс... текст свёрнут, показать
     
     
  • 9.130, Crazy Alex (ok), 00:44, 07/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.77, Аноним (-), 00:39, 05/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > пишет серверную часть для сайтов

    Чтобы не уволили.

     
  • 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

     
  • 5.104, Crazy Alex (ok), 23:30, 05/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    При всём уважении к Александреску - советую вот это как минимум в дополнение глянуть: http://ddili.org/ders/d.en/index.html
     

  • 1.90, Аноним (-), 08:46, 05/04/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Андрей Александреску - Язык программирования D - 2012
    Ruppe - D Cookbook - 2014

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру