@ru_python

Страница 2129 из 9768
Nikolay
01.02.2017
17:32:43
в общем случае так делать низя

Denis
01.02.2017
17:33:34


Nikolay
01.02.2017
17:33:45
да-да

Maxim robox
01.02.2017
17:36:23
каким боком меня должно волновать именование переменных в двух разных языках?
Бэкенд отдал тебе json: {'pizza_toppings': []} Ты его на фронтэнде принял. Что дальше делаешь? Если используешь как есть pizza_toppings, то это не по гайдлайнам js. Если будешь в API отдавать 'pizzaToppings', это не по гайдлайнам питона. Тут, как бы, хочешь — не хочешь, а пересечения есть. И вполне здраво было бы принять какой-то единый стиль для двух языков. Да, для одного из них он будет «чужим». Зато единообразие.

Google
Nikolay
01.02.2017
17:37:02
не надо никакого единообразия, есть стайлгайды для языков, и твой код в дальнейшем будет поддерживать питонист, которому срать и мазать на этот джаваскрипт

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

Aragaer
01.02.2017
17:38:15
pizza_toppings = my_json.get_field('pizzaToppings')

все ок

Denis
01.02.2017
17:38:27
У питонистов кровь из глаз, когда они видят camel case?

Aragaer
01.02.2017
17:38:31
первое - переменная, второе - константная строчка

Maxim robox
01.02.2017
17:38:36
Nikolay
01.02.2017
17:38:48
У питонистов кровь из глаз, когда они видят camel case?
у питонистов кровь из глаз на кучу красных строк в IDE

где проверка pep8 по умолчанию всегда

Aragaer
01.02.2017
17:39:15
а предлагается метапрограммингом из жсона сразу генерить питоновские объекты?

Denis
01.02.2017
17:39:31
Эту проверку можно отключить или поменять

Maxim robox
01.02.2017
17:39:44
а предлагается метапрограммингом из жсона сразу генерить питоновские объекты?
Я лично предлагал принять один стиль на оба языка в пределах проекта.

Google
Aragaer
01.02.2017
17:39:48
http://stackoverflow.com/questions/1175208/elegant-python-function-to-convert-camelcase-to-snake-case - если очень хочется, то вот регекспы

Nikolay
01.02.2017
17:39:58
Эту проверку можно отключить или поменять
но не нужно. Можно максимум, как ты выше заметил, пару проверок отключить, если все ноют

Aragaer
01.02.2017
17:40:05
что значит в пределах проекта? проектов два - жс и питон

Artem
01.02.2017
17:40:26
h_t_t_p_server получится?

Maxim robox
01.02.2017
17:40:30
Проект один — веб-приложение.

Aragaer
01.02.2017
17:41:16
нет, бэкенд и фронтенд

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

Nikolay
01.02.2017
17:41:52
Проект один — веб-приложение.
когда два языка используется - компоненты разные. И одна на другую смотреть не должна

Nikolay
01.02.2017
17:43:08
Речь же не про внешних клиентов API.
js - внешний клиент для API, который отдает питон

Aragaer
01.02.2017
17:43:21
а если не внешний клиент, а андроид или ёс клиент? который пользуется тем же бэкендом

Maxim robox
01.02.2017
17:43:37
js - внешний клиент для API, который отдает питон
Но он может писаться одним и тем же человеком.

Nikolay
01.02.2017
17:43:58
Но он может писаться одним и тем же человеком.
тогда это его обязанность написать их независимо и корректно на обоих языках

без всяких глупых “общих стилей”

Maxim robox
01.02.2017
17:44:21
тогда это его обязанность написать их независимо и корректно на обоих языках
Что значит «корректно»? Соблюдая styleguide каждого языка?

Nikolay
01.02.2017
17:44:39
если есть хотя бы малейшая возможность, что этот код будет в перспективе смотреть и поддерживать кто-то другой

т.е. почти всегда

Maxim robox
01.02.2017
17:45:57
именно
Ну может я глупенький? Объясни, как мне это сделать? Пришёл мне от API тот json с объектом 'pizza_toppings'. Я хочу его использовать. Пишу, например, response.json.pizza_toppings. Но это уже нарушение.

Google
Nikolay
01.02.2017
17:46:37
правильный ответ - никаким

стайлгайд js не имеет никакого отношения к спецификации json

и json вообще похер, каким там языком и как ты его будешь читать

Maxim robox
01.02.2017
17:48:04
каким боком то, что тебе пришло в стандартном формате извне, пусть даже теоретически может быть нарушением?
Только это выливается в то, что у тебя потом по всему дереву компонентов (если говорить про react или что-то подобное) будет прокидываться объект pizza_toppings. Когда styleguide кричит тебе о том, что там должен быть pizzaToppings.

Nikolay
01.02.2017
17:48:49
если ты вообще строишь какие-то предположения о названиях филдов в json при написании кода - ты явно что-то делаешь не так

Aragaer
01.02.2017
17:50:11
а вот я так чую, нормальные библиотеки жсона сами умеют конвертить между кэмелкейзом и снэйккейзом

Maxim robox
01.02.2017
17:53:45
джаваскриптопроблемы. Используй парсер другой, значит, который не требует “принудительного нарушения стандартов”
А как такой вариант? Отключаешь свой максимализм, перечитываешь строчку в pep8, которая гласит, что стайлгайд проекта важнее pep8, наступаешь себе на гордость и идёшь менять конфиг pep8.

Nikolay
01.02.2017
17:54:43
у которых стайлгайд может описывать форматы, не связанные с языком

кстати, в Python та же история

ты можешь в JSON спокойно написать “pizzaToppings” и никто не умрет, и это не будет нарушением pep8

потому что это всего лишь строка

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

Maxim robox
01.02.2017
17:56:13
и приходит следующий разраб и бьет тебя ногами
Приходит следующий разраб с распухшим самомнением, получает свой подзатыльник и перестраивает себя под новый непривычный styleguide. Как бы больно ему ни было. А то это получается, что проект работает на сотрудника, а не сотрудник на проект.

Google
Maxim robox
01.02.2017
17:57:14
ты можешь в JSON спокойно написать “pizzaToppings” и никто не умрет, и это не будет нарушением pep8
JSON же не из воздуха строится. Это сериализация какой-нибудь модели, например. В которой есть поля. Которые описаны переменными. Которые в underscore_case.

Maxim robox
01.02.2017
17:57:41
получается, что проект - говно, а разраб, который поддерживает принятый в сообществе стайлгайд - неправ
Да. Потому что не удосужился прочитал тот самый pep8, который так восхваляет.

Nikolay
01.02.2017
17:57:48
ты можешь поле сам назвать, как хочешь, если на фронтенде ноют

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

я бы просто переписал все нафиг, если бы меня позвали на такой проект

и послал бы в хер всех, кто бы спорил

Admin
ERROR: S client not available

Nikolay
01.02.2017
17:58:27
ибо так писать - нельзя

arisu
01.02.2017
17:58:32
На авк?

Авк базед солюшнс

Maxim robox
01.02.2017
17:58:49
он его лучше тебя знает, раз ты ему такую херню втираешь :)
> Many projects have their own coding style guidelines. In the event of any conflicts, such project-specific guides take precedence for that project.

Nikolay
01.02.2017
17:59:07
Авк базед солюшнс
как вариант, кстати :)

> Many projects have their own coding style guidelines. In the event of any conflicts, such project-specific guides take precedence for that project.
это не означает, что на pep8 можно плюнуть и растереть, чтобы где-то на фронденде у народа перестало подгорать

вернусь через 10 минут, пиши еще аргументы. Эти не канают

Maxim robox
01.02.2017
18:00:26
это не означает, что на pep8 можно плюнуть и растереть, чтобы где-то на фронденде у народа перестало подгорать
Ситуации разные бывают. Пришёл в проект с существующим styleguide, который противоречит pep8 и твоему чувству прекрасного — смирись и привыкай. Ну или увольняйся, если сильно принципиально.

Maxim robox
01.02.2017
18:03:48
Зачем увольняться? Перепишу и устрою техтолк, в котором объясню, что так делать нельзя
То есть сперва ты потратишь время компании впустую. Потом твои коллеги потратят ещё время на перенастройку своих линтеров и перепривыкание. Тебя скорее уволят.

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

arisu
01.02.2017
18:07:22
Говно против говна

Google
arisu
01.02.2017
18:07:40
Пишите на пхп.

Там соглашения никакие не действуют

Denis
01.02.2017
18:08:15
Там доллары

arisu
01.02.2017
18:08:41
Вот и отлично.

Его ж евреи писали.

Где евреи - там деньги

Geronimo
01.02.2017
18:09:30
Деньги евреев ты тут не причём)

Nikolay
01.02.2017
18:24:59
а за то, что pep8 кто-то руками отключил в IDE - надо бить нещадно. Ногами

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

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

точнее, я даже думаю, дело не в стайлгайде

дело в кривом парсере

а про то, что js - говно, мы поговорим в другой раз

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

Johnnie
01.02.2017
19:11:47
@Kolyann смари чо

Kolyann
01.02.2017
19:12:14
?

Python'ер
01.02.2017
19:23:02
Что предпочтительней: циклом for итерировать range и использовать полученые значения в качестве индексов или в цикле while последовательно изменять одну переменную и использовать её в качестве индекса?(задание написать аналог __reversed__)

Страница 2129 из 9768