As a new Objective-C developer (just fiddling around with it), I&#39;ve been thinking of a project to get my hands dirty with. I&#39;ve been using RabbitMQ for some time in my Ruby projects and really enjoy using it, and the AMQP protocol should be fairly simple to grok and work with.<div>
<br></div><div>Because of this, I&#39;m currently looking to start building an Objective-C based client library as a pet project to get me actually working in the language.</div><div><br></div><div>I&#39;m thinking of using the experimental C language client code to power the functionality and giving it a nice Obj-C DSL and handling everything through a NSNotificationCenter to create an evented interface (similar to the EventMachine Ruby AMQP library I&#39;m used to working with). This is the goal for now, anyhow.</div>
<div><br></div><div>Being still very new to the language, and certainly being unfamiliar with the idiosyncrasies of developing libraries for Obj-C, I&#39;m looking for input, support, and contributions for this endeavor from experts and enthusiasts with strong opinions and/or time.</div>
<div><br></div><div>Let me stress my lack of exposure to Obj-C (nor have I done anything significant in C/C++ or any strongly typed, compiled language in quite some time). This means I&#39;m currently asking the following questions (as noob as they may be):</div>
<div><br></div><div>1. How do I integrate the C library into this Obj-C library?</div><div>2. How do I write a distributable, clean Obj-C library?</div><div>3. Is an NSNotificationCenter-based implementation a good approach for an evented AMQP library?</div>
<div>4. How do I mock objects in Obj-C (to not require an instance of RabbitMQ to be running for tests)?</div><div>5. Should I just write this from scratch, including XML parsing et al?</div><div>6. What does a good Obj-C DSL look like?</div>
<div>7. Why would I start with a significant library to get familiar with the language?</div><div><br></div><div>Fair warning, I&#39;m a Ruby developer, mainly building web applications in Rails.</div><div><br></div><div>
Looking forward to hearing from you, and hope to get something worthwhile out of this.</div><div><br></div><div>Matt</div><div><br></div><div><br clear="all"><br>-- <br>Matt Todd<br>Highgroove Studios<br><a href="http://www.highgroove.com">www.highgroove.com</a><br>
cell: 404-314-2612<br>blog: <a href="http://maraby.org">maraby.org</a><br><br>Scout - Web Monitoring and Reporting Software<br><a href="http://www.scoutapp.com">www.scoutapp.com</a><br>
</div>