LINUX.ORG.RU

C++


362

17

Всего сообщений: 225

Андрей Александреску на конференции ACCU

Группа Документация

Выступая на конференции ACCU Silicon Valley, Андрей Александреску в свободной манере рассказал о некоторых особенностях языка D, попутно сравнивая D и C++. Вкратце, Андрей рассказал о корректности, обобщенном программировании и перегрузке операторов в языке D.

В качестве заключения Александреску отмечает, что D является неплохим средством как для системного, так и для прикладного программирования.

>>> Слайды выступления

 ,

ksv
()

KDevelop 4.1

Группа KDE

После полугода разработки вышел новый стабильный выпуск среды для разработки приложений KDevelop.

Помимо общего увеличения стабильности, данный релиз содержит такие новые возможности:

  • Поддержка git теперь «из коробки», в дополнение к уже существующим плагинам поддержки SVN и CVS. Более подробная информация по функциональности тут.
  • Поддержка экспорта патчей различными методами, а именно по e-mail, через pastebin и ReviewBoard.
  • Поддержка внешних скриптов в дополнение к скриптам Kate позволяет легко выполнять команды из IDE, в том числе используя содержимое окна редактора кода как ввод или вывод для скриптов. Таким образом можно легко запускать утилиты форматирования кода и им подобные, а также делать другие полезные вещи.
  • Загрузка удаленных проектов прямо из IDE. Теперь для загрузки удаленного проекта из VCS можно воспользоваться мастером импорта, который самостоятельно выполнит SVN checkout или Git clone. Среди прочего, мастер поддерживает импорт проектов KDE SC, для чего нужно просто выбрать проект из предложенного списка.
  • Добавлен Hex-редактор с использованием компонентов Okteta.
  • Поддержка PHP 5.3.
  • Улучшенные средства управления проектами.
  • Улучшенная поддержка CMake.

KDevelop — многоязыковая IDE, написанная с использованием Qt/kdelibs. В данный момент имеет поддержку C/C++ и PHP, поддержка же плагинов других языков находится на стадии разработки. Основной системой сборки для проектов является CMake, хотя имеется поддержка любых систем сборки, основанных на makefile. Имеет удобный редактор кода на основе katepart с подсветкой синтаксиса, одним из лучших на сегодня автодополнений, сверткой блоков кода и другими полезными функциями. Поддерживается отладка с использованием GDB.

>>> Подробности

 , , ,

Pavval
()

EA открывается

Группа Open Source

Electronic Arts Inc, известный производитель и издатель игр, выложил в открытый доступ свои наработки.

Помимо модифицированного WebKit, который, судя по всему, использовался в таких продуктах компании, как Sims 3, Skate 3 и NFS World Online, опубликованы так же части EASTL - «библиотеки шаблонов для С++ от EA».

EASTL на Github

>>> Подробности

 , , ,

yoghurt
()

Вышла СУБД Firebird 2.5

Группа Linux General

Firebird — свободная кроссплатформенная система управления базами данных для GNU/Linux (других POSIX-совместимых ОС) и Microsoft Windows. Основана на исходном коде свободной версии Interbase 6.0 от Borland, выпущенной в 2000 году.

Основные изменения:

  • многопоточная обработка запросов, использующая преимущества симметричной многопроцессорной обработки (SMP), которая значительно повышает производительность на многопроцессорных и многоядерных системах;
  • встроенные библиотеки libfbembed.so (POSIX) и fbembed.dll (Windows) теперь поддерживают многопоточные и поточно-ориентированные вызовы.

Также добавлены новые возможности и улучшения:

  • система аудита и трассировки запросов через Services API, позволяющая отслеживать и анализировать изменения БД в режиме реального времени;
  • отслеживание пользователем своих соединений;
  • более подробная информация в таблицах мониторинга;
  • управление учётными записями с помощью SQL-выражения «CREATE/ALTER/DROP USER»;
  • дополнительное предоставление/аннулирование прав пользователю, отличного от текущего (по умолчанию);
  • встроенные функции для преобразования строк UUID CHAR (16) OCTETS в RFC4122-совместимый формат и наоборот;
  • результаты запросов, согласно стандарту SQL-2003 — возврат 5-символьного кода завершения операции (SQLSTATE);
  • и другие.

