编码和编码的通用框架解码
我正在开发一个使用数据库的应用程序。
在将值存储到数据库之前,我对数据进行一些编码。在检索数据时,我必须进行反向编码才能恢复原始数据。
为此,我创建了一个类,其中包含保存值的各种字段以及一种用于编码和编码的方法。一种解码方法。
根据我的说法,这种编码方法的问题在于,将来如果我使用某种不同的编码方法,那么我将不得不同时编写编码和编码方法。解码方法。
编码&解码方法是将 3D 数组转换为字符串列表的非常简单的转换。
任何人都可以建议我解决同一问题的任何更好的方法吗???
I'm developing an application which uses database.
Before storing the values into database, I'm doing some encoding on data. While Retriving the data, I've to do reverse encoding to get back the original data.
For this purpose, I've created one class with various fields holding value and one method for encoding & one method for decoding.
The problem with this kind of encoding method, according to me, is that in the future, if I'm using some different method of encoding then I'll have to write both encoding & Decoding method.
The encoding & Decoding methods are very much simple transformation converting 3D array into a list of Strings..
Can any one suggest me any better way of same problem ???
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
是的 - 使用 SRP 进行抽象。
您将编码器和解码器抽象为不同的接口。然后在数据持有者类中使用组合来引用编码器/解码器。如果您使用DI,那么编码器/解码器将被注入,而无需数据持有者了解实际执行情况。或者拥有一个服务,该服务将获取数据持有者实例并根据该服务附加的实现(再次使用 DI 完成)应用编码器/解码器。
希望有帮助。
Yes - employ SRP with abstraction.
You abstract away the encoder and decoder into a different interface. Then use composition in your data holder class to reference to Encoder/Decoder. If you are using DI then the encoder/decoder would be injected w/o data holder having knowledge of the actual implementation. Or have a service that would take data holder instance and apply encoder/decoder based on the implentation attached (done again using DI) with that service.
Hope that helps.