Part 1: Programming in Julia
5
Design Patterns
Modern Scientific Computing with Julia
About
Preface
Part 1: Programming in Julia
1
Basics of the Julia Language
2
Julia’s Type System
3
Methods & Multiple Dispatch
4
Working with Arrays
5
Design Patterns
Part 2: Research Software Engineering
6
Package Development
7
Git and GitHub
8
Software Sustainability
9
Test Driven Development
10
Performance & Introspection
Part 3: Useful Libraries and Solutions to Common Problems
11
Working with Data
12
Differentiable Programming
13
Linear and Nonlinear Equations
14
Differential Equations
15
Machine Learning
Part 4: Parallel and GPU Programming
16
Parallel Programming Paradigms
17
Parallel Arrays
18
GPU Programming
19
Hybrid Parallel Programming
20
Case Studies
Summary
References
Table of contents
5.1
Composition
5.2
Conversion, Promotion, Similar
5.3
Interfaces
5.4
Domain-specific Languages
Part 1: Programming in Julia
5
Design Patterns
5
Design Patterns
5.1
Composition
5.2
Conversion, Promotion, Similar
5.3
Interfaces
5.4
Domain-specific Languages
4
Working with Arrays
Part 2: Research Software Engineering