LINUX.ORG.RU

Попытка номер 5(2)

 ,


3

4

Это моя вторая попытка написать клиент-серверное приложение в качестве теста для одной конторы. Меня послали и на этот раз. Внятных аргументов снова не дали, сказали что недостаточно опыта для их задач. В общем выкладываю на общее обозрение мою вторую поделку. В этот раз я подошел, с моей точки зрения, более обстоятельно. Сервер и клиент асинхронные. Компилируются и работают под x86 и amd64. Конвертация порядка байт есть. readme есть хоть и вордовый. Система сборки cmake. Зависимости: boost(вычитка/пересылка всех байт реализована автоматически) и poco. Есть небольшие недочеты: вызывается sleep в основных потоках, но это пофиксить очень просто и не думаю, что это должно как-то влиять на оценку. Использовал пару шаблонов проктирования: медиатор и шаблонный метод. Есть один модульный тест. В общем с моей точки зрения в этот раз все намного лучше, но снова чего-то нехватает, прошу посмотреть и оценить. Прошу в этот раз воздержаться от перехода на личности, особенно это касается анонов.

Ссылка

★★

Ответ на: комментарий от Booster

Тебе в первом же посте прямо написали, что не так с твоим тестовым заданием. Ты на это отреагировал смачной такой истерикой. Нет, проблема не в работодателях.

anonymous
()
Ответ на: комментарий от anonymous

Тебе в первом же посте прямо написали, что не так с твоим тестовым заданием. Ты на это отреагировал смачной такой истерикой. Нет, проблема не в работодателях.

Я вроде как уже понял. Но у тебя манера очень раздражительная. Нельзя было нормально написать, без наездов? Написал бы, что одного теста недостаточно, так нет же надо было написать - «вау. ОДИН модульный тест.»

Booster ★★
() автор топика
Ответ на: комментарий от eao197

Намеков он не понимает (т.к. неадекват)

Намеки - это не совсем честное поведение (проверка адекватности - судебно-медицинская процедура, чего на собеседованиях, по понятным причинам не делают - потому что собеседующий по чесноку может сам привлечь внимание санитаровврачей и судей своим поведением: а не по формальному ли поводу он отказал... А не самоутверждается ли супротив требований закона (вот лицо ему не понравилось)... А за применение медицинских терминов вне контекста - можно и судебных издержек огрести на уровне юр. лица :)) Нормальные люди намеками не разговаривают. А вот ханжи - только ими :)

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 2)
Ответ на: комментарий от Manhunt

у взрослых людей есть время

ты отнимаешь мое время-плати

не платишь а просто стоишь и еще трындишь всякую хрень котораю нах никому не сдалась-идешь сам знаешь куда

sup9999
()
Ответ на: комментарий от eao197

чтоб вы могли задать «риторический» вопрос. А так-то возражения против вольной трактовки «адекватности» есть?

slackwarrior ★★★★★
()
Ответ на: комментарий от slackwarrior

А так-то возражения против вольной трактовки «адекватности» есть?

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

eao197 ★★★★★
()
Ответ на: комментарий от eao197

Смысл не в трактовке понятия «адекватность»

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

slackwarrior ★★★★★
()

Это что, какой-то новый вид троллинга?

Кстати, anonymous'a давно что-то не видно.

EXL ★★★★★
()
Ответ на: комментарий от eao197

Совсем тю-тю что ли? Таких рекрутеров — код идеальный, но мне его лицо не понравилось, скажу, что его код говно — надо убивать, при чем самым жестоким образом. Примерно так.

Freyr69 ★★★
()
Ответ на: комментарий от Freyr69

рожи прыщавых прогеров никому не нравятся, ни один рекрутер среди них по лицу выбирать не станет. а вот отсеять клоунов-посылальщиков и истеричек типа ТСа - его прямая обязанность

anonymous
()
Ответ на: комментарий от anonymous

Не ну я и послать теперь никого не могу. Совсем оборзел?

Booster ★★
() автор топика

Потом выложи статистику, сколько людей действительно запросило доступ к твоим исходникам. Лично я закрыл вкладку как только увидел ЭТО. Вполне естественная реакция, имхо.

x3al ★★★★★
()

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

Booster ★★
() автор топика
Ответ на: комментарий от x3al

Потом выложи статистику, сколько людей действительно запросило доступ к твоим исходникам. Лично я закрыл вкладку как только увидел ЭТО. Вполне естественная реакция, имхо.

Видишь что аноны делают? Какой тут публичный доступ?

Booster ★★
() автор топика
Ответ на: комментарий от Booster

То есть практически никто?

И забанить анонов невозможно.

Особенность местных традиций. Тем более обсуждать твой код невозможно потому, что к нему нет доступа. Поэтому обсуждают личность.

Видишь что аноны делают? Какой тут публичный доступ?

Что именно они делают? Почему ты пытаешься отвечать на это? Тем более после «Быстро отвалил или ты считаешь у нас тобой может получится разгоовр, троль поганый».

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

x3al ★★★★★
()
Ответ на: То есть практически никто? от x3al

Особенность местных традиций. Тем более обсуждать твой код невозможно потому, что к нему нет доступа. Поэтому обсуждают личность.

