Какой язык использовать для текстового редактора? - PullRequest
1 голос
/ 18 сентября 2010

Мне хочется написать (богатый) текстовый редактор, который в основном будет использоваться для создания заметок в C или C ++, с использованием, скорее всего, GTK или Qt для пользовательского интерфейса.

Проблема в том, что я не могу решить, что использовать. Я знаю и C и C ++, C немного лучше. Я никогда не использовал Qt, но у меня все в порядке с обучением, и у меня есть некоторый опыт работы с GTK.

Есть ли какая-то конкретная комбинация, которую вы бы предпочли и почему? В частности, думаете ли вы, что есть какое-то преимущество в использовании C ++, или все будет в порядке?

Ответы [ 4 ]

4 голосов
/ 18 сентября 2010

Я пишу редактор самостоятельно, и я тоже выбрал C ++ и Qt.

Причины этого:

  • C ++ является эффективным с точки зрения использования процессора и памяти.Я ненавижу медленные текстовые редакторы со страстью.
  • Поддерживающие библиотеки почти всегда пишутся на C или C ++, поэтому я могу с ними хорошо взаимодействовать (и расширять их при необходимости).
  • Qt - это отличная, хорошо поддерживаемая, кроссплатформенная / системная библиотека графического интерфейса, и она содержит много обычно полезных базовых классов / алгоритмов.Это делает C ++ действительно забавным в использовании.
2 голосов
/ 18 сентября 2010

Лично я бы пошел на C ++ / Qt.

Причина моего уклона в том, что в отличие от GTK, Qt - это не только набор инструментов для пользовательского интерфейса, но и множество других функций, таких как работа в сети, доступ к базе данных,анализ XML ... который может принести вам большую пользу.И все это с непротиворечивым API.

Основная ошибка Qt состоит в том, что он заменяет стандартную библиотеку C ++ в том смысле, что у нее есть свой собственный классы list, string, map, hash ....У них гораздо более приятный API, чем у STL, и с ним (IMO) работать намного приятнее, но если вы изучите C ++ таким образом, вам будет гораздо сложнее вернуться к стандартному C ++, если вам когда-либо понадобится.

Если вы хотите получить краткое введение в ООП с использованием C ++ и Qt, см. Эту книгу (можно бесплатно скачать): http://cartan.cas.suffolk.edu/oopdocbook/

1 голос
/ 18 сентября 2010

C ++, вероятно, лучше подходит для RAD (Rapid Application Development), чем C. Это связано с его дополнительными функциями, такими как классы и объекты. C Я думаю, что это просто затруднит вас, потому что у вас нет таких вещей, как классы и объекты.

Обычно ОО-языки подходят для графических интерфейсов, а что нет, тогда как языки, подобные С, предназначены для низкоуровневых драйверов, где эффективность очень важна (хотя и немного спорна).

0 голосов
/ 18 октября 2010

C ++ лучше, чем C. C ++ может делать все, что может делать C, и, кроме того, поддерживает объектно-ориентированные и универсальные парадигмы проектирования. «ПОДДЕРЖКА» здесь означает сам язык и его возможности, которые обеспечивают программисту легкость, удовольствие и производительность для достижения этих целей проектирования. Перейти на C ++, и вы не пожалеете.

Если вы выбираете Qt, вы также должны выбрать C ++, потому что Qt - это библиотека C ++. Если вы программируете текстовый редактор, я не знаю, сколько вам осталось сделать поверх текстового редактора Qt, который хорошо поддерживает форматированный текст. Вам, вероятно, нужно только сконцентрироваться на добавлении специфичных для домена функций, которые вас интересуют.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...