LINUX.ORG.RU

GTK+ , IDE к нему... И ядерный реактор в придачу...

 , , ,


1

2

Всем доброго времени суток!!! Ребята, Люди, помогите, пожалуйста: собираюсь писать большое инженерное кросс-платформенное приложение, моделирующее работу ядерного ректора, на языке Си с лицензией GNU GPL. Работаю уже год в Debian GNU/Linux (Wheezy). Только возник такой вопрос: в самом языке Си библиотек для RAD-программирования (кнопки, списки, таблицы - вся визуальная часть) нет, т.е. их либо создаёшь и прописываешь сам, либо пользуешься GTK+ библиотеками. Но сложность возникла в плане техники реализации этой задачи - IDE выбрать к GTK+ и как их связать? Рассматривал вариант Glade+Anjuta, но если я не ошибаюсь - это сработает только на Gnome DE и приложение уже не получиться кросс-платформенное, чёрт знает как это запускать на других платформах??? (может я ошибаюсь...) QT Creator не предлагать - из идеологических и языковых соображений: хочу писать на Си (не Си++!!!), а для этого и подходит GTK+. P.S. Обожаю Gnu Emacs! Если это «+», и Gnu Emacs можно соединить с GTK+, то я буду счастлив, только скажите как? Другие варианты тоже принимаются))) (кроме QT Creator )



Последнее исправление: cetjs2 (всего исправлений: 1)

может я ошибаюсь...

Ошибаетесь, GTK+ является кроссплатформенным тулкитом. Просто не используйте виджетов GNOME.

AITap ★★★★★
()

Почему так категорично на Си ? Или это проект just for fun ? А сама идея достойная. Взрывать реактор можно будет ?

Medar ★★★★★
()
Ответ на: комментарий от anonymous

У вас инвалидность после дельфи,неизлечима.

Он просто привык к хорошему.

Можно попробовать кутикриатор, кроссплатформенно и можно мышкой формочки тягать. Правда будет С++.

PolarFox ★★★★★
()
Ответ на: комментарий от anonymous

Никогда не писал на Delphi и не собираюсь))) Но есть у меня грешок старый: MS Visual Studio)))

karlkorp
() автор топика
Ответ на: комментарий от Medar

На Си, потому что я этот язык люблю, уважаю, знаю, ценю за дух openSource))) Взрывать нельзя - поставлю защиту - эта программа для учёбы, для студентов специальности «Атомные Электрические Станции и Установки» - если они на программе привыкнут «взрывать» потом греха не оберёмся)))

karlkorp
() автор топика
Ответ на: комментарий от karlkorp

Да уж. А у нас в универе учили что чертеж болта можно начертить только в автокаде, причем записывали для студентов его вместе с папочкой «crack». Удачи вам в вашем благородном деле. Но функцию взрыва я бы оставил, для наглядности )

Medar ★★★★★
()

Численное моделирование все давно пишут на C++. Чистый C для этого дела подходит плохо, куда хуже фортрана.

Gnu Emacs можно соединить с GTK+

Для погроммирования на GTK достаточно любого текстового редактора и Glade. Для "соединения" формочек с кодом используется (или использовался, не в курсе, что там в GTK3) интерфейс gtkBuilder.

dmfd
()
Последнее исправление: dmfd (всего исправлений: 1)

Другие варианты тоже принимаются))) (кроме QT Creator )

Чего уж там... тогда Java/Swing (или SWT)

KennyMinigun ★★★★★
()

Еще один вылез из 90-х...

Пиши сервис на си,с вебинтерфейсом.

Гуи-вебинтерфейс,рабочая логика,раз нужна производительность-на Си.

А если ненужна производительность-пиши все на джаваскрипте,разнице со своим си непочувствуешь.

Тут еще студии выбирают...блин каменный век

anonymous
()
Ответ на: комментарий от dmfd

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

karlkorp
() автор топика
Ответ на: комментарий от dmfd

Скепсис - это хорошо, но я постараюсь - всё получится)))

karlkorp
() автор топика
Ответ на: комментарий от anonymous

Я понять не могу: почему люди, которые больше всех льют г..вно на тему, подписаны как anonymous-ы... Это теперь так круто?

karlkorp
() автор топика
Ответ на: комментарий от olibjerd

Ну да - Lisp, точнее Elisp знаю, чуть-чуть (в GNU Emacs приходится использовать). Почему Си - да просто потому что я этот язык в совершенстве знаю - как свой родной. Он удобен для меня, локоничен, красив, структурирован и бла-бла-бла... Честно! Я просто хочу писать на нём, просто хочу сделать большой инженерный проект на Си - что в этом такого плохого???

karlkorp
() автор топика

а что подразумевается под «моделированием работы ядерного ректора»? показать студентикам, как виуры на бщу суз-ами шевелят? или предполагаются какие-то прогнозные расчеты аз? или еще чего?

