YoVDO

Tracking Inter-process Dependencies

Offered By: Gopher Academy via YouTube

Tags

GopherCon Courses Software Development Courses Go Courses Service-Oriented Architecture Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore inter-process dependencies in service-oriented architectures through a Go-based static analysis project. Dive into the challenges of tracking system dependencies, learn about static analysis libraries, and discover effective usage techniques. Examine obstacles encountered during development and strategies to overcome them. Gain insights into call graphs, ASTs, parsing, and workarounds for complex code scenarios. Understand the intricacies of analyzing Go code, including handling false positives and reflection. Walk through the project's evolution, from initial roadmap to rebuilding from the ground up, and extract valuable takeaways for implementing similar analysis tools in your own projects.

Syllabus

Intro
Roadmap
Outcomes
What are "interesting" calls?
Who are we calling?
Which call do we mark?
Direct call
Specific helper
Specific & generic helpers
Call chain
Marked paths
GoDoc search: "call graph"
Call graphs
The Plan
Outline
go/token: FileSets
ASTs and parsing
AST example
go/ast
go/parser
Bumps in the code
Point of no return
Workarounds
Not working well
Rebuild from the ground up
Opening files is pretty common
False positive
Reflection
Takeaways


Taught by

Gopher Academy

Related Courses

Разработка веб-сервисов на Go - основы языка
Moscow Institute of Physics and Technology via Coursera
Getting Started with Go
University of California, Irvine via Coursera
Concurrency in Go
University of California, Irvine via Coursera
Functions, Methods, and Interfaces in Go
University of California, Irvine via Coursera
Game Thinking: Juego y toma de decisiones
The Pontificia Universidad Javeriana via edX