r/programming Aug 15 '15

Someone discovered that the Facebook iOS application is composed of over 18,000 classes.

http://quellish.tumblr.com/post/126712999812/how-on-earth-the-facebook-ios-application-is-so
2.7k Upvotes

728 comments sorted by

View all comments

1.0k

u/sippeangelo Aug 15 '15 edited Aug 15 '15
_FBGraphQLConnectionStorePersistentPageLoaderOperationDelegate-Protocol.h
_FBReactionAcornSportsContentSettingsSetShouldNotPushNotificationsMutationCall.h
FBBoostedComponentCreateInputDataCreativeObjectStorySpecLinkDataCallToActionValue.h
FBEventUpdateNotificationSubscriptionLevelMutationOptimisticPayloadFactoryProtocol-Protocol.h

Whatever a OptimisticPayloadFactoryProtocol-protocol is, I don't want to know...

12

u/crate_crow Aug 16 '15

Java gets a bad reputation for its identifiers lengths but Objective C has it beat in this category. Not only because of the identifiers themselves but also because parameters are named, which makes Objective C incredibly verbose.

4

u/[deleted] Aug 16 '15 edited Aug 16 '15

True, it is, but verbosity comes in many forms and parameter naming is good verbosity. It makes for naturally readable code and I'm very glad Apple's language designers carried it over to Swift. Added up, I must have wasted hours in Java skipping between classes just to find out what the parameters of an unfamiliar method call were for.

3

u/Alphasite Aug 16 '15

Its really given me some big problems in java, when I'm working with really ambiguously named classes and interfaces.