K
klizardin
Привет all.
Много разговоров когдато было о патернах программирования, но как результат прочитанных книжек, каких-то нужных именно тебе патернов в книге не встретишь, иногода даже и не понятно зачем тот или иной патерн.
Предлагаю кидать в данную ноду задачи с которыми сталкивались в ходе реализации практических проектов, в целях образования студентов, я был бы когда-то не против порешать задачки, с которыми в дальнейшем встречусь, да в поле будет меньше граблей.
И так задача.
Допустим реализованно некоторое сохранение данных на диск. Данные это некоторые структуры, и указатели на эти структуры. Но данные имеют желание когда нибуть удаляться, нужно сообщать о валидности или не валидности указателя на данные. Нужент класс или другая реализация указателя на данные. Допустим как то реализованна сериализация данных. Надо сохранять указатели на данные, дополнительные накладки, то что данные при загрузке могут не загрузиться т.е. и здесь возникает проблема с валидностью указателей. Да а сами указатели могут работать в многопоточной обстановке, так что очень полезно получив указатель залочить его и потом чтобы он автоматически разлочился. (кто то будет возражать против автоматического способа разлочивания, но есть стили написания работующего кода, при взаимодействии с которым программист может ошибаться и эти ошибки прощаются, да и зачем есть конструкторы и деструкторы)
И так нужны класс указателя (если C++ + templates, так уже сделано, но может есть и другие варианты) который знает что такое валидность. Также его нужно научить сохраняться и подумать какой подход при загрузке сохранении наилучший с точки зрения, сразу загрузить валидный указатель либо отложить иниуциализацию указателя до первого обращения. И нужно же реализовать мультипоточную поддержку для указателей на данные.
все.
Очень полезно думать при решении о том как сделать возможность совершения программистом ошибки при использовании данного темплейта минимальным.
Много разговоров когдато было о патернах программирования, но как результат прочитанных книжек, каких-то нужных именно тебе патернов в книге не встретишь, иногода даже и не понятно зачем тот или иной патерн.
Предлагаю кидать в данную ноду задачи с которыми сталкивались в ходе реализации практических проектов, в целях образования студентов, я был бы когда-то не против порешать задачки, с которыми в дальнейшем встречусь, да в поле будет меньше граблей.
И так задача.
Допустим реализованно некоторое сохранение данных на диск. Данные это некоторые структуры, и указатели на эти структуры. Но данные имеют желание когда нибуть удаляться, нужно сообщать о валидности или не валидности указателя на данные. Нужент класс или другая реализация указателя на данные. Допустим как то реализованна сериализация данных. Надо сохранять указатели на данные, дополнительные накладки, то что данные при загрузке могут не загрузиться т.е. и здесь возникает проблема с валидностью указателей. Да а сами указатели могут работать в многопоточной обстановке, так что очень полезно получив указатель залочить его и потом чтобы он автоматически разлочился. (кто то будет возражать против автоматического способа разлочивания, но есть стили написания работующего кода, при взаимодействии с которым программист может ошибаться и эти ошибки прощаются, да и зачем есть конструкторы и деструкторы)
И так нужны класс указателя (если C++ + templates, так уже сделано, но может есть и другие варианты) который знает что такое валидность. Также его нужно научить сохраняться и подумать какой подход при загрузке сохранении наилучший с точки зрения, сразу загрузить валидный указатель либо отложить иниуциализацию указателя до первого обращения. И нужно же реализовать мультипоточную поддержку для указателей на данные.
все.
Очень полезно думать при решении о том как сделать возможность совершения программистом ошибки при использовании данного темплейта минимальным.