LINUX.ORG.RU

Пишу новую библиотеку


0

1

Решил написать свою универсальную библеотеку на Си подобную glib. Она пока еще не готова, но многое уже есть. Может кому-то будет интересно, а может кто и предложит что :)

http://programming64.blogspot.com/ http://sourceforge.net/projects/csnippets/

bggggg
че тут еще сказать :)

Jetty ★★★★★
()

>csnippets

snippets

Спасибо, а я забыл как это слово называется. Не то code chunks, не то code slices.

По теме - нахрена? Тебе чем-то glib не устраивает?

creepnee
()

что конкретно тебя не устраивает в glib?

какие возможности аналогичные glib будут в твоёй библиотеке?

какие возможности, которых нет в glib будут в твоей библиотеке?

насколько она будет совместима с glib, т.к. на неё завязаны многие программы, поэтому новая библиотека в случае несовместимости врятли будет нужна

qnikst ★★★★★
()

Да ты из будущего? Тарбол с кодом так точно из завтра.

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

Сорри за ляпы

Сорри за ляпы, обещаю исправиться

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

Для начала неплохо бы, чтобы автор понимал, чего именно ему в glib не нравится, если уж мотивация к созданию библиотеки звучит как «как glib, только лучше». Поэтому я предлагаю сперва хотя бы озвучить список различий с glib.

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

> 24

fcplm

Тогда вопрос: зачем пишешь?

Не, ну наверное интересно реализовать:

- реализация контейнера map/multimap set/multiset как в С++ ( возможно на основе двоичных деревьев );
- реализация векторов;
- реализация таблиц
- разнообразные функции для int/unsigned
- реализации строк;
- эфективное управление динамической памятью.

Чисто для себя. Но стоит ли делать отдельную библиотеку для этого?

vladimir-vg ★★
()
Ответ на: комментарий от peter_t

в данном изложении это звучит необоснованно. Объяснись, чем реализация двоичных деревьев в glib плоха?

2). реализация хранилищ далеко не единственная возможность glib, так что продолжай писать недостатки, из-за которых требуется твоя библиотека.

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

я понимаю что это далеко не единственная возможность в glib. Я ее пишу скорее для себя, потому что не нашел подходящей библеотеки. Лучше предложи альтеранативу glib.

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

я не вижу необходимости в альтернативах glib. Напр недавно мне нужно было использовать hashmap на сях и я решал вопрос, писать велосипед самому или взять какую-либо из реализаций, при том что програмка очень маленькая. В итоге взял glib, потом не пожалел, т.к. из коробки получил, возможность подключения dbus, включения доп процедур в главный цикл программы, «т.н. ООП». P.S. (имхо) Возможностей у glib море, и писать замену им большого смысла нет. Можно искать конкретный инструмент, для более успешного решения конкретной задачи. В твоём случае binary-tree. Таким образом ты должен понять, что тебя не устраивает в текущей реализации, и искать, а есть ли готовые устраивающие тебя. И задача должна формулироваться как библиотека хранилищ данных, а не замена glib.

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

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

Лучше glib может быть только glib версии посвежее...

Присоединяюсь к «непонимантам» причин старта нового проекта. Есть ли кратенький обзор будущих возможностей (или план развития проекта)? Судя по выложенным тарболлам, проекту два дня от роду. Рановато как-то для присоединения других девелоперов - нет ещё ни «скелета» проекта, ни workflow, ни плана milestones... Как вместе разрабы будут клепать не «толкаясь локтями»? К чему будут стремиться? Какие фишки им надо реализовать? Ответ «объясню по скайпу желающим» не правильный - надо объяснять в виде подробно расписанного плана действий.

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

я ж на примере своей программы описал, чем использование glib мне помогло. А BBT в glib тоже же есть (я их не использовал) потому не могу сказать, что они чем-либо плохие.

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

не пойму зачем ты мне хочешь доказать мол что в glib есть все что нужно. Посмотри реализацию про то что я писал и станет понятно.

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

> if( p == NULL ) abort();

жесткий стиль.. уважаю :D

vector получился скучным лучше переименовать в simple_vector т.к. нет предвыделения памяти, нет initor/deinitor, тоже самое со всеми контейнерами

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

abort() это времменное решение. а зачем вектору нужны конструктор, деструктор ? если объясните то возможно доработаю.

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

> это времменное решение

нет ничего более постоянного чем временные решения

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

если объясните то возможно доработаю

не стоит утруждаться у меня уже есть :D

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

Согласен, в двоичные деревья нужно добавить но зачем в вектор ? я действую по принципу лезвия Оккама пока не понадобилось - не реализую. пока моя поделка в разработке, я много раз ее буду переделывать. P.S. к стати вектор с предвидилением.

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

Никогда не пойму таких людей.
1)Писать «подобную», а даже не «аналогичную» библиотеку смысла не имеет.
2)Кроме тебя она никому не нужна.
3)При работе с ней (вместо glib) ты только будет отлавливать баги в библиотеке => упадет производительность твоего труда.
4)Прокачивать «скилл программиста» можно на более интересных задачах.
5)Зачем тратить свое время на то, чтобы написать дерьмовый аналог того, что ,мягко скажем, неплохо написано и поддерживается сообществом?

Dikar ★★
()

Не слущай ты этих идиотов. Больше либ, хороших и разных.

Если бы такими же идиотами как и многие комментирующие тут были:

а) Работники гугла: а зачем нам велосипед, есть же corba, то не было бы protbuf

б) Разработчкики debian: а зачем нам велосипед, есть же слака, не было бы дебиана

г) Сами знаете кто: зачем велосипед, есть же minix, не было бы линукса.

д) Дальше лень придумывать, но я думаю идея ясна.

dizza ★★★★★
()

про кросс платформенность можна пока не заикаться -> не нужно :)..... мне )

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

Все эти люди понимали что, зачем и почему делали. Можно ли то же самое сказать про ТС?

rival ★★
()

Уважаемый Денис, перелогиньтесь, пожалуйста.

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

ну мы ведь это уже проходили. Там не будет скучных обоев и будет антивирус попова^W^W антивирус peter_t

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

dizza спасибо за поддержку !! во что превратился ЛОР, сколько дурачков которые не осилили посмотреть исходники, грош вам цена. Я запослил это сообщение не для обсуждения целесообразности, а для поиска единомышлиников.

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

Дениска, ты?

Ололопыщьпыщь, что тут еще скажешь.

Zhbert ★★★★★
()

blib на подходе

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