Skip to content

Programming Languages

Free Course

Building a Web Browser

Related Nanodegree Program

Introduction to Programming

About this course

This class will give you an introduction to the fundamentals of programming languages. Key concepts include how to specify and process valid strings, sentences and program structures.

What you will learn

  1. String Patterns
    • Find and specify classes of strings using regular expressions.
    • Learn how to escape problematic characters.
    • Represent a Finite State Machine.
  2. Lexical Analysis
    • Breaking strings down into important words.
    • Write your own lexer that can tokenize HTML strings.
    • Use regular expressions to parse, lex, and tokenize HTML and JavaScript.
  3. Grammars
    • How to specify and deconstruct valid sentences.
    • Parsing grammars and discovering errors using regular expressions.
    • Use generators to parse strings.
  4. Parsing
    • Turning sentences into trees.
    • Discover malformed input.
    • Set precedence to prioritize parsing of strings.
  5. Interpreting
    • Simulating programs.
    • Write an HTML interpreter.
    • Calling functions and interpreting function definitions.
  6. Building a Web Browser
    • Interpreting HTML and JavaScript
    • Build your own web browser.
    • Optimize the performance of your web browser.
  7. Wrap-up
    • Use regular expressions to parse HTML and JavaScript
    • Write an HTML interpreter.
    • Write a JavaScript interpreter.

Prerequisites and requirements

This course assumes previous programming experience, comparable to what is covered by the Udacity CS101 course.

See the Technology Requirements for using Udacity.

Why take this course?

Take this class and learn how to build your own simple web browser complete with the ability to parse and understand HTML and JavaScript.

Learn with the best.

  • Westley Weimer
    Westley Weimer

    Instructor