Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Нарисуй Удар - это смесь двух жанров: рисование и драки. Вы играете за одну из балерин, которые сражаются друг против друга в смертельном танце.

Испытайте новый игровой опыт в захватывающей игре “Нарисуй Удар” прямо сейчас!

Нарисуй Удар

Драки, На ловкость, Для мальчиков

Играть

Топ прошлой недели

  • Rahlkan Rahlkan 1 пост
  • Tannhauser9 Tannhauser9 4 поста
  • alex.carrier alex.carrier 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
6
cherkalexander
cherkalexander
1 год назад
Лига программистов

Тестирование — подчищаем за собой⁠⁠

Так исторически сложилось, что у нас на проекте нет юнит тестов, только интеграционные и e2e.

Тестирование — подчищаем за собой Кросспостинг, Pikabu Publish Bot, Csharp, Javascript, Typescript, Текст, Telegram (ссылка)

Эволюция написания тестов


Иногда в тестах приходится подчищать за собой — удалять созданные во время выполнения теста объекты в базе, чтобы не влиять на результат других тестов. Это конечно, лишь ухудшает читабельность кода.

Мы прошли некоторая эволюция подходов для создания и удаления объектов:

1. Мы использовали try/finally, где все созданные объекты удаляются внутри блока finally. Выглядит сомнительно, когда нужно городить подобную конструкцию во многих тестах.
2. Перешли к использованию функций с колбэками. Утилитная функция создаёт и удаляет объект, а мы передаём лишь колбэк, в котором описываем логику теста и нужные нам проверки.
3. Внедрили IDisposable классы, которые мы называем Creator’ами. Они делают то же самое, что и функции с колбэками, но не добавляют ненужную вложенность, что улучшает читаемость кода. Они чем-то напоминают PageObjectModel в e2e тестах.

Использование паттерна с классами IDisposable также подходит для активации определенной настройки только в рамках одного теста и отключения её по завершении теста.

Такой подход не ограничивается только лишь C# — в TypeScript 5.2. уже появилась поддержка using и, возможно, скоро она появится и в JavaScript.

https://t.me/cherkashindev/160

Показать полностью
Кросспостинг Pikabu Publish Bot Csharp Javascript Typescript Текст Telegram (ссылка)
18
5
Аноним
Аноним
1 год назад
Лига программистов

Войти в IT⁠⁠

Приветствую всех. Подскажите пожалуйста. Натолкнуло меня на этот вопрос волна приложений "честная цена".

Допустим, новичок хочет быть программистом - делать небольшие игры. Но при этом понимает, что игродел - это скорее хобби, а хотелось бы в дальнейшем какую-никакую, а копейку за свою работу получать, а кому этого бы не хотелось?


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

Но, начиная изучать что-то из этого, понимаешь - что-то тут не то.
Из популярных языков - это либо, огромный локомотив типа С# и .NET, на котором можно сделать абсолютно ВСЁ, но в то же время и ничего, потому как реализация через фреймворки определенных задач будет похожа на забивание гвоздя отверткой.

Либо это легкий и непринужденный инструмент, вроде Python, на котором можно сделать тоже абсолютно ВСЁ, но это всё будет несерьезным и легковесным, скорее как дополнение к чему-то.

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


Казалось бы, всё просто, так оно и работает, в одиночку никто проекты не разрабатывает и в проектах как раз и есть условные 3 человека, которые знают все эти 3 разные технологии и объединяют в единое целое. НО!

НО! Тогда кто все эти люди, которые за вечер клепают свои альфа проекты? Они тебе и игры запилят, и сайты, и десктоп, и андроид приложения. И вообще оказывается это всё они пилят после просмотра пары роликов на ютуб. Но не могут же они знать абсолютно все технологии и языки, чтобы так легко переключаться с одного на другой?

И так с абсолютно каждым языком. У кого ни спроси - это всегда какие-то абстрактные ответы по типу, что для каждой задачи свой язык.
Неужели среди программистов, где чуть ли не правило - не изобретать велосипед, если его уже сделали до тебя, до сих пор нет понятного примерного плана пути для начинающего? Не того road map, где стрелочками отмечены абсолютно все существующие технологии по определенной сфере, а что-то понятное, то через что проходили все, прежде чем стать профессионалами, прежде чем начать делать что-то своё?

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

P. S. Я знаю, что сейчас в IT не войти, надо работать на заводе, а на 100 резюме джунов приходится всего 1 вакансия. У меня другая работа, которая устраивает. Это скорее попытка узнать, какую ошибку я совершил в молодые годы, когда выпустился из техникума со специальностью "информационные технологии", где максимум тебя научили писать "hello, world" на двух разных ЯП, а из-за обилия выбора направлений в дальнейшем я запутался, заблудился и не воспользовался шансом, когда он еще был.