Страница загрузки

>>> Подробности

 , ,

amorpher
()

Практическое использование MySQL++: Часть 5. Работа с различными типами данных

Группа Документация

В этом цикле статей рассматривается библиотека, обеспечивающая взаимодействие приложений, написанных на языке C++, с системой управления базами данных MySQL.

>>> Подробности

 , , ,

IBM_dW
()

Вышел Wt 3.1.4 и JWt 3.1.4

Группа Интернет

Wt — библиотека на C++ для разработки интерактивных web-приложений. API библиотеки очень схож с Qt, что позволяет использовать те же подходы, что и при написании приложений с использованием Qt, а также достаточно легко адаптировать обычные приложения к работе в сети. Библиотека поставляется с сервером приложений, который может функционировать как самостоятельный web-сервер или интегрироваться через FastCGI с другими серверами. Библиотека также доступна для языков Java (JWt) и Ruby (WtRuby)

Новое в выпуске:

  • WSortFilterProxyModel теперь полностью завершён, включая отслеживание изменений в нижележащей модели данных.
  • Добавлена новая модель WBatchEditProxyModel.
  • Поддержка ISAPI (только для С++ на win32) для развёртывания приложений на серверах Microsoft IIS.
  • Новые устройства отрисовки (paint device): WPdfImage и WRasterImage для отрисовки в PDF и PNG соответственно.
  • Улучшения в Wt::Dbo, увеличивающие гибкость работы с ключами.
  • Dbo::QueryModel, переводящий объекты БД в термины MVC-библиотеки, теперь поддерживает редактирование.

>>> Подробности

 , , ,

Ximen
()

Google дал оценку Java и C++

Группа Java

Один из ведущих инженеров Google — Роб Пайк (Rob Pike) — выступил на конференции O'Reilly Open Source Convention (OSCON) и выразил мнение корпорации о современных языках разработки и месте C++ и Java в них. Он отозвался об этих индустриальных китах очень негативно, назвав их многословными, чрезмерно сложными и неадекватными к применению в решении задач современной компьютерной инфраструктуры.
«Я думаю, что эти языки слишком сложны для использования, слишком трудны для понимания, слишком замысловаты. Они очень многословны, их сложность, громоздкость и непонятность возрастают со временем», — заявил Роб.

>>> Подробности

 , , ,

Karapuz
()

CodeLite 2.6.0

Группа Open Source

Увидело свет очередное обновление CodeLite под номером 2.6.0.4189.

CodeLite — полностью свободная, кроссплатформенная интегрированная среда разработки для C++, которая собирается и тестируется в Windows XP/Vista, Linux (доступны сборки для Ubuntu, Fedora, openSUSE) и Mac OS X. CodeLite распространяется под лицензией GPLv2 с исключением: дополнения, разрабатываемые для CodeLite, могут распространяться под любой лицензией.

Стоит отметить, что CodeLite разработана с использованием библиотеки wxWidgets и оптимизирована для разработки при помощи этой библиотеки.

Основные изменения в версии 2.6.0:

  • множество исправлений;
  • оптимизации по удобству использования (например, подготовка рабочего пространства происходит теперь в фоновом процессе, улучшение диалога поиска и др.);
  • улучшения и оптимизация автодополнения;
  • поддержка обратных связей в панели быстрого поиска.

Главная страница проекта CodeLite

Страница загрузки

>>> Подробности

 , ,

Genuine
()

Вышел Qt Creator 2.0

Группа Open Source

Вышел новый релиз Qt-ориентированной интегрированной среды разработки для языка С++.

Изменений очень много, основные:

  • Улучшена поддержка разработки под Symbian & Maemo
  • Поиск с заменой по нескольким файлам допускает регулярные выражения
  • Перенос файлов в редактор открывает их вместо вставки ссылки
  • Улучшен диалог настроек
  • Улучшены подсказки в коде на основе информации из .pro файлов проекта (например, макросы из списков DEFINES)
  • Поддержка VCS Mercurial
  • «Умный просмотр» в режиме отладки для новых классов: QUrl, QAtomicInt, __gnu_ext::hash_map и других
  • Поддержка gdb 7 и расширения на Питоне для улучшения вывода объектов в окне отладки( подробнее)
  • Поддержка выполнения во время отладки в обратном порядке где это возможно

