Нужно ли знать математику для программирования на Java

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

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

И вот тут получается, что изучение математики, решение математических задач https://www.cyberforum.ru/mathematics/ тренирует мозг человека как раз приблизительно в этом направлении. И человек потом испытывает меньше трудностей при программировании, проще придумывает алгоритмы и реализует их в коде. Вообще, у программиста должно быть развито логическое мышление, и ему требуется способность учитывать сразу множество факторов и последствий того или иного изменения в коде. То есть его мышлению нужен ещё и “объем”, чтоб в сознание сразу помещалось большое число факторов.

Приведу практический пример: программист Java приходит с утра на работу и видит через систему постановки задач, что тестировщики обнаружили несколько багов, то есть ошибок. Там описано, что такая-то функция приложения работает неправильно. Например, при прочтении письма из веб-интерфейса почты, в некоторых случаях письмо выдается в неправильной кодировке. Задача разработчика — исправить эту ошибку. И вот тут ему уже нужно знать, как работает этот интерфейс, в какой последовательности, в каких файлах и какие места кода работают при прочтении письма. Уже на этом этапе у него могут возникнуть предположения, почему кодировка определяется неправильно.

С этим он может справиться сам или обратиться за помощью на форум java программистов https://www.cyberforum.ru/java-beginners/. Далее, он лезет в код и, читая “подозрительные” места кода, видит у себя в сознании, что этот код делает. Также, он отправляет себе в аккаунт это письмо и выполняет отладку приложения при его прочтении, поэтапно выводя на экран значения переменных. В конце концов, программист должен сообразить, в какой именно строке кода находится причина ошибки.

Бывает так, что исправить надо всего несколько символов, а вот думать и копаться в коде приходится перед этим много. И вот разработчик исправил ошибку. Но, исправляя ошибку, он должен представлять себе все взаимосвязанные части проекта и, желательно, уже у себя в голове увидеть, не затронет ли их это исправление так, что из-за внесённого изменения в код появятся новые баги. И вот тут, чем больше одновременно поместится в его сознании, тем лучше. Если же программист что-то не учел, даже один фактор, то это может привести к тому, что после исправления этой ошибки появится одна или несколько новых.

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