diff --git c/core/modules/comment/comment.module w/core/modules/comment/comment.module
index 808ac54..3597db0 100644
--- c/core/modules/comment/comment.module
+++ w/core/modules/comment/comment.module
@@ -906,7 +906,7 @@ function comment_links(Comment $comment, EntityInterface $node) {
   }
 
   // Add translations link for translation-enabled comment bundles.
-  if (module_exists('content_translation') && content_translation_translate_access($comment)) {
+  if (Drupal::moduleHandler()->moduleExists('content_translation') && content_translation_translate_access($comment)) {
     $links['comment-translations'] = array(
       'title' => t('translate'),
       'href' => 'comment/' . $comment->id() . '/translations',
@@ -1012,7 +1012,7 @@ function comment_form_node_type_form_alter(&$form, $form_state) {
       ),
     );
     // @todo Remove this check once language settings are generalized.
-    if (module_exists('content_translation')) {
+    if (Drupal::moduleHandler()->moduleExists('content_translation')) {
       $comment_form = $form;
       $comment_form_state['content_translation']['key'] = 'language_configuration';
       $form['comment'] += content_translation_enable_widget('comment', 'comment_node_' . $node_type->id(), $comment_form, $comment_form_state);
@@ -1314,9 +1314,9 @@ function comment_load($cid, $reset = FALSE) {
  *   The number of new comments or FALSE if the user is not logged in.
  */
 function comment_num_new($nid, $timestamp = 0) {
-  global $user;
+  $user = Drupal::currentUser();
 
-  if ($user->isAuthenticated() && module_exists('history')) {
+  if ($user->isAuthenticated() && Drupal::moduleHandler()->moduleExists('history')) {
     // Retrieve the timestamp at which the current user last viewed this node.
     if (!$timestamp) {
       $timestamp = history_read($nid);
@@ -1406,7 +1406,7 @@ function comment_get_display_page($cid, $node_type) {
  * @param Drupal\comment\Comment $comment
  */
 function comment_preview(Comment $comment) {
-  global $user;
+  $user = Drupal::currentUser();
   $preview_build = array();
 
   if (!form_get_errors()) {
@@ -1622,7 +1622,7 @@ function template_preprocess_comment(&$variables) {
  */
 function theme_comment_post_forbidden($variables) {
   $node = $variables['node'];
-  global $user;
+  $user = Drupal::currentUser();
 
   // Since this is expensive to compute, we cache it so that a page with many
   // comments only has to query the database once for all the links.
diff --git c/core/modules/comment/comment.views.inc w/core/modules/comment/comment.views.inc
index d8887ff..f1d455f 100644
--- c/core/modules/comment/comment.views.inc
+++ w/core/modules/comment/comment.views.inc
@@ -141,7 +141,7 @@ function comment_views_data() {
     ),
   );
 
-  if (module_exists('language')) {
+  if (Drupal::moduleHandler()->moduleExists('language')) {
     $data['comment']['langcode'] = array(
       'title' => t('Language'),
       'help' => t('The language the comment is in.'),
diff --git c/core/modules/comment/lib/Drupal/comment/Plugin/views/field/NcsLastCommentName.php w/core/modules/comment/lib/Drupal/comment/Plugin/views/field/NcsLastCommentName.php
index 600eb97..7de1836 100644
--- c/core/modules/comment/lib/Drupal/comment/Plugin/views/field/NcsLastCommentName.php
+++ w/core/modules/comment/lib/Drupal/comment/Plugin/views/field/NcsLastCommentName.php
@@ -38,7 +38,7 @@ public function query() {
         )
       )
     );
-    $join = drupal_container()->get('plugin.manager.views.join')->createInstance('standard', $definition);
+    $join = \Drupal::service('plugin.manager.views.join')->createInstance('standard', $definition);
 
     // ncs_user alias so this can work with the sort handler, below.
     $this->user_table = $this->query->ensureTable('ncs_users', $this->relationship, $join);
diff --git c/core/modules/comment/lib/Drupal/comment/Plugin/views/sort/NcsLastCommentName.php w/core/modules/comment/lib/Drupal/comment/Plugin/views/sort/NcsLastCommentName.php
index f87203d..b430a3f 100644
--- c/core/modules/comment/lib/Drupal/comment/Plugin/views/sort/NcsLastCommentName.php
+++ w/core/modules/comment/lib/Drupal/comment/Plugin/views/sort/NcsLastCommentName.php
@@ -28,7 +28,7 @@ public function query() {
       'left_table' => $this->tableAlias,
       'left_field' => 'last_comment_uid',
     );
-    $join = drupal_container()->get('plugin.manager.views.join')->createInstance('standard', $definition);
+    $join = \Drupal::service('plugin.manager.views.join')->createInstance('standard', $definition);
 
     // @todo this might be safer if we had an ensure_relationship rather than guessing
     // the table alias. Though if we did that we'd be guessing the relationship name
diff --git c/core/modules/comment/lib/Drupal/comment/Tests/CommentFieldsTest.php w/core/modules/comment/lib/Drupal/comment/Tests/CommentFieldsTest.php
index 87e2de6..395c245 100644
--- c/core/modules/comment/lib/Drupal/comment/Tests/CommentFieldsTest.php
+++ w/core/modules/comment/lib/Drupal/comment/Tests/CommentFieldsTest.php
@@ -73,7 +73,7 @@ function testCommentEnable() {
     $edit['modules[Core][comment][enable]'] = FALSE;
     $this->drupalPostForm('admin/modules', $edit, t('Save configuration'));
     $this->rebuildContainer();
-    $this->assertFalse(module_exists('comment'), 'Comment module disabled.');
+    $this->assertFalse(\Drupal::moduleHandler()->moduleExists('comment'), 'Comment module disabled.');
 
     // Enable core content type module (book).
     $edit = array();
@@ -85,7 +85,7 @@ function testCommentEnable() {
     $edit['modules[Core][comment][enable]'] = 'comment';
     $this->drupalPostForm('admin/modules', $edit, t('Save configuration'));
     $this->rebuildContainer();
-    $this->assertTrue(module_exists('comment'), 'Comment module enabled.');
+    $this->assertTrue(\Drupal::moduleHandler()->moduleExists('comment'), 'Comment module enabled.');
 
     // Create nodes of each type.
     $book_node = $this->drupalCreateNode(array('type' => 'book'));