Полноценная поддержка QML переносится на версию 2.1

Подробный список изменений

>>> Подробности

 , , , ,

theos
()

NetBeans 6.9

Группа Java

Сегодня, 15-го июня, в соответствии с расписанием состоялся выпуск NetBeans 6.9. По сравнению с предыдущей версией, добавлены следующие значительные новшества:

  • OSGi: включен контейнер Felix (есть возможность подключения Equinox); совместимость NetBeans-модулей и OSGi-bundles; поддержка OSGi-проектов для Maven;
  • Платформа NetBeans: генерация инсталляторов для большинства имеющихся платформ; редактор персонализации (branding);
  • JavaFX: включён JavaFX SDK 1.3; поддержка форм в Composer; улучшенные палитры для задания цветов/эффектов/форм; улучшения в рефакторинге и форматировании кода;
  • Java EE: поддержка JCDI (ex-WebBeans; JSR-299), Spring Framework 3.0; перегенерация JPA-сущностей после изменений схемы БД; поддержка REST-вебсервисов для platform-приложений; включены Apache Tomcat 6.0.26 и GlassFish v3 (GlassFish v2 исключен);
  • Java ME: поддержка Java Card™ 3 Connected;
  • Java: группировка точек останова в отладчике, улучшенная навигация по stack trace; поддержка annotation processor'ов в редакторе; улучшения в поддержке апплетов и WebStart-приложений;
  • Веб: автодополнение для id- и class-селекторов в CSS; рефакторинг CSS и HTML-подобных языков;
  • PHP: поддержка Zend Framework; обновленное автоформатирование кода с поддержкой множества правил;
  • Ruby: поддержка Ruby On Rails 3.0;
  • C/C++: улучшенная удаленная отладка/разработка; поддержка модульного тестирования (unit testing);
  • Прочее: проверка орфографии в редакторе; поддержка нескольких серверов типа Kenai.

NetBeansизвестная с 1997 года интегрированная среда разработки, изначально для Java, а впоследствии и для множества других языков (Scala, Groovy, C/C++, Python, PHP, Ruby, Scheme), а также платформа для создания desktop-приложений. Множество приложений, созданных на основе NetBeans Platform, включает в себя промышленные, научные, обучающие приложения, корпоративные информационные системы и приложения в области компьютерного искусства. Выпуск NetBeans 6.9 знаменателен тем, что это первый релиз, состоявшийся под эгидой Oracle. Вопреки пессимистичным прогнозам, NetBeans продолжает выходить четко по расписанию; потерь в динамике развития NetBeans также не наблюдается.

Сообщение о выпуске.

Заметки к выпуску.

Страница загрузки.

>>> Сайт NetBeans

 , , , , , , , ,

Kuka
()

Вышла среда разработки Code::Blocks 10.5

Группа Open Source

После двух лет разработки вышел новый стабильный выпуск (10.5) популярной кросс-платформенной среды разработки на языках C/C++/D и других.

Лицензия GPLv3, выпускается для ОС Linux, Mac, Windows (сама IDE написана на C++, для GUI используется wxWidgets), для расширения функциональности используется механизм плагинов.

Поддерживается множество разных компиляторов: GCC (MingW / GNU GCC), MSVC++, Digital Mars, Borland C++ 5.5, Open Watcom, и другие.

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

Поддерживаются отладчики GNU GDB и MS CDB.

Возможен импорт проектов из MSVC и Dev-C++.

Имеется удобный редактор кода с подсветкой синтаксиса, автодополнением, сверткой блоков кода, и другими полезными функциями.

>>> Подробности

 , , , ,

EtherealPhantom
()

Разрешено использование C++ в GCC

Группа GNU's Not Unix

