[swift-evolution] [Proposal draff] abstract classes and methods
david.screve at dlta-studio.com
Sat Jan 9 15:09:22 CST 2016
I’m not sure that we should remove required initializers because they handle a different semantic : a required initializer has a default implementation whereas abstract initializer does not.
But I agree that required keyword is less useful if we introduce the abstract concept and I admit I do not have any real use case of this.
I think this should be introduced in another proposal where we also might discuss about the extensibility of required keyword to any method in classes.
> Le 9 janv. 2016 à 20:02, Chris Lattner <clattner at apple.com> a écrit :
>> On Jan 7, 2016, at 9:55 AM, David Scrève via swift-evolution <swift-evolution at swift.org> wrote:
>> # Abstract classes and methods
>> * Author(s): David Scrève
>> ## Introduction
>> When developing framework and reusable, we need to develop classes that are partially
>> abstract with partial implementation. Protocol and protocol extensions provide this, but
>> they cannot have attributes as classes have.
>> A partial class combines the behavior of a class with the requirement of implementing methods
>> in inherited class like protocols.
> I tend to agree that adding abstract methods (and classes) is the right thing to do. OOP is an important part of Swift, and is a great way for modeling certain classes of problems.
> I wonder if we could simplify our initializer model if we had this, for example, could “required" initializers go away?
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 4233 bytes
Desc: not available
More information about the swift-evolution