• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Frameworks and versioning
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Frameworks and versioning


  • Subject: Re: Frameworks and versioning
  • From: Robert Walker <email@hidden>
  • Date: Thu, 5 Jan 2006 12:23:11 -0500

I personally tend to agree with Arturo. Yes it does take more discipline during development, but I consider that part of my job as a developer. It's vital to ensure APIs don't break with changes and bug fixes. If changes to API are necessary deprecate the old method, and create a new one to support the API change. The trick is in learning to recognize when a change affects the API.

Taking a look at /System/Library/Frameworks and /Library/Frameworks you will see many frameworks written by Apple, and other software developers. These frameworks are shared among many different applications. Those that make up parts of the OS share it's version number with the OS. Those that are specific to a developer application tend to be controlled by that particular application vendor.

As WebObjects/Cocoa developers we should use this same approach. It seems to me the whole point of a "Framework" is to share its API with many applications. Otherwise, why separate code into a framework to begin with? (No intent to start a philosophical battle here. Just expressing my opinion.)

On Jan 5, 2006, at 11:21 AM, Arturo Perez wrote:

Tonny Staunsbrink wrote:
Hi All

I'm don't think there is a "right" answer on this issue. Embedding your frameworks solves the problem of breaking API or introducing bugs. On the other hand it makes it cumbersome to deploy bugfixes to frameworks (when multiple apps are using the frameworks). It's the same discussion as dynamic vs. static linking - the same pros and cons (well, almost) - and i think it's worth to note that dynamic linking is used alot.

I prefer to have my frameworks deployed seperately from the applications (due to the ease of deploying updates). The risk of breaking API should be a matter of developer discipline ;-) and sometimes biting the bullet (rebuilding and redeploying every app when some used API fetaure is completly removed).

Cheers
/Tonny


Personally, I've never liked the embedding of frameworks et al into an application (although I did once work with a group of developers that almost violently disagreed). I much prefer that all applications benefit from bugfixes and performance enhancements as soon as possible. It does require a bit of discipline to not break things but I think ensuring that apps get the right set of bugfixes etc is at least as much work. Of course, if your style is deploy- and-forget then embedding frameworks is definitely the right way to go.

I believe a healthy combination of CVS-log monitoring (read them daily and write good ones), JUnit et al, and black-box testing (JMeter, HTTPUnit, et al) can keep an application functioning properly in the face of frequently updated frameworks.

Just my 2p
-arturo

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40mac.com


This email sent to email@hidden

_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
  • Follow-Ups:
    • Re: Frameworks and versioning
      • From: Chuck Hill <email@hidden>
    • Re: Frameworks and versioning
      • From: Lachlan Deck <email@hidden>
References: 
 >Frameworks and versioning (From: Lachlan Deck <email@hidden>)
 >Re: Frameworks and versioning (From: Chuck Hill <email@hidden>)
 >Re: Frameworks and versioning (From: Lachlan Deck <email@hidden>)
 >Re: Frameworks and versioning (From: Chuck Hill <email@hidden>)
 >Re: Frameworks and versioning (From: Tonny Staunsbrink <email@hidden>)
 >Re: Frameworks and versioning (From: Arturo Perez <email@hidden>)

  • Prev by Date: WOToOneRelationship and "dirty" editing context
  • Next by Date: Re: Frameworks and versioning
  • Previous by thread: Re: Frameworks and versioning
  • Next by thread: Re: Frameworks and versioning
  • Index(es):
    • Date
    • Thread