Вчера в списке рассылки GCC появилось важное сообщение по поводу использования языка программирования C++ при разработке GCC (GNU Compiler Collection, а не сам компилятор языка C).

Марк Митчелл (Mark Mitchell), один из основных разработчиков GCC:

Я рад сообщить, что руководящий комитет GCC и FSF одобрили использование C++ в самом GCC. Конечно, нет никаких причин использовать возможности С++ только потому, что мы умеем это делать. Главная цель - предоставить пользователям более качественные компиляторы, а не кодовую базу на C++ для самих себя.

Перед тем, как мы действительно начнём использовать C++, мы должны определиться с набором правил, которыми нужно будет руководствоваться при использовании C++ для разработки GCC. Я считаю, что для начала мы должны минимизировать список разрешённых возможностей С++, чтобы не подвергать разработчиков GCC, не знакомых с C++, таким резким переменам в основном языке разработки компиляторов. Мы всегда сможем расширить использование С++ позднее, если появится такая необходимость.

На данный момент разработчики ограничиваются стандартом C++98 и использованием типа long long для 64-битных целых чисел. Использование множественного наследования, шаблонов (тех, которые не входят в стандартную библиотеку C++) и исключений, скорее всего, будет запрещено. Это мотивировано тем, что это будет сложно для программистов на C, а также тем, что сами программисты C++ могут с лёгкостью допустить ошибки в таких вещах.

Так как язык C++ достаточно обширен, то Марк Митчелл предложил составить список того, что разрешается использовать, а не того, что использовать нельзя. На данный момент необходимо составить некоторые информационные нормативы, а не очередной стандарт ISO.

Все желающие поучаствовать в разработке нормативов могут связаться с разработчиками GCC. На данный момент предполагается сделать это в виде странички в Wiki.

>>> Официальный анонс

 , , , , ,

MuZHiK-2
()

KDevelop 4.0

Группа KDE

Сегодня состоялся релиз интегрированной среды разработки KDevelop, первый с момента выхода KDE4.

Основные усилия разработчиков при подготовке данного релиза были направлены на создание отличной IDE для C++. Но это не значит, что другие языки не будут поддерживаться, расширения для них будут добавлены позже. Сейчас в svn доступны расширения для C#, CSS, Erlang, Java, Python и других языков.

Основные возможности:

  • Навигация с быстрым переходом по объявлениям и семантической подсветкой кода
  • Проверка синтаксиса и полуавтоматическое исправление кода
  • Автодополнение классов, функций, шаблонов, переменных и объявлений о включении заголовочных файлов
  • Для разработчкиков, использующих Qt, реализована поддержка механизмов сигнал-слот с автозаполнением
  • Поддержка CMake, редактирования Makefile'ов, автодополнения и подсветки кода в файлах CMake, полуавтоматического добавления созданных классов в CMake-файлы, автоматического перехода к участку кода по ошибке
  • Поддержка GDB, позволяющая устанавливать точки остановки, пошаговый переход и просмотр текущего стека вызовов. Также доступен вывод типов Qt, KDE и STL в читаемом формате
  • Интеграция документации: встроенная документация для CMake и Qt, всплывающие подсказки для классов и функций, показ полной версии документации с помощью toolview
  • Интеграция с SVN
  • Поддержка сессий
  • Автоматическое форматирование кода
  • Поиск по файлам

Одновременно было выпущено расширение для PHP, предоставляющее базовые возможности для веб-разработчика:

  • Семантический анализ кода и ошибок, включая комментарии PHP Doc для подсказок о параметрах и возвращаемых значений
  • Автодополнение кода с поддержкой ООП
  • Подсветка кода и его контекстный просмотр
  • Поддержка отображения документации по параметрам и возвращаемым значениям с сайта PHP.net

>>> Подробности

 , , , , ,

madgnu
()

Вышел релиз CGAL 3.6

Группа Open Source

Вышел новый релиз CGAL ( Computational Geometry Algorithms Library, библиотека алгоритмов вычислительной геометрии ).

