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

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

11076   21 22 23 24 25 26 27 28 29 30 31 все
koder патриот24.12.20 06:56
koder
NEW 24.12.20 06:56 
в ответ MrSanders 23.12.20 20:27
Кстати, мои 5 копеек в обсуждение какой код лучше: по умолчанию самый лучший это самый понятный. Который читаешь и понимаешь что тут происходит.

up

uscheswoi_82 местный житель24.12.20 08:35
uscheswoi_82
NEW 24.12.20 08:35 
в ответ koder 24.12.20 06:44, Последний раз изменено 24.12.20 08:37 (uscheswoi_82)
Как то печально получилось...

Для него да, т.к. заказов из-за локдауна не будет. Для меня нет. Там где он живёт у всех подозрительных на корону в локдауне прям двери в подъезде заваривают, еду по верёвочки родственники передают, так сказать передачка, идут в пятёрочку а потом им скидывают верёвку, или если без маски идёшь то до полусмерти дубинкой могут избить. Во время я оттуда уехал. И во время президент в отставку ушёл, а то его бы сейчас инакомыслющие свергли.

Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
AlexNek патриот24.12.20 12:38
AlexNek
NEW 24.12.20 12:38 
в ответ Murr 24.12.20 00:14
Первопричина - в реализации, а не в языке

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

MrSanders коренной житель24.12.20 13:21
NEW 24.12.20 13:21 
в ответ Murr 23.12.20 21:25
Возможно было бы достаточно выбрать другое имя переменной или добавить коммент...

Согласен. Хотя бы переименовать "int_minute" в что-то вроде "full_quarter_minute". Не стал, чтобы не перенапрягать оппонента, а то вообще ничего знакомого в коде не увидит...

В идеале - объявить константу "четверть часа в минутах" (а то я два раза 15 использовал) и функцию "округлитьМинутыДоПолнойЧетверти"и её уже вызывать. Но в функции уже стоит проверять параметр, что он >=0 и < 60 и кидать ошибку... И вот это всё ради одной строчки было лень. Так как используется это в одном единственном месте, то просто добавить строчку с комментарием "округляем минуты до полной четверти часа, например 29 => 15" должно хватить.

MrSanders коренной житель24.12.20 13:43
NEW 24.12.20 13:43 
в ответ AlexNek 23.12.20 21:54
Это что то типа кода на руби от высокодаренных - да, просто - да быстро, а что делает фиг поймешь.
Тут нужно или постоянно пользовать данный способ или немного задуматься, а нафига тут подобная конструкция.

На руби одарённые не писали никогда. Модные писали :) Потому как в этом языке не было вообще ничего нового и интересного. Очередная duck-typing поделуха. Скопированные с перла гемсы и всё.

Но. Не согласен. Это примитивная конструкция. 3 действия в одной строчке. Все действия примитивные. поделил, обрезал, умножил. Никаких ветвлений, никакого синтаксиса, у которого может быть 20 возможных интерпретаций. Никаких перлоподобных фантазий вроде $@_$!@{__%} или битовых масок. Да, когда первый раз такое видишь, надо секунд 10 подумать. Примерно, как и когда в первый раз видишь ++ или +=. Если человек не в состоянии это понять, ему не в программисты, ему в дворники. Переменную стоило бы по-другому назвать, тут да. Облегчило бы понимание.

uscheswoi_82 свой человек24.12.20 13:56
uscheswoi_82
NEW 24.12.20 13:56 
в ответ MrSanders 24.12.20 13:21
оппонента, а то вообще ничего знакомого в коде не увидит...

А у вас есть хотябы портфолио, чтобы хотя-бы увидеть ваш код и оценить ваши способности? Вы показали только одну строчку, и то взяли отсюда, https://github.com/moment/moment/issues/959 и https://stackoverflow.com/questions/4968250/how-to-round-t... копи пастить каждый умеет.


int_minute = Math.trunc(dt_time.Minute/15) * 15;

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

Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
AlexNek патриот24.12.20 14:25
AlexNek
NEW 24.12.20 14:25 
в ответ MrSanders 24.12.20 13:43
3 действия в одной строчке

Примитивная конструкция не делает 3 действия, а тем более в одной строчке.


Примерно, как и когда в первый раз видишь ++ или +=

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

Это формула с которой нужно разбираться. Набор ифов и то будет лучше в данном случае, там ничего не нужно разбираться

MrSanders коренной житель24.12.20 14:32
NEW 24.12.20 14:32 
в ответ uscheswoi_82 24.12.20 13:56

Нет, не покажу. В открытом доступе практически ничего нет. А в том, что можно увидеть, моё полное имя есть. Обойдётесь.

Да, я рад, что сподвиг вас поискать способы решения вашей проблемки в гугле. Стоило бы, конечно, поискать до того как лепить угробище с кучей if-then-else, но лучше поздно, чем никогда, верно? Теперь вы вот округлять по произвольному базису научились.

