Articles of дизайн

Внедрение HashMap

Как начать создавать Hashmap в C с нуля? Какими будут параметры, которые будут приняты во внимание, и как вы проверите hash-карту относительно того, насколько она хороша? Как и в том, что было бы тестовыми примерами, которые вам нужно выполнить, прежде чем вы скажете, что ваша hash-карта завершена.

Почему полиморфные вызовы (например, слушатель в каутах) имеют анонимные аргументы, а не непрозрачные указатели и функции доступа?

Я смотрю на техническую ноту каут , но об этом конкретно не говорится . Это скорее общий дизайн API. Объем слушателя: static int MyListener( kauth_cred_t credential, void * idata, kauth_action_t action, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3 ); arg0 … arg3 зависят от области действия (т.е. контекста). Процитировать документацию: Смысл остальных параметров зависит […]

Проектирование с использованием fork () и TCP-соединения в C

У меня есть вопрос относительно того, как создать следующую систему: Моя система состоит из нескольких клиентов, которые слушают среду. Когда порог звука нарушен, они отправляют свою информацию на сервер, у которого есть дети, которые прослушивают каждое соединение. Для выполнения необходимых расчетов серверу требуется информация от всех клиентов. В настоящее время сервер работает в UNIX и […]

C API-дизайн: Кто должен выделять?

Каков надлежащий / предпочтительный способ выделения памяти в C API? Сначала я вижу два варианта: 1) Позвольте вызывающему абоненту выполнять всю (внешнюю) обработку памяти: myStruct *s = malloc(sizeof(s)); myStruct_init(s); myStruct_foo(s); myStruct_destroy(s); free(s); Функции _init и _destroy необходимы, так как внутри может быть выделено больше памяти, и ее нужно где-то обрабатывать. Это имеет недостаток в том, […]

Ресурсы для обучения C дизайн программы

Исходя из фона OO (C # / java) Я ищу ресурсы, чтобы научиться хорошо разрабатывать чистые программы. Пока я знаком с синтаксисом C, и я могу писать небольшие программы, я не уверен в том, что нужно применять для более крупных приложений и какие методы использовать. Все, что вы, ребята, можете рекомендовать. EDIT: Я рад полностью […]

Лучший подход для структурного polymorphismа в C

Я пишу простой двухмерный векторный объект. Он будет иметь компоненты x и y, а также длину, перекрестное произведение и т. Д. Дело в том, что я хочу, чтобы структура имела много возможных типов (char, int, float, double и т. Д.). Мне было интересно, какой будет лучший выбор, дизайн мудрый, чтобы взаимодействовать с объектом? Вот что […]

UML для языка программирования C

UML чаще всего используется для моделирования системы с использованием C ++. В моих проектах C – это язык реализации. Я ищу ресурсы для UML-страtagsй, которые применимы для C. Я хочу использовать UML во время проектирования и представлять различные аспекты системы.

Каков наилучший способ планирования и организации разработки приложения в C?

Мне приходилось только несколько раз вводить код в C, и, похоже, каждый раз, когда я это делаю, это становится неуправляемым зверем. Я проделал большую часть своих программ на C # и .Net, поэтому я очень привык к архитектуре стиля classа, но я не могу понять организацию в приложениях C. Должен ли я помещать функции, связанные […]