- Где взять торговых роботов и индикаторы - Алгоритмический трейдинг, торговые роботы
- Где взять дополнительные технические индикаторы - Графики котировок, технический и фундаментальный анализ
- Алгоритмический (автоматический) трейдинг в MetaTrader 5
Это не стереотип, а размер комьюнити. Кроме того, английский язык намного лаконичнее русского.
Не та весовая категория чтобы с мировым языком тягаться.
Это не стереотип, а размер комьюнити. Кроме того, английский язык намного лаконичнее русского.
Не та весовая категория чтобы с мировым языком тягаться.
Возможно он лаконичнее, но для кого? Например, - можете ли Вы без труда пересказать Ваше сообщение по английски? Для нас с Вами английский менее лаконичен, потому что менее понятен. Так я думаю...
Да и вообще заявления о "мировом языке"... Русский не хуже ничуть.
У меня к Вам 2 вопроса:
1. Сколько лет Вы программируете?
2. Вы пробывали хоть раз (для себя) писать программу на русском?
Вопрос в том, существует ли стереотип и не являемся ли мы его заложниками?
что будет если мы разрушим этот стереотип?
Можно ваш вариант ответа? Разрушить - не вопрос, прям щас и разрушим. Что на практике должно за этим последовать?
Можно ваш вариант ответа? Разрушить - не вопрос, прям щас и разрушим. Что на практике должно за этим последовать?
Вот в том то и дело. Мой вариант ответа: Я давно поражен практикой написания программ в целом. Неэффективность видна сплошь и рядом. Даже ООП (придуманный кем то) никогда не ставится под сомнение. А разве не может существовать подхода лучше и эффективней? Я с уверенностью говорю, что подход лучше и эффективней есть, а программировать на родном языке в разы удобнее. Это все проверено моей трехлетней практикой и доказано моими успехами в программировании.
Если разрушить стереотип, можно стать свободней, придумать новый подход, повысить эффективность, сжать код... Откроются новые горизонты возможностей для нас самих.
Я могу привести примеры альтернативного подхода. Конечно его нужно и дальше разрабатывать, но начало заложено. Думал написать об этом статью... В общем, на практике нас ждет светлое программное будущее.)
Вот мой ответ.
В 1С можно на русском кодить.
1С? А что это?
void Сдвинуть_панель_задач(int Расстояние) { G_CORE[_TASKBAR][_MAIN_FRAME][_Y] += Расстояние; Явление_панели = 1; Объект(_TASKBAR); Явление_панели = 0; } //-------------------------------------- //-------------------------------------- //-------------------------------------- //--------------------------------------------------------------- //--------------------------------------------------------------- //--------------------------------------------------------------- void Явление_таскбара() { int Номер_кнопки = 4; //------------------------ int Позиция_этой_кнопки = 1; //---------------------------------------------------------- //Цикл по окнам, которые представлены на таскбаре кнопками. //---------------------------------------------------------- for(int a = 41; a < 61; a++) { if(G_CORE[_TASKBAR][_W_Properties][a] == 0)break; //----------------------------------- if(G_CORE[_TASKBAR][_W_Properties][a]) { //------------------------------------- //--------------------------------------------------------------- //--------------------------------------------------------------- int Номер_представленного_окна = G_CORE[_TASKBAR][_W_Properties][a]; //-------------------- G_CORE[Номер_представленного_окна][_W_Properties][_WINDOW_REPRESENTED_BY_TASKBAR_BUTTON_NUMBER] = Номер_кнопки + 1; //-------------------- Установить_номер_вызываемого_окна_для_кнопки_таскбара(Номер_кнопки,Номер_представленного_окна); //-------------------- Установить_лейбл_окна_на_кнопке_таскбара(Номер_кнопки + 1,G_CORE[_TASKBAR][_W_Properties][a]); //-------------------- Установить_текст_подсказки_для_кнопки_таскбара(Номер_представленного_окна,Номер_кнопки + 1); //------------------------------- Расставить_черточки_кнопок_таскбара(Номер_кнопки); //------------------------------- Последняя_кнопка_ряда_таскбара = Позиция_этой_кнопки;//G_CORE[_TASKBAR][Номер_кнопки_по_позиции(Позиция_этой_кнопки)][_GROUP_COPY_NUMBER]; // Alert("Явление_таскбара Последняя_кнопка_ряда_таскбара ",Последняя_кнопка_ряда_таскбара); //------------------------------- //------------------------------- //------------------------------- Позиция_этой_кнопки ++; //------------------------------- } //----------------------------------- Номер_кнопки += 5; } //----------------------------------------------------------- //От последней явленной иконки, прячем все остальные иконки. //----------------------------------------------------------- Alert("Номер_кнопки ",Номер_кнопки - 5); for(int a1 = Номер_кнопки; a1 < 500; a1++) { if(G_CORE[_TASKBAR][a1][_NAME] == 0)break; //-------------------------- if(G_CORE[_TASKBAR][a1][_OBJECT_GROUP] == _TASKBAR_BUTTON_1) { G_CORE[_TASKBAR][a1][_OBJECT_HIDE] = 1; } //-------------------------- } // Явление_окон(_WINDOW_OPEN,_TASKBAR);//таскбар }/**/ //--------------------------------------------------------------- //--------------------------------------------------------------- //--------------------------------------------------------------- void Минимизировать_окно() { Явление_окон(_WINDOW_CLOSE,ОКНО); //------------------------------- int Высота_текста = 11, заголовок = 2; //---------------------------------------------------- //Номер первой кнопки как объекта на таскбаре.-------- //---------------------------------------------------- int Позиция_этой_кнопки, Исходная_позиция = 56; //---------------------------------------------------- for(int a = 41; a < 61; a++) { if(G_CORE[_TASKBAR][_W_Properties][a] == ОКНО) { Явление_черточки_на_кнопке_таскбара(DELETE); // Alert("Минимизировать_окно которое уже есть"); return; } } //---------------------------------------------------- for(int a1 = 41; a1 < 61; a1++) { if(a1 == 41)Позиция_этой_кнопки = Исходная_позиция; else Позиция_этой_кнопки += 46; // Alert("Позиция_этой_кнопки ",Позиция_этой_кнопки); //------------------------------------------------- if(G_CORE[_TASKBAR][_W_Properties][a1] == 0) { int Свободная_кнопка_справа = Номер_кнопки_по_позиции(Позиция_этой_кнопки); int Номер_копии_свободной_кнопки = G_CORE[_TASKBAR][Свободная_кнопка_справа][_GROUP_COPY_NUMBER]; //--------------------------------------------------------------- Последняя_кнопка_ряда_таскбара = Номер_копии_свободной_кнопки; //--------------------------------------------------------------- // Alert("Свободная кнопка справа ",Свободная_кнопка_справа," Позиция свободной кнопки справа ",G_CORE[_TASKBAR][Свободная_кнопка_справа][_X]); //---------------------------------------------- G_CORE[_TASKBAR][_W_Properties][a1] = ОКНО; G_CORE[ОКНО][_W_Properties][_WINDOW_REPRESENTED_BY_TASKBAR_BUTTON_NUMBER] = Свободная_кнопка_справа + 1; //---------------------------------------------- //Записываем атрибуты окна.--------------------- //---------------------------------------------- Установить_номер_вызываемого_окна_для_кнопки_таскбара(Свободная_кнопка_справа + 1, ОКНО); //------------------------ Установить_текст_подсказки_для_кнопки_таскбара(ОКНО,Свободная_кнопка_справа + 1); //---------------------------------------------- Установить_лейбл_окна_на_кнопке_таскбара(Свободная_кнопка_справа + 1); //---------------------------------------------- //Являем кнопку таскбара. //---------------------------------------------- Явление_объектов(CREATE,_TASKBAR, 0,_TBB1,_GROUP_COPY_NUMBER,Номер_копии_свободной_кнопки); //---------------------------------------------- Явление_черточки_на_кнопке_таскбара(DELETE); //---------------------------------------------- break; } //------------------------------------------------------------------------ } } //--------------------------------------------------------------- //--------------------------------------------------------------- //--------------------------------------------------------------- void Стереть_кнопку_таскбара(int Номер_кнопки = 0) { int Номер_копии_стираемой_кнопки; //--------------------------------------------------------------- if(!Номер_кнопки)Номер_копии_стираемой_кнопки = G_CORE[_TASKBAR][ОБЪЕКТ][_GROUP_COPY_NUMBER]; else Номер_копии_стираемой_кнопки = G_CORE[_TASKBAR][Номер_кнопки][_GROUP_COPY_NUMBER]; //--------------------------------------------------------------- Явление_объектов(DELETE,_TASKBAR, 0,_TBB1,_GROUP_COPY_NUMBER,Номер_копии_стираемой_кнопки); //--------------------------------------------------------------- if(Открыто_окно[_TOOLTIP_WINDOW])Закрыть_окно_Tooltip(); //--------------------------------------------------------------- //Alert("Номер_копии_стираемой_кнопки ",Номер_копии_стираемой_кнопки); //--------------------------------------------------------------- Сместить_номера_представленных_окон(Номер_кнопки); //--------------------------------------------------------------- if(Номер_копии_стираемой_кнопки != Последняя_кнопка_ряда_таскбара) { Ротация_кнопок_таскбара(Номер_копии_стираемой_кнопки); } //-------------------------------------------------------------- } //--------------------------------------------------------------- //--------------------------------------------------------------- //--------------------------------------------------------------- //--------------------------------------------------------------- int Номер_кнопки_по_номеру_копии(int Номер_копии) { //------------------------- for(int a1 = 4; a1 < 500; a1 += 5) { if(G_CORE[_TASKBAR][a1][_NAME] == 0)break; //--------------------------- if(G_CORE[_TASKBAR][a1][_GROUP_COPY_NUMBER] == Номер_копии)return(a1); } //------------------------- return(0); } //--------------------------------------------------------------- int Номер_кнопки_по_позиции(int Позиция) { //------------------------- for(int a1 = 4; a1 < 500; a1 += 5) { if(G_CORE[_TASKBAR][a1][_NAME] == 0)break; //--------------------------- if(G_CORE[_TASKBAR][a1][_X] == Позиция)return(a1); } //------------------------- return(0); } //--------------------------------------------------------------- //--------------------------------------------------------------- //--------------------------------------------------------------- void Ротация_кнопок_таскбара(int Номер_копии_стираемой_кнопки) { int Шаг = 46; int Номер_последней_кнопки; int q; int Номер_кнопки; int Номер_стираемой_кнопки = Номер_кнопки_по_номеру_копии(Номер_копии_стираемой_кнопки); int Позиция_стираемой_кнопки = G_CORE[_TASKBAR][Номер_стираемой_кнопки][_X]; int Исходная_позиция = Позиция_стираемой_кнопки + Шаг; //Alert(" Позиция_стираемой_кнопки ",Позиция_стираемой_кнопки," Исходная_позиция ",Исходная_позиция," Номер_стираемой_кнопки ",Номер_стираемой_кнопки); //----------------------------------------------------------- for(int Позиция = Исходная_позиция; Позиция < 3000; Позиция += Шаг) { Номер_кнопки = Номер_кнопки_по_позиции(Позиция); //------------------------------------------------ if(G_CORE[_TASKBAR][Номер_кнопки][_OBJECT_HIDE]) { //------------------- G_CORE[_TASKBAR][Номер_стираемой_кнопки][_X] = G_CORE[_TASKBAR][Номер_последней_кнопки][_X]; G_CORE[_TASKBAR][Номер_стираемой_кнопки + 1][_X] = G_CORE[_TASKBAR][Номер_последней_кнопки + 1][_X]; G_CORE[_TASKBAR][Номер_стираемой_кнопки + 2][_X] = G_CORE[_TASKBAR][Номер_последней_кнопки + 2][_X]; G_CORE[_TASKBAR][Номер_стираемой_кнопки + 3][_X] = G_CORE[_TASKBAR][Номер_последней_кнопки + 3][_X]; G_CORE[_TASKBAR][Номер_стираемой_кнопки + 4][_X] = G_CORE[_TASKBAR][Номер_последней_кнопки + 4][_X]; //------------------- //Alert("Ротация_кнопок_таскбара - новая Позиция стертой кнопки ",G_CORE[_TASKBAR][Номер_стираемой_кнопки][_X]); break; } //------------------------------ Alert("Ротация_кнопок Номер_кнопки ",Номер_кнопки); //------------------------------ if(G_CORE[_TASKBAR][Номер_кнопки][_OBJECT_GROUP] == _TASKBAR_BUTTON_1) { //------------------------------ Поведение_объектов(_STOPABLE_SINGLE_PLAY_MODE, _USER_EVENT, _TASKBAR, Номер_кнопки, Номер_ячейки_SCENARIO(_SC35)); Поведение_объектов(_STOPABLE_SINGLE_PLAY_MODE, _USER_EVENT, _TASKBAR, Номер_кнопки + 1, Номер_ячейки_SCENARIO(_SC35)); Поведение_объектов(_STOPABLE_SINGLE_PLAY_MODE, _USER_EVENT, _TASKBAR, Номер_кнопки + 2, Номер_ячейки_SCENARIO(_SC35)); Поведение_объектов(_STOPABLE_SINGLE_PLAY_MODE, _USER_EVENT, _TASKBAR, Номер_кнопки + 3, Номер_ячейки_SCENARIO(_SC35)); Поведение_объектов(_STOPABLE_SINGLE_PLAY_MODE, _USER_EVENT, _TASKBAR, Номер_кнопки + 4, Номер_ячейки_SCENARIO(_SC35)); /* Поведение_объектов(_STOPABLE_SINGLE_PLAY_MODE, _USER_EVENT, _TASKBAR, Номер_кнопки, Номер_ячейки(_SC35)); Поведение_объектов(_STOPABLE_SINGLE_PLAY_MODE, _USER_EVENT, _TASKBAR, Номер_кнопки + 1, Номер_ячейки(_SC35)); Поведение_объектов(_STOPABLE_SINGLE_PLAY_MODE, _USER_EVENT, _TASKBAR, Номер_кнопки + 2, Номер_ячейки(_SC35)); Поведение_объектов(_STOPABLE_SINGLE_PLAY_MODE, _USER_EVENT, _TASKBAR, Номер_кнопки + 3, Номер_ячейки(_SC35)); Поведение_объектов(_STOPABLE_SINGLE_PLAY_MODE, _USER_EVENT, _TASKBAR, Номер_кнопки + 4, Номер_ячейки(_SC35));*/ //------------------------------ Список_перемещенных_объектов[q] = Номер_кнопки; Список_перемещенных_объектов[q + 1] = Номер_кнопки + 1; Список_перемещенных_объектов[q + 2] = Номер_кнопки + 2; Список_перемещенных_объектов[q + 3] = Номер_кнопки + 3; Список_перемещенных_объектов[q + 4] = Номер_кнопки + 4; //------------------------------ Номер_последней_кнопки = Номер_кнопки; //------------------------------ q += 5; } } //------------------------------------ //------------------------------------ Отложенный_вызов = 1; Индекс_отложенного_вызова_функции = 1; Пауза_в_периодах_таймера = 10; //------------------------------------ } //--------------------------------------------------------------- //--------------------------------------------------------------- //--------------------------------------------------------------- void Сместить_номера_представленных_окон(int Номер_кнопки = 0) { int Номер_этой_кнопки; //----------------------------------- if(Номер_кнопки == 0)Номер_этой_кнопки = ОБЪЕКТ; else Номер_этой_кнопки = Номер_кнопки; //----------------------------------- int Номер_окна_стираемой_кнопки = G_CORE[_TASKBAR][Номер_этой_кнопки][_WON]; //----------------------------------- G_CORE[Номер_окна_стираемой_кнопки][_W_Properties][_WINDOW_REPRESENTED_BY_TASKBAR_BUTTON_NUMBER] = 0; //-----------------------------------Вот небольшой пример кода моей программы. Здесь я сочетаю русский и английский язык, но с явным перевесом русского. Все очень понятно и читабельно.
Вот небольшой пример кода моей программы. Здесь я сочетаю русский и английский язык, но с явным перевесом русского. Все очень понятно и читабельно.
А вы про то что бы писать названия пользовательские функции и переменные на русском. Так ни кто не пишет. Уже давным давно программистами выработались некие правила хорошего тона. Как правильно оформлять исходный код, что бы его было удобно читать не только вам но и другим. Это как правила этикета в обществе.
В 1С же, все полностью пишется на русском. Например функция () ..... конецфункции. цикл ... конеццикла если ... конецесли. и тд. и тп.
В общем, на практике нас ждет светлое программное будущее.)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования