5. Introdução à programação orientada a objetos em Dart

Página 56

A programação orientada a objetos (POO) é um paradigma de programação que utiliza a ideia de "objetos" para representar dados e métodos. Isso é particularmente útil quando se trata de criar aplicativos complexos, pois permite que os desenvolvedores organizem melhor seu código e o tornem mais reutilizável. Nesta seção, vamos introduzir o conceito de programação orientada a objetos em Dart, a linguagem de programação usada pelo Flutter.

1. Classes e Objetos

Na programação orientada a objetos, uma classe é um plano ou modelo a partir do qual os objetos são criados. Em Dart, você define uma classe usando a palavra-chave class. Por exemplo, você pode ter uma classe chamada Person que tem propriedades como name e age. Uma vez que você tem uma classe, você pode criar um objeto a partir dela. Por exemplo:

class Person {
  String name;
  int age;
}

void main() {
  Person person = Person();
  person.name = 'John';
  person.age = 30;
}

Neste exemplo, Person é a classe e person é o objeto. Observe que você pode atribuir valores às propriedades do objeto usando a notação de ponto.

2. Métodos

Os métodos são funções que pertencem a uma classe. Eles geralmente manipulam as propriedades da classe. Por exemplo, você pode ter um método greet na classe Person que imprime uma saudação personalizada:

class Person {
  String name;
  int age;

  void greet() {
    print('Hello, I am $name and I am $age years old.');
  }
}

void main() {
  Person person = Person();
  person.name = 'John';
  person.age = 30;
  person.greet();  // prints: Hello, I am John and I am 30 years old.
}

3. Construtores

Um construtor é um método especial que é chamado quando um objeto é criado a partir de uma classe. Em Dart, o construtor tem o mesmo nome que a classe. Você pode usar o construtor para inicializar as propriedades do objeto. Por exemplo:

class Person {
  String name;
  int age;

  Person(String name, int age) {
    this.name = name;
    this.age = age;
  }

  void greet() {
    print('Hello, I am $name and I am $age years old.');
  }
}

void main() {
  Person person = Person('John', 30);
  person.greet();  // prints: Hello, I am John and I am 30 years old.
}

Neste exemplo, o construtor Person aceita dois parâmetros e os usa para inicializar as propriedades name e age.

4. Herança

A herança é um recurso da programação orientada a objetos que permite que uma classe herde propriedades e métodos de outra classe. Em Dart, você usa a palavra-chave extends para criar uma classe filha. Por exemplo, você pode ter uma classe Employee que herda de Person:

class Person {
  String name;
  int age;

  Person(String name, int age) {
    this.name = name;
    this.age = age;
  }

  void greet() {
    print('Hello, I am $name and I am $age years old.');
  }
}

class Employee extends Person {
  String company;

  Employee(String name, int age, this.company) : super(name, age);
}

void main() {
  Employee employee = Employee('John', 30, 'Google');
  employee.greet();  // prints: Hello, I am John and I am 30 years old.
  print(employee.company);  // prints: Google
}

Neste exemplo, Employee é uma classe filha de Person e herda suas propriedades e métodos. Observe o uso do super no construtor de Employee para chamar o construtor de Person.

5. Encapsulamento

O encapsulamento é o princípio de ocultar detalhes de implementação e permitir o acesso apenas por meio de métodos. Em Dart, você pode usar a palavra-chave _ (underscore) para tornar uma propriedade ou método privado. Por exemplo:

class Person {
  String _name;
  int _age;

  Person(this._name, this._age);

  void greet() {
    print('Hello, I am $_name and I am $_age years old.');
  }
}

void main() {
  Person person = Person('John', 30);
  person.greet();  // prints: Hello, I am John and I am 30 years old.
}

Neste exemplo, as propriedades _name e _age são privadas, o que significa que elas não podem ser acessadas fora da classe Person.

Esses são os conceitos básicos da programação orientada a objetos em Dart. Eles formam a base para a criação de aplicativos Flutter mais complexos e reutilizáveis.

Ahora responde el ejercicio sobre el contenido:

Qual é o propósito de um construtor em programação orientada a objetos em Dart?

¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.

¡Tú error! Inténtalo de nuevo.

Siguiente página del libro electrónico gratuito:

575.1. Introdução à programação orientada a objetos em Dart: Introdução à programação orientada a objetos

¡Obtén tu certificado para este curso gratis! descargando la aplicación Cursa y leyendo el libro electrónico allí. ¡Disponible en Google Play o App Store!

Disponible en Google Play Disponible en App Store

+ 6,5 millones
estudiantes

Certificado gratuito y
válido con código QR

48 mil ejercicios
gratis

Calificación de 4.8/5
en tiendas de aplicaciones

Cursos gratuitos de
vídeo, audio y texto.