Тёмный
ECOOP !
ECOOP !
ECOOP !
Подписаться
Комментарии
@SpiritVector
@SpiritVector 2 года назад
I just use composition, and encapsulation. Data structures are really useful too; you can have a lot of stuff simplified by using them more often.
@PabloGnesutta
@PabloGnesutta 2 года назад
I don't get this obsession with "modeling the real world". Programming problems , mmost of the times,, doeflect the real world at all... It's a fools errand, it creates a new problem besides the one we actually need to solve
@egorsozonov7425
@egorsozonov7425 2 года назад
This talk is full of jokes, and "C++ doesn't leak" is the best one. As if smart pointers don't cause reference cycles, which are nothing but memory, and occasionally resource, leaks.
@JuvStudios
@JuvStudios Год назад
> As if smart pointers don't cause reference cycles There are weak references for that.
@ryleitdept
@ryleitdept 9 месяцев назад
and it was leak by weak programmers 🥴🤪
@bytefu
@bytefu 3 года назад
I remember her talk from DConf, great work.
@noninvasive_rectal_probe8990
@noninvasive_rectal_probe8990 4 года назад
How to understand it?
@gareginasatryan6761
@gareginasatryan6761 4 года назад
To me, gradual language design doesn’t really work. Because once you create bad rules, you can’t change them in later time without breaking things. C++’s great success was that it was a gentle transition from C. But it paid it with poor design decisions which were harder to fix later on. Make it too radical, and people would hate it. That’s probably one of the reasons Eiffel failed to gain traction. This isn’t an attack on Stourstoup. There was a discussion a while back that the concept of the C drive in Windows (the two floppies are A and B) created a stupid legacy that would be hard to break.
@SnakeEngine
@SnakeEngine 2 месяца назад
Which are the bad rules that C++ introduced (except the partially ugly syntax)?
@horridohobbies
@horridohobbies 4 года назад
"Object-oriented programming" is one of the most poorly defined things in IT. There is absolutely no consensus. There are many different interpretations of this concept. There are broadly two general schools of OOP. One is from Alan Kay and the other is from Bjarne Stroustrup/Kristen Nygaard. Until we can nail down the definition, these kinds of debates, including the one in this video, are like arguing about how many angels can dance on the head of a pin. It's rather a waste of time.
@ChrisAthanas
@ChrisAthanas 4 года назад
thank you for saying this, I was starting to wonder if it was just me!
@recompile
@recompile 3 года назад
@@ChrisAthanas It's an open secret. Everyone knows it but few speak out. That includes the kool-aid drinkers, which is why they get so upset when you pull back the curtain. They can stay happily deluded as long as everyone around them pretends to believe in the lie.
@SnakeEngine
@SnakeEngine 2 месяца назад
Yes, but my definition of OOP is the correct one.
@horridohobbies
@horridohobbies 2 месяца назад
@@SnakeEngine 🤣👎
@LemonChieff
@LemonChieff 5 лет назад
Guess the audience is full of Java devs… They're already using (old) C++ they just call it the JVM. Sure lambdas are "new" to C++, thing is any of the programing languages cited didn't have to be backwards compatible with C (some of them came before C). Java doesn't have to compile or run fast (or if it does it's failing at least at the former. And in most cases, without careful precautions, at the latter. )
@mustaphabaua320
@mustaphabaua320 5 лет назад
Hello Dr. can i get your contract and the slides ...may i'll work on like this example in my future phd ... thanks
@ozancansel
@ozancansel 5 лет назад
God talks, and so glad he talks :)
@ECoopsVideosYT
@ECoopsVideosYT 5 лет назад
I'm Ecoop !!!!!!
@cd78
@cd78 5 лет назад
Object orientated programming is alot of abstracted bollocks.
@mjsanchez2173
@mjsanchez2173 6 лет назад
Object oriented programming has wrecked the programming industry...
@matthewfaithfull1893
@matthewfaithfull1893 5 лет назад
Why do people believe that myth?
@rmdec
@rmdec 5 лет назад
@@matthewfaithfull1893 Because they like to think their poor code isn't their fault. lul.
@imodium438
@imodium438 5 лет назад
Let me contemplate the meaning of that as I sit down on my Chair object of a Chair class derived from an abstract base class called 'Furniture' that has virtual function named action() that I override with my sitting instructions and which is ultimately managed by a ChairHandler Class. Hmm... I wonder how OOP wrecked the programming industry.
@metalsadman
@metalsadman 5 лет назад
@@imodium438 a box is not a furniture but you can sit on it like a chair.
@TBC256
@TBC256 5 лет назад
Chair is a Furniture to furniture store as well as is a Table(1). To a woodcutter sitting down for lunch a Chair is a Stump or a conveniently shaped Rock(2). However; when you have a tree trunk or steps in front of a museum, you should think of Benches(3). Just as in natural languages, everything is context dependent. That is why namespaces and modules are great for separation of concepts. (1), (2) and (3) all are objects that *could* have method sit() but sitting (1) is out of scope when you need to describe a store. (2) and (3) both are for sitting, but Bench should have sit(position) and maybe lie().
@mrsme1724
@mrsme1724 6 лет назад
My friend jess who, as you see previously commented on your video as am I, has taken a rather radical fancy towards you . Today I visited her house and , to my surprise , pictures of a , said , Gregor Richards , were all over her wall. I was as you can understand , surprised . I couldn’t see the appeal this man she’d obviously had no connection to was on her wall. I asked who he was to her and she wouldn’t tell me . Eventually she did and as you can imagine I didn’t atall get it . A computing system in a school called “Kodu” was being used during an i.t lesson . Instead of spelling it with a k she spelled it with a c and thus became an obsession with a website of a man and his remarkable hat collection . If you have any spare time please do come visit wales , she will be happy to meet you , aswell as adore your hat collection which I imagine she will steal in the near future of that future . Best regards , The only other person to comment on this video (Can I just say that I am not the only one of my friends who has you on their wall dw I’m not that weird -jess, your biggest fan)
@jessodepresso
@jessodepresso 6 лет назад
im ur biggest fan omg gregor if youre reading this add my snapchat jesslol2003
@philgarcia5986
@philgarcia5986 7 лет назад
Very cool research & work!
@witM90
@witM90 7 лет назад
I think: modern programming is not programming, it's spanking fucking code. Don't get me wrong, abstraction is good evolution like from assembler to c++ and more but it was natural. Today is overhead and something there is going wrong way. Next time we will be discuss how to write sites in c++
@ChrisAthanas
@ChrisAthanas 3 года назад
By 2021 I figured we would be doing Alan Kay's version of object oriented programming by now and not this low level stroustroup crap
@egorsozonov7425
@egorsozonov7425 2 года назад
@@ChrisAthanas But we are doing Alan Kay's version of object-oriented programming. It's called "microservice architecture".
@ChrisAthanas
@ChrisAthanas 2 года назад
@@egorsozonov7425 yes it seems the microservice is closer to what Alan kay was referring to, but not using the c-like languages for the implementation. I'm sure he was thinking of a language more like HyperTalk with low-level extensions written in C-like languages. We need a better abstraction than these low level languages, they are just too detailed for most use cases and prone to errors and slow to implement
@SnakeEngine
@SnakeEngine 2 месяца назад
@@ChrisAthanas Nah, Stroustroup just realized that you cannot solve all the problems using a hammer. C++ doesn't offer the best hammer, but it is a more complete toolbox. So if you want to build a house, you better don't limit yourself to just the hammer.
@tomasduarte8231
@tomasduarte8231 8 лет назад
twitter.com/Funny_And_Happy/status/693889374459695104?pidid=519dcfd9-967d-4136-8f48-8b70e70b0253 working like magic! Bjarne Stroustrup - Object Oriented Programming without Inheritance - ECOOP 2015
@BjarkeEbert
@BjarkeEbert 8 лет назад
Wouldn't purely abstract base classes (like Java og Go interfaces) with dynamic dispatch count as "no inheritance"?
@BjarkeEbert
@BjarkeEbert 8 лет назад
joke at 4:35. Nobody got it.
@KevinHely
@KevinHely 7 лет назад
I did! It was a good one too...
@facorread
@facorread 7 лет назад
I didn't get it. Explanation, please?
@moveaxebx
@moveaxebx 6 лет назад
I think he ment that even modern languages like Java and C# were written in C++
@bathynomusgiganteus2916
@bathynomusgiganteus2916 6 лет назад
Savage Bjarne
@HermanWillems
@HermanWillems 5 лет назад
@@moveaxebx C# and Java are C++ applications.
@nicolasr8710
@nicolasr8710 9 лет назад
Love it
@diltsman
@diltsman 9 лет назад
Is the slide deck going to be available?
@VamoAComeLaPapa
@VamoAComeLaPapa 9 лет назад
The answer to the first question "Contracts vs Concepts": Contracts (preconditions, postconditions, invariants, etc...) are requirements on values. Concepts are syntactic and semantic requirements, on types. You can learn more about Generic Programming Concepts and at: componentsprogramming.com/writing-min-function-part1/ There you will find references to founding literature.
@ENTP-Brandon
@ENTP-Brandon 9 лет назад
Crazy talk...
@bryanedds8922
@bryanedds8922 9 лет назад
OOP without inheritance is abstract data types without purity; EG, Impure ADTs in this talk - vimeo.com/128464151