170 похожих чатов

Для читаемости кода есть какая-либо договорённость о последовательности объявлений функций?

Ну типа как в C, сначала объявить, потом вызывать?

func a() {}

func b() {
a()
}

Или наоборот? Читающему как легче воспринимать? Или всё равно, и это вкусовщина?

17 ответов

19 просмотров

Ну методы обычно желательно писать сначала экспортируемые. А экспортируемые вызывают неэкспортируемые, поэтому по логике объявление a должно быть ниже объявления b :) По мне так читаемость лучше

Вкусовщина. Зависит откуда человек пришёл. Я тоже обычно сначала пишу a до b, но это просто привычка сформировалась ещё в Pascal’е

Геннадий-Ковалёв Автор вопроса
wm0
Ну методы обычно желательно писать сначала экспорт...

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

Геннадий Ковалёв
Ну типа интересует что делает чужая либа, открывае...

Да, в питоне я начал аналогично делать, ориентироваться удобнее стало

Alexey Palazhchenko
В разных файлах 😄

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

wm0
А мне кажется писать лишь удобнее в разных файлах....

Ну читать с навигацией по коду всё же удобнее. Но я с этого начал – вкусовщина

Геннадий-Ковалёв Автор вопроса
wm0
А мне кажется писать лишь удобнее в разных файлах....

Блок кода - это // Now block starts.... { // our awesome code... // ... } Такое?

Геннадий Ковалёв
Блок кода - это // Now block starts.... { // ...

Так в Go почти не делают. Обычно стараются выносить функции, если есть такая проблема со скопом

Геннадий-Ковалёв Автор вопроса
Alexey Palazhchenko
Так в Go почти не делают. Обычно стараются выносит...

Я где-то такое просто увидел и удивился, типа нафига.

Геннадий Ковалёв
Я где-то такое просто увидел и удивился, типа нафи...

Ну, именно для создания нового scope: и для области видимости, и для работы с памятью

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

Геннадий-Ковалёв Автор вопроса
Rostislav Teryaev
макконел советует сперва б, потом а. Ну это если с...

Я понял. Короче a() -> b() для машины, а b() -> a() для человека 😂

Alexey Palazhchenko
Вкусовщина. Зависит откуда человек пришёл. Я тоже ...

кмк сейчас вообще не важно. давно уже все перемещаются через хоткеи по коду, а не мышкой. мышка чисто для наведения и далее cmd + B или option + cmd + B или option + F7

Artur Karapetov
кмк сейчас вообще не важно. давно уже все перемеща...

Во-первых, не все. Во-вторых, при чём тут мышка?

Alexey Palazhchenko
Во-первых, не все. Во-вторых, при чём тут мышка?

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

Похожие вопросы

Обсуждают сегодня

Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Коллеги, добрый вечер. Создаю коллекцию от TFPGMap, ключ - перечисление, значение - целое. Нужно отсортировать коллекцию по значению. Как это можно сделать?
Kirill Filippenok
11
Скажи а ты когда этот канал создавал ты уже дельфи не любил, или это со временем пришло?
Роман Лях (rgreat)
18
Привет, такой вопросик появился кажется ли вам что Rust слишком сложный/строгий для высокоуровневого программирования и слишком "безопасный"/строгий для низкоуровневого?
Крокант
10
Всем привет! Использую кастомное модальное диалоговое окошко, все по классике - mrOK, mrCancel как ModalResult. Однако есть нюанс - в главной форме есть универсальный обработч...
Олег Гранишевский
20
Карта сайта