Every programming language in (another) 15 minutes: data types

  Рет қаралды 19,406

Brian Will

Brian Will

Күн бұрын

Пікірлер: 20
@MenkoDany
@MenkoDany 5 жыл бұрын
I thought I wouldn't learn much from this video, but I actually learned a lot because it connected some ideas in my head and revealed relationships that I haven't seen before, great content!
@OggerFN
@OggerFN 3 жыл бұрын
I really like these videos. Nothing knew but solid, language unspecific basics. That's what cs university should be like.
@cacheman
@cacheman 5 жыл бұрын
11:18 I think you got your Whale and Dolphin mixed up in the commented green text.
@BruceRicard
@BruceRicard 4 жыл бұрын
Beware that inheritence does NOT imply sub-typing, in general. You can in theory have a Dog class inheriting an Animal class such that you cannot upcast an Animal into a Dog.
@jaehyi2009
@jaehyi2009 3 жыл бұрын
Excellent tutorial!
@valcron-1000
@valcron-1000 5 жыл бұрын
Solid content. Very clear explanations.
@noahwilliams8996
@noahwilliams8996 5 жыл бұрын
I think this could benefit from an explanation of how these work internally.
@MuhammadBinZafar1
@MuhammadBinZafar1 4 жыл бұрын
Suddenly inheritance & interface & sub-type started to stop making senses.
@MachinesTakingOverTheWorld
@MachinesTakingOverTheWorld 7 ай бұрын
I am a SeaCreature!
@Madsy9
@Madsy9 5 жыл бұрын
Good video and explanation overall. Only constructive criticism I have is the emphasis on downcasting which is generally a bad idea, although I can see why you went that route. A better way to get access to the concrete type is to put the code that depends on it somewhere with more context: Where you have access to the this-reference. I'm assuming here that your videos here is only about languages with single-dispatch, since you mentioned this-references. For single-dispatch languages with a 'this' or 'self' reference, you would typically use what's called the Visitor pattern or at least something of the same flavor. A situation where this is useful would be in the example you mentioned with an array or collection that uses subtyping to get around arrays being homogeneous. A visitor implementation would allow you to perform some operation on the array that requires knowing the subclass of each individual element, but be more maintainable and less error-prone than downcasting.
@zxxczczczcz
@zxxczczczcz 5 жыл бұрын
yes
@Dan-gs3kg
@Dan-gs3kg 4 жыл бұрын
The funny bit is that this is heavily biased towards Haskell's opinions on types, and polymorphism. Not a bad thing, but gives an argument for replacing OOP with FP, while clarifying why OOP leaves you exposed to various problems.
@0ptikGhost
@0ptikGhost 2 жыл бұрын
The video uses terminology that is particularly popular in functional languages but that terminology is still appropriate and correct for imperative languages. In fact, I can't think of a single imperative language for which the statements made in this video are incorrect.
@firephoenixgamers8590
@firephoenixgamers8590 2 жыл бұрын
@@0ptikGhost ^^^^^
@biskitpagla
@biskitpagla Жыл бұрын
This is like going to a biotech conference and complaining about why everyone is pro-vaccine. Type theory is a research domain led almost entirely by functional programmers and researchers. Alan Kay's OOP instead advocated for extreme late-binding and dynamic typing. C++, Java, and C# merely inherited the need for at least a barebones type system from C.
@luckyboy20021
@luckyboy20021 5 жыл бұрын
you're the best
Object-Oriented Programming is Embarrassing: 4 Short Examples
28:03
Brian Will
Рет қаралды 2,1 МЛН
Every Programming Language Ever Explained in 15 Minutes
15:29
Flash Bytes
Рет қаралды 366 М.
Жездуха 41-серия
36:26
Million Show
Рет қаралды 5 МЛН
Rust Data Modelling Without Classes
11:25
No Boilerplate
Рет қаралды 185 М.
Every Programming Language in 15 Minutes
14:47
Brian Will
Рет қаралды 112 М.
why do header files even exist?
10:53
Low Level
Рет қаралды 448 М.
Object-Oriented Programming
29:02
Brian Will
Рет қаралды 745 М.
Introduction to the C++ Programming Language
3:59:55
Dave Churchill
Рет қаралды 27 М.
4 Programming Paradigms In 40 Minutes
41:28
Coding Tech
Рет қаралды 493 М.
How I program C
2:11:32
Eskil Steenberg
Рет қаралды 796 М.
7 Outside The Box Puzzles
12:16
MindYourDecisions
Рет қаралды 216 М.
Andrew Kelley   Practical Data Oriented Design (DoD)
46:40
ChimiChanga
Рет қаралды 155 М.
Every single feature of C# in 10 minutes
9:50
Train To Code
Рет қаралды 166 М.
Жездуха 41-серия
36:26
Million Show
Рет қаралды 5 МЛН