The OpenNET Project / Index page

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



Индекс форумов
Составление сообщения

Исходное сообщение
"Кризис проекта X.Org"
Отправлено PereresusNeVlezaetBuggy, 12-Июн-08 00:49 
>>Милая, да выберите и пишите.  Может, поймёте по дороге, почему же
>>для низкоуровневого системного софта как раз C и является ассемблером.  
>>И не в нём тут проблема.
>
>Дело в том, что на C обычно пишется весь проект, а на
>ассемблере - маленькие куски кода (к тому же код, написанный вручную
>на ассемблере может быть быстрее кода на всеми так любимом C).

Если _хорошо_ уметь программировать на ассемблере. Иначе - далеко не факт. А уметь программировать на асме хорошо - совсем не тоже, что просто уметь программировать. Я вот умею, но не хорошо. Поэтому напишу на C.

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

Как бы это помягче сказать... Вы не правы, вот.

Во-первых, вместо багов логики (которые заметить относительно легко) начнут вылезать баги компиляторов (а вот их пойди ещё обнаружь). Или вы считаете компиляторы (особенно GCC) непогрешимыми?

C++ - ОЧЕНЬ сложный язык. На нём можно написать что угодно, но это вовсе не значит, что на нём стоит что угодно писать. Сам Страуструп говорил , что C++ реально нужен примерно 5 людям в мире (с учётом роста населения Земли и процента программистов среди оного, готов довести это число даже до 500 - суть не сильно изменится).

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

>Так что незначительное (а чаще незаметное) увеличение производительности, вызванное написанием ВСЕГО
>проекта на среднеуровневом C может быть "компенсировано" увеличением числа багов, уменьшением и
>скорости разработки и сложностью добавления новых возможностей.

Опыт показывает, что багов меньше там, где, во-первых, лучше квалификация работников, а во-вторых, где используются наиболее простые схемы. C++ - это НЕ просто. И ему не место в массовом X-сервере, кроме как (допускаю) в прикладных программах, типа xeyes.

> Так что я считаю
>оптимальным выбор C++ (или D) с небольшими ассемблерными вставками (места, которые
>нуждаются в оптимизации, могут быть выявлены при помощи профилировщика).

А я считаю, что Билл Гейтс должен мне кучу бабок. Уж простите за резкость, но книжки - это конечно, хорошо, но вы явно витаете в облаках.

> К тому
>же в C++ есть статические методы и функции вне классов, вызов
>которых должен по скорости должен быть эквивалентен вызову функции C.

Ну и чем в этих случаях будет C++ лучше C? Повторяю, C++ - это ОЧЕНЬ мощный язык, наверное, самый мощный из существующих. Но за эту мощность приходится платить. Я люблю C++, это мой второй любимый язык после C# - но одно дело язык, а другое дело его реализация.

Это не говоря о том, что чем проще средства, тем проще ими пользоваться - меньше ошибок.

> Иногда
>некоторые реализуют на C свою собственную объектную систему (наверное, самая известная
>- glib). Почему такие системы должны быть быстрее систем на C++
>- это я не понимаю. Кстати, слышала, что в Xorg тоже
>реализовано что-то похожее.

А кто вам сказал, что программирование - это гонка за скоростью?

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

Лично я соглашусь, по крайней мере отчасти, с Михаилом: нынешняя схема организации X.org привела к бедламу, который излечить можно только сменой процесса разработки.

Как там нас учили? Низы хотят, верхи не могут, а теперь вот образуются и революционные настроения...

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



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

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