Кому надо тот уже скачал.

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

Я тоже вначале молчал, но есть предел терпению.

Booster ★★
() автор топика
Ответ на: комментарий от Booster

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

Не ну я и послать теперь никого не могу. Совсем оборзел?

забанить анонов невозможно. Гадят и оскорбляют кто хочет.

нет, я положительно требую забанить эту истеричку за оскорбления анонимусов

anonymous
()
Ответ на: комментарий от Booster

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

anonymous
()
Ответ на: комментарий от anonymous

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

Проблема в том, что у меня есть история с анонимусом. Откуда я знаю какой анонимус мне грубил раньше, вы все на одно лицо. Чего скрываешься? От армии косишь? :)

Booster ★★
() автор топика
Ответ на: комментарий от Booster

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

Шлак тут ты - тебе по делу пишут, а ты истеричишь.

Кому надо тот уже скачал.

Твои сраные сорцы нужны только тебе. Если ты хотел получить по ним наше мнение, то помни: мы тебе ничего не должны и интерес почитать сорцы полностью нивелируется способом, которым ты их выложил.

А почему тебя не взяли, мы в целом видим.

З.Ы. Нет, я не отписывался в этом треде под анонимусом.

Pavval ★★★★★
()
Ответ на: комментарий от Pavval

Твои сраные сорцы нужны только тебе. Если ты хотел получить по ним наше мнение, то помни

Чувак у тебя мания величия, мне наплевать на твое убогое мнение. :) Ты еще наверно и нацист.

Booster ★★
() автор топика
Последнее исправление: Booster (всего исправлений: 1)

Посмотрел краем глаза код. По мелочи: всегда используешь постфиксный инкремент/декремент, даже когда не нужно.

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

В задании было сказано что разложить на простые множители. И юнит тест написан для простых множителей. Вот код

template<typename T>
void GetFactors(T number, std::vector<T> &factors, const bool &cancellation)
{
	if (number < 2)
	{
		factors.push_back(number);
		return;
	}

	T tmpNumber = number;
	T maxNumber = std::sqrt(number);
	T i = 1;
	while (i <= maxNumber)
	{
		if (cancellation)
			return;

		i++;
		if (!(tmpNumber % i))
		{
			tmpNumber /= i;
			factors.push_back(i);
			i = 1;
		}
	}

	if (tmpNumber > 1)
		factors.push_back(tmpNumber);
}

Хоть убейте, я не вижу разложения на простые множители. На множители - да, но не на простые. Может я туплю.

Chubakur ★★
()
Ответ на: комментарий от Booster

Чувак у тебя мания величия, мне наплевать на твое убогое мнение.

Ага. Ты сюда писал, чтобы наплевать на мнение других. А нахера тогда писал? Пока в этом треде не было ни одного человека, кто бы скачал с твоего гуглдрайва.

Ты еще наверно и нацист.

Клиника.

Pavval ★★★★★
()
Ответ на: комментарий от Chubakur

Да, правильное прохождение Unit-тестов просто совпадение. На самом деле программа не правильно раскладывает на простые множители.

Chubakur ★★
()
Ответ на: комментарий от Chubakur

Офигеть, с чего ты это взял? По коду понял?

Booster ★★
() автор топика

Если бы выложил на какой-нибудь github, было бы больше конструктивных замечаний, думаю просто всем лень смотреть чё там.

anonymous
()
Ответ на: комментарий от Chubakur

На множители - да, но не на простые.

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

Manhunt ★★★★★
()

You need permission

Nah, you need!

ITT знатный батхерт, лойс)

holuiitipun
()
Последнее исправление: holuiitipun (всего исправлений: 1)
Ответ на: комментарий от Chubakur

Да, там финальный «factors.push_back(tmpNumber)» нужно выкинуть, похоже.

Manhunt ★★★★★
()
Ответ на: комментарий от Booster

Будем писать бредятина, не предлагая ничего в замен?

Я не знаю контекста, в котором это говно должно было работать. Поэтому ничего конструктивного предложить не могу.

Manhunt ★★★★★
()
Ответ на: комментарий от anonymous

Если несколько одинаковых множителей, то не айс. С восьмеркой, скажем, будет 2 и 4.

С восьмеркой будет 2 2 2: он i каждый раз сбрасывает в 1.

Manhunt ★★★★★
()
Ответ на: комментарий от Manhunt

Действительно, зря докопался.

anonymous
()
Ответ на: комментарий от Booster

Забыл написать imho.

Никакого imho. Нет существует контекста, в котором твой код можно было бы назвать адекватным.

Manhunt ★★★★★
()
Ответ на: комментарий от Manhunt

Нет существует контекста, в котором твой код можно было бы назвать адекватным.

Не догадаться, что это отмена задачи? Там коммент между прочим есть.

Booster ★★
() автор топика
Ответ на: комментарий от Booster

Передавать bool по константной ссылке — действительно не имеет смысла. И ты даже не понимаешь почему.

Проверка флага где-то внутри цикла, когда можно проверить снаружи, тоже смысла не имеет. Разве что как задача типа «найди косяки».

i-rinat ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.