Про соглашения Visual Foxpro | |
---|---|
sphinx Автор Сообщений: 31184 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Очень хочется совместными усилиями допинать черновой проект (готового не было, если у кого есть - делитесь!). Написан по аналогии с корпоративными требованиями к языку Java, все префиксы взял из книги Славы Клепинина. Ну, может еще что-то добавил.
Просьба - покритиковать тщательно (с аргументами, как надо), или дополнить, или разнести в хвост и в гриву отдельные вещи (ну, все - нет, не вариант). Любым замечаниям буду рад, на то и сообщество, что решаем порой проблемы вместе. Надо очень. Я был инициатором, дело из=за мелочей не допинали (не моя лень, есть текущие задачи и забывается)... Мне нужно или допинать (но если делать - то НА УРОВНЕ, это все же корпоративный планируется стандарт, или расписаться, что так оставляем. А это явно сырое, нутром чую... Ну и это уже вес определенный, как автора. Будет и другие веса в нашей системе, но не все сразу. Я-то генерирую идеи.. "Но значит это никому не нужно", если перефразировать классика. А идеи всегда очень просты до неприличия. Но это отдельная тема. Пусть читают коллеги, если заходят под гостем. Я только рад, что посещают такой ресурс. ------------------ "Veni, vidi, vici!"(с) Исправлено 2 раз(а). Последнее : sphinx, 21.11.20 08:14 |
Re: Про соглашения Visual Foxpro | |
---|---|
Ydin Сообщений: 7648 Откуда: Киев Дата регистрации: 16.12.2005 |
У нас есть такой пункт
Это оправдало себя многократно |
Re: Про соглашения Visual Foxpro | |
---|---|
Владимир Максимов Сообщений: 14100 Откуда: Москва Дата регистрации: 02.09.2000 |
Цитата: Цитата: Насчет нижнего регистра: 1. В общем случае - это невыполнимо. Например, если копировать файлы средствами FoxPro, то они будут конвертированы в верхний регистр 2. Длинные названия в одном регистре - сложны для чтения. А символ подчеркивания как разделитель слов - увеличивает длину. Что может быть критически важным Тут удобнее было бы без разрывов, но новое слов начинать с заглавной буквы - PersonService.prg Лично я не стал бы вообще вводить регламентацию именно регистра букв в именах файлов. - С точки зрения разработки на FoxPro не влияет никак - С точки зрения работы с файлами из вне FoxPro - сложно и неудобно в сопровождении Хотя стоит подчеркнуть, что использовать русские (в общем случае не английские) буквы в именах файлов не надо. Как не надо использовать пробелы. Вот это именно что осложнит работу с файлами Цитата: Цитата: Область действия директив препроцессора - тот файл, где они указаны. Поэтому директивы, указанные в главном файле, только в этом главном файле и будут работать. Эту строчку следует удалить Цитата: В принципе правильно, конечно, но надо помнить что часть SET-настроек действуют только в рамках текущей сессии данных. Т.е. для форм и отчетов, работающих в Private Data Session, часть настроек надо устанавливать заново в этой новой сессии данных. Цитата: Цитата: Область видимости для Private - "В текущем модуле" - не совсем корректно. Скорее так: "В текущей и вызванных из нее процедурах". Область видимости для параметров - Строго говоря, для параметров область видимости зависит от способа их определения. Но если указывать в скобках, как описано далее, то да, это будут локальные переменные. Если же параметры описаны через ключевое слово Parameters - то это Private Префикс "t" для параметра используется не столько для задания области видимости, столько для указания того факта, что это именно параметр. Это бывает важно Цитата: Указание на тип ведь нужно не само по себе, а для того, чтобы учесть некоторую специфику работы с таким типом данных. В частности, для числовых типов критически важным является наличие знаков после запятой и правил округления. С этой точки зрения числовые данные делятся на 3 группы Integer - Нет дробной части. Нет округления. Дробная часть отбрасывается Currency - Всегда 4 знака после запятой и специфический способ округления Numeric, Float, Double - либо вообще одно и то же (Numeric и Float), либо отличаются лишь способ хранения на диске (Double). С точки зрения работы с этими типами данных в среде FoxPro - отличий нет. Поэтому не требуются разные префиксы Исходя из этих соображений и следует указывать префиксы следующим образом n - Numeric, Float, Double - или "f", если это привычнее i - Integer y - Currency Цитата:
Здесь у параметров не указана буква с типом данных - это отдельное соглашение или просто забыли? Теоретически, должно было быть так
Цитата: Сомнительный путь. Предмет для дискуссии. Вряд ли именно этого правила будут придерживаться. Но, попробуйте... Цитата: Цитата: Ну, уже сразу второе правило противоречит первому Load вызывается до Init и как тут быть? Но в общем случае, это правило не всегда можно выполнить. Взаимодействия методов внутри класса бывают довольно неоднозначные. На практике, было бы проще, если бы методы располагались просто в алфавитном порядке. В том числе и init. Т.е. я понимаю, конечно, что цель такого расположения, это упростить чтение кода. Проблема только в том, что это годится только для простых случаев. Да и по любому "с листа" разобраться в коде класса будет тяжело. Вне зависимости от того, как там будут расположены методы Ну и наверное, для особо "одаренных" следует заметить, что это правило для классов, которые создаются вне дизайнера. Не визуальными средствами, а напрямую в коде PRG Цитата: Ой мутно это все и неоднозначно. Цитата: Именно по "правому"? Не по "левому"? Или имеется в виду выровнять в столбик?
Т.е. вот здесь опции as сознательно сдвинуты вправо для удобства чтения. Это имелось в виду? Цитата: Это не всегда возможно. Например, если поле сортировки - это вычисляемое поле имя которого совпадает с именем в поле таблицы-источника
Цитата: Вопрос в том, для чего курсор открывали. Возможно, как раз для того, чтобы использовать вне метода Кроме того, для Private Data Session это не имеет значения. Все равно закроется вместе с сессией Как пожелание такое можно указать, но как требование - нет Исправлено 2 раз(а). Последнее : Владимир Максимов, 21.11.20 20:34 |
Re: Про соглашения Visual Foxpro | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
Интересная тема, но что-то "вечные новички" неактивны, нет былого трындежа.
|
Re: Про соглашения Visual Foxpro | |
---|---|
Ydin Сообщений: 7648 Откуда: Киев Дата регистрации: 16.12.2005 |
m. перед переменными
|
Re: Про соглашения Visual Foxpro | |
---|---|
Crispy Сообщений: 18571 Дата регистрации: 16.05.2005 |
Офтоп (для автора).
В самом начале убийственное: Цитата:Таки он, убив Авеля, к вам туда перебрался, выходит дело. Ну а по самому описанию, например, такой момент: Цитата:А не много ли? Хоть и стандарт умолчания вроде бы. Однако, визуально при 4 пробелах текст слишком широко расползается по горизонтали. Мне когда-то в самом начале подсказали 2 пробела, всегда их ставил, и вроде в таком виде компактнее и удобнее. Приятнее - и глазу, и уму. Также, мне кажется, стоило бы определиться тогда уж и с длиной строки текста (указав, скажем в пределах стандартного экрана, ну или что-то в этом роде) при использовании ";" для переноса. Кстати странный момент, про "Запуск формы или главного меню". Получается, запрещен запуск с передачей параметров? Или с возвратом. Т.е. заведомо принципиально снижается функционал самой команды? Или скажем, почему нельзя (как косвенно можно понять из текста) использовать оператор множественного присваивания STORE...TO... ? Часто он гораздо удобнее и сокращает простыни. Также и в остальном - наверняка есть куча подводных камней, которые все заведомо не учтешь. Но которые когда-то могут еще аукнуться и вылезть наружу. Т.е. смысл самого соглашения вообще в чем? Жесткие инструкции. Или же целевые рекомендации. И тут уже как бы напрашивается второй офтоп из двух частей: 1 часть удивительная: неужто фокспро все еще где-то жив? и 2 часть философская: и как долго он собирается прожить? (ну если вместе с Каином как говорится, тот вроде так и бродит по земле с тех пор) ------------------ В действительности все иначе, чем на самом деле. (Антуан де Сент-Экзюпери) |
Re: Про соглашения Visual Foxpro | |
---|---|
sphinx Автор Сообщений: 31184 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
В общем, есть пища, в основном благодаря усилиям уважаемого Владимира Максимова.
------------------ "Veni, vidi, vici!"(с) |
Re: Про соглашения Visual Foxpro | |
---|---|
Ydin Сообщений: 7648 Откуда: Киев Дата регистрации: 16.12.2005 |
По-крайней мере, по Foxcharts мне еще пишут, хоть я давно не отвечаю. США, Индия, что-то испано-португальское, т.е. они не пишут страну. Один просил помочь ему нарисовать "свечки" вместо столбиков. Консультацию хотел. Типа retired, но хочет такое сделать... Не, я туда уже не вернусь... Стар уже стал, и двигаюсь я уж с трудом ("Мой маленький гном") Отдельно идет AVFP (Active VFP). Ну, я стар, а чего Вы тут, а ничего не знаете? Вы же не ходите в гуглах, как я, но Вы тут на этом сайте и от его имени "как авторы" его (Visual Foxpro ) хороните... Так просто уйдите отсюда тогда, или Курилка у Вас насиженное место, жопа привыкла или еще что-то... Или хотя бы не хороните сук, на котором сидите, как солитеры в реально живом организме Исправлено 1 раз(а). Последнее : Ydin, 23.11.20 21:43 |
Re: Про соглашения Visual Foxpro | |
---|---|
Ydin Сообщений: 7648 Откуда: Киев Дата регистрации: 16.12.2005 |
Речь в конце шла про
Фокспро потенциально выше многого, что типа живет еще. Это MS своего пасынка похерила - он же не дает прибыли им. Еще бы, он же конкурент внутри MS и как при нем можно было продвинуть C#? |
Re: Про соглашения Visual Foxpro | |
---|---|
Ydin Сообщений: 7648 Откуда: Киев Дата регистрации: 16.12.2005 |
Это было такое "соглашение по Visual Foxpro"
Чиновники в MS такое приняли. А мы тут на этом сайте это "соглашение" не принимали. Зачем говорить на этом сайте свое "он помер" там где от его имени мы и говорим. Считаешь, что Фокс помер, так и уйди с этого сайта Джойса, кот. сайт и содержит. Или так не говори дальше. Не знаю, может, не прав, что высказываюсь так, может завтра сотру тут многое. Исправлено 3 раз(а). Последнее : Ydin, 24.11.20 10:05 |
Re: Про соглашения Visual Foxpro | |
---|---|
Simple777 Сообщений: 33855 Дата регистрации: 05.11.2006 |
"Рукописи не горят". |
Re: Про соглашения Visual Foxpro | |
---|---|
Crispy Сообщений: 18571 Дата регистрации: 16.05.2005 |
То, что было мной сказано - это в том смысле, о котором поется в одной хорошей и мудрой песне:
------------------ В действительности все иначе, чем на самом деле. (Антуан де Сент-Экзюпери) Исправлено 1 раз(а). Последнее : Crispy, 24.11.20 10:16 |
Re: Про соглашения Visual Foxpro | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
Устроили ромашку: жив/не жив.
Аж слезу пустили ... Ребята, вы же за двадцать лет даже соглашения FoxPro не смогли написать. |
Re: Про соглашения Visual Foxpro | |
---|---|
sphinx Автор Сообщений: 31184 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Каждый блок выравнивается по правому краю, а его содержимое - по левому:
Здесь SELECT, FROM и WHERE выравнены по правому краю, а их содержимое - по левому. Только как это грамотно написать? ------------------ "Veni, vidi, vici!"(с) Исправлено 2 раз(а). Последнее : sphinx, 25.11.20 16:32 |
Re: Про соглашения Visual Foxpro | |
---|---|
Владимир Максимов Сообщений: 14100 Откуда: Москва Дата регистрации: 02.09.2000 |
Видимо, у нас разное понимание того, что есть "правый край", а что есть "левый край". Я не вижу здесь никакого выравнивания "по правому краю". Может речь об отступе идет? * Слово Select прижато (выровнено) по левому краю SELECT f1, f1, f2 * Слово FROM расположено с отступом, но прижато (выровнено) по левому краю FROM table1 t1 * Слово INNER расположено с отступом, но прижато (выровнено) по левому краю INNER JOIN table2 t2 ON t1.id1=t2.id2 * Слово WHERE прижато (выровнено) по левому краю WHERE expr1>0 * Слово INTO прижато (выровнено) по левому краю INTO CURSOR cursor1 Нигде в данном примере я выравнивания по правому краю не вижу |
Re: Про соглашения Visual Foxpro | |
---|---|
andrewk Сообщений: 174 Откуда: Красноярск Дата регистрации: 15.05.2005 |
Чисто по мелочам.
1. Продукт называется «Visual FoxPro», а в тексте везде «pro» с маленькой буквы. Ну это к тому, что если текст призван установить стандарты, то и сам должен быть максимально корректен. 2. Насчёт написания переменных. Пример:
При присвоении это делать смысла нет, здесь Фокс не запутается: "v = 2*2" |
Re: Про соглашения Visual Foxpro | |
---|---|
sphinx Автор Сообщений: 31184 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Речь идет про выравнивание не по краю СТРАНИЦЫ, а выравнивание служебных слов таким образом, чтобы их границы были на условной вертикальной линии. Тогда их содержимое будет автоматически выравнено вдоль этой условной линии, но слева. Посмотрите внимательнее на мой код. Кроме INNER JOIN (имеет отступ для лучшей читаемости кода) - все СЛОВА выравнены по правому краю. ------------------ "Veni, vidi, vici!"(с) Исправлено 1 раз(а). Последнее : sphinx, 25.11.20 16:32 |
Re: Про соглашения Visual Foxpro | |
---|---|
Taran Сообщений: 13625 Откуда: Красноярск Дата регистрации: 16.01.2008 |
По мне так from, inner, order, where лучше выравнивать по левому краю, отступив 2 пробела от Select. Проще и быстрее написать и лучше выглядит и читается. А уже допустим наименования таблиц в from и inner также по левому, регулируя пробелами.
|
Re: Про соглашения Visual Foxpro | |
---|---|
Владимир Максимов Сообщений: 14100 Откуда: Москва Дата регистрации: 02.09.2000 |
Поскольку часто работаю с Word/Excel, то под термином "выровнять" я понимаю "прижать". Т.е. "выровнять по правому краю" для меня - это "прижать к правому краю". Ну, как выравнивание абзацев в Word/Excel Если я правильно понял, о чем ты, то вот это имелось в виду? SELECT f1, f1, f2 FROM table1 t1 INNER JOIN table2 t2 ON t1.id1=t2.id2 WHERE expr1>0 and expr2> 0 INTO CURSOR cursor1 Я использую теги "pre", чтобы исключить форматирование и показать "как есть". Ну и несколько избыточно для наглядности Ну, лично я так делаю. Но на практике вижу, что мало кто из разработчиков вообще связывается с какой-либо "читабельностью" команд Select-SQL. Кроме того, табуляторы (а как выравнивание по столбцам-то делать?) могут настраиваться по разному у разных разработчиков и в разных средах. Да хотя бы на этом форуме даже режим просмотра отличается от той картинки, которая будет после сохранения. Т.е. это, конечно, хорошо, но на практике будет крайне трудно поддерживать такое правило. Особенно в случае сложных запросов и(или) одновременной правке в разных редакторах кода с разными настройками |
Re: Про соглашения Visual Foxpro | |
---|---|
sphinx Автор Сообщений: 31184 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Ну почти... Теперь представь себе, что все служебные слова находятся в столбце А и всех их нужно прижать к правому, а не к левому краю.
------------------ "Veni, vidi, vici!"(с) |
© 2000-2024 Fox Club  |