Конференция "Прочее" » DELPHi На ubuntu
 
  • iZEN (13.12.08 15:34) [60]
    Вот ещё удивительный ресурс:
    http://processing.org/
  • Игорь Шевченко © (13.12.08 15:44) [61]
    Я одного не понимаю - чем вы тут меряетесь ?
  • boa_kaa © (13.12.08 19:14) [62]

    > Игорь Шевченко ©   (13.12.08 15:44) [61]
    >
    > Я одного не понимаю - чем вы тут меряетесь ?

    кто больше произведет
  • koha! (13.12.08 19:47) [63]
    C# - оказалася быстрее делфи ...
    - вот сравнивал вызоф 1000000 функции StringReplace
    результаты:
    C# - ~700 ms
    D2006 = ~2700 - 2800 ms
    моя самопальня функция "StrReplace" в замен В2006 = ~2200 - 2400 ms  

    private void button1_Click(object sender, System.EventArgs e)
    {
     int bgnTime = System.Environment.TickCount;
     string Appdata = System.Environment.GetEnvironmentVariable("Appdata");
     string dubleAppdata = "";
     for (int i = 0; i < 1000000; i++)
     {
       dubleAppdata = Appdata.Replace("\\","\\\\");
     }

     int FullTime = System.Environment.TickCount-bgnTime;
     textBox1.Text = dubleAppdata + " "+FullTime.ToString();
    }

    procedure TForm1.Button3Click(Sender: TObject);
    var
     BgnTime,LastTime,TestTime: Integer;
     i: integer;
     S, DubleAppData: String;
    begin
     BgnTime:=GetTickCount;
     S:=GetEnvironmentVariable('AppData');
     for i:=1 to 1000000 do begin
       StringReplace(S,'\','\\',[rfReplaceAll]);
     end;
     LastTime := GetTickCount;
     TestTime := LastTime-BgnTime;
     //if TestTime > 1000 then TestTime := TestTime div 1000;
     Memo1.Lines.Add('End test StringReplace: time = '+IntToStr(TestTime)+ ' mc');
    end;

    function StrReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;
    var
     SLen,  NPLen,Index, Count : Integer;
     temp, SearchStr, Patt  : String;
    begin
     Count  := 1;
     Index  := 1;
     SLen   := Length(S);
     NPLen  := Length(OldPattern);
     if (S = '') or (OldPattern = '') then Exit;
     Setlength(temp,NPLen);

     if rfIgnoreCase in Flags then
     begin
       SearchStr := AnsiUpperCase(S);
       Patt      := AnsiUpperCase(OldPattern);
     end else
     begin
       SearchStr := S;
       Patt      := OldPattern;
     end;

     While true do begin

       if (Pred(Count)+NPLen) > SLen then begin
         Result:=Result+Copy(SearchStr,Index,(Count+NPLen)-Index);
         Break;
       end;

       Move(SearchStr[Count],temp[1],NPLen);
       if temp = Patt then begin
         Result:=Result+copy(SearchStr,Index,count-Index)+NewPattern;
         inc(count,NPLen);
         Index:=count;
         if Not (rfReplaceAll in Flags) then begin
           Result:=Result+Copy(SearchStr,Index,(Count+NPLen)-Index);
           Break;
         end;
         continue;
       end;
       inc(count);
     end;
    end;

  • koha! (13.12.08 20:04) [64]
    Может быть Делфа и лучше всех, но знают об этом только вы - "мастера", а остальные, например, работодатели просто посылают в Ж..пу дляних дешевле купить VS 2005 со всеми пребамбасиками чем не понятно за что блатить VC2005$ < BDS$
    VC 2005 в комблекте предлагает заменшие гроши еще и Vista для тестировани и Windows server для тестирования и MSSQL сервер для тестирования и все это предачу гдето ~ за 2500$ А что предлагает Codegear за теже гроши? скромно D7? и все?
  • Узурап (13.12.08 20:14) [65]

    > Я одного не понимаю - чем вы тут меряетесь ?


    ИЗЕН сейчас еще и сказки о фрибсд достанет.
  • palva © (13.12.08 20:26) [66]
    Если вернуться к сабжу, то ответ на вопрос очевиден. Производителем Delphi является Codegear, а эта контора Delphi под Ubuntu не производит. Никакая другая фирма производить продукт под той же торговой маркой не имеет права. Следовательно Delphi под Ubuntu нет.
  • Узурап (13.12.08 20:33) [67]

    > Следовательно Delphi под Ubuntu нет.


    оно и не надо. убунту тоже не надо
    под gnu\linux есть fpc и lazarus (хотя оно не юзабельно)
    если хватит денег, или, если открытый проект - QTCreator+Qt
    также всякие скриптовые языки и ява
  • Городской Шаман (13.12.08 21:25) [68]

    > Узурап   (13.12.08 20:33) [67]


    Если ну нужно угламереного интерфейса то достаточно C++ и wxWidgets + визуальный редактор, там их несколько - выберите по вкусу.

    А С++ с "магией" не хуже delphi по удобству разработки.
  • @!!ex © (13.12.08 22:42) [69]
    > под gnu\linux есть fpc и lazarus (хотя оно не юзабельно)

    Всегда интересовало.. что такое "юзабельно"?
  • Городской Шаман (13.12.08 22:46) [70]

    > @!!ex ©   (13.12.08 22:42) [69]
    >
    > > под gnu\linux есть fpc и lazarus (хотя оно не юзабельно)
    >
    > Всегда интересовало.. что такое "юзабельно"?


    За дебагер в Lazarus нужно заставлять этих программистов писать на асме ПО для бухгалтерии. Вот это неюзабельно. Кроме того проще притащить вместе с программой jdk чем тащить этого монстра.

    Хотите кросплатформенности - берите java или c++.
  • Узурап (14.12.08 14:48) [71]

    > Всегда интересовало.. что такое "юзабельно"?

    достаточно увидеть лазарус, чтобы понять.
    быстро сделать что-то простое оно пойдет, для проектов уровня выше "хелло мир" - нет.
  • @!!ex © (14.12.08 16:02) [72]
    > [71] Узурап   (14.12.08 14:48)

    Да ну...
    дебагер там и правда отстойный... Благо можно другие дебагеры использовать.
    А все остальное - вполне рабочее.
  • Узурап (14.12.08 20:02) [73]
    Я не говорил, что не рабочее.
    Но после eclipse и qtcreator`a оно уныло очень.
  • wicked © (15.12.08 00:45) [74]

    > Кроме того проще притащить вместе с программой jdk чем тащить
    > этого монстра.

    ага, тащи
    то-то же, таскунов развелось :(
  • atruhin © (15.12.08 12:14) [75]

    > - вот сравнивал вызоф 1000000 функции StringReplace
    > результаты:
    > C# - ~700 ms
    > D2006 = ~2700 - 2800 ms
    > моя самопальня функция "StrReplace" в замен В2006 = ~2200
    > - 2400 ms  

    А вот я сравнил:
    стандартная StringReplace - 1890
    моя реализация StringReplace - 187
    Так что дело не на чем писать, а как.
  • Cobalt © (15.12.08 14:05) [76]

    > atruhin ©   (15.12.08 12:14) [75]
    > А вот я сравнил:
    > стандартная StringReplace - 1890
    > моя реализация StringReplace - 187


    А можно на эту функцию взглянуть?
  • @!!ex © (15.12.08 14:08) [77]
    > [76] Cobalt ©   (15.12.08 14:05)

    да там небось чистый асемблер. :)
    так что дело не на чем писать.. а на чем писать на ассемблере. :)
  • Anatoly Podgoretsky © (15.12.08 16:59) [78]
    > @!!ex  (15.12.2008 14:08:17)  [77]

    Не мешало бы взглянуть на исходные данные и методику теста.
  • Sapersky (15.12.08 17:08) [79]
    так что дело не на чем писать.. а на чем писать на ассемблере

    По моему опыту, дельфийский компилятор не так плох, как о нём принято думать... хотя, если работаешь в основном с floating-point кодом, у тебя вполне может быть противоположный опыт.

    По StringReplace:
    http://www.fastcode.dk/fastcodeproject/fastcodeproject/10.htm
    Кстати, разница между asm (Blended, 14.1) и pas (13.8) - всего 2%.

    В BDS2006 и далее фасткодовские функции (все или нет - не в курсе) используются в качестве стандартных.
 
Конференция "Прочее" » DELPHi На ubuntu
Есть новые Нет новых   [134447   +40][b:0.001][p:0.002]