ananas ★★★★★
()
Ответ на: комментарий от karlkorp

Поверьте, любую мат. модель реально реализовать на Си.

Конечно можно, а ещё можно грести лопатами и копать грядки вёслами. Делиться опытом с жертвами blub-парадокса бесполезно, это ваше время, тратьте его как хотите.

dmfd
()
Последнее исправление: dmfd (всего исправлений: 1)
Ответ на: комментарий от karlkorp

Я понять не могу: почему люди, которые больше всех льют г..вно на тему,

Лают?Я вполне реально предложил,и как проще и лучше всего.Что не нравится,аргументы?

подписаны как anonymous-ы... Это теперь так круто?

Потомучто в модераторах сего ресурса-идиоты,которые питают личную неприязнь ко мне,банят в первую минуту после регистрации.Могу скан паспорта по почте выслать,в ответ на ваш естественно.

anonymous
()
Ответ на: комментарий от tailgunner

На каких ещё "сторонах"? Численная модель на C в любом случае будет содержать в себе глючную и недокументированную половину фортрана. Без шаблонов и перегрузки операторов преимущества pure C перед фортраном имеют отрицательный знак.

Большинство проектов, связанных с научными вычислениями, сейчас обычно начинают делать или переписывают на С++ + python. Но ОП, конечно, умнее авторов ROOT, hoomd-blue и LAMMPS, не мне его переубеждать.

dmfd
()
Ответ на: комментарий от dmfd

Делиться опытом с жертвами blub-парадокса бесполезно

Жертвы Blub-парадокса есть на обеих сторонах %)

На каких ещё «сторонах»?

На стороне юзеров Блаба и стороне юзеров анти-Блаба.

Численная модель на C в любом случае будет содержать в себе глючную и недокументированную половину фортрана

Фортрана IV, да?

Но ОП, конечно, умнее авторов ROOT, hoomd-blue и LAMMPS, не мне его переубеждать.

ОП ребенок. Его как раз можно попробовать переубедить (но, конечно, ты не обязан этого делать).

tailgunner ★★★★★
()
Ответ на: комментарий от ananas

Система расчёта АЗ + система управления основными системами первого контура.

karlkorp
() автор топика

Блин! Я просто задал вопрос!!!

Народ, я не собирался и не собираюсь создавать идеологические войны!!! Я задал крайне простой вопрос, просто вопрос, на который можно ПРОСТО ответить. Есть идея программы, есть выбранный язык программирования - Си, есть утилита инженеринга интерфейса - GTK+. Внимание, Вопрос: какой IDE+ к GTK+ привтитить, чтобы начать проект? В Вы тут начали меня убеждать в том, что это нужно присать на C++, что Си - фигня и бла-бла-бла... Нельзя взять и конкретно ответить на конкретный вопрос??? Большинство отписывается, Чтобы отписаться, а не чтобы ответить на вопрос - для чего собственно и создаются форумы. Я и без Вас прекрасно знаю, что большинство, пусть и профессиональных программистов, пишут такие проекты на С++ или java. Я прекрасно понимаю, что это будет проще, НО! Но я не большинство!!! Я сам буду писать, и это моя проблема, как я буду устраивать себе геморрой. Это мой геморрой - а от Вас, как от профессионалов, я надеюсь, услышать простой ответ на простой вопрос: GTK+ и IDE - помогите выбрать/найти для данного проекта.

karlkorp
() автор топика
Ответ на: Блин! Я просто задал вопрос!!! от karlkorp

Вопрос: какой IDE+ к GTK+ привтитить, чтобы начать проект?

Чтобы начать проект, его надо начать писать. На Си. Без морды.

Deleted
()

Anjuta

большое инженерное кросс-платформенное приложение, моделирующее работу ядерного ректора

Молодец, годнота. Люблю такое и желаю, чтобы полетело.

Deleted
()
Ответ на: комментарий от Medar

Взрывать реактор можно будет ?

«Пасхальное яйцо»)))

Deleted
()
Ответ на: Блин! Я просто задал вопрос!!! от karlkorp

Я задал крайне простой вопрос, просто вопрос, на который можно ПРОСТО ответить

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

vertexua ★★★★★
()
Ответ на: Блин! Я просто задал вопрос!!! от karlkorp

По теме:

IDE для Gtk нет, нет смысла. Просто используй Glade редактор, сохраняй XML, а потом загружай его с помощтью GtkBuilder, он входит в Gtk. Потом можно из него достать с помощью get_object все нужные обьекты и навесить на них любые коллбеки. А код можно редактировать в любой IDE.

Если будешь использовать С, то столкнешься с проблемой кучи танцев с бубном Automake, CMake и т.д. Проще действительно просто использовать Python, Ruby, JavaScript, это более адекватные решения именно для твоей задачи.

