Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A thought about api design #2

Open
btiernay opened this issue May 24, 2013 · 5 comments
Open

A thought about api design #2

btiernay opened this issue May 24, 2013 · 5 comments

Comments

@btiernay
Copy link

I'm not sure if you are familiar with Jongo, which makes working with MongoDB in Java more like working in the mongo shell, but you should take a look if not:

http://jongo.org/

What I like about it is that it doesn't try to hide the native look and feel of the query language and is very easy to work with. Also, it has great support for Jackson which is key in Java when working with JSON.

Anyways, you may be able to grok a few ideas from their design.

Cheers

@al3xandru
Copy link
Owner

Thanks @btiernay. I need to look into it, but at the first glance there seem to be quite a bit of string parsing/interpolation being used in jongo.

@btiernay
Copy link
Author

Depending on your perspective that may be a good or a bad thing. Sql is the same way and there is something to be said for not abstracting it too much (eg Hibernate criteria api). I thinm Jongo has done a good job at balancing typesafety with expressiveness and ease of use. Just my 2c.

Cheers

@btiernay
Copy link
Author

Btw, why aren't YOU using testng in your code? :)

@al3xandru
Copy link
Owner

  1. My thoughts right now is that the first version should be API-centric. Adding a porcelain API on top of that would be easier.
  2. I wanted to see how far can I get with JUnit. Parameterizing tests is still weak, so I'll probably go back to TestNG ;-)

@btiernay
Copy link
Author

  1. Fair point
  2. No excuse ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants