Перейти к публикации
  • Сейчас на странице   Всего пользователей: 1   (1 пользователь, 0 гостей)

Rooster

Программирование, т. 8

  

315 пользователей проголосовало

У вас нет прав на голосование в этом опросе, или на просмотр результатов опроса. Пожалуйста, войдите или зарегистрируйтесь для голосования в опросе.

Рекомендованные сообщения

 

 

Чем тебе не нравится тестирование во фронте?
 

ну потому что тут нету нормальной инфраструктуры для тестов. тестирование в скале - создал файлик в папке test и поехали. тестирование в питоне - поставил себе pytest и поехали. тестирование фронтэнда - так, поставим, мочу, чай, карму, энзим, энзим реакт, синон, посыпем это все сверху всякой ебалой для тайпскрипа, добавим немножко говнеца с бабеля. окей. ладно, пробуем асерт(1+1) равно (2). так, окей, нужно еще проконфигурить, что б оно находило твои тесты правильно. а еще добавить тайпскрип. окей, делаем. хух, работает. ну давайте попробуем написать тесты для моих компонентов, шо тут у нас. ага, ясно, нужно еще бабель доконфигурить, а еще вот эти пять пакетов забыл поставить. бля, импорты надо попереписывать, а то оно не видит абсолютные импорты. окей, запускаем. ТА СУКА, ЧТО ОПЯТЬ БЛЯТЬ НЕ ТАК. 

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

Поделиться сообщением


Ссылка на сообщение

норм тесты для фронта это ведь когда через фантом жс чекает цвет кнопки в форме

или что теструется на фронте вообще? то что апи возвращает 200 и что items.count == 322?


have courage and be kind

  😈🫀💋 🩸👣🤌🏿🦄 🐝 ☄️❣️ 💕 💞❤️😈

 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖

220941652_Annotation2021-03-20123345.jpg.23dcff343d6a377badf433b20f5271fd.jpg

💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 

Поделиться сообщением


Ссылка на сообщение

Ну раз такое дело то пожалуй признаем фронт самым сложным направлением для элиты

Принято единогласно


Shaman.png.0cdd33d48561cd068bb3c5ee78289381.png Anna.jpeg.03c9b49363298ceec256500a5d522f7d.jpeg Nigga.jpg.f807f2556bdbf68452292a9301494591.jpg

 

Поделиться сообщением


Ссылка на сообщение

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

 

 

 

или что теструется на фронте вообще?
 

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

Поделиться сообщением


Ссылка на сообщение

по-моему самое сложное это лутать двадцать кусков на заводе прогая микросхемы на си

или шесть месяцев стажировки без заработной платы на си шарпе

а клепать кнопки за триллион долларов в секунду вполне себе легко

но бэкендеры все равно сосатб (кроме ноджсеров)


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

норм тема, я просто пранкую и так понимаю это про реакт как вот тут

https://medium.freecodecamp.org/the-right-way-to-test-react-components-548a4736ab22

 

по тестам в ангуляре нихуя не понимаю бтв


have courage and be kind

  😈🫀💋 🩸👣🤌🏿🦄 🐝 ☄️❣️ 💕 💞❤️😈

 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖

220941652_Annotation2021-03-20123345.jpg.23dcff343d6a377badf433b20f5271fd.jpg

💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 

Поделиться сообщением


Ссылка на сообщение

можно тл;др по статье? я подобной хуйни за сегодня уже обчитался

 

 

(function (exports, require, module, __filename, __dirname) { .react-datepicker-popper[data-placement^="bottom"] .react-datepicker__triangle, .react-datepicker-popper[data-placement^="top"] .react-datepicker__triangle, .react-datepicker__year-read-view--down-arrow,
                                                              ^

SyntaxError: Unexpected token .

 

 

 

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

Поделиться сообщением


Ссылка на сообщение

я бы тоже ругнулся хули в жсе пошел цсс


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

Поделиться сообщением


Ссылка на сообщение

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

Поделиться сообщением


Ссылка на сообщение

 

 

можно тл;др по статье?
 

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

а вообще давно ждал что кто-то скажет что в жс нормально зарофлили с названиями

чай

моча


have courage and be kind

  😈🫀💋 🩸👣🤌🏿🦄 🐝 ☄️❣️ 💕 💞❤️😈

 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖

220941652_Annotation2021-03-20123345.jpg.23dcff343d6a377badf433b20f5271fd.jpg

💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 💖 

Поделиться сообщением


Ссылка на сообщение

ага, а еще жесть

Rooster понравилось это

Поделиться сообщением


Ссылка на сообщение
(изменено)

Господа есть вопрос по JPA

        Group group = new Group();
        group.setGroupId(5555);
        entityManager.persist(group);
        Student entity = new Student();
        entity.setFirstName("Петр");
        entity.setLastName("Петренко");
        entity.setPatronymic("Петрович");
        entity.setGroup(group);
        entityManager.persist(entity);
Group group = entityManager.find(Group.class, 5555);
System.out.println(group.getStudents()); // {[]}
        List resultList = entityManager.createQuery("SELECT s FROM Student s INNER JOIN Group g on s.group = g where g.groupId=5555").getResultList();
        System.out.println(resultList); // Student(firstName=Петр, lastName=Петренко, patronymic=Петрович ...

Типо блять EclipseLink не берет на себя сабж из 2го блока? Получается мне надо вручную выбирать студентов из группы через запрос?

как сами энтити определены скинь, а то хуй знает что у тебя там написано

ну видимо find не сделать eager loading зависимых сущностей

 

 

https://www.baeldung.com/jpa-entity-graph

 

 

JoPA этот ваш JPA такую тривиальную вещь не сделать по требованию нормально, типа хуярьте прямо атрибуты и похуй что может быть надо/не надо

:mameprivet: :mameprivet: :mameprivet:

чето я не понял наезда

там же прямо сказано есть аннотации в которых задаешь eager/lazy 

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

 

вообще ты слишком быстро сделал выводы

непонятно как он ентити описал (возможно этой связи там попросту не написано), а во вторых непонятно как у него сам entity manager настроен - в теории там может быть какая-нибудь оптимизационная настройка которая говорит нечто вроде "слать нахуй все egaer запросы".

еще небольшое поле для ошибки (ОЧЕНЬ маловероятное) - выражение find выполнилось до коммита транзакции или по запоздавшему кэшу, а createQuery выполнилось после.


Изменено пользователем Just.Doit

 

очень крутые котейки

RqvSzvr.png


Кому-то пизды дал - нужно сделать скрин обязательно. (с) Solo

Поделиться сообщением


Ссылка на сообщение

 

Чем тебе не нравится тестирование во фронте?
 

ну потому что тут нету нормальной инфраструктуры для тестов. тестирование в скале - создал файлик в папке test и поехали. тестирование в питоне - поставил себе pytest и поехали. тестирование фронтэнда - так, поставим, мочу, чай, карму, энзим, энзим реакт, синон, посыпем это все сверху всякой ебалой для тайпскрипа, добавим немножко говнеца с бабеля. окей. ладно, пробуем асерт(1+1) равно (2). так, окей, нужно еще проконфигурить, что б оно находило твои тесты правильно. а еще добавить тайпскрип. окей, делаем. хух, работает. ну давайте попробуем написать тесты для моих компонентов, шо тут у нас. ага, ясно, нужно еще бабель доконфигурить, а еще вот эти пять пакетов забыл поставить. бля, импорты надо попереписывать, а то оно не видит абсолютные импорты. окей, запускаем. ТА СУКА, ЧТО ОПЯТЬ БЛЯТЬ НЕ ТАК. 

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

 

Кекнул с неосилятора. Всё настраивается одной кнопкой (офк, если ты пользуешься cli :buba: ).

Поделиться сообщением


Ссылка на сообщение

 

Господа есть вопрос по JPA

        Group group = new Group();
        group.setGroupId(5555);
        entityManager.persist(group);
        Student entity = new Student();
        entity.setFirstName("Петр");
        entity.setLastName("Петренко");
        entity.setPatronymic("Петрович");
        entity.setGroup(group);
        entityManager.persist(entity);
Group group = entityManager.find(Group.class, 5555);
System.out.println(group.getStudents()); // {[]}
        List resultList = entityManager.createQuery("SELECT s FROM Student s INNER JOIN Group g on s.group = g where g.groupId=5555").getResultList();
        System.out.println(resultList); // Student(firstName=Петр, lastName=Петренко, patronymic=Петрович ...

Типо блять EclipseLink не берет на себя сабж из 2го блока? Получается мне надо вручную выбирать студентов из группы через запрос?

как сами энтити определены скинь, а то хуй знает что у тебя там написано

ну видимо find не сделать eager loading зависимых сущностей

 

 

https://www.baeldung.com/jpa-entity-graph

 

 

JoPA этот ваш JPA такую тривиальную вещь не сделать по требованию нормально, типа хуярьте прямо атрибуты и похуй что может быть надо/не надо

:mameprivet: :mameprivet: :mameprivet:

чето я не понял наезда

там же прямо сказано есть аннотации в которых задаешь eager/lazy 

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

 

вообще ты слишком быстро сделал выводы

непонятно как он ентити описал (возможно этой связи там попросту не написано), а во вторых непонятно как у него сам entity manager настроен - в теории там может быть какая-нибудь оптимизационная настройка которая говорит нечто вроде "слать нахуй все egaer запросы".

еще небольшое поле для ошибки (ОЧЕНЬ маловероятное) - выражение find выполнилось до коммита транзакции или по запоздавшему кэшу, а createQuery выполнилось после.

 

в смысле ты не понял наезда

тут нормой считается, что ты при ПРОЕКТИРОВАНИИ МОДЕЛИ уже знаешь что ВО ВСЕХ случаях доставания объекта из базы ты ВСЕГДА будешь грузить его связи?

там еще написано что все 1к1 и Нк1 по умолчанию грузятся  :lol:

какой долбоеб это вообще придумал?

 

вот допустим у тебя банально юзер и его друзяшки

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

в 90% остальных случаев, тебе нахуй не нужны его друзья

 

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

@NamedEntityGraph(
  name = "post-entity-graph-with-comment-users",
  attributeNodes = {
    @NamedAttributeNode("subject"),
    @NamedAttributeNode("user"),
    @NamedAttributeNode(value = "comments", subgraph = "comments-subgraph"),
  },
  subgraphs = {
    @NamedSubgraph(
      name = "comments-subgraph",
      attributeNodes = {
        @NamedAttributeNode("user")
      }
    )
  }
)

это что блять вообще такое :lol: нахуя у тебя в коде классы связанные друг с другом, если тебе на каждый чих придется делать собственные схемы?

ты посмотри блять на эту хуйню, это просто блять вытащить пост блять с комментами юзеров 

 

как делается это в том же EF? да блять одной строчкой просто

var post = context.Posts.Include(p => p.Comments.Any(c => c.Author)).Where(p => p.id = 123).First()

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

 

как этой ЖоПОЙ можно вообще пользоваться и не поехать кукушкой?


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

Поделиться сообщением


Ссылка на сообщение

 

 

как сами энтити определены скинь, а то хуй знает что у тебя там написано
 

https://i.imgur.com/o2UOEPT.png

https://i.imgur.com/VjhoxmH.png

Да  я уже разобрался

 

Всё норм работает если 

        entity.setGroup(group);
        group.getStudents().add(entity);

        entityManager.persist(group);

даже студента не надо persist'ить вроде

А вот если 

group.getStudents().add(entity);

не сделать, то в группе нихуя не появится, только после рестарта


Алсо у меня тут новая проблема, какого-то хуя 

https://i.imgur.com/9Yg0gKn.png

при сохранении в бд дописывает в конец +03 и потом при десериализации обсирается

Exception [EclipseLink-3002] (Eclipse Persistence Services - 2.7.3.v20180807-4be1041): org.eclipse.persistence.exceptions.ConversionException
Exception Description: The object [1890-08-24 +03], of class [class java.lang.String], from mapping [org.eclipse.persistence.mappings.DirectToFieldMapping[birthDay-->students.birth_day]] with descriptor [RelationalDescriptor(com.github.index.schedule.data.entity.Student --> [DatabaseTable(students)])], could not be converted to [class java.time.LocalDate].
Internal Exception: java.time.format.DateTimeParseException: Text '1890-08-24T+03' could not be parsed, unparsed text found at index 11

Поделиться сообщением


Ссылка на сообщение
(изменено)

 

 

Господа есть вопрос по JPA

        Group group = new Group();
        group.setGroupId(5555);
        entityManager.persist(group);
        Student entity = new Student();
        entity.setFirstName("Петр");
        entity.setLastName("Петренко");
        entity.setPatronymic("Петрович");
        entity.setGroup(group);
        entityManager.persist(entity);
Group group = entityManager.find(Group.class, 5555);
System.out.println(group.getStudents()); // {[]}
        List resultList = entityManager.createQuery("SELECT s FROM Student s INNER JOIN Group g on s.group = g where g.groupId=5555").getResultList();
        System.out.println(resultList); // Student(firstName=Петр, lastName=Петренко, patronymic=Петрович ...

Типо блять EclipseLink не берет на себя сабж из 2го блока? Получается мне надо вручную выбирать студентов из группы через запрос?

как сами энтити определены скинь, а то хуй знает что у тебя там написано

ну видимо find не сделать eager loading зависимых сущностей

 

 

https://www.baeldung.com/jpa-entity-graph

 

 

JoPA этот ваш JPA такую тривиальную вещь не сделать по требованию нормально, типа хуярьте прямо атрибуты и похуй что может быть надо/не надо

:mameprivet: :mameprivet: :mameprivet:

чето я не понял наезда

там же прямо сказано есть аннотации в которых задаешь eager/lazy 

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

 

вообще ты слишком быстро сделал выводы

непонятно как он ентити описал (возможно этой связи там попросту не написано), а во вторых непонятно как у него сам entity manager настроен - в теории там может быть какая-нибудь оптимизационная настройка которая говорит нечто вроде "слать нахуй все egaer запросы".

еще небольшое поле для ошибки (ОЧЕНЬ маловероятное) - выражение find выполнилось до коммита транзакции или по запоздавшему кэшу, а createQuery выполнилось после.

 

в смысле ты не понял наезда

тут нормой считается, что ты при ПРОЕКТИРОВАНИИ МОДЕЛИ уже знаешь что ВО ВСЕХ случаях доставания объекта из базы ты ВСЕГДА будешь грузить его связи?

там еще написано что все 1к1 и Нк1 по умолчанию грузятся  :lol:

какой долбоеб это вообще придумал?

 

вот допустим у тебя банально юзер и его друзяшки

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

в 90% остальных случаев, тебе нахуй не нужны его друзья

 

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

"To define an Entity Graph, we can either use the annotations on the entity or we can proceed programmatically using the JPA API."

ты кажется не понял сути программирования вручную энтити граф - это на тот кейс если ты не хочешь юзать аннотации на твои объекты, а хочешь сбоку описать их работу с базой. для остальных случаев просто юзаешь аннотации manyToOne oneToOne oneToMany и тд.

при 1к1 eager - Это лишь по умолчанию, то есть most common usage 

что в принципе логично. тк грузится вложенно только то что единственно - и на это соотв накладные расходы небольшие

тот кейс про который ты говоришь - когда есть список, там, как ты мог узнать из статьи по умолчанию, lazy

 

насчет второй твоей предьявы и сравнения с EF (я так понял это в шарпе orm) - тебе в данном случае тоже никто не мешает загружать все какие хочешь ентити по запросу, данная схема описывает что будет подтянуто при загрузке объекта по id или критерию 

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

вполне вероятно с введением лямбд в java (для меня это все еще произошло недавно) наверное и апи orm`ок подтягивается

 

вообще JPA это про кровавый энтерпрайз, а не удобство, так что твои сравнения по умолчанию будут показывать что java сосет

тут единственный момент. она сосет до тех пор пока мы не говорим про не windows и не microsoft, а также экосистему

при сохранении в бд дописывает в конец +03 и потом при десериализации обсирается

Exception [EclipseLink-3002] (Eclipse Persistence Services - 2.7.3.v20180807-4be1041): org.eclipse.persistence.exceptions.ConversionException
Exception Description: The object [1890-08-24 +03], of class [class java.lang.String], from mapping [org.eclipse.persistence.mappings.DirectToFieldMapping[birthDay-->students.birth_day]] with descriptor [RelationalDescriptor(com.github.index.schedule.data.entity.Student --> [DatabaseTable(students)])], could not be converted to [class java.time.LocalDate].
Internal Exception: java.time.format.DateTimeParseException: Text '1890-08-24T+03' could not be parsed, unparsed text found at index 11

 

это гуглится за одну ссылку


Изменено пользователем Just.Doit

 

очень крутые котейки

RqvSzvr.png


Кому-то пизды дал - нужно сделать скрин обязательно. (с) Solo

Поделиться сообщением


Ссылка на сообщение

кажется этот админ сгорел, несите нового


Saying that Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
 

Поделиться сообщением


Ссылка на сообщение

это гуглится за одну ссылку

@Converter ?

Не хочу конвентер

Поделиться сообщением


Ссылка на сообщение

 

 

Чем тебе не нравится тестирование во фронте?

ну потому что тут нету нормальной инфраструктуры для тестов. тестирование в скале - создал файлик в папке test и поехали. тестирование в питоне - поставил себе pytest и поехали. тестирование фронтэнда - так, поставим, мочу, чай, карму, энзим, энзим реакт, синон, посыпем это все сверху всякой ебалой для тайпскрипа, добавим немножко говнеца с бабеля. окей. ладно, пробуем асерт(1+1) равно (2). так, окей, нужно еще проконфигурить, что б оно находило твои тесты правильно. а еще добавить тайпскрип. окей, делаем. хух, работает. ну давайте попробуем написать тесты для моих компонентов, шо тут у нас. ага, ясно, нужно еще бабель доконфигурить, а еще вот эти пять пакетов забыл поставить. бля, импорты надо попереписывать, а то оно не видит абсолютные импорты. окей, запускаем. ТА СУКА, ЧТО ОПЯТЬ БЛЯТЬ НЕ ТАК.

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

Кекнул с неосилятора. Всё настраивается одной кнопкой (офк, если ты пользуешься cli :buba: ).
Reassign ticket?

Поделиться сообщением


Ссылка на сообщение

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


True victory is when you crush your opponent so completely that he realizes he was wrong in opposing you from the beginning.

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...