Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Переход с Borland c++ builder 6 к программированию в Linux на C и C++  (Прочитано 7712 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн mkudritsky

  • Автор темы
  • Любитель
  • *
  • Сообщений: 58
    • Просмотр профиля
Собственно весь софт в нашей организации разрабатывается на Borland c++ builder 6
Это, так сказать, стандарт!

Но порой возникают задачи эти же самые задачи или отдельные библиотеки делать в Linux и для Linux.
Мой гораздо более опытный коллега (как по специальности, так и по владению C/C++) в Linux ваяет программы в gcc
Среда разработки у него: клавиша F4 в mc

Я же являюсь выходцем с Borland Pascal 7.0 => FreePascal => Delphi, то есть всю жизнь программировал в Паскале и в IDE/Отладчиках фирмы Borland

Вопросы:
1. Если в Linux интегрированные средства разработки на C/C++
Ну, чтобы в одном флаконе были IDE и отладчик. И желательно - классические для Borland возможности F4, F7, F8, Watch и т.п.
З.Ы. Как известно, для языка Pascal такое есть: FreePascal и IDE есть как для консоли, так и для графического режима (Lazarus)

2. В интегрированной среде разработки желательно, чтобы был help по языками C/C++. Опять-таки как в Borland C++ Builder
Дело в том, что я - новичок в C/C++ Изучаю эти замечательные языки всего 3-й месяц. И хэлп, встроенный в IDE, мне совсем не помешает!

3. Такая интегрированная среда разработки IDE ищется как для графической среды Linux, так и для обычной консоли (вроде Borland Pascal для Паскаля).

З.Ы. Если тема получит развитие, то ниже опишу свои впервые впечатления о языках C/C++ и почему даже прикладным программистам надо по-максимуму уходить с Borland C++ Builder на классический C++ 


Оффлайн peregrine

  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7203
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
mkudritsky, я бы рекомендовал CodeBlocks или Netbeans (но он на Java, отчего требует мощный ПК). А вообще vim с такими плагинами меня устраивает:
Plugin 'gmarik/Vundle.vim'
Plugin 'Valloric/YouCompleteMe'
Plugin 'scrooloose/nerdtree'
Plugin 'bling/vim-airline'
Plugin 'majutsushi/tagbar'
Plugin 'scrooloose/nerdcommenter'
Остальное по желанию.
И да, clang++ тоже очень хороший компилятор, особенно по ошибкам многое показывает, куда больше g++. Никто не запрещает сделать софт так, чтобы он собирался и тем и другим - больше ошибок и предупреждений увидишь.

Lifewalker

  • Гость
Из виденного мной для вас наилучший вариант - QtCreator.
Можно, конечно, Netbeans попробовать, но оно таки на Джаву заточено.

Оффлайн peregrine

  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7203
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
Lifewalker, QtCreator только для Qt нормально. Netbeans надо брать именно для плюсов (с оф. сайта), он отдельно собирается с заточкой под плюсы.

Оффлайн mkudritsky

  • Автор темы
  • Любитель
  • *
  • Сообщений: 58
    • Просмотр профиля
Господа, спасибо всем ответившим.
Буду потихоньку разбираться в том софте, который здесь предложен.

P.S. А пока немного о своих впечатлениях о C/C++, которых я всегда - честно признаюсь - немного побаивался и считал их языками чисто для системщиков. Как я говорил, переходил я на них с FreePascal и всегда был сугубо прикладным программистом, больше даже математиком, чем программистом.

Итак, вот самые первые впечатления о C/CPP:
1. У меня создалось впечатление, что все свои Паскалевские программы я могу переписать на C, просто подставляя вместо операторов Паскаля соответствующие им операторы на С.
Обратное в общем и целом неверно!
То есть Паскаль представляет собой этакое малое подмножество языка С. И при этом его операторы просто приближены к английскому языку. Тут особо остро чувствуешь тот факт, что Паскаль был разработан как язык для ОБУЧЕНИЯ программированию. Что тут сказать? Не прибавить, не убавить - так оно и есть!

2. Надо ли прикладному программисту переходить на C/CPP?
Надо!
С этими чудесами я столкнулся за прошедшие 3 месяца изучения С.
Пример.

Мы работаем с очень большим количеством текстовых файлов, содержащих большое количество строк. Десятки тысяч и того, и другого!
Мои коллеги до меня ваяли софт в Borland C++ Builder 6.0 и использовали для работы с именами файлов и с их содержимым объекты TListBox (кстати, это не объект чистого Паскаля - это объект борландовской среды Delphi!)

И тут один наш коллега (гуру в C/C++) нашел время и кое какие программы переделал таким образом:
везде в тексте программы заменил TListBox на <vector> объектов String.
Господа, время работы программ ускорилось в 10 (!!!) раз!
Чудеса! Я ожидал, что будет быстрее, но не думал, что в разы! (Думал, что на 30-40% и не более).

В принципе, понятно, откуда берется эта скорость:
- фирма Borland один раз написала свой объект TListBox (да еще и с закрытым кодом) и более к нему не возвращалась;
- в C++ же и класс vector, и класс String вылизываются бесконечно (до сих пор!): устраняются найденные ошибки, применяется более оптимальный код для реализации полей и методов этих объектов и т.п.

Словом, когда я лицом к лицу столкнулся со всеми этими вещами, еще более зауважал C/C++.

Lifewalker

  • Гость
peregrine, топикстартер хочет C++Builder, но под Линукс. Исходя из этого сделана моя рекомендация.

Оффлайн SkinnyJack

  • Любитель
  • *
  • Сообщений: 53
    • Просмотр профиля
Голос за QtCreator. Быстрее, выше и сильнее всего что имеется под онтопик.
(Нажмите, чтобы показать/скрыть)

Оффлайн Gekko

  • Участник
  • *
  • Сообщений: 222
    • Просмотр профиля
Я советую wxWidgets в качестве IDE рекомендую CodeLite или CodeBlocks. В отличии от Qt, wxWidgets более легковесна и соответственно работает шустрее Qt.
Xubuntu 12.04 LTS с Xfce 4.10

Оффлайн unimix

  • Активист
  • *
  • Сообщений: 537
    • Просмотр профиля
везде в тексте программы заменил TListBox на <vector> объектов String.

Т.е. ранее TListBox использовался как объект для хранения массива строк?

Оффлайн mkudritsky

  • Автор темы
  • Любитель
  • *
  • Сообщений: 58
    • Просмотр профиля
Совершенно верно!
TListBox использовался как для хранения строк отдельных файлов, так и для хранения полных имен файлов (которых может быть тоже очень много).

All, господа!
Пока эксперименты откладываются, т.к. в силу специфики организации на машине, где ваяется софт, нет Интернета.
Ну а все предложенное здесь я уже проверил - на дистрибутивном диске такого софта НЕТ!

Принести дополнительный софт можно только на CD-R или на DVD-R.
Но боюсь, что даже если запишешь на диск, скажем, Qt-Creator, то он на изолированной от Интернета машине не установится - запросит еще кучу дополнительных пакетов.
Да и ядро на тамошней машине не самое свежее - 2.6.* 64bit

В общем, надо отдельно проводить большое исследование по установке приемлемой IDE-среды для языка C со встроенным отладчиком.

Оффлайн SkinnyJack

  • Любитель
  • *
  • Сообщений: 53
    • Просмотр профиля
http://download.qt.io/official_releases/qt/5.5/5.5.0/qt-opensource-linux-x64-5.5.0.run

Вроде как, всё нужное уже в комплекте. На cd-r как раз влезает. Единственно, не уверен на счёт пятой кьюти и вашего ядра.

Оффлайн BlinCT

  • Участник
  • *
  • Сообщений: 124
    • Просмотр профиля
Могу посоветовать CLion от компании JetBrains. У них софт навернео под все  и под все системы. И они очень хорошо среды разработки делают.
Так что советую его, сам им пользуюсь и например по скоростям работы или дополнения он обходит и QTCreator и Code::Blocks.
https://www.jetbrains.com/clion/?fromMenu

Оффлайн Gekko

  • Участник
  • *
  • Сообщений: 222
    • Просмотр профиля
Могу посоветовать CLion от компании JetBrains. У них софт навернео под все  и под все системы. И они очень хорошо среды разработки делают.
Так что советую его, сам им пользуюсь и например по скоростям работы или дополнения он обходит и QTCreator и Code::Blocks.
https://www.jetbrains.com/clion/?fromMenu

Вообще даже лень обсуждать такую демагогию.

Jetbrain это лавочка пожизненно использующая Java. А Java это синоним слова тормоза. Про то, что "по скоростям работы или дополнения он обходит и QTCreator и Code::Blocks" это троллинг чистой воды. CLion использует те же компиляторы, что и QtCreator и Code::Blocks.

Я уж не говорю, за то, что CLion платный. Хотя за хорошую программу и денег не жалко, но CLion это явно не тот случай.
Xubuntu 12.04 LTS с Xfce 4.10

Оффлайн BlinCT

  • Участник
  • *
  • Сообщений: 124
    • Просмотр профиля
Могу посоветовать CLion от компании JetBrains. У них софт навернео под все  и под все системы. И они очень хорошо среды разработки делают.
Так что советую его, сам им пользуюсь и например по скоростям работы или дополнения он обходит и QTCreator и Code::Blocks.
https://www.jetbrains.com/clion/?fromMenu

Вообще даже лень обсуждать такую демагогию.

Jetbrain это лавочка пожизненно использующая Java. А Java это синоним слова тормоза. Про то, что "по скоростям работы или дополнения он обходит и QTCreator и Code::Blocks" это троллинг чистой воды. CLion использует те же компиляторы, что и QtCreator и Code::Blocks.

Я уж не говорю, за то, что CLion платный. Хотя за хорошую программу и денег не жалко, но CLion это явно не тот случай.

Ну так если вы студент то можно и безплатно получить лицензию? А если вы зарабатываете так за хорошйи софт и платить не грех. Java это да проблема и не малая, но все таки у JetBrains софт весь идет профессиональный и хороший. А по скорости дополнения как вариант сравните. Про рефакторинг я молчу. Вышеуказанные IDE как то слабоваты.
Но каждому свое. Я высказал свое мнение так как сам CLion использую и хоть еще не все знаю там но то что попробовал о том и пишу.

 

Страница сгенерирована за 0.07 секунд. Запросов: 25.