Сложно написать надёжный код, если ты не знаешь заранее, чего от него ждешь.
Поэтому есть TDD, но это сложно, проще сначала написать какой-код(а потом ещё и прийти к выводу что он не нужен) и только потом покрывать авто тестами.
Если бизнес уволит сотрудников заменив их цифровыми сотрудниками, то бизнес загнётся. Потому что не кому будет покупать услуги бизнеса, так как не на что будет.
Про нехватку ИТшников говорят только барыги курсов. А некоторые компании поддакивают им для того что бы больше было специалистов, для того что бы сбить зарплаты в этой области.
import java.math.BigDecimal
fun main() {
val num1 = BigDecimal("9999999999999999.0")
val num2 = BigDecimal("9999999999999998.0")
val result = num1.subtract(num2)
println(result)
}
Следует в названии статьи уточнять, о ОРМ в реализации какого языка программирования идёт речь. Но судя потому, как оно выглядит на PHP, то да, в этом случае лучше уж на чистом SQL писать.
Тесты служат предохранителем от произвольного изменения кода, своего рода защита от дурака. Если оставлять какой-то код без тестов то в будущем как раз будут снова и снова возникать проблемы, и вот тут и будут выходить переплаты.
Я вообще не понимаю людей которые говорят, что легаси код не нужно покрывать тестами. Представьте себе если там баг в котором не так просто разобраться, да и код, который не понятно как работает. Время на то, что бы разобраться в ручную уйдет куда больше, чем если написать тест под этот код. Вместо того, что бы лазить руками тестить и делать кучу лишних тело движений, автотесты будут запускаться по одному нажатию кнопки. Плюс в будущем не придется снова там ломать руки и ноги потому что будут уже тесты.
Смысл поговорки "скупой платит дважды" как раз в том, что скупой экономит сейчас, и в итоге потом переплачивает, что бы переделывать.
Покрытие кода тестами, даже легаси, это ваша гарантия заказчику, качества и ответственности вашей работы, а все остальное это отговорки. И это гарантия что ваша работа не говно и код не сломается потом, и работодателю не придется переплачивать деньги другому программисту, что бы тот снова копался в этом легаси.
TDD, подходит под легаси. Представьте себе когда вам нужно править кусок готового легаси, вы же не будете его делать без тестов? Если будете это просто означает что вам нравится тратить время больше на ручные тесты, так как ручные тесты больше времени занимают на тестирование.
Покрытие тестами легаси кода даёт больше гарантии безопасности при изменениях и поддержке в будущем. Если вы этого не поняли значит любите постоянно наступать на одни и те же грабли.
Установить PHP гораздо проще, чем, скажем, Ruby on Rails.
Ну, во-первых PHP это язык программирования, а Ruby on Rails, это фреймворк.
Во-вторых, благодаря таким инструментам как rbenv(для python даже клон сделали — pyenv) и rvm установка и управление версиями приложения и языка, даже без использования виртуализации, куда проще чем тот-же composer, в том числе проще и легче решение проблем с зависимостями.
Мне кажется, популярность языка зависит больше не с порогом входа и «крутостью» языка, а с его доступностью.
То есть, что бы написать приложение на JS, не нужно даже устанавливать специальное ПО.
Достаточно запустить браузер которые идет в составе ОС.
В том случае, причиной был именно этот глупый аргумент, были даже споры. Причем огранизация была ИП'шная.
А, закон, я так понимаю, касается больше гос.учреждений.
Сложно написать надёжный код, если ты не знаешь заранее, чего от него ждешь.
Поэтому есть TDD, но это сложно, проще сначала написать какой-код(а потом ещё и прийти к выводу что он не нужен) и только потом покрывать авто тестами.
Если бизнес уволит сотрудников заменив их цифровыми сотрудниками, то бизнес загнётся. Потому что не кому будет покупать услуги бизнеса, так как не на что будет.
Что бы правильно получилось нужно вывод прописать так:
Ruby:
В C# нужно указать в конце чисел суффикс `m`:
Си.
Правильно:
Просто код который приведен в посте, не правильно использует вычисления с большими числами, судя по всему.
Про нехватку ИТшников говорят только барыги курсов.
А некоторые компании поддакивают им для того что бы больше было специалистов, для того что бы сбить зарплаты в этой области.
Kotlin:
Но это в онлайн компиляторе.
А я как раз считаю лучшей серией Героев 4.
В ней лучшее от классики плюс добавили другие интересные вещи. Улучшили 2D графику, можно управлять героями и вообще удобнее управление.
Следует в названии статьи уточнять, о ОРМ в реализации какого языка программирования идёт речь. Но судя потому, как оно выглядит на PHP, то да, в этом случае лучше уж на чистом SQL писать.
Длинные названия методов как processRawDataIntoModel() это хороший код?
Тесты служат предохранителем от произвольного изменения кода, своего рода защита от дурака.
Если оставлять какой-то код без тестов то в будущем как раз будут снова и снова возникать проблемы, и вот тут и будут выходить переплаты.
Я вообще не понимаю людей которые говорят, что легаси код не нужно покрывать тестами.
Представьте себе если там баг в котором не так просто разобраться, да и код, который не понятно как работает. Время на то, что бы разобраться в ручную уйдет куда больше, чем если написать тест под этот код. Вместо того, что бы лазить руками тестить и делать кучу лишних тело движений, автотесты будут запускаться по одному нажатию кнопки.
Плюс в будущем не придется снова там ломать руки и ноги потому что будут уже тесты.
Смысл поговорки "скупой платит дважды" как раз в том, что скупой экономит сейчас, и в итоге потом переплачивает, что бы переделывать.
Покрытие кода тестами, даже легаси, это ваша гарантия заказчику, качества и ответственности вашей работы, а все остальное это отговорки.
И это гарантия что ваша работа не говно и код не сломается потом, и работодателю не придется переплачивать деньги другому программисту, что бы тот снова копался в этом легаси.
TDD, подходит под легаси. Представьте себе когда вам нужно править кусок готового легаси, вы же не будете его делать без тестов? Если будете это просто означает что вам нравится тратить время больше на ручные тесты, так как ручные тесты больше времени занимают на тестирование.
Покрытие тестами легаси кода даёт больше гарантии безопасности при изменениях и поддержке в будущем. Если вы этого не поняли значит любите постоянно наступать на одни и те же грабли.
Ну, во-первых PHP это язык программирования, а Ruby on Rails, это фреймворк.
Во-вторых, благодаря таким инструментам как rbenv(для python даже клон сделали — pyenv) и rvm установка и управление версиями приложения и языка, даже без использования виртуализации, куда проще чем тот-же composer, в том числе проще и легче решение проблем с зависимостями.
То есть, что бы написать приложение на JS, не нужно даже устанавливать специальное ПО.
Достаточно запустить браузер которые идет в составе ОС.
А, закон, я так понимаю, касается больше гос.учреждений.