Advertise here




Advertise here

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

BTIKit

BrianSlickBrianSlick Treadmill Desk NinjaPosts: 10,687 @ @ @ @ @ @ @ @
edited May 2014 in Open Source Code
I have set up a new repository on GitHub, with some code that I'm calling BTIKit:

BTIKit

If you are familiar with my previous library, BTIConcepts, this will look pretty similar. BTIConcepts is officially dead, I'll be using BTIKit going forward. Some highlights of the differences:

- Anything Core Data related has been moved to a different library, BTICoreDataKit. I got tired of needing to add the Core Data library to non-Core Data apps just to use some of the other stuff.
- Nicely documented header files
- Unit tests galore
- Cocoapods support
- Fully modernized: no more private method declarations; now using modern NS_ENUM syntax; discovered NS_REQUIRES_SUPER; misc other things that no longer cause this code to look like it is a year or two (or more) old.
- BTIErrorCategories has been removed. The methods have been moved to class-specific categories, just like normal.
- BTINotificationHelper has been renamed to BTINotificationInfo, has had some methods renamed to be shorter, and has gained the ability to deal with block responders.
- The suite of BTITableRowInfo/BTITableSectionInfo/BTITableContentsManager has been revamped for clarity. Same concepts, but a little cleaner, and some more capabilities.
- BTIViewController gains new shortcut methods for working with BTINotificationInfo.
- UITableViewCell gains some category methods for nib loading.

I'll write more instructions about how this code is used soon, but for now the sample project and the older description of BTIConcepts should be enough to get you started. Enjoy!


Edit: You can read about the notification stuff here.
Post edited by BrianSlick on
Professional iOS App Development. Available for hire.
BriTer Ideas LLC - WWW | Facebook | Twitter | LinkedIn

BTIKit | BTICoreDataKit | SlickShopper 2 | Leave a PayPal donation

Replies

  • givensurgivensur On the Information SuperhighwayPosts: 541 @ @ @
    I've never seen anyone postfix their category method names before. I really like that, and think I'm going to give that a shot.

    It seems like it'd make for easier to read code than prefixing does.
    I make cake apps.
  • BrianSlickBrianSlick Treadmill Desk Ninja Posts: 10,687 @ @ @ @ @ @ @ @
    Saw it as a tip a couple years ago. Key benefit is that you don't have to know you're dealing with a category method from the get-go. Start typing like normal, code completion does the rest. I also think the prefix_methodName style is seriously ugly.
    Professional iOS App Development. Available for hire.
    BriTer Ideas LLC - WWW | Facebook | Twitter | LinkedIn

    BTIKit | BTICoreDataKit | SlickShopper 2 | Leave a PayPal donation
  • TanderTander South AfricaPosts: 243 @ @
    Brian, I've just glimpse at the code in the demo project of BTIKit. Very nice work and very impressive. I wish I knew half the stuff you do, when it comes to coding and your style. I also see you've got a lot of tests as well. Something I have been meaning to get into and start using. Do you have any good resources that I could learn more from with regards to creating test cases and using them effectively?

    I feel they add value to a project and enough value to make it worth my while learning how to do it properly.

    Also - do you know if it is difficult to implement tests in an existing project or is that too difficult?

    I'm going to go through your code some more, I find it really interesting and a lot of stuff I have never seen before. Clearly, I have nobly just scratched the surface of Objective-C and I would love to dive deeper into it.

    Thank you for making this code open source!
  • BrianSlickBrianSlick Treadmill Desk Ninja Posts: 10,687 @ @ @ @ @ @ @ @
    Tander wrote: »
    Do you have any good resources that I could learn more from with regards to creating test cases and using them effectively?

    Test-Driven iOS Development
    Tander wrote: »
    Also - do you know if it is difficult to implement tests in an existing project or is that too difficult?

    You can add them at any time. The vast majority of my code here existed long before I knew anything about tests.
    Professional iOS App Development. Available for hire.
    BriTer Ideas LLC - WWW | Facebook | Twitter | LinkedIn

    BTIKit | BTICoreDataKit | SlickShopper 2 | Leave a PayPal donation
  • BrianSlickBrianSlick Treadmill Desk Ninja Posts: 10,687 @ @ @ @ @ @ @ @
    Minor update.

    - Added collection view equivalents of most of the table view stuff
    - Added some shortcuts for registering nibs with table/collection views, and dequeuing cells/views
    Professional iOS App Development. Available for hire.
    BriTer Ideas LLC - WWW | Facebook | Twitter | LinkedIn

    BTIKit | BTICoreDataKit | SlickShopper 2 | Leave a PayPal donation
Sign In or Register to comment.