Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2021 June 25

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
А я точно знаю что это плюс
Когда работаю с широким монитором могу отрисовывать 4 пробела в табе. А на ноуте - 2
источник

Y

Yevhen in NodeUA - JavaScript and Node.js in Ukraine
Значит, для Вашего кейса подходят больше табы)
источник

IB

Iaroslav Blinkov in NodeUA - JavaScript and Node.js in Ukraine
Это код в момент разработки или такой код будет мёрджится в дальнейшем? Мы вроде не говорили про то, в каких условиях удобнее разрабатывать, а скорее о том, как это все сливать в проект потом.
источник

IB

Iaroslav Blinkov in NodeUA - JavaScript and Node.js in Ukraine
Вам, получается, надо знать beforehand :
а) как будет отрисовываться в общем репо
b) как вы писали это у себя и какую версию мёрджите(которая правильно выглядит на 4 или на 2ух)
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Не очень понял вопрос
Код с табами отображается так, как того хочет смотрящий
Мне кажется это очевидный плюс, потому что даже один и тот же человек может захотеть видеть отступы разной ширины в зависимости от каких-то условий
источник

IB

Iaroslav Blinkov in NodeUA - JavaScript and Node.js in Ukraine
Чтобы говорить об одном и том же коде  с другим разработчиком, вам нужно знать наперёд/сообщить ему, какой размер таба вы использовали, когда это выглядело "правильно" у вас
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
😳
Это зачем?
источник

IB

Iaroslav Blinkov in NodeUA - JavaScript and Node.js in Ukraine
Выше же уже было о недостатках табов...
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Это не ответ на мой вопрос
Зачем мне сообщать кому-то как у меня отображаются табы - двумя пробелами, или тридцатью?
источник

IB

Iaroslav Blinkov in NodeUA - JavaScript and Node.js in Ukraine
Чтобы человек не занимался подбором размера этого таба самостоятельно, reverse engineering какой-то прям получается.

Ну а в идеале просто иметь стандарты на проекте
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Зачем ему подбирать?
Если он хочет чтобы отсутпы были широкие, у себя настроил 4 пробела в табе. Если узкие - 2 пробела
Не могу понять зачем ему знать мои настройки
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Код это ж не картина. Не обязательно с точностью до пробела передавать впечатления автора в момент его написания
источник

IB

Iaroslav Blinkov in NodeUA - JavaScript and Node.js in Ukraine
- читабельность
- пониманимаемость
- код стайл
источник

A

Alex in NodeUA - JavaScript and Node.js in Ukraine
мб тогда и тему редактора надо, иконки и настройки intellisense в проект запихивать?
источник

IB

Iaroslav Blinkov in NodeUA - JavaScript and Node.js in Ukraine
Это все касается лично вашего отображения одного и того же текста из того же набора символов. В случае с табами и спэйсами проблема как раз в том, что они не одинаковые между разработчиками.
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Я наверное совсем тупой стал от жары, но никак не могу понять как это всё зависит от того, сколько пробелов у меня на машине отрисовывается в табе
В стайлгайде один пункт - табы. Всё, этого достаточно. Не надо уточнять "и чтобы отображались они у вас исключительно как 2 пробела"

Читабельность - если человеку будет проще читать с широкими отступами, он настроит себе такое отображение
Мои личные настройки не влияют на читабельность для других

Понимаемость - не понимаю при чём тут
источник

IB

Iaroslav Blinkov in NodeUA - JavaScript and Node.js in Ukraine
Разработка - социальная деятельность и код может состоять из фрагментов, написанных разными людьми в разное время и с разными значениями таба, что подталкивало одних людей поставить два таба по 2пробела, а местами человек поставил 1 таб по 5 пробелов и их код выглядел отлично. Далее вы открываете их код и ставите значение на скажем 4 пробела = 1 таб.
Разумеется, там где было 2 таба по 2 пробела получится 8 спэйсов отступ и ваш код неминуемо поплывёт.

Вопросы:
Как такой проект привести к общему знаменателю потом?

Стоило ли разрешать табы без стандартов на проекте?

Причем тут читаемость и тем более понимаемость?(этот ответа не требует)
источник

IB

Iaroslav Blinkov in NodeUA - JavaScript and Node.js in Ukraine
Только, пожалуйста, не пишите, как вы хакнете эту ситуацию одним умным решением. Все программирование как раз о том, что мы не должны хакать вещи, которые должны просто работать и всё.
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Вы же понимаете, что в репе хранится именно символ табуляции, а не пробелы?
Ставить два Таба не стоит. Это как если договорится об отступе в 4 пробела и ставить 8 пробелов

Давайте, может, больше конкретики
Вот есть код

Func a
   For ...
       If b
           Log f.ck

Предположим, что вместо пробелов в нем табы
Это значит что условный Вася, который хочет широкие отступы, увидит у себя именно такой код
А условная Маша, которая хочет маленькие отсутпы, увидит у себя

Func a
 For ...
   If b
     Log f.ck


Вы пытаетесь мне доказать что из-за этого страдает понимание кода и его читаемость?
источник

IB

Iaroslav Blinkov in NodeUA - JavaScript and Node.js in Ukraine
"Ставить два таба не стоит"
"Договориться об отступе"
У вас, наверное, и пользователи используют приложение так, как вы и задумали :) Не говоря уже о птице вольной- программисте, которые очень любят договорённости, но имеют слабую долгосрочную память, чтобы их соблюдать 🤣
источник