Pull to refresh
24
0
Frozik @Frozik

Пользователь

Send message
А зачем отказываться от Typescript, если c версии 1.6 он поддерживает JSX? Ну и на счет редакторов отдельных, вроде все основные сейчас поддерживают JSX синтаксис с удобным редактированием…
Случайно отправил и не успел отредактировать.
Хм, действительно странно. Где первая оптимизация с 1908мс до 16мс. У меня на ноде 5.7.0x64 выдает (2573мс и 32мс), а в хроме 48.0.2564.116x64 (1491мс и 1252мс).
Хм, действительно странно. Где первая оптимизация с 1908 до 16мс.
А какая версия ноды используется? Может просто в браузере более свежая версия движка V8?
Я тут имел в виду не только JS. В некоторых языках можно ссылку передавать по ссылке, например в C# с использованием ref.
Похоже на то, что автор обнаружил в MVC фатальный недостаток.
Объекты передаются как раз по ссылке. А вот ссылка на объект передается по значению.
Anchors можно оптимизировать
Скрытый текст
k$
Переустанавливал недавно. Взял 8.1 SL, ввёл на этапе установки найденный в инете ключ, а потом активировал с родным. Мне значит жутко повезло?
Такая сумма уже реальна, жаль что не у нас =(
Спасибо большое за ответ. Начну тогда с теории самостоятельно.
Во первых спасибо за статью. Хотелось бы узнать, для пилотирования самолётом является необходимым PPL? Единственно, что меня сдерживает это стоимость обучения. Может можете подсказать, можно ли снизить эту стоимость? И может знаете, какова ситуация в России с арендой?
Ну она же не понимает -moz, -webkit, -o префиксы
Пардон, я пробежал мельком и не заметил, что это решение для runtime. Сорри за ссылку на статику.
Может тогда подскажете какие ломают совместимость? Вот как раз там полная совместимость с windows 7. А нововведения — это лишь дополнения.
Должны были бы знать по фильму, что заклинания из чёрной книги читать нельзя… ;-)
Если внимательно посмотреть третий цикл, то видно, что for (var index = 0; index < arrayLength; index++), в переменной arrayLength нет точки. Переменная создается до цикла.

Во вторых там я хотел показать именно в том примере, что циклы используют индекс, а не через GetEnumerator, поэтому и запостил там, а не тут. Ну и разницы между двумя for вообще никакой нет. Да, foreach немного по другому скомпилировалось на 6 байт больше в том случае, но это ни разу не показатель в таких синтетических тестах.
Вероятно вы запускали в дебаге или он был подключен? Что получается из трех ваших циклов можете посмотреть выше
Допустим у нас есть следующий код:

using System;
using System.Linq;

namespace TestArrayInForeach
{
    class Program
    {
        static void Main(string[] args)
        {
            var array = args.Select(int.Parse).ToArray();
            var arrayLength = array.Length;

            // First case
            for (var index = 0; index < array.Length; index++)
            {
                Console.WriteLine(array[index]);
            }

            // Second case
            foreach (int item in array)
            {
                Console.WriteLine(item);
            }

            // Third case
            for (var index = 0; index < arrayLength; index++)
            {
                Console.WriteLine(array[index]);
            }
        }
    }
}


Скомпилируем его:

Первый цикл:
            {
                Console.WriteLine(array[index]);
00000092  mov         eax,dword ptr [ebp-8] 
00000095  mov         edx,dword ptr [ebp-1Ch] 
00000098  cmp         eax,dword ptr [edx+4] 
0000009b  jb          000000A2 
0000009d  call        79033254 
000000a2  mov         ecx,dword ptr [edx+eax*4+8] 
000000a6  call        048F4D90 
            for (var index = 0; index < array.Length; index++)
000000ab  inc         dword ptr [ebp-8] 
000000ae  mov         eax,dword ptr [ebp-8] 
000000b1  mov         edx,dword ptr [ebp-1Ch] 
000000b4  cmp         eax,dword ptr [edx+4] 
000000b7  jl          00000092 


Второй цикл:
000000c7  mov         eax,dword ptr [ebp-14h] 
000000ca  mov         edx,dword ptr [ebp-20h] 
000000cd  cmp         eax,dword ptr [edx+4] 
000000d0  jb          000000D7 
000000d2  call        79033254 
000000d7  mov         eax,dword ptr [edx+eax*4+8] 
000000db  mov         dword ptr [ebp-0Ch],eax 
            {
                Console.WriteLine(item);
000000de  mov         ecx,dword ptr [ebp-0Ch] 
000000e1  call        048F4D90 
000000e6  inc         dword ptr [ebp-14h] 
            foreach (int item in array)
000000e9  mov         eax,dword ptr [ebp-14h] 
000000ec  mov         edx,dword ptr [ebp-20h] 
000000ef  cmp         eax,dword ptr [edx+4] 
000000f2  jl          000000C7 
            }


Третий цикл:
            {
                Console.WriteLine(array[index]);
000000fc  mov         eax,dword ptr [ebp-10h] 
000000ff  mov         edx,dword ptr [ebp-1Ch] 
00000102  cmp         eax,dword ptr [edx+4] 
00000105  jb          0000010C 
00000107  call        79033254 
0000010c  mov         ecx,dword ptr [edx+eax*4+8] 
00000110  call        048F4D90 
            for (var index = 0; index < arrayLength; index++)
00000115  inc         dword ptr [ebp-10h] 
00000118  mov         eax,dword ptr [ebp-10h] 
0000011b  cmp         eax,dword ptr [ebp-4] 
0000011e  jl          000000FC 

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Works in
Date of birth
Registered
Activity