Практическая математика для разработчиков интерфейсов

Этот курс поднимает вечный вопрос о связи между математикой программирования. “Нужна ли мне математика, чтобы стать программистом?” Давайте выясним!

Как выразился Майк Джеймс, Помогает Ли Математика Программированию Или Программирование Помогает Математике?:

Отношения между программированием и математикой-это то, что время от времени обсуждают обе стороны забора, но в основном об этом думают программисты. Причина, я полагаю, заключается в том, что многие программисты не считают себя хорошими в математике, и поэтому утверждение, что математика необходима для программирования, является угрожающим.

На практике, хотя программирование имеет свои корни в математике, вы можете выполнять большую часть своей повседневной жизни, не задумываясь об этом. Но на это можно посмотреть и с другой стороны – изучать математику с помощью программирования. Поскольку математика-это абстрактные понятия, что-то конкретное, разделяющее те же принципы, что и программирование, может на самом деле заставить вас визуализировать эти понятия и понять истинную математику через них. Это концепция, лежащая в основе образовательных языков, таких как логотип, например.

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

И это лежит в основе “Практической математики для разработчиков интерфейсов”, бесплатного часового онлайн-курса от Райана Гоньона. Он не утомляет вас формальной математикой, типами и уравнениями, но показывает, как щепотка математики может оказаться полезной в реальных сценариях, таких как создание корзины покупок, например.

Практическая математика

С учетом сказанного, то, чему мы собираемся научиться в ходе этого короткого курса, – это строить :

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

Первый сценарий “Корзина покупок” включает в себя прокатку вашей собственной случайной функции, так как математика Javascript.Random возвращает значения только от 0 до 1, и, возможно, нам нужны значения от 10 до 30. Затем мы используем нашу пользовательскую функцию roll() для создания фиктивных данных для тестирования , например, для создания списка продуктов и их цен.Следующим шагом является вызов функции уменьшения, чтобы получить общую сумму корзины, а также добавить к ней налог.

В “Приложении еженедельного планирования” мы можем манипулировать объектом даты и переменными CSS для создания HTML-макета для решения интересных проблем, например, при определении макета для еженедельного расписания, чтобы каждый день занимал 1/3 высоты приложения. Эта глава в целом была в основном посвящена алгоритмическому мышлению при разбиении задачи на подзадачи.

И, наконец, в “Ежемесячном отчете о расходах” мы объединяем все изученное: функции Javascript высокого порядка, переменные CSS, манипуляции с HTML-макетом, все это смешивается с математикой для логистики и расчетов, связанных с макетом.

В заключение, “Практическая математика для разработчиков интерфейсов”-это краткое хорошо выполненное руководство по легкой математике для использования в программировании и сценариях реального мира. И хотя созданные HTML-макеты уродливы и голые кости, они эффективны как способ обучения основным концепциям. 

Если вы ищете больше математического мышления, ознакомьтесь с нашим освещением некоторых курсов Coursera.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *