Hacker News new | ask | show | jobs
by pjmlp 1119 days ago
So just like lots of Objective-C code, including the old NeXTSTEP Kits?
1 comments

Swift's protocols are an evolution of protocols in ObjC. They offer additional features to make them safer and easier to write.
I know both languages, did my learnings of Objective-C while porting code from NeXTSTEP into Windows 95, what additional features?
I won’t teach Swift here, but Google is your friend. You can start by studying all the languages differences with regards to extending existing protocols, and how optional protocol conformance and methods are handled. Swift in many ways (not just with protocols) is like a fix for many headaches that objc provided in these areas. It’s partly why Apple encourages “protocol oriented” programming in swift over “object oriented” because of how rich the feature set is compared to objc.
Which are basically another way to mix protocols and categories from Objective-C.

No need for Google, as mentioned, I know both languages.

As for protocols not being encouraged in Objective-C, I migth own the wrong NeXTSTEP manuals.

It does indeed sound like you have some very old documentation.

(as a sibling comment pointed out, swift protocols are typically used for things that in objc you would use inheritance)

Old enough to have enough Objective-C protocols and categories in action.

The kind of documentation that inspired Java authors.

https://cs.gmu.edu/~sean/stuff/java-objc.html

https://en.wikipedia.org/wiki/Portable_Distributed_Objects

https://en.wikipedia.org/wiki/Distributed_Objects_Everywhere