- ¿programadores de San Petersburgo?
- FOREX - Tendencias, previsiones e implicaciones 2015
- Aprendizaje automático en el trading: teoría, práctica, operaciones y más
No se trata de un estereotipo, sino del tamaño de la comunidad. Además, el inglés es mucho más sucinto que el ruso.
No es la categoría de peso adecuada para competir con la lengua mundial.
No se trata de un estereotipo, sino del tamaño de la comunidad. Además, el inglés es mucho más sucinto que el ruso.
No es la categoría de peso adecuada para competir con la lengua mundial.
Puede ser más conciso, pero ¿para quién? Por ejemplo, ¿puede repetir fácilmente su mensaje en inglés? Para nosotros, usted y yo, el inglés es menos conciso, porque es menos comprensible. Así que creo que...
Y hablando de "lenguaje mundial"... El ruso no es peor.
Tengo dos preguntas para usted:
1. ¿Cuántos años lleva programando?
2. ¿Has intentado alguna vez (por ti mismo) escribir un programa en ruso?
La cuestión es si existe un estereotipo y si no somos rehenes de él.
¿Qué pasa si rompemos este estereotipo?
¿Me da su respuesta? Destruyámoslo, sin duda, hagámoslo ahora. ¿Qué debería seguir en la práctica?
¿Me da su respuesta? Destruyámoslo, sin duda, hagámoslo ahora. ¿Qué debería seguir en la práctica?
Esa es la cuestión. Mi respuesta: Hace tiempo que me asombra la práctica de escribir programas en general. La ineficacia se ve muy a menudo. Incluso la OOP (inventada por alguien) nunca se cuestiona. ¿No puede haber un enfoque mejor y más eficiente? Puedo afirmar con seguridad que hay un enfoque mejor y más eficiente y que programar en un idioma nativo es muchas veces más conveniente. Todo esto está comprobado por mis tres años de práctica y probado por mi éxito en la programación.
Si rompes el estereotipo, puedes ser más libre, dar un nuevo enfoque, aumentar la eficiencia, comprimir el código... Se abren nuevos horizontes de posibilidades para nosotros.
Puedo dar ejemplos de un enfoque alternativo. Por supuesto, hay que desarrollarlo más, pero ya se ha puesto el principio. Estaba pensando en escribir un artículo sobre ello. En definitiva, nos espera un brillante futuro de software en la práctica).
Esta es mi respuesta.
En 1C puedes codificar en ruso.
1С? ¿Qué es?
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; //-----------------------------------Aquí hay un pequeño código de muestra de mi programa. Aquí combino el ruso y el inglés, pero con una clara preponderancia del ruso. Todo es muy claro y legible.
He aquí un breve ejemplo del código de mi programa. Aquí tengo una mezcla de ruso e inglés, pero con una gran preponderancia del ruso. Todo muy claro y legible.
Y estás hablando de escribir los nombres de las funciones y variables personalizadas en ruso. Nadie los escribe así. Hace mucho tiempo, los programadores desarrollaron ciertas reglas de etiqueta. Cómo formatear adecuadamente el código fuente para que sea fácil de leer no sólo para ti sino también para los demás. Es como las reglas de etiqueta en la sociedad.
En cambio, en 1C todo está escrito en ruso. Por ejemplo, la función () ..... endfunction. bucle ... fin de ciclo si ... fin si. etc. etc.
En general, nos espera un brillante futuro de software en la práctica).
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Usted acepta la política del sitio web y las condiciones de uso