Показать полностью
Опыт Профессия Программирование IT Junior Разработка Новичок Помощь Вопрос Python Csharp Gamedev Web-программирование Без рейтинга Текст
19
7
cherkalexander
cherkalexander
1 год назад
Лига программистов

Именование юнит тестов⁠⁠

Мне всегда нравятся “информативные” названия тестов вроде “TestLogin”.

Смотришь и из названивая в принципе не понятно, что именно мы тестируем.

В книге “Искусство автономного тестирования (The Art of Unit Testing)” предлагается следующий способ именования тестов: [UnitOfWorkName]_[ScenarioUnderTest]_[ExpectedBehavior]

- UnitOfWorkName — имя тестируемого метода либо группы методов или классов
- Scenario – условия, при которых тестируется автономная единица
- ExpectedBehavior – что должен делать метод при заданных условиях

Например, если мы тестируем вход пользователя с неверным паролем и ожидаем, что произойдёт ошибка, то названия теста может выглядеть так: TestLogin_InvalidPassword_ThrowsException.

https://t.me/cherkashindev/142

Именование юнит тестов Csharp, Тестирование
Показать полностью 1
[моё] Csharp Тестирование
10
14
OuroborosTFB
OuroborosTFB
1 год назад
IT-юмор

Попросил нейросеть придумать мне список преступников⁠⁠

Попросил нейросеть придумать мне список преступников IT, Csharp, Программирование

Поржал. Велосипеда из сгустков жвачки.

[моё] IT Csharp Программирование
6
10
Dimoxa22
Dimoxa22
1 год назад
Автоматизация

C# для инженеров по автоматизации⁠⁠

Коллеги возник вопрос. Решил немного расширить свою квалификацию и начать изучать C#, потому что видел это требование во многих вакансиях для программистов PLC. Прошёл базовый курс по языку от Microsoft , но дальше не знаю что делать. Все остальные найденные курсы в основном по web программированию, а это, как мне кажется, не сильно мне подходит. Может кто-нибудь посоветовать материалы на данную тему? Может есть какие-нибудь курсы/книги/видео? Спасибо 🙂

Автоматизация Csharp Образование Текст
27
5
Pinelab
Pinelab
1 год назад

SharpDevelop-5.2.1 (Альтернатива Visual Studio для C#)⁠⁠

SharpDevelop-5.2.1 (Альтернатива  Visual Studio для C#) Csharp, Код, Скриншот, Диалог

Да, он существует, форк который поддерживает  .Net framework со 2.0 по 4.8
Легковесный простой и быстрый как в старые добрые времена

https://github.com/mgeee35/SharpDevelop-5.2.1

Csharp Код Скриншот Диалог
3
Аноним
Аноним
1 год назад

Посоветуйте пожалуйста фундаментальных курсов по Юнити [2]⁠⁠

Спасибо Пикабу, что обрезал бо́льшую часть поста Посоветуйте пожалуйста фундаментальных курсов по Юнити

Дублирую:

Всем привет! Знаю, таких постов уже было много, но попытаю удачу. Прошу помощи в поисках курсов и материалов по работе с Юнити. Планирую вкатываться с С++ (джун) в С#. Что касается Юнити, то больше интересует "техническая" сторона в плане:

  1. Почему и зачем для каждого создается отдельный класс

  2. Иерархия, что от чего наследуется (например канвас -> UI и тд)

  3. Виды скриптов, куда их помещать, если хочу их использовать глобально (например нажатие той же кнопки Esc или Tab, если я хочу использовать их в любой сцене)

И другие подобные вещи. Поскольку совсем непонятны именно принципы работы с движком. Везде все не то - по типу "как заставить персонажа двигаться" и куча непонятного (как минимум в плане иерархии) кода, который работает, но почему - непонятно. Вряд ли без понимания далеко уеду, методом тыка не очень хочется учиться. Заранее всем спасибо!

Нужен совет Обучение Программирование Unity Unity3D Разработчики игр Csharp Текст
5
Партнёрский материал Реклама
specials
specials

Только каждый третий пикабушник доходит до конца⁠⁠

А сможете ли вы уложить теплый пол, как супермонтажник?

Проверить

Ремонт Теплый пол Текст
0
Аноним
Аноним
1 год назад

Посоветуйте пожалуйста фундаментальных курсов по Юнити⁠⁠

Всем привет! Знаю, таких постов уже было много, но попытаю удачу. Прошу помощи в поисках курсов и материалов по работе с Юнити. Планирую вкатываться с С++ (джун) в С#. Что касается Юнити, то больше интересует "техническая" сторона в плане:

Нужен совет Разработчики игр Unity Unity3D Csharp Текст
2
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии