169 похожих чатов

Библиотека для работы с базой данных реализует базовый класс в

котором содержатся методы работы с бд
Например addRow - добавить строку в бд
Эти методы внутри используют метаданные - описания полей таблицы

Сами метаданные специфичны для всего класса в целом - например свои метаданные есть у Table1, другие метаданные есть у Table2

Поскольку сами метаданные не зависят от экземпляра класса, а являются признаком только самого класса, то было бы логично хранить их в виде static свойств.

Но если я это сделаю - то BaseClass не сможет к ним обращаться.

Как вариант - завести MetaDataClass в котором хранить метаданные для конкретной таблицы в виде объекта - (разные для Table1 и Table2)
И внутри экземпляра класса хранить ссылку на типа refToMetada на MetaDataClass

Как бы Вы решили вопрос хранения чего то специфичного для наследующего класса (всего класса в целом) - но так чтобы базовый класс смог получить к этому доступ ?

https://www.typescriptlang.org/play?ssl=2&ssc=5&pln=15&pc=165#code/PQKgUABFGIgggcIIRhBDcIHQfCCCEQQrCCC4QQDCAUBYQJQeRAJABEFwQ0GkQCQQRAIFdB2EFUE4QQ3QXhAvrBREHKZcKZoGEQTOkYtUgJhBqHbElx0GMiNgyoyqQDwg9VAUxlAbCC50dUjokHaFKuloMEBSNEC4ILkD8IGThWyEAEMAEyCAJQB7AHcIAFpCVCYZOHRAGRB6dG1sUQg1Z1coQFoQdDgIK3QbHK5RDJK4Ok9UJBSxQDkQSTLcAm5eTFiIVE867jhSBqRMDnRKFEAxEGowfIhAQhBcHRKOrp5qXvrMGbhAERA4QHEQXkISHLpMQGYQVHUlFXw1GcwkXT6uLx8-ehlUdYknW62wgmDoqQg2QAKgEAEYAGwApgBGAA0hDIomucF6G2BvTBEOhcKRACYFtAIIB8EFQdA0TSy9FWAKmmx6EC4vWYuCSFkkGAggFkQbDMTA6TwkCj3ZR0XDo-DEGQkNoWCDeODMT4aPTlBl3WU6VC3aWPdHlRjUA5vC0QN7Y053PgULjJNJwARqJKGCAAZwALgE-QBLADGv3Y4JkADoKe47mCUBBSILzXRDEoWn1zQAhAI+xEAYXheZ9HJ2huMEnUHN8-QQFEAkiBmFIWGOLQBYILhsDlcD5uJI4tyZISSgBZREBgAigYCRZLOXUmm0eidwwheK2vSIpA0XGwZAkXHYECmyDgcwXXt6CUAUiA4KZ9AAUFE1IO3EBhCJREBKn7JAEpFkADBBKmqHwhRFMUJWIKVFBlfBVxdCEVGoJBGU+E84E8fAACdEQAMyhcJxwDIIAg5fASICacAznH1S1jKBO27BBaEAJBBbEwQAJEDgRM-m8WkIEQzAXVIY4bjuVNPD2Q4TiPY130+OhxgIUQWgbCSTVlCBHxkK5jTgx4FxeN4dH-D5JK7CBjnKVipFYOQFAeBg6ENa41UaURjldasU10bICFpdBRE8CAAH4wBAYAFhDYt6IgXN8zo0sAG9Fnw+EgiomjyIAXggFKADsAgAW0RCAAC4IAAciDIJqtRP0AE8AAdEQq6rCoAVxK2FERw6qAF9FmCMIokfMiA0qiBQkRENwhwoIAB5-RwoNCoAc1RLrCoAa0KqJCoAPnMtLKUpYBgA8pAvJ8tkQQ1CAMqyidqJnc5SCUlS1Ibd0tNkH8PLsDBm3oGs1kWSl5sKn1wiRKN4XCDaJpnf8AG5FmG4awFi+c-2-REAA8-URQqglLRLCzi1LFmh1aupDP0Fp006fS6tqcMfdHscpdagz9bKZy5grIegP0AAsgx9KNnsFqb8qK0ryqq6rnuRBrmrajrut6-qhsxsBsdx+L8dJCAiZJsmKbzKn5zO6A6b9HCGaZnCWYKtmOa5tGeegPmBdenLhft86IAlqWZcyuW8oK4qyum6rgz9JENda9rqtW9aNv1yksaAA

2 ответов

20 просмотров

Ты орм что ли свой пишешь? )

https://www.typescriptlang.org/play?#code/MYGwhgzhAECC0G8BQ1oQC5nQS2NAtgKabQC8i06AngA6EBc0A5AEaSFPQC+K0vAZgHtBACgCUiXqmCCAdhEEhCAOhCCA5iIAG+KgWJgAJljDRsELQBpKAC3PKZ89ACcArsHSDnyopjG8eHiRQSBgAIWhCAA90QllDGHhkVAwsXH0ScgRKWgZmCFc6ZyZrMHkAd0JnRgAWACZuJCDHDGhTcllCcrhxJDBlIVF-YLlWljJoTu6w3pYB4XEgA

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта