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

А как сейчас с работой?

113520   44 45 46 47 48 49 50 51 52 53 54 все
Срыв покровов патриот13.07.22 21:39
NEW 13.07.22 21:39 
в ответ alex445 13.07.22 21:35

Алекс, в мире с розовыми единорогами тебе ничего этого не нужно.

Murr патриот13.07.22 23:19
Murr
NEW 13.07.22 23:19 
в ответ Срыв покровов 13.07.22 21:38

или тебе

-----

С законом ознакомься.

Срыв покровов патриот13.07.22 23:52
NEW 13.07.22 23:52 
в ответ Murr 13.07.22 23:19

пукай в лужу дальше.

Программист коренной житель14.07.22 08:46
NEW 14.07.22 08:46 
в ответ alex445 13.07.22 18:47, Последний раз изменено 14.07.22 08:50 (Программист)
Это что за проект такой? Миллионы строк кода, и все надо знать?

Кода там больше 15млн строк.

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


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

MrSanders коренной житель14.07.22 08:52
14.07.22 08:52 
в ответ Программист 14.07.22 08:46, Последний раз изменено 14.07.22 09:03 (MrSanders)

Обычно так долго надо врабатываться в проект, в котором нет документации / хаос в документации (состоит из сотен отдельных документов).
Миллион или 20 строк действительно не особо важно. Никто не прграммирует во всех частях проекта такого размера. Но надо понимать как отдельные части друг с другом работают, чтобы не наворотить фигни. И если есть описание, можно понять что к чему за месяц. Нет - ковыряешься и год и два.

Собственно говоря, у нас в команде есть люди, которые работают в этом проекте по 20лет. К ним можно обратиться практически с любым вопросом. Но даже у этих людей есть "белые пятна".

Ладно белые пятна (скорее белые простыни)... В принципе знают, но на конкретные вопросы могут ответить только про то, что лично ковыряли с последние 2-3 года. На вопросы "а почему здесь именно так" ответ получить... маловероятно.

Интерфейсы с окружением не знает вообще никто. В принципе. Работает - не трожь. Как новые требование реализовывать? А так. Пробуешь. А вдруг заработает.

Вот только на этой неделе пытался выяснить что думали, когда один абстрактный класс и три подкласса делали, при этом половина кода в абстрактом выглядит как "если класс this-а подкласс А, то делай это, а если B - то другое". Почему в подклассах метод не переопределить? Спрашиваю чудака, который это наделал 4-5 лет назад. Что он мне говорит? Правильно "низнаю - непомню - кто-то сказал так делать - и вообще это не я - а чо, работает же?"

wasja-de постоялец14.07.22 09:47
NEW 14.07.22 09:47 
в ответ Программист 12.07.22 20:16
При этом если работодатель не может загрузить меня описанной в контракте работой, то он платит за мое бездействие....
(в моем случае вообще через 35 дней после окончания месяца)

первая фраза подразумевает, что вы на зарплате, а вторая - что вы - фрилансер, и обычно эти случаи взаимоисключаемые.

Программист коренной житель14.07.22 10:10
NEW 14.07.22 10:10 
в ответ MrSanders 14.07.22 08:52
Обычно так долго надо врабатываться в проект, в котором нет документации / хаос в документации (состоит из сотен отдельных документов).

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

Правда началось документирование всего несколько лет тому назад, поэтому документировано далеко не все :)

alex445 коренной житель14.07.22 10:12
NEW 14.07.22 10:12 
в ответ Программист 14.07.22 08:46
Собственно говоря, у нас в команде есть люди, которые работают в этом проекте по 20лет. К ним можно обратиться практически с любым вопросом. Но даже у этих людей есть "белые пятна". Так что фактически нет ни одного человека, который бы знал всю систему.

Отличное место стать незаменимым семизнаком.

wasja-de постоялец14.07.22 10:14
NEW 14.07.22 10:14 
в ответ alex445 14.07.22 10:12
Отличное место стать незаменимым семизнаком.

это когда до центов зарплата оговорена?

alex445 коренной житель14.07.22 10:14
NEW 14.07.22 10:14 
в ответ MrSanders 14.07.22 08:52

Ладно белые пятна (скорее белые простыни)... В принципе знают, но на конкретные вопросы могут ответить только про то, что лично ковыряли с последние 2-3 года. На вопросы "а почему здесь именно так" ответ получить... маловероятно.

Интерфейсы с окружением не знает вообще никто. В принципе. Работает - не трожь. Как новые требование реализовывать? А так. Пробуешь. А вдруг заработает.

Но мне сказали (не будем тыкать пальцем), что надо просто юнит-тесты завести и всё станет пучком.

Программист коренной житель14.07.22 10:14
NEW 14.07.22 10:14 
в ответ wasja-de 14.07.22 09:47
первая фраза подразумевает, что вы на зарплате, а вторая - что вы - фрилансер, и обычно эти случаи взаимоисключаемые.

Я на фрилансер. Слово "работодатель" можешь заменить на "клиент" :) Я продаю свое время. Клиент купил мое время и использует его как считает нужным. Если его устраивает, чтобы я сидел и ждал доступа в TFS - нет проблем :) Он отпалит мне это сидение.

alex445 коренной житель14.07.22 10:18
NEW 14.07.22 10:18 
в ответ MrSanders 14.07.22 08:52, Последний раз изменено 14.07.22 10:27 (alex445)
Вот только на этой неделе пытался выяснить что думали, когда один абстрактный класс и три подкласса делали, при этом половина кода в абстрактом выглядит как "если класс this-а подкласс А, то делай это, а если B - то другое". Почему в подклассах метод не переопределить? Спрашиваю чудака, который это наделал 4-5 лет назад. Что он мне говорит? Правильно "низнаю - непомню - кто-то сказал так делать - и вообще это не я - а чо, работает же?"

Хаха, как всё просто! У меня чтобы достать локализованную строку, идёт стек из 5-7 вызовов функций. И это не какие-то обращения к сторонним библиотекам, а код самого проекта. А строковые ресурсы глобальные - т.е. чего там вызывать в длиннющем стеке? А вот - менеджер вызывает адаптера, адаптер - фабрику, фабрика создаёт провайдера, провайдер вызывает другой менеджер и т.д. Всё дофига архитектурно - чай не лохи клепали.


А, ещё может я чего не понимаю, но там всё через интерфейсы сделано, включая создание объектов. Т.е. например менеджер вызывает адаптера, но возвращает объект как интерфейс адаптера, типа такого:


ILocalizationAdapter adapter = GetLocalizationAdapter(); // где этот метод тоже возвращает интерфейс


И этот объект adapter вызывает скажем функцию. Естественно, при клике на "go to definition" меня перебрасывает на метод интерфейса. И так по всей цепочке вызовов - интерфейс создаёт объект с типом другого интерфейса. А мне, ска, нужна реализация конкретного метода. Как попасть в нужную реализацию? Знаю только способ запустить приложение и в дебаге узнать конкретный тип. Но есть сложность - приложение имеет навороченный пайплан установки - просто так по F5 хрен запустишь. А после установки как подключиться дебаггером к нужному процессу, если это один из кучки мелких сайтов и сервисов, запущенных на веб-сервере? По идее можно отыскать и конкретный сервис, и его процесс (если он не в службах виндовс где-то захостен), но лять почему так сложно? Я проект с месяц фиксил, чтобы он только на моей машине ошибки компиляции выдавать перестал.


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

alex445 коренной житель14.07.22 10:29
NEW 14.07.22 10:29 
в ответ Программист 14.07.22 10:10

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

Правда началось документирование всего несколько лет тому назад, поэтому документировано далеко не все :)

Доки тоже не панацея. Что толку, что ты сидишь и неделями читаешь толмуды? Пока до середины дошёл, уже забыл, что в начале было. А ни строчки кода не написано. И как глядеть в глаза менеджерам, что говорить на митингах, на которых каждый день куча народу отчитывается, что дофига наворотили? ))

alex445 коренной житель14.07.22 10:31
NEW 14.07.22 10:31 
в ответ wasja-de 14.07.22 10:14, Последний раз изменено 14.07.22 10:36 (alex445)
это когда до центов зарплата оговорена?

Обычно она для таких незаменимых приближается в сотняжке, а то и превышает её. Такой чел обычно уже какой-нибудь лид или сам менеджер. Плюс куча всяких плюшек за выслугу лет. Семь знаков-то не за год, имеется ввиду, а накопленным итогом. Человек уже купил себе дом, почти выплатил его, и вообще полный фарш в остальном, удобно устроился. Может даже выбил себе хоум офис - сиди себе, попукивай ровно в диванчик, ковыряй лениво проектик дальше. На проект приходят и уходят всякие джуны и даже выскочки-сеньёры, не в силах справиться с мегатоннами говнокода, а ты всё больше бронзовеешь. ))

AlexNek патриот14.07.22 12:50
AlexNek
NEW 14.07.22 12:50 
в ответ alex445 14.07.22 10:18
Как попасть в нужную реализацию?

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


alex445 коренной житель14.07.22 13:10
NEW 14.07.22 13:10 
в ответ AlexNek 14.07.22 12:50, Последний раз изменено 14.07.22 13:12 (alex445)

Что он даст? Покажет все реализации этого интерфейса в проекте, а я уже сам должен выбрать? Так-то можно и без Решарпера, наверное - Ctrl+Shift+F - поиск по солюшену в файлах .cs строки вида ": IMyInterface". Но если реализаций много - задолбаешься искать. По идее, должны спасать логи и возможность стартануть проект прямо на своей машине, чтобы проверить под дебагом. Но логи тогда должны чуть ли не через строчку кода идти.

alex445 коренной житель14.07.22 13:14
NEW 14.07.22 13:14 
в ответ alex445 14.07.22 13:10, Последний раз изменено 14.07.22 13:21 (alex445)

Вот вакуха для помидоров


Senior Xamarin Developer


Min 7 years of experience
Strong Knowledge in Xamarin Forms, C#.Net,SQL Lite
Experience in Xamarin Native.
Strong Knowledge in MVVM, MVC.
Strong Knowledge in PCL, Shared Libraries, .NET Standard Library.
Strong Knowledge in XAML UI design.
Strong knowledge in OOPS and C# concepts.
Experience with XUnit, NUnit, and Xamarin.UITes
Worked with Visual Studio
Worked with collaboration tools such as JIRA or VersionOne supporting Agile environment and tools like GITLAB,TDD,CI/CD

Experience Realmdb, SqlLIte.


Правда, лишь в Германии - под Дюссельдорфом. Но это гораздо ближе к Дублину, чем какой-то Нюрнберг. ))


Похоже, опять какое-то старьё. Ну кто сейчас будет на Ксамарине что новое делать? Он для новых проектов уже как несколько лет не в приоритете. Зато XAML и прочее. А 7 лет опыта минимум - чтобы имел опыт в этом старье и в его разгребании.

alex445 коренной житель14.07.22 13:18
NEW 14.07.22 13:18 
в ответ alex445 14.07.22 13:14, Последний раз изменено 14.07.22 13:19 (alex445)

Я правильно понимаю, что упоминание Shared Libraries - это звоночек про лютое оно мамонта, возню с ДЛЛками между проектами, батниками и командами MSBuild по их подключению или копированию - всё это вместо удобной репы с контролем версий и автоапдейтами?

Murr патриот14.07.22 14:05
Murr
NEW 14.07.22 14:05 
в ответ alex445 14.07.22 10:18

как подключиться дебаггером

-----

Тебе вроде много раз говорили, что надо много чего изучать...

В данном случае - Attach to process...

UVV старожил14.07.22 15:46
NEW 14.07.22 15:46 
в ответ alex445 14.07.22 13:18
Я правильно понимаю, что упоминание Shared Libraries - это звоночек про лютое оно мамонта, возню с ДЛЛками между проектами, батниками и командами MSBuild по их подключению или копированию - всё это вместо удобной репы с контролем версий и автоапдейтами?

Смешались в кучу люди, кони... одно вообще не связано с другим.