         super.didReceiveMemoryWarning()
         // Dispose of any resources that can be recreated.
     }
+
+    private func setupDataSources() {
+        for i in 0 ..< 10 {
+            dataSources.append(DataSource(title: String(i)))
+        }
+    }
 }
 
 extension SampleTableViewController: UITableViewDataSource {
-    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
-        return dataSources.count
-    }
+    // MARK: - Configuring a Table View
 
     func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
         let cell = tableView.dequeueReusableCell(withIdentifier: SampleTableViewCell.identifier, for: indexPath)


        return cell
    }
}

extension SampleTableViewController: UITableViewDelegate { }

        navigationItem.title = "TableView"

        view.addSubview(sampleTableView)
        setupDataSources()
    }

    override func viewWillAppear(_ animated: Bool) {
