Informações sobre o curso
4.9
257 classificações
54 avaliações

100% online

Comece imediatamente e aprenda em seu próprio cronograma.

Prazos flexíveis

Redefinir os prazos de acordo com sua programação.

Aprox. 21 horas para completar

Sugerido: 8-16 hours/week...

Inglês

Legendas: Inglês

Habilidades que você terá

Ruby (Programming Language)Programming LanguageObject-Oriented Programming (OOP)Subtyping

100% online

Comece imediatamente e aprenda em seu próprio cronograma.

Prazos flexíveis

Redefinir os prazos de acordo com sua programação.

Aprox. 21 horas para completar

Sugerido: 8-16 hours/week...

Inglês

Legendas: Inglês

Programa - O que você aprenderá com este curso

Semana
1
1 hora para concluir

Introduction, Course-Wide Information, and Software Installation (Start Here)

Welcome! Start here! Learn about this course and how it's organized. ...
3 vídeos (total de (Total 11 mín.) min), 3 leituras
3 videos
Overview of Part C Concepts4min
Part C Course Structure3min
3 leituras
Start Here!10min
Part C Software Installation and Use: Ruby and irb30min
Installing and Using SML and Emacs
7 horas para concluir

Section 8 and Homework 6 (First Module with Ruby)

Let's get started programming with Ruby, including learning about Ruby's variant of (almost) function closures and the "inheritance and overriding" that is the essence of object-oriented programming. The welcome message has a few additional comments about "what makes Ruby different" and how to approach the (rather different) homework assignment, so let's get started......
19 vídeos (total de (Total 192 mín.) min), 6 leituras, 1 teste
19 videos
Classes and Objects12min
Object State13min
Visibility8min
A Longer Example12min
Everything is an Object8min
Class Definitions are Dynamic7min
Duck Typing7min
Arrays11min
Blocks11min
Using Blocks6min
Procs7min
Hashes and Ranges8min
Subclassing10min
Why Use Subclassing?7min
Overriding and Dynamic Dispatch10min
Method-Lookup Rules, Precisely11min
Dynamic Dispatch Versus Closures9min
Optional: Dynamic Dispatch Manually in Racket15min
6 leituras
Section 8 Welcome Message7min
Section 8 Reading Notes
Code Files for All Section 8 Videos
Explanation of "Lesson Choices"5min
Homework 6 Instructionss
Practice Problems for Another Game in Ruby

Section 8 and Homework 6 (First Module with Ruby): Lesson Choices

...
4 leituras, 4 testes
4 leituras
Homework 6 Detailed Peer-Assessment Instructions
Homework 6 Detailed Guidelines for Peer Assessment
Homework 6 Detailed Guidelines for Peer Assessment
Homework 6 Detailed Guidelines for Peer Assessment
Semana
2
5 horas para concluir

Section 9 and Homework 7 (Second Module With Ruby)

Welcome to the second week of Part C where we will focus on how functional programming and object-oriented programming encourage such "exactly opposite" decompositions of problems that they are "more alike than you might realize". This is a key opportunity to synthesize much of what we have learned so far. As the welcome message discusses in more detail, we will go a bit beyond this to touch on some related advanced topics and then dive into the last -- and challenging -- programming assignment, which involves porting an interpreter from ML to Ruby....
9 vídeos (total de (Total 91 mín.) min), 6 leituras, 1 teste
9 videos
Adding Operations or Variants11min
Binary Methods with Functional Decomposition7min
Double Dispatch14min
Optional: Multimethods6min
Multiple Inheritance10min
Mixins11min
Interfaces7min
Optional: Abstract Methods8min
6 leituras
Section 9 Welcome Message5min
Section 9 Reading Notes
Code Files for All Section 9 Videos
Explanation of "Lesson Choices"5min
Homework 7 Instructionss
Practice Problem for Double Dispatch and ML-to-Ruby

Section 9 and Homework 7 (Second Module With Ruby): Lesson Choices

...
4 leituras, 4 testes
4 leituras
Homework 7 Peer Review Detailed Instructions
Homework 7 Peer Review Detailed Instructions
Homework 7 Peer Review Detailed Instructions
Homework 7 Peer Review Detailed Instructions
Semana
3
5 horas para concluir

Section 10, Final Exam, and Course Wrap-Up

We have reached the last module of Programming Languages! We first study subtyping, how it relates to static types for object-oriented programming, and how it relates to generics. There is no assignment or quiz devoted only to this last "new material", but there is a "final exam" covering Part B and Part C of the course. Enjoy studying for the exam, and don't miss the final "wrap-up" lesson when you're all done!...
10 vídeos (total de (Total 92 mín.) min), 4 leituras, 2 testes
10 videos
The Subtype Relation8min
Depth Subtyping8min
Optional: Java/C# Arrays9min
Function Subtyping11min
Subtyping for OOP11min
Generics Versus Subtyping8min
Bounded Polymorphism8min
Summarizing All We Have Learned10min
Saying Good-Bye :-)4min
4 leituras
Section 10 Welcome Message5min
Section 10 Reading Notes
(Lack of) Section 10 Code Files
Information About the Exam (Required Reading)s
2 exercícios práticos
Practice Final Exams
Actual Final Exams
4.9
54 avaliaçõesChevron Right

17%

consegui um benefício significativo de carreira com este curso

17%

recebi um aumento ou promoção

Melhores avaliações

por SSJan 8th 2019

Great course, nicely rounded off the discussions from previous parts. Really puts OOP style programming in context and nicely contrasts it from the functional programming concepts. Highly recommended!

por JHDec 27th 2016

I took this course about 10 years off the college, and it was excellent refresher on the topics I don't use on a daily basis. Absolutely great lecturer, great videos and study materials!

Instrutores

Avatar

Dan Grossman

Professor
Computer Science & Engineering

Sobre Universidade de Washington

Founded in 1861, the University of Washington is one of the oldest state-supported institutions of higher education on the West Coast and is one of the preeminent research universities in the world....

Perguntas Frequentes – FAQ

  • Ao se inscrever para um Certificado, você terá acesso a todos os vídeos, testes e tarefas de programação (se aplicável). Tarefas avaliadas pelos colegas apenas podem ser enviadas e avaliadas após o início da sessão. Caso escolha explorar o curso sem adquiri-lo, talvez você não consiga acessar certas tarefas.

  • Quando você adquire o Certificado, ganha acesso a todo o material do curso, incluindo avaliações com nota atribuída. Após concluir o curso, seu Certificado eletrônico será adicionado à sua página de Participações e você poderá imprimi-lo ou adicioná-lo ao seu perfil no LinkedIn. Se quiser apenas ler e assistir o conteúdo do curso, você poderá frequentá-lo como ouvinte sem custo.

Mais dúvidas? Visite o Central de Ajuda ao Aprendiz.