vertexua ★★★★★
()
Ответ на: комментарий от dmfd

На каких ещё «сторонах»? Численная модель на C в любом случае будет содержать в себе глючную и недокументированную половину фортрана. Без шаблонов и перегрузки операторов преимущества pure C перед фортраном имеют отрицательный знак.

переписывают на С++

Узнаю быдлокодеров-плюсовиков из 90х.

Deleted
()
Ответ на: комментарий от Deleted

Название конкретных программ я привёл, у каждой из них есть мэйлинг-листы. Не пропустите удивительный шанс назвать быдлокодерами их авторов непосредственно там! А мне, должен признаться, ваше мнение по этому вопросу не интересно, извините.

dmfd
()
Ответ на: комментарий от Medar

Взрывать реактор можно будет ?

А то как же. На си, да без сегфолтов.

dmfd
()
Ответ на: Блин! Я просто задал вопрос!!! от karlkorp

Блин! Я просто задал вопрос!!!

Да кого это волнует? Создал тему - тебе поотвечали.

Дальше она тебе не принадлежит, в какое русло повернет - не предопределено.
Угомони свой эгоцентризм, лучше повтори основый православия, что ли.

anonymous
()
Ответ на: Блин! Я просто задал вопрос!!! от karlkorp

если хочется четкого ответа - надо сначала научиться корректно формулировать вопросы. весь linux - по сути ide.

ananas ★★★★★
()

ядерного ректора

Не забудь потом написать к нему патчи в виде урановых деканов и плутониевых профессоров.

Ты какую-то чушь пишешь. Твой запрос читается так: «как мне скрестить текстовый редоктор и набор библиотек для построения интерфейсов». Так что молча запускай любимый emacs и пиши приложение.

P.S. Кажется, я догадываюсь, кто ты такой и с какой формулировкой уже банился.

anonymous
()
19 февраля 2014 г.

Рассматривал вариант Glade+Anjuta, но если я не ошибаюсь - это сработает только на Gnome DE и приложение уже не получиться кросс-платформенное, чёрт знает как это запускать на других платформах???

кросс-платформенное куда? учти что под венду проблемы с GTK3 (вообще не уверен, что оно работает), а под OSX проблемы с GTK2 (хуже поддержка ретины). так что лучше делать так, чтобы приложение компилялось и с тем, и с другим. я бы для кроссплатформенности взял другой тулкит. какой-нибудь wxWidgets. он вроде весит не очень много, и заточен под нативный look&feel. а то помнится Qt на макоси бандл до 70 метров раздувает (для сравнения, бандл с приложением на GTK3 весит около 10 метров). хотя если размер не играет большого значения — лучше взять таки Qt.

но если хочется именно C - то да, придется трахаться с GTK. очень не советую. GTK по большому счету прилично работает только в линухе, и только 2я версия. и то до поры пока HDPI мониторы не в ходу.

а, да, по поводу твоего вопроса, который я процитировал — если нужна поддержка нескольких версий GTK, то забудь про GLADE. он умеет только в 1 версию. разный формат XML. придется кодить UI вручную. или возьми мою версию glade2, она генерирует код совместимый с GTK2 и 3 (но не все фичи GTK поддерживает).

вот тут: https://github.com/Alexey-Yakovenko/deadbeef/tree/master/tools/glade

зы: тваюжмать снекропостил эпичненько.

waker ★★★★★
()
Последнее исправление: waker (всего исправлений: 1)

А вы случайно завод по производству велосипедных фар не планируете открывать, ЕВПОЧЯ?

anonymous
()

был glade чтоли

x4DA ★★★★★
()

Ядерные реакторы лучше моделировать на более безопасном языке, например на Хаскеле. Биндинг для Gtk имеется

yoghurt ★★★★★
()
Ответ на: комментарий от waker

зы: тваюжмать снекропостил эпичненьк

Спасибо ужику за это

yoghurt ★★★★★
()

тред не читал, tk предлагали?

silw ★★★★★
()
Ответ на: комментарий от karlkorp

Почему Си - да просто потому что я этот язык в совершенстве знаю - как свой родной. Он удобен для меня, локоничен

Родной не русский, да?

Можно быстро сделать GUI с glade + vala.

liaonau
()
Ответ на: комментарий от karlkorp

Лол, в Code:Blocks можно легко выбрать С. По крайней мере, в версии 10.05 и выше.

Кроме того, присоединяюсь к остальным - писать сходу полностью на чистом С большую систему как-то совсем неразумно. Запили высокий уровень на чем-то простом, вроде python, а ресурсоемкие места (очевидные и выловленные профилировщиком) на своей любимой сишке. А то будешь разводить в 100500 строк какую-нибудь банальщину, вызываемую раз в 100 лет. А еще не изобретай GSL хотя бы.

lu4nik ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.