Основные изменения:

  • трёхмерная периодическая триангуляция; теперь можно использовать CGAL для расчёта периодических альфа переходов;
  • генерация трёхмерной сетки; в генератор сетки была добавлена фаза оптимизации, что позволило добавить генерацию трёхмерной сетки с использованием правильного тетраэдра (well shaped tetrahedra);
  • алгебраическое ядро (новый пакет); содержит алгоритмы для нахождения, оценки и сравнения реальных корней одномерных (univariate) и двумерных (bivariate) систем полиномов.

CGAL распространяется под лицензиями LGPL и QPL (Qt Public License).

Официальный сайт.

>>> полный список изменений

 , , , ,

shty
()

FIFE 0.3.0

Группа Игры

Выпущена новая версия кроссплатформенного 2D фреймворка FIFE(Flexible Isometric Free Engine) для создания игр, написанного на C++ и Python. Для использования FIFE достаточно знать Python, а если он по каким-то причинам не подходит, то можно использовать C++.

Наиболее важные изменения:

  • Теперь используется Python 2.6
  • Добавлена поддержка UTF-8
  • Переделана scons build system
  • Редактор полностью переписан и поддерживает плагины и.т.д.

Скриншоты.

>>> Подробности

 , , ,

Correctnoe_imya_polzovatelya
()

ABI Compliance Checker

Группа Open Source

ABI-compliance-checker - это легковесная утилита для проверки обратной бинарной совместимости разделяемых библиотек, написанных на C/C++ для ОС Linux. Она проверяет сигнатуры интерфейсов и определения типов в двух версиях какой-либо библиотеки и ищет изменения в ABI, которые могут привести к несовместимости. Нарушение совместимости может привести к падениям или некорректной работе программ, собранных со старой версией библиотеки, но запущенных с новой версией. Кроме этого, данную утилиту можно использовать и для проверки прямой совместимости (forward binary compatibility), а так же для проверки соответствия ABI библиотек, расположенных на разных машинах.

ABI-compliance-checker предназначен для разработчиков библиотек, которые заинтересованы в обеспечении обратной совместимости своих библиотек. Можно использовать по условиям лицензии GPLv3 или любой более поздней версии на ваш выбор =).

Скачать: (последние версии)

>>> Подробности

 , , , ,

Deleted
()

Как оптимизировали программу на Ocaml

Группа Документация

По ссылке приведены примеры программ с соревнований на ICFPC'09 (кстати, самим по себе интересными тем, что участники соревновались в управлении космическими аппаратами) которые демонстрируют как оптимизационные возможности, свойственные функциональным языкам (в частности хвостовая рекурсия), позволяют написанной на нём программе-интерпретатору некоего языка управления двигателем космического аппарата обогнать по скорости работы аналогичную на C/C++.

>>> Подробности

 , , ,

anonymous_incognito
()

Представлена первая версия проекта LinuxTools — IDE для C/C++, основанной на Eclipse CDT

Группа Linux General

LinuxTools — основанный на Eclipse CDT проект, который предназначен стать «полнофункциональным IDE для разработки C/C++», в первую очередь для Linux-разработчиков.

LinuxTools включает в себя:

  • Интеграцию с GNU Autotools;
  • Поддержку valgrind;
  • OProfile.

В перспективах поддержка RPM, Systemtap. Также планируется рассмотрение идеи включения Eclipse и плагинов в различные дистрибутивы Linux.

>>> Подробности

 , ,

fukazzz
()

Objective-C для программистов C++

Группа Документация

Опубликован перевод цикла из трех статей, посвященных языку Objective-C. В цикле рассматриваются множество возможностей этого языка, в том числе и «продвинутые». Приводятся соответствующие аналогии (в случае наличия таковых) из языка C++.

>>> Перевод цикла

 ,

n0xi0uzz
()

HOWTO по работе с С++ классами из Perl'a

Группа Документация

Выложена статья по работе из Perl'a с классами С++. В качестве примеров используются классы библиотеки QtCore из Qt4.

Первоначально статья опубликована в LinuxFormat № 11 за 2007. Этот вариант дополнен примерами и парой разделов, т.к. уже не стояло ограничений на размер.

>>> статья

 , , ,

vadiml
()