Да, неприятные ощущения, я не так давно тоже переводил статью довольно крупную и перед самым нажатием «Опубликовать» решил проверить не появилась ли она уже, и конечно же появилась, всего на несколько часов раньше )
Кстати, а что скажете о качестве перевода? А то мне тут пишут, что все очень плохо, например что rant неприлично переводить как «напыщенная речь».
вы предлагаете подход database-first, когда база данных служит источником схемы. По идее, это очень трешовый подход связанный с большим количеством проблем и рассинхронизации.
Мне кажется на ООП этот код мог выглядеть немного подругому, например:
new Машина_С_Пассажирами(машина, [коля, вася, петя])
А где-то в недрах класса «Машина_С_Пассажирами» должна быть проверка на открыть дверей в объекте «машина» (ну или если абстрактно — вообще на доступность посадки).
Классная статья, спасибо! Правда, увидев название, я подумал что автор статьи (он же, как я понял, спикер на прошедшем РИТ++) расскажет про трудности подготовки доклада и самого выступления, как он доделывал последние слайды в последнюю ночь и пр. )
что все так бояться скейлить базу я не пойму, ведь это должно быть заложено в архитектуре проекта, возможность расширяться и переезжать на другие технологии, а не затачивать весь проект под конкретное решение, разве нет?
Не поспоришь, но много БД были спроектированы и разработаны десятки лет назад, когда всех этих модных слов еще не было (а если были, то не так широко распространены как сейчас). А данные в таких БД составляют оргомную ценность. Вот и приходится работать с такими динозаврами.
Я считаю, что в нынешних реалиях идея БД, как чуть ли не центрального звена, вокруг которого строится остальное приложение, себя изрядно изжила.
Согласен, но статья вроде этого и не утверждает.
Идея в том, что объектная модель живет и развивается отдельно, а модель БД отдельно, и где-то они встречаются.
Аналогично я как понял из статьи что аналогичного функционала нет и в java ORM-ках.
Почему же, Hibernate умеет.
Еще есть всякие интересные штуки (https://github.com/perseas/Pyrseas и github.com/CourseOrchestra/2bass), которые позволяют выгрузить в какой либо формат, подправить там что нужно, а потом эта штука найдет изменения и сгенерит нужные alter'ы.
Кстати, а что скажете о качестве перевода? А то мне тут пишут, что все очень плохо, например что rant неприлично переводить как «напыщенная речь».
Отнюдь — habr.com/post/413597
Т.е. ребята из ISO и ANSI с 83-го года работают в пустую?
Был у меня как-то разговор на эту тему https://twitter.com/GraminMaksim/status/1034745469413609472?s=19
А где-то в недрах класса «Машина_С_Пассажирами» должна быть проверка на открыть дверей в объекте «машина» (ну или если абстрактно — вообще на доступность посадки).
А чем не подошли такие тулы как schemacrawler или schemaspy? Они и доки формируют и шаблоны поддерживают и даже рисуют диаграммы.
Спасибо за полезную статью. Если не секрет, какая именно задача решалась? И ещё — не было мыслей выложить код на github/gitlab ?
Не поспоришь, но много БД были спроектированы и разработаны десятки лет назад, когда всех этих модных слов еще не было (а если были, то не так широко распространены как сейчас). А данные в таких БД составляют оргомную ценность. Вот и приходится работать с такими динозаврами.
Согласен, но статья вроде этого и не утверждает.
Идея в том, что объектная модель живет и развивается отдельно, а модель БД отдельно, и где-то они встречаются.
Почему же, Hibernate умеет.
Еще есть всякие интересные штуки (https://github.com/perseas/Pyrseas и github.com/CourseOrchestra/2bass), которые позволяют выгрузить в какой либо формат, подправить там что нужно, а потом эта штука найдет изменения и сгенерит нужные alter'ы.