# chapter3

## ROS Nodes

A node = an executable file within a ROS package.

Node <-> use a ROS client library to communicate with other nodes.

Nodes <-> Topic.

Nodes <-> Service.

### Client Libraries

ROS client libraries = rospy / roscpp

```
$ roscore

$ rosrun turtlesim turtlesim_node __name:=my_turtle

$ rosnode list
$ rosnode info /rosout
$ rosnode ping my_turtle
```

## Services

Services are another way that nodes can communicate with each other. **request & response**.
