Страница: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
Вопрос: .NET vs Basic 6
Добавлено: 22.08.04 17:53
Автор вопроса: Sparxx | Web-сайт:
Ответы
Всего ответов: 151
Номер ответа: 91
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #91
Добавлено: 23.08.04 16:57
Kodo писал:
Только вот мне кажется МС своим продвижением .NET теряет авторитет у многих программеров, которые на эту НЕТ переходить не собираются. ИМХО.
Она уже давно его потеряла, ей терять нечего
Номер ответа: 92
Автор ответа:
Kodo
Разработчик Offline Client
ICQ: 293048085
Вопросов: 37
Ответов: 457
Профиль | | #92
Добавлено: 23.08.04 17:01
>Она уже давно его потеряла, ей терять нечего
КАТЕГОРИЧЕСКИ не согласен. Уж кому-кому, а её-то терять есть чего!
Номер ответа: 93
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #93
Добавлено: 23.08.04 18:19
По поводу того, что с непустым циклом ассемблер будет делать VB .NET
только так хочу возразить...
Плз, давайте еще один тест, я как раз проект только что сдал, так что
пока свободен.
Предлагаю такой вариант.
Вот, элеметарный класс, показывает какого-нибудь человека, допустим.
Свойства - Zarplata, Rashod, Name. Создается коллекция, скажем, на
100 000 таких элементов, заполненных данными из обычного текстового
файла, потом эти данные нужно отсортировать в обратном порядке по
разности между Зарплатой и Расходами и сохранить в файл.
Public Class Person
Public Zarplata as Decimal
Public Rashod As Decimal
Public Name As String
End Class
Тип Decimal - 16-байтовое значение.
Строка Name может иметь любую длинну (от 0 байт до 2 ГБ).
Формат файла:
Zarplata1
Rashod1
Name1
Zarplata2
Rashod2
Name2
... и т.д.
То есть, записи, разделенные символами CrLf.
Числа Zarplata и Rashod хранятся в текстовом, а не бинарном виде,
например:
1000
100
Вася Пупкин
1000000000
1000
Билл Гейтс
1089345
10000
Стив Балмер
и т.д...
Посмотрим, правда, что скорость сортировки на VB и асме будут
относиться как 1:4 или все-таки отношение ненмого сместится в сторону
.NET.
Хочу еще одно замечание по поводу этого задания сделать - я напишу
_весь_ код меньше, чем за полчаса. В моем случае будет максимум 200
строк кода... Принимаешь вызов?
П> 2 Артем: ту в Release компилировал прогу?
Конечно, неужели я мог поставить свою программу в худшие условия, чем
программу опонента? ))
АН> А вообще, если б на форуме был он-лайн шутер думаю получилась бы
АН> командная игра - что-то типа Толпа против Артема.
Если б был он-лайн HomeWorld, я бы поиграл против толпы, а шутеры я не
люблю.
K> Всего лишь... В 1.6 раз... Иногда (и очень часто, ИМХО) эти самые
K> 1.6 раз как раз и решают все.
Неужели 30 секунд могут действительно решать так много???
Если начнешь рассуждать про то, что некоторые задачи могут выполняться
не 1.5 минут, а часами, то плз, почитать предыдущии посты по поводу
ресурсоемких приложений, машин, на которых они работают и людей,
которые владеют этими машинами.
Номер ответа: 94
Автор ответа:
Kodo
Разработчик Offline Client
ICQ: 293048085
Вопросов: 37
Ответов: 457
Профиль | | #94
Добавлено: 23.08.04 18:39
ИМХО, Артём себе на одной этой теме синюю звезду набил!
Номер ответа: 95
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #95
Добавлено: 23.08.04 18:44
Хочу еще одно замечание по поводу этого задания сделать - я напишу
_весь_ код меньше, чем за полчаса. В моем случае будет максимум 200
строк кода... Принимаешь вызов?
Я бы без проблемм принял, но сейчас у меня и вправду нет времени, оно появится тоько с начала след. месяца...
При этом что-ж ты ставишь нас в неравные условия !? Я то буду все вручную парсить... а ты гтовым будешь пользоваться... Мы сравниваем кол-во строк кода или скорость !? Дык условия должны быть одни для всех!
Номер ответа: 96
Автор ответа:
Sparxx
Вопросов: 3
Ответов: 26
Web-сайт:
Профиль | | #96
Добавлено: 23.08.04 19:23
Вопрос в лоб: накидайте плз ссылок на ресурсы по .НЕТ + базы данных аццесс. Ну и как прогить на .НЕТ.
2Андрей Никитин: Пасиба Один из немногих (им тоже спасибо) кто прочитал мой вопрос в начале топика, а не только сабжект темы...
Номер ответа: 97
Автор ответа:
Sparxx
Вопросов: 3
Ответов: 26
Web-сайт:
Профиль | | #97
Добавлено: 23.08.04 19:34
Господа, можна положить вам исходник глючащей моей проги на ВБ6? Или еще лучше:
Накидайте скрипт коннекта к аццесс базе, и выбора из двух таблиц. Через ДАО есесно Эта пакость у меня при тестинге начинает жрать по 100% ЦП и потом виснет... А рекорд сет два раза объявлять ненадо мож?
(кто-то грозился насильно помочь и контролами поделится)
Номер ответа: 98
Автор ответа:
cresta
Вопросов: 117
Ответов: 1538
Профиль | | #98
Добавлено: 23.08.04 19:59
Артём, 1.6 - это достаточно много. Не в 30 секундах дело, в соотношении. Ну да ладно.
Давай тогда придём к общему знаменателю.
Что мы хотим посмотреть?
1.Скорость набивки текста в редакторе или скорость работы программы?
2.Размер текста исходника или размер исполняемого файла?
Если мы соревнуемся в скорости набора текста исходника, я пересяду на VB6, и напишу текст программы быстрее, чем ты. Мне не нужно будет этого получаса.
Если мы хотим определить, чей текстовый файл исходника меньше весит, я опять же тебя объеду. На том же коне.
И ещё: я не считаю, что уложить в одну строку кучу классов (или чего там ещё) - это показатель чего-либо. Я могу написать несколько макросов, и с их помощью буду писать строки, гораздо длиннее твоих, и мне понадобится меньше строк, чем тебе. Не в этом дело. Хочешь, помести свой код хоть в две строки - это твоё дело. Я же буду писать хоть по одному символу в строке - это уже моё дело. Я не призываю тебя писать короткие строки, ты не призываешь меня писать длинные строки. Иначе у тебя будет не .NET, а у меня будет не asm. Не будем выхолащивать сущность обоих инструментов.
Теперь касательно алгоритма. Я за свою жизнь не написал ни одного класса, никогда не повторял код, поэтому я не очень понял сущность класса. Если я правильно понял, то это типа VB-шной (или API-шной) структуры, имеющей 3 поля,
Типа того:
MyStruct
Name as String
Zarplata as Integer
Rashod as Integer
End
Вернее массив из 100000 таких структур. Я правильно понял?
И нужно отсортировать по чём? По разности двух числовых полей. К примеру в порядке возрастания разности. Чтобы при этом имена соответствовали разнице. Т.е. отсортировать товарищей из списка в порядке возрастания их безалаберности по отношению к деньгам. Я правильно понял?
Если что-то не понял, поправь меня.
А пока я удаляюсь на заслуженный отдых (в смысле поспать, я уже двое суток не спал, к тому же я не такой молодой как ты, мне это немного внапряг. Ты же пожалеешь мои седины ? Тока не надо пафосных слов типа "Спи спокойно и т.д." Я ещё вернусь.)
Номер ответа: 99
Автор ответа:
Sparxx
Вопросов: 3
Ответов: 26
Web-сайт:
Профиль | | #99
Добавлено: 23.08.04 20:16
Ну понеслось...
Номер ответа: 100
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #100
Добавлено: 23.08.04 20:35
Ну понеслось...
Да не делай ты кислой мины а улыбнись )
Вот видишь человек хочет доказать что он прав, так дай же ему поменять свое мнение...
А на счет твоего исходника - кидай в соответствующий раздел форума, кажется, были люди неплохо разбирающиеся и с базами...
Номер ответа: 101
Автор ответа:
Sparxx
Вопросов: 3
Ответов: 26
Web-сайт:
Профиль | | #101
Добавлено: 23.08.04 20:53
Типа тушите свет всем пасиба за внимание, спорте наздоровье, я вам больше непомешаю.
Кароч сваливаю.
Номер ответа: 102
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #102
Добавлено: 23.08.04 21:21
Хм. Ладно, ну а почему было бы просто не протестировать мою прогу на PB и аналогичную на VB.NET?
Ну да ладно. Значит ты говоришь о высокой скорости цикла VB.NET? А знаешь как это достигается? Компилятор смотрит цикл и если он пустой, то применяет к нему любой алгоритм. Например как в твоём случае делит 20 млрд. на два регистра и за 1 проход цикла инкременирует оба.
Давай ка лучше сделаем такой тест.
В цикле 10000 раз добавляется к строке слово "Hello World".
Я тебе показывал как в Power Basic (конечно при хорошем знании языка и архитектуры процессора) можно обмануть недоверчивого новичка.
Тоже самое оказалось и в .NET
Выслал тебе экзешник. Вот код:
#Dim All
Function PbMain
 im MyStr As String, Counter As Long
 im t1 As Single, t2 As Single
t1=Timer
For Counter=1 To 10000
MyStr=MyStr & "Hello World! "
Next Counter
t2=Timer
MsgBox Str$(t2-t1) &" sec"
End Function
Номер ответа: 103
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #103
Добавлено: 23.08.04 21:38
cresta,
Или C:\MASM32\HELP>OPCODES.HLP врёт или у тебя неправильная инфа.
Dec
---
Operands Clocks
reg8 1
mem 3
reg16/32 1
А у тебя на reg16/32 получилось 3 такта.
Jxx
---
Operands Clocks
jump 3
no jump 1
А у тебя откуда то 8 тактов взялось.
Номер ответа: 104
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #104
Добавлено: 23.08.04 23:01
Сори, пока я выбываю из сорвенования по скорости, тк имею проблемы с
компом. Завтра буду сносить систему, послезавтра, возможно, продолжим.
Номер ответа: 105
Автор ответа:
cresta
Вопросов: 117
Ответов: 1538
Профиль | | #105
Добавлено: 24.08.04 00:41
CyRax, я не знаю, кто врёт. Я брал инфу о количестве тактов на rsdn.ru. К примеру там на jcc отводится: если условие выполнено-8 тактов, если нет - 4.