И один вопрос, можно? А что вы понимаете под copy-paste? Я что-то по обеим ссылкам прошёл, нигде Math.trunc не нашёл...

AlexNek патриот24.12.20 14:40
AlexNek
NEW 24.12.20 14:40 
в ответ uscheswoi_82 24.12.20 13:56
Если кода нет, который вы бы могли нам продемонстрировать

Тут я с вами не согласен. Никто не должен никому ничего демонстрировать.

Если хотите сильно меряется пиписьками, то для этого есть масса других способов, но не факт, что это же желание будет иметь и другая сторона.

Murr патриот24.12.20 14:52
Murr
NEW 24.12.20 14:52 
в ответ AlexNek 24.12.20 14:25

Набор ифов и то будет лучше в данном случае

-----

Не, не будет - там нужно "читать границы" ифов и думать все ли покрыто.

Наиболее понятным будет... switch...case.

При этом касы должны четко указывать принимаемое время.

switch(dt_time.Minute/15)
{
case 0: rounded_minute = 0; break;
case 1: rounded_minute = 15; break;
case 2: rounded_minute = 30; break;
case 3: rounded_minute = 45; break;
default: throw new Exception("Can't get minutes rounded.");
}

или, как вариант:

static int[] roundet_time = { 0, 15, 30, 45};
int minutes_region = dt_time.Minute/15; // => 0..3, not checked foor >=4 & <=-1
rounded_minute = roundet_time[minutes_region];

но тут тоже не сразу поймешь как сделано.

Murr патриот24.12.20 14:55
Murr
NEW 24.12.20 14:55 
в ответ AlexNek 24.12.20 12:38

обругать матом

-----

Не надо ругать матом - им надо органично... разговаривать... спок

Murr патриот24.12.20 14:59
Murr
NEW 24.12.20 14:59 
в ответ MrSanders 24.12.20 13:43

поделил, обрезал, умножил

-----

Среднее то зачем? Там целочисленная математика...

AlexNek патриот24.12.20 15:14
AlexNek
NEW 24.12.20 15:14 
в ответ Murr 24.12.20 14:52
но тут тоже не сразу поймешь как сделано.

Самое интересное в том, что я пока не могу найти вариант который бы меня полностью устроил.

MrSanders коренной житель24.12.20 15:25
NEW 24.12.20 15:25 
в ответ AlexNek 24.12.20 14:25
Примитивная конструкция не делает 3 действия, а тем более в одной строчке.

Исчо как. Зависит от действия.

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

Это старость! Ну, извините, не думал, что вы в уме для парочки значений, вроде trunc(32/15) * 15, trunc(1/15) * 15, посчитать не можете.

И да, примитивные (арифметические) операции можно и больше 3-х в строчке. Смешивать, например с логическими операциями, стоит аккуратнее.

Например, 4 операции: sqrt(a*a + b*b)

узнаёте?

MrSanders коренной житель24.12.20 15:28
NEW 24.12.20 15:28 
в ответ Murr 24.12.20 14:59
Среднее то зачем? Там целочисленная математика...

Потому что я думал что пациент пишет на жабаскрипте. А там number и всё.

uscheswoi_82 свой человек24.12.20 15:41
uscheswoi_82
NEW 24.12.20 15:41 
в ответ MrSanders 24.12.20 14:32
Нет, не покажу.

Ок, тогда и нечего говорить что-то негативное про своих опонентов.

Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
AlexNek патриот24.12.20 15:51
AlexNek
NEW 24.12.20 15:51 
в ответ MrSanders 24.12.20 15:25
Это старость

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


посчитать не можете

С написанного посчитать еще можно, а вот картинка не возникает на автомате.


Например, 4 операции

ну так там деления нет и узнать можно сразу.

Murr патриот24.12.20 16:40
Murr
NEW 24.12.20 16:40 
в ответ MrSanders 24.12.20 15:25

посчитать не можете

-----

Посчитаем... но на понимание того что там считается нужно время.

Вопрос же стоит - как написать чтобы было понятно сразу...

Murr патриот24.12.20 16:47
Murr
NEW 24.12.20 16:47 
в ответ MrSanders 24.12.20 15:28
думал что пациент пишет на жабаскрипте

-----

new System.Windows.Forms.Label


Но! Написал - правильно - вызовом функции подавил возможную оптимизацию вычисления констант... смущ

Ну либо надо было врапить прагмами...

Бесконечный цикл посетитель24.12.20 16:49
NEW 24.12.20 16:49 
в ответ dymanoid 23.12.20 19:15
Весь IT мир уже давно живёт в других реалиях. Redis, DynamoDB, MariaDB, MongoDB, для RDS в крайнем случае SQL Server/Postgres/MySQL с мультизонной репликацией.

Я бы еще добавил биг дата, искусственный интеллект, блок чейн ну и конечно дигитализация :)


Есть, конечно, полторы конторы в Германии, которые до сих пор на VBA и Access лабают, но это даже и не динозавры уже, а го*но динозавров.

Особенно хорошо в Германии развивается дигитализация: