Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Работа тестировщиком после переезда в Германию

18.12.20 15:23
Re: Работа тестировщиком после переезда в Германию
 
MrSanders коренной житель
в ответ uscheswoi_82 18.12.20 14:34, Последний раз изменено 18.12.20 15:38 (MrSanders)
Ну вот, а в PHP конкатенация это ".", а не "+", "+" это арифметический оператор. Всё логично продумано, и защищено от путаницы. Иногда когда перехожу на другие языки, поинерции ставлю "." вместо "+".

Вы там недавно спрашивали кто дурак... Наверное тот, кто сам себе услышал слово "конкатенация" и радостно бросился опровергать.

Причём другие участники всё поняли правильно. Я бы на вашем месте задумался бы.


Поясняю: никакой конкатенации быть не должно. $a + $b должно было сложить два числа. Но вот внезапно в $b заносилось не числовое, а текстовое значение. Причём ошибка была чуть ли не в том, что вместо 8,-5,aaa,bbb в CSV стояло 8,- 5,aaa,bbb. И в $b стало равно "- 5". И всё. Вместо 3 получаем на выходе 8.

А теперь давайте, заставьте вот этот код на яве работать как пыхыпы:

String[] splittedCsvLine = <получили откуда-то разбитую на значения строчку CSV>;
int a = Intger.parseInt(splittedCsvLine[0]);
int b = Intger.parseInt(splittedCsvLine[1]);
return a + b;

Для вас поясню - я хочу увидеть сумму (а + б) или ошибку, если что-то пошло не так. А уж что я буду делать с ошибкой решать мне, а не недоязыку.


P.S. Это не единственный случай, когда я офигевал от пыхыпы, но почему-то крепче всего запомнившийся. Такой подлянки я не ожидал. Приведения обоих к типу "строка" и конкатенации? Ладно, можно, легко заметить. Когда вместо цифирки 3 увидишь "8- 5" легко догадаться что пошло не так. Получить ошибку? С удовольствием. Но вот так молча насрать на второй аргумент операции... Такое могЁт только пыхыпы.

P.P.S. Даже жабаскрипт лучше. Хотя тоже как язык редкостная дрянь. Но тут нам на помощь спешит TypeScript. Как я за использование "any" дрючу жабаскриптеров, это просто сказка какая-то :)

 

Перейти на