Suche senden
Hochladen
Basic Mechanism of OOPL
âą
2 gefÀllt mir
âą
6,048 views
K
kwatch
Folgen
(English) Basic mechanism of Object-Oriented Program Language.
Weniger lesen
Mehr lesen
Technologie
Melden
Teilen
Melden
Teilen
1 von 31
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
Introduction To Javascript
Introduction To Javascript
Rajat Pandit
Â
Inheritance patterns
Inheritance patterns
Luke Smith
Â
Object Oriented Programming in js
Object Oriented Programming in js
threepointone
Â
Jscex: Write Sexy JavaScript
Jscex: Write Sexy JavaScript
jeffz
Â
front-end dev
front-end dev
Paul Comanici
Â
The Evolution of Async-Programming (SD 2.0, JavaScript)
The Evolution of Async-Programming (SD 2.0, JavaScript)
jeffz
Â
Oop07 6
Oop07 6
schwaa
Â
The Evolution of Async-Programming on .NET Platform (TUP, Full)
The Evolution of Async-Programming on .NET Platform (TUP, Full)
jeffz
Â
Empfohlen
Introduction To Javascript
Introduction To Javascript
Rajat Pandit
Â
Inheritance patterns
Inheritance patterns
Luke Smith
Â
Object Oriented Programming in js
Object Oriented Programming in js
threepointone
Â
Jscex: Write Sexy JavaScript
Jscex: Write Sexy JavaScript
jeffz
Â
front-end dev
front-end dev
Paul Comanici
Â
The Evolution of Async-Programming (SD 2.0, JavaScript)
The Evolution of Async-Programming (SD 2.0, JavaScript)
jeffz
Â
Oop07 6
Oop07 6
schwaa
Â
The Evolution of Async-Programming on .NET Platform (TUP, Full)
The Evolution of Async-Programming on .NET Platform (TUP, Full)
jeffz
Â
Pure function And Functional Error Handling
Pure function And Functional Error Handling
Gyooha Kim
Â
Lecture 03
Lecture 03
Nguyen Thanh Xuan
Â
Joose @jsconf
Joose @jsconf
malteubl
Â
äžèȘç¶ăȘcar/ăăă„ă©ă«ă«consăăŠ
äžèȘç¶ăȘcar/ăăă„ă©ă«ă«consăăŠ
mitsutaka mimura
Â
JavaScript Patterns
JavaScript Patterns
Giordano Scalzo
Â
Infinum iOS Talks #1 - Swift under the hood: Method Dispatching by Vlaho Poluta
Infinum iOS Talks #1 - Swift under the hood: Method Dispatching by Vlaho Poluta
Infinum
Â
Core java concepts
Core java concepts
kishorethoutam
Â
Javascript the Language of the Web
Javascript the Language of the Web
andersjanmyr
Â
Oop 1
Oop 1
dreamhahaman
Â
Swift 3 Programming for iOS : Protocol
Swift 3 Programming for iOS : Protocol
Kwang Woo NAM
Â
Javascript foundations: Introducing OO
Javascript foundations: Introducing OO
John Hunter
Â
Lesson19 Maximum And Minimum Values 034 Slides
Lesson19 Maximum And Minimum Values 034 Slides
Matthew Leingang
Â
2010 08-19-30 minutes of python
2010 08-19-30 minutes of python
Kang-Min Wang
Â
Xsl Tand X Path Quick Reference
Xsl Tand X Path Quick Reference
LiquidHub
Â
6.1.1äžæ„äžæ„ćŠrepast代ç è§Łé
6.1.1äžæ„äžæ„ćŠrepast代ç è§Łé
zhang shuren
Â
ĐŃĐžĐœŃĐžĐżŃ Đž ĐżŃĐ°ĐșŃĐžĐșĐž ŃĐ°Đ·ŃĐ°Đ±ĐŸŃĐșĐž ĐĐ 2 / Principles and practices of software de...
ĐŃĐžĐœŃĐžĐżŃ Đž ĐżŃĐ°ĐșŃĐžĐșĐž ŃĐ°Đ·ŃĐ°Đ±ĐŸŃĐșĐž ĐĐ 2 / Principles and practices of software de...
Alexander Granin
Â
Learning stochastic neural networks with Chainer
Learning stochastic neural networks with Chainer
Seiya Tokui
Â
Functional Programming in C++
Functional Programming in C++
sankeld
Â
Prototype
Prototype
Aditya Gaur
Â
Cascon2011_5_rules+owl
Cascon2011_5_rules+owl
ONTORULE Project
Â
Introduction to Scala
Introduction to Scala
Brian Hsu
Â
Python advance
Python advance
Mukul Kirti Verma
Â
Weitere Àhnliche Inhalte
Was ist angesagt?
Pure function And Functional Error Handling
Pure function And Functional Error Handling
Gyooha Kim
Â
Lecture 03
Lecture 03
Nguyen Thanh Xuan
Â
Joose @jsconf
Joose @jsconf
malteubl
Â
äžèȘç¶ăȘcar/ăăă„ă©ă«ă«consăăŠ
äžèȘç¶ăȘcar/ăăă„ă©ă«ă«consăăŠ
mitsutaka mimura
Â
JavaScript Patterns
JavaScript Patterns
Giordano Scalzo
Â
Infinum iOS Talks #1 - Swift under the hood: Method Dispatching by Vlaho Poluta
Infinum iOS Talks #1 - Swift under the hood: Method Dispatching by Vlaho Poluta
Infinum
Â
Core java concepts
Core java concepts
kishorethoutam
Â
Javascript the Language of the Web
Javascript the Language of the Web
andersjanmyr
Â
Oop 1
Oop 1
dreamhahaman
Â
Swift 3 Programming for iOS : Protocol
Swift 3 Programming for iOS : Protocol
Kwang Woo NAM
Â
Javascript foundations: Introducing OO
Javascript foundations: Introducing OO
John Hunter
Â
Lesson19 Maximum And Minimum Values 034 Slides
Lesson19 Maximum And Minimum Values 034 Slides
Matthew Leingang
Â
2010 08-19-30 minutes of python
2010 08-19-30 minutes of python
Kang-Min Wang
Â
Xsl Tand X Path Quick Reference
Xsl Tand X Path Quick Reference
LiquidHub
Â
6.1.1äžæ„äžæ„ćŠrepast代ç è§Łé
6.1.1äžæ„äžæ„ćŠrepast代ç è§Łé
zhang shuren
Â
ĐŃĐžĐœŃĐžĐżŃ Đž ĐżŃĐ°ĐșŃĐžĐșĐž ŃĐ°Đ·ŃĐ°Đ±ĐŸŃĐșĐž ĐĐ 2 / Principles and practices of software de...
ĐŃĐžĐœŃĐžĐżŃ Đž ĐżŃĐ°ĐșŃĐžĐșĐž ŃĐ°Đ·ŃĐ°Đ±ĐŸŃĐșĐž ĐĐ 2 / Principles and practices of software de...
Alexander Granin
Â
Learning stochastic neural networks with Chainer
Learning stochastic neural networks with Chainer
Seiya Tokui
Â
Functional Programming in C++
Functional Programming in C++
sankeld
Â
Prototype
Prototype
Aditya Gaur
Â
Was ist angesagt?
(19)
Pure function And Functional Error Handling
Pure function And Functional Error Handling
Â
Lecture 03
Lecture 03
Â
Joose @jsconf
Joose @jsconf
Â
äžèȘç¶ăȘcar/ăăă„ă©ă«ă«consăăŠ
äžèȘç¶ăȘcar/ăăă„ă©ă«ă«consăăŠ
Â
JavaScript Patterns
JavaScript Patterns
Â
Infinum iOS Talks #1 - Swift under the hood: Method Dispatching by Vlaho Poluta
Infinum iOS Talks #1 - Swift under the hood: Method Dispatching by Vlaho Poluta
Â
Core java concepts
Core java concepts
Â
Javascript the Language of the Web
Javascript the Language of the Web
Â
Oop 1
Oop 1
Â
Swift 3 Programming for iOS : Protocol
Swift 3 Programming for iOS : Protocol
Â
Javascript foundations: Introducing OO
Javascript foundations: Introducing OO
Â
Lesson19 Maximum And Minimum Values 034 Slides
Lesson19 Maximum And Minimum Values 034 Slides
Â
2010 08-19-30 minutes of python
2010 08-19-30 minutes of python
Â
Xsl Tand X Path Quick Reference
Xsl Tand X Path Quick Reference
Â
6.1.1äžæ„äžæ„ćŠrepast代ç è§Łé
6.1.1äžæ„äžæ„ćŠrepast代ç è§Łé
Â
ĐŃĐžĐœŃĐžĐżŃ Đž ĐżŃĐ°ĐșŃĐžĐșĐž ŃĐ°Đ·ŃĐ°Đ±ĐŸŃĐșĐž ĐĐ 2 / Principles and practices of software de...
ĐŃĐžĐœŃĐžĐżŃ Đž ĐżŃĐ°ĐșŃĐžĐșĐž ŃĐ°Đ·ŃĐ°Đ±ĐŸŃĐșĐž ĐĐ 2 / Principles and practices of software de...
Â
Learning stochastic neural networks with Chainer
Learning stochastic neural networks with Chainer
Â
Functional Programming in C++
Functional Programming in C++
Â
Prototype
Prototype
Â
Ăhnlich wie Basic Mechanism of OOPL
Cascon2011_5_rules+owl
Cascon2011_5_rules+owl
ONTORULE Project
Â
Introduction to Scala
Introduction to Scala
Brian Hsu
Â
Python advance
Python advance
Mukul Kirti Verma
Â
Javascript
Javascript
Aditya Gaur
Â
Introduction to functional programming using Ocaml
Introduction to functional programming using Ocaml
pramode_ce
Â
Programming Android Application in Scala.
Programming Android Application in Scala.
Brian Hsu
Â
Operator Overloading
Operator Overloading
Mani Singh
Â
Master in javascript
Master in javascript
Robbin Zhao
Â
Shiksharth com java_topics
Shiksharth com java_topics
Rajesh Verma
Â
Fast Forward To Scala
Fast Forward To Scala
Martin Kneissl
Â
F#3.0
F#3.0
Rodrigo Vidal
Â
jsbasics-slide
jsbasics-slide
Peter Borkuti
Â
Ocl 09
Ocl 09
ClarkTony
Â
First fare 2011 frc-java-introduction
First fare 2011 frc-java-introduction
Oregon FIRST Robotics
Â
JavaScript Programming
JavaScript Programming
Sehwan Noh
Â
Dive into Python Class
Dive into Python Class
Jim Yeh
Â
Ajaxworld
Ajaxworld
deannalagason
Â
JRuby and Invokedynamic - Japan JUG 2015
JRuby and Invokedynamic - Japan JUG 2015
Charles Nutter
Â
Hey! There's OCaml in my Rust!
Hey! There's OCaml in my Rust!
Kel Cecil
Â
8 polymorphism
8 polymorphism
Abhijit Gaikwad
Â
Ăhnlich wie Basic Mechanism of OOPL
(20)
Cascon2011_5_rules+owl
Cascon2011_5_rules+owl
Â
Introduction to Scala
Introduction to Scala
Â
Python advance
Python advance
Â
Javascript
Javascript
Â
Introduction to functional programming using Ocaml
Introduction to functional programming using Ocaml
Â
Programming Android Application in Scala.
Programming Android Application in Scala.
Â
Operator Overloading
Operator Overloading
Â
Master in javascript
Master in javascript
Â
Shiksharth com java_topics
Shiksharth com java_topics
Â
Fast Forward To Scala
Fast Forward To Scala
Â
F#3.0
F#3.0
Â
jsbasics-slide
jsbasics-slide
Â
Ocl 09
Ocl 09
Â
First fare 2011 frc-java-introduction
First fare 2011 frc-java-introduction
Â
JavaScript Programming
JavaScript Programming
Â
Dive into Python Class
Dive into Python Class
Â
Ajaxworld
Ajaxworld
Â
JRuby and Invokedynamic - Japan JUG 2015
JRuby and Invokedynamic - Japan JUG 2015
Â
Hey! There's OCaml in my Rust!
Hey! There's OCaml in my Rust!
Â
8 polymorphism
8 polymorphism
Â
Mehr von kwatch
How to make the fastest Router in Python
How to make the fastest Router in Python
kwatch
Â
Migr8.rb ăă„ăŒăăȘăąă«
Migr8.rb ăă„ăŒăăȘăąă«
kwatch
Â
ăȘăă§ăID
ăȘăă§ăID
kwatch
Â
Nippondanjiæ°ă«æăăăŠăä»æčăȘăăé ććăšJSONćăźäœżăæč
Nippondanjiæ°ă«æăăăŠăä»æčăȘăăé ććăšJSONćăźäœżăæč
kwatch
Â
ăSQLă€ăłăžă§ăŻă·ă§ăłćŻŸçăćŸłäžžć çă«æăăăȘăăćçSQLăźćźć šăȘç”ăżç«ăŠæč
ăSQLă€ăłăžă§ăŻă·ă§ăłćŻŸçăćŸłäžžć çă«æăăăȘăăćçSQLăźćźć šăȘç”ăżç«ăŠæč
kwatch
Â
O/RăăăăŒă«ăăăă©ăă«ăæȘç¶ă«éČă
O/RăăăăŒă«ăăăă©ăă«ăæȘç¶ă«éČă
kwatch
Â
æŁèŠèĄšçŸăȘăă©ă«ăŻæŹćœă«ćż èŠăȘăźăïŒ
æŁèŠèĄšçŸăȘăă©ă«ăŻæŹćœă«ćż èŠăȘăźăïŒ
kwatch
Â
ăć Źéç”äșăPython4PHPer - PHPăŠăŒă¶ăźăăăźPythonć „é (Python2.5)
ăć Źéç”äșăPython4PHPer - PHPăŠăŒă¶ăźăăăźPythonć „é (Python2.5)
kwatch
Â
DBăčăăŒăăăăŒăžă§ăłçźĄçăăăïŒ
DBăčăăŒăăăăŒăžă§ăłçźĄçăăăïŒ
kwatch
Â
PHPăšJavaScriptă«ăăăăȘăăžă§ăŻăæćăæŻèŒăă
PHPăšJavaScriptă«ăăăăȘăăžă§ăŻăæćăæŻèŒăă
kwatch
Â
SQLäžçŽè ăăç„ăŁăŠæŹČăăăăȘăO/RăăăăŒăéèŠăïŒ
SQLäžçŽè ăăç„ăŁăŠæŹČăăăăȘăO/RăăăăŒăéèŠăïŒ
kwatch
Â
Fantastic DSL in Python
Fantastic DSL in Python
kwatch
Â
What is wrong on Test::More? / Test::Moreăæ±ăăćéĄçčăšăăźè§Łæ±șç
What is wrong on Test::More? / Test::Moreăæ±ăăćéĄçčăšăăźè§Łæ±șç
kwatch
Â
PHP5.5æ°æ©èœăăžă§ăăŹăŒăżăććżè ć „é
PHP5.5æ°æ©èœăăžă§ăăŹăŒăżăććżè ć „é
kwatch
Â
Pretty Good Branch Strategy for Git/Mercurial
Pretty Good Branch Strategy for Git/Mercurial
kwatch
Â
Oktest - a new style testing library for Python -
Oktest - a new style testing library for Python -
kwatch
Â
æććç”ćăźăăłăăăŒăŻăăăăăȘćŠççł»ă§ăăŁăŠăżă
æććç”ćăźăăłăăăŒăŻăăăăăȘćŠççł»ă§ăăŁăŠăżă
kwatch
Â
I have something to say about the buzz word "From Java to Ruby"
I have something to say about the buzz word "From Java to Ruby"
kwatch
Â
CăăéăRubyăăă°ă©ă
CăăéăRubyăăă°ă©ă
kwatch
Â
JavaăăéăLLçšăăłăăŹăŒăăšăłăžăł
JavaăăéăLLçšăăłăăŹăŒăăšăłăžăł
kwatch
Â
Mehr von kwatch
(20)
How to make the fastest Router in Python
How to make the fastest Router in Python
Â
Migr8.rb ăă„ăŒăăȘăąă«
Migr8.rb ăă„ăŒăăȘăąă«
Â
ăȘăă§ăID
ăȘăă§ăID
Â
Nippondanjiæ°ă«æăăăŠăä»æčăȘăăé ććăšJSONćăźäœżăæč
Nippondanjiæ°ă«æăăăŠăä»æčăȘăăé ććăšJSONćăźäœżăæč
Â
ăSQLă€ăłăžă§ăŻă·ă§ăłćŻŸçăćŸłäžžć çă«æăăăȘăăćçSQLăźćźć šăȘç”ăżç«ăŠæč
ăSQLă€ăłăžă§ăŻă·ă§ăłćŻŸçăćŸłäžžć çă«æăăăȘăăćçSQLăźćźć šăȘç”ăżç«ăŠæč
Â
O/RăăăăŒă«ăăăă©ăă«ăæȘç¶ă«éČă
O/RăăăăŒă«ăăăă©ăă«ăæȘç¶ă«éČă
Â
æŁèŠèĄšçŸăȘăă©ă«ăŻæŹćœă«ćż èŠăȘăźăïŒ
æŁèŠèĄšçŸăȘăă©ă«ăŻæŹćœă«ćż èŠăȘăźăïŒ
Â
ăć Źéç”äșăPython4PHPer - PHPăŠăŒă¶ăźăăăźPythonć „é (Python2.5)
ăć Źéç”äșăPython4PHPer - PHPăŠăŒă¶ăźăăăźPythonć „é (Python2.5)
Â
DBăčăăŒăăăăŒăžă§ăłçźĄçăăăïŒ
DBăčăăŒăăăăŒăžă§ăłçźĄçăăăïŒ
Â
PHPăšJavaScriptă«ăăăăȘăăžă§ăŻăæćăæŻèŒăă
PHPăšJavaScriptă«ăăăăȘăăžă§ăŻăæćăæŻèŒăă
Â
SQLäžçŽè ăăç„ăŁăŠæŹČăăăăȘăO/RăăăăŒăéèŠăïŒ
SQLäžçŽè ăăç„ăŁăŠæŹČăăăăȘăO/RăăăăŒăéèŠăïŒ
Â
Fantastic DSL in Python
Fantastic DSL in Python
Â
What is wrong on Test::More? / Test::Moreăæ±ăăćéĄçčăšăăźè§Łæ±șç
What is wrong on Test::More? / Test::Moreăæ±ăăćéĄçčăšăăźè§Łæ±șç
Â
PHP5.5æ°æ©èœăăžă§ăăŹăŒăżăććżè ć „é
PHP5.5æ°æ©èœăăžă§ăăŹăŒăżăććżè ć „é
Â
Pretty Good Branch Strategy for Git/Mercurial
Pretty Good Branch Strategy for Git/Mercurial
Â
Oktest - a new style testing library for Python -
Oktest - a new style testing library for Python -
Â
æććç”ćăźăăłăăăŒăŻăăăăăȘćŠççł»ă§ăăŁăŠăżă
æććç”ćăźăăłăăăŒăŻăăăăăȘćŠççł»ă§ăăŁăŠăżă
Â
I have something to say about the buzz word "From Java to Ruby"
I have something to say about the buzz word "From Java to Ruby"
Â
CăăéăRubyăăă°ă©ă
CăăéăRubyăăă°ă©ă
Â
JavaăăéăLLçšăăłăăŹăŒăăšăłăžăł
JavaăăéăLLçšăăłăăŹăŒăăšăłăžăł
Â
KĂŒrzlich hochgeladen
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
ThousandEyes
Â
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j
Â
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
Softradix Technologies
Â
Swan(sea) Song â personal research during my six years at Swansea ... and bey...
Swan(sea) Song â personal research during my six years at Swansea ... and bey...
Alan Dix
Â
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
Allon Mureinik
Â
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions
Â
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
Malak Abu Hammad
Â
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
Ridwan Fadjar
Â
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
OnBoard
Â
#StandardsGoals for 2024: Whatâs new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: Whatâs new for BISAC - Tech Forum 2024
BookNet Canada
Â
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Katpro Technologies
Â
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
Rafal Los
Â
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Delhi Call girls
Â
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
Michael W. Hawkins
Â
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Safe Software
Â
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
HostedbyConfluent
Â
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
Pixlogix Infotech
Â
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Safe Software
Â
Slack Application Development 101 Slides
Slack Application Development 101 Slides
praypatel2
Â
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
Paola De la Torre
Â
KĂŒrzlich hochgeladen
(20)
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
Â
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Â
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
Â
Swan(sea) Song â personal research during my six years at Swansea ... and bey...
Swan(sea) Song â personal research during my six years at Swansea ... and bey...
Â
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
Â
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
Â
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
Â
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
Â
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
Â
#StandardsGoals for 2024: Whatâs new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: Whatâs new for BISAC - Tech Forum 2024
Â
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Â
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
Â
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Â
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
Â
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Â
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Â
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
Â
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Â
Slack Application Development 101 Slides
Slack Application Development 101 Slides
Â
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
Â
Basic Mechanism of OOPL
1.
Basic Mechanism of
Object-Oriented Programming Language 2009-09-11 : Released 2009-09-14 : Fixed makoto kuwata <kwa@kuwata-lab.com> http://www.kuwata-lab.com/ copyright© 2009 kuwata-lab.com all right reserved.
2.
Purpose â€
Describes basic mechanism of Object-Oriented Programming Language (OOPL) †Not only Perl but also Python, Ruby, Java, ... †You must be familiar with terms of Object-Oriented †Class, Instance, Method, Override, Overload, ... copyright© 2009 kuwata-lab.com all right reserved.
3.
Agenda â€
Part 1. Basics about OOPL Mechanism †Part 2. More about OOPL Mechanism †Part 3. Case Study copyright© 2009 kuwata-lab.com all right reserved.
4.
Part 1. Basics about
OOPL Mechanism copyright© 2009 kuwata-lab.com all right reserved.
5.
Overview
Function Class obj Method Tbl func (self) { Variable ..... m1 } m2 Z: 123 m3 func (self) { ..... Instance obj Class obj Method Tbl } m2 x: 10 m3 func (self) { y: 20 Z: 456 m4 ..... } copyright© 2009 kuwata-lab.com all right reserved.
6.
Instance Object
Pointer to Class object †Instance variables + Is-a pointer †Instance object knows "what I am" Variable Instance obj Class obj x: 10 Hash data (in script y: 20 lang) or Struct data (in Java or C++) copyright© 2009 kuwata-lab.com all right reserved.
7.
Class Object
Class obj †Class variables Method Table ( + Is-a pointer) + Parent pointer Z: 30 + Method Table Class obj Instance methods Method Table belong to Class Z: 35
8.
Method Lookup Table â€
Method signatures(ânames) + function pointers †May have pointer to parent method table Class obj Method Table func (self) { print "hello"; m1 } m2 m3 func (self, x) { return x + 1; } copyright© 2009 kuwata-lab.com all right reserved.
9.
Method Function â€
Instance object is passed as hidden argument OOPL non-OOPL class Point { def move(self, x, y) { var x=0, y=0; self['x'] = x; def move(x, y) { self['y'] = y; this.x = x; } this.y = y; almost } equiv. p = {isa: Point, x: 0, y: 0}; } func = lookup(p, 'move'); p = new Point(); func(p, 10, 20); p.move(10, 20); copyright© 2009 kuwata-lab.com all right reserved.
10.
Difference bet. method
and function †Method requires instance object †Typically, instance obj is passed as 1st argument †Method call is dynamic, function call is static †Method signature(âname) is determined statically †Method lookup is performed dynamically (This is why method call is slower than function call) copyright© 2009 kuwata-lab.com all right reserved.
11.
Overview (again)
Function Class obj Method Tbl func (self) { Variable ..... m1 } m2 Z: 123 m3 func (self) { ..... Instance obj Class obj Method Tbl } m2 x: 10 m3 func (self) { y: 20 Z: 456 m4 ..... } copyright© 2009 kuwata-lab.com all right reserved.
12.
Conslusion â€
Instance object knows "what I am" (by is-a pointer) †Instance variables belong to instance object †Instance methods belong to class object †function-call is static, method-call is dynamic copyright© 2009 kuwata-lab.com all right reserved.
13.
Part 2. More about
OOPL Mechanism copyright© 2009 kuwata-lab.com all right reserved.
14.
Method Signature â€
Method name + Argument types (+ Return type) (in static language) †Or same as Method name (in dynamic language) Example (Java): Method Declaration Method Signature void hello(int v, char ch) hello(IC)V void hello(String s) hello(Ljava.lang.String;)V copyright© 2009 kuwata-lab.com all right reserved.
15.
Method Overload â€
One method name can have different method signature Class obj Method Table hello(IC) hello(Ljava.lang.String;) copyright© 2009 kuwata-lab.com all right reserved.
16.
Method Override â€
Child class can deïŹne methods which has same method signature as method in parent class Parent Class Method Table hello(IC) hello(Ljava.lang.String;) Child Class Method Table hello(Ljava.lang.String;) : copyright© 2009 kuwata-lab.com all right reserved.
17.
Super â€
'Super' skips method table lookup once def m1() { Class obj super.m1(); Method Table } m1 : Instance obj Class obj Method Table x: 10 X m1 : copyright© 2009 kuwata-lab.com all right reserved.
18.
Polymorphism (1)
not used †Polymorphism depends on ... used †Receiver object's data type Animal a; a = new Dog(); a.bark(); †Variable data type a = new Cat(); a.bark(); Determined dynamically Instance obj Class obj Method Tbl Method Func bark(...) func (self) { ..... : : } : : copyright© 2009 kuwata-lab.com all right reserved.
19.
Polymorphism (2) â€
Polymorphism depends on ... void bark(Object o) { ... } †Data type of formal args a.bark("Wee!"); †Data type of actual args Determined statically Instance obj Class obj Method Tbl Method Func bark(...) func (self) { ..... : : } : : copyright© 2009 kuwata-lab.com all right reserved.
20.
"Object" class vs.
"Class" class (1) class Class "Class" extends "Object" extends Object {...} class Foo "Object" class extends Object {...} NULL "Class" class Instance obj "Foo" class x: 10 y: 20 "Foo" extends "Object" copyright© 2009 kuwata-lab.com all right reserved.
21.
"Object" class vs.
"Class" class (2) Object = new Class() "Object" is-a "Class" Foo = new Class() Instobj = new Foo() "Object" class "Class" is-a "Class" Instance is-a "Foo" NULL "Class" class Instance obj "Foo" class x: 10 y: 20 "Foo" is-a "Class" copyright© 2009 kuwata-lab.com all right reserved.
22.
Conclusion (1) â€
Method Signature = Method Name + Arg Types †Method Overload : Same method name can have different method signature †Method Override : Child class can have same method signature as parent class †Super : Skips current class when method lookup copyright© 2009 kuwata-lab.com all right reserved.
23.
Conclusion (2) â€
Polymorphism †Depends on Receiver's data type, Method Name, and Temporary Args' data type †Not depends on Variable data type and Actual Args' data type †Relation between "Object" class and "Class" class is complicated copyright© 2009 kuwata-lab.com all right reserved.
24.
Part 3. Case Study
copyright© 2009 kuwata-lab.com all right reserved.
25.
Case Study: Ruby
from ruby.h: from ruby.h: struct RBasic { struct RClass { unsigned long ïŹags; struct RBasic basic; VALUE klass; struct st_table *iv_tbl; }; struct st_table *m_tbl; Is-a pointer VALUE super; struct RObject { }; struct RBasic basic; Parent pointer struct st_table *iv_tbl; }; Method table Instance variables copyright© 2009 kuwata-lab.com all right reserved.
26.
Case Study: Perl package
Point; sub new { my $classname = shift @_; bless() binds hash data my ($x, $y) = @_; with class name my $this = {x=>$x, y=>$y}; (instead of is-a pointer) return bless $this, $classname; } sub move_to { my $this = shift @_; Instance object is the my ($x, $y) = @_; ïŹrst argument of $this->{x} = $x; instance method $this->{y} = $y; } copyright© 2009 kuwata-lab.com all right reserved.
27.
Case Study: Python
class Point(object): def __init__(self, x=0, y=0): self.x = x Instance object is the self.y = y ïŹrst argument of instance method def move_to(self, x, y): self.x = x self.y = y Possible to call instance p = Point(0, 0) method as function p.move_to(10, 20) Point.move_to(p, 10, 20) Python uses function as method, and Ruby uses method as function. copyright© 2009 kuwata-lab.com all right reserved.
28.
Case Study: Java Class
obj Method Table m1 func (this) { ... } m2 func (this) { ... } Class obj Copy parent entries Method Table not to follow parent table (for performance) m1 m2 m3 func (this) { ... } copyright© 2009 kuwata-lab.com all right reserved.
29.
Case Study: JavaScript
(1) /// (1) †instance.__proto__ points prototype function Animal(name) { object (= Constructor.prototype) this.name = name; } †Trace __proto__ recursively /// (2) (called as 'prototype chain') Animal.prototype.bark = function() { ('__proto__' property is anim alert(this.name); } available on Firefox) name /// (3) var anim = __proto__ new Animal("Doara"); (3) Animal prototype (1) (2) prototype bark prototype this.name = name; __proto__ alert(this.name); copyright© 2009 kuwata-lab.com all right reserved.
30.
Case Study: JavaScript
(2) /// (4) /// (5) function Dog(name) { Dog.prototype.bark2 = Animal.call(this, name); dog function() { } name alert("BowWow"); }; Dog.prototype = anim; /// (6) __proto__ delete Dog.prototype.name; var dog = new Dog("so16"); (6) Dog anim (4) (5) prototype bark2 prototype Animal.call(this); __proto__ alert("BowWow"); Animal prototype prototype bark prototype this.name = name; __proto__ alert(this.name); copyright© 2009 kuwata-lab.com all right reserved.
31.
thank you
copyright© 2009 kuwata-lab.com all right reserved.
Jetzt herunterladen