Углубляемся в основные способы кодирования информации.

Теория вычислений сводится к восьми основным принципам. Эти принципы описывают саму природу вычислений — что можно вычислить, насколько эффективно и с какими ресурсами. Точно так же, как физика стремится понять фундаментальные законы Вселенной, теория вычислений раскрывает примитивы вычислений.

Хотя эта теория может показаться абстрактной и далекой от практического применения, она определяет всю область информатики. Вверх по течению, это основа информационных технологий. Таким образом, нас интересует не только проектирование и анализ алгоритмов, программного и аппаратного обеспечения, но и понимание того, что означают вычисления как в практическом, так и в философском контексте.

Имея это в виду, давайте рассмотрим третий принцип из нашего списка из восьми: представление и обработка данных. Прежде всего позвольте мне задать вопрос:

Когда вы думаете о данных, что вы видите в уме?

Держи свой ответ. Обещаю, мы к этому вернёмся. Сейчас я хочу обрисовать в общих чертах четыре элемента представления и обработки данных, которые мы должны рассмотреть. Мы можем визуализировать каждый из них, используя наш работающий пример кода GameCharacter.

Почему представление и обработка данных?

Представление данных в основном связано с тем, как информация кодируется для вычислений. Каждая часть информации, от простого числа до сложной структуры, такой как видео или изображение, должна быть представлена ​​так, чтобы компьютеры могли ее понимать, манипулировать и хранить. В то же время мы, люди, полагаемся на абстракции примитивов данных для понимания реализации организационной сложности. Обратите внимание, особенно на первые три элемента ниже.

Примитивные типы данных. Компьютеры имеют дело с двоичными данными на самом базовом уровне. В большинстве языков программирования целые числа, числа с плавающей запятой, символы и логические значения являются основными типами данных. Их представление включает в себя битовые комбинации в памяти с такими особенностями, как порядок байтов, точность и соображения переполнения/недополнения.

class GameCharacter:
    def __init__(self, name, age, level, is_alive)…