Your SlideShare is downloading. ×
0
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
JavaScript Classified
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

JavaScript Classified

245

Published on

W wyniku różnorodnych metod implementacji przez poszczególne frameworki, w temacie klas w JavaScript zdiagnozowano rozszczepienie osobowości. Na szczęście odpowiednie lekarstwo powoli jest szykowane, …

W wyniku różnorodnych metod implementacji przez poszczególne frameworki, w temacie klas w JavaScript zdiagnozowano rozszczepienie osobowości. Na szczęście odpowiednie lekarstwo powoli jest szykowane, o czym będę starał się opowiedzieć w tej prezentacji. Jednocześnie postaram się przypomnieć historie choroby, jej objawy i wytłumaczyć, dlaczego kuracja jest tak bardzo pożądana.

Published in: Software, Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
245
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
4
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  1. JavaScript Artur Skowroński
  2. Abstrakcja (łac. abstractio - oderwanie)
  3. Klasyczne podejście Konstruktor Funkcyjny
  4. function Person(name){ this.name=name; } Person.prototype.show=function(){ console.log("Jestem " + this.firm); };
  5. Employee.prototype = new Person(); Employee.prototype.constructor = Employee;
  6. Employee.prototype.show = function(){ Person.prototype.show.call(this); console.log("Pracuje w firme " + this.firm); };
  7. Object.create For Loop
  8. Core API
  9. EcmaScript 3 Grudzień 1999 Wyrażenia regularne Try Catch
  10. ECMAScript 4 Packages Namespaces Klasy
  11. Grudzień 2009 ECMAScript 3.1ECMAScript 5
  12. maximally_minimal_classes Aktualny Draft
  13. Tworzenie i konstruktory
  14. ECMAScript 3 function Person(name){ this.name=name; }
  15. ECMAScript 6 class Person { constructor(name){ this.name=name; } }
  16. Metody
  17. Person.prototype.hello = function(){ console.log("Osoba " + this.name ); }; ECMAScript 3
  18. class Person { (…) hello(){ console.log("Osoba "+this.name); } } ECMAScript 6
  19. Dziedziczenie
  20. ECMAScript 3 Man.prototype = new Mammal(); Man.prototype.constructor = Man; ! function Man(firm){ this.firm=firm; }
  21. ECMAScript 6 class Man extends Mammal { constructor(firm){ this.firm= firm; } }
  22. SuperMetody
  23. ECMAScript 3 Employee.prototype.show = function(){ Person.prototype.show.call(this); alert("Pracuje w firme " + this.firm); }
  24. class Employee extends Person { (…) ! show(){ super() alert("Pracuje w firme " + this.firm); } ! } ECMAScript 6
  25. Czego jeszcze nie dostaniemy • Zamkniętego stanu • Properties NazwaKlasy.prototype.nazwaPop = 0;
  26. Future editions of ECMAScript may and probably will extend the proposed class definitions. However, the intent for “ES6” is to only include the features described in this proposal. Attempting to extend this proposal is likely to result in dead-lock that would result in the inclusion of no class definition support in “ES6”.
  27. Podsumowując • Standard dziedziczenia dla wszystkich ! • Naturalne Core API dla twórców Frameworków
  28. Nadzieje
  29. Interoperacyjność
  30. IDE Support
  31. Performance języka http://sealedabstract.com/rants/why-mobile-web-apps-are-slow/
  32. Kiedy?
  33. http://kangax.github.io/compat-table/es6
  34. https://github.com/google/traceur-compiler
  35. Dziękuje bardzo… i zapraszam do pytań Artur Skowroński

×