Форум: "Прочее";
Текущий архив: 2011.07.17;
Скачать: [xml.tar.bz2];
Внизбольшие процедуры/функции Найти похожие ветки
← →
Думкин © (2011-03-31 13:25) [40]Удалено модератором
← →
Mystic © (2011-03-31 13:32) [41]
> Kerk © (30.03.11 17:54) [6]
function CheckFile: Boolean;
begin
CheckHeader;
CheckBody;
CheckFooter;
end;
Это самый простой случай, чаще возникает ситуация, когда это заменяется либо на
function CheckFile: Boolean;
var
Ctx: TCheckFileContext;
begin
CheckHeader(Ctx);
CheckBody(Ctx);
CheckFooter(Ctx);
end;
либо на
class function TFileChecker.Check: Boolean;
var
FileCheckerInstance: TFileChecker;
begin
FileCheckerInstance := TFileChecker.Create();
try
FileCheckerInstance.CheckHeader(Ctx);
FileCheckerInstance.CheckBody(Ctx);
FileCheckerInstance.CheckFooter(Ctx);
finally
FileCheckerInstance.Free;
end;
end;
← →
Rouse_ © (2011-03-31 13:45) [42]Удалено модератором
← →
Rouse_ © (2011-03-31 13:46) [43]Удалено модератором
← →
Kerk © (2011-03-31 13:49) [44]Удалено модератором
← →
Kerk © (2011-03-31 13:50) [45]Удалено модератором
← →
KilkennyCat © (2011-03-31 14:19) [46]
> > лучше будет смотреться
> >
> > function CheckFile: Boolean;
> > begin
> > CheckHeader;
> > CheckBody;
> > CheckFooter;
> > end;
Вы не видели, наверное, АS3.
для любой фигни - функция.
новый класс - новый файл.
вообщем, любое телодвижение - функция, файл.
это по ихней идеологии.
в результате ОЧЕНЬ удобно. слов нет. пока сквозь гору и кучу этого продерешься - забудешь чего хотел.
И если в Делфи сотня едитов с персональным одинаковым обработчиков это признак идиотизма, то там это в порядке вещей.
Хотя можно писать и нормально.
← →
Kerk © (2011-03-31 15:03) [47]
> KilkennyCat © (31.03.11 14:19) [46]
AS3 - это флеш? Наверно, именно поэтому небольшой баннер на забытой вкладке браузера может отожрать совершенно любое количество памяти :))
← →
Компромисс (2011-03-31 15:34) [48]KilkennyCat
Вам нужно научиться писать/использовать компоненты. AS3 богаче Delphi по возможностям. Чего только один ClassFactory стоит или first-class functions
← →
картман © (2011-03-31 17:59) [49]
> AS3 богаче Delphi по возможностям.
а html - богаче AC3, ага
← →
Kerk © (2011-03-31 18:07) [50]
> картман © (31.03.11 17:59) [49]
Ну так. На Delphi вообще пришлось бы код писать, чтоб картинку на экран вывести, а в html пишешь <img src=""> и все, готово :))
← →
Компромисс (2011-03-31 18:11) [51]картман
Это к чему вообще? Flex/AS3 - полноценный ООЯ, никакие html и рядом не стоят. Даже int является объектом, например.
Если человек вместо того, чтобы вынести повторяющийся функционал в компонент (конечно, это же будет отдельный файл, которые он так не любит!), дублирует обработчики, он ССЗБ
← →
картман © (2011-03-31 18:16) [52]
> Это к чему вообще?
я не согласился с
> AS3 богаче Delphi по возможностям.
← →
Компромисс (2011-03-31 18:26) [53]я не согласился с
Вы же не знаете Flex/AS3, насколько я понимаю. Как же Вы можете судить в таком случае?
В Flex/AS3 есть много очень интересных фишек, начиная с Bindable (при изменении свойства модели все view, которые его используют, автоматически обновятся без всякого кода) и заканчивая операторами (не путать с синтаксическим сахаром!), которые позволяют работать с массивами, коллекциями, Dictionary и просто объектами одинаковым образом, благодаря тому, что эти объекты внутренне предствалены похожим образом
for each(var item:Object in items){
...
}
где items может оказаться (в runtime!) и Array, и ArrayCollection, и Object, и Dictionary.
А уж reflexion вообще сказка, например this["my" + i] обратится к свойству my1, если i=1. причем my1 может быть как var, так и get function, то есть инкапсуляция поддерживается идеально - переменную всегда можно поменять на пару get/set если необходимо, а клиенты ничего не заметят.
← →
Kerk © (2011-03-31 18:29) [54]
> Компромисс (31.03.11 18:26) [53]
Что-то вообще ничего особенного в перечисленном не заметил.
Кроме, пожалуй:
> например this["my" + i] обратится к свойству my1, если i=1.
> причем my1 может быть как var, так и get function
Но это обычная фишка для скриптовых языков. В Delphi этого хаоса к счастью нет.
← →
Kerk © (2011-03-31 18:34) [55]Вообще, не видно какой-то связи между языком и Bindable с ClassFactory. Ты думаешь, в Delphi никто фабриками классов не пользуется, раз приводишь это как мегафичу языка(почему-то)?
← →
Игорь Шевченко © (2011-03-31 18:45) [56]
> например this["my" + i] обратится к свойству my1, если i=1.
ночной кошмар программиста
← →
delphimaster (2011-03-31 18:53) [57]Удалено модератором
← →
картман © (2011-03-31 19:03) [58]
> Компромисс (31.03.11 18:26) [53]
>
> я не согласился с
>
> Вы же не знаете Flex/AS3, насколько я понимаю. Как же Вы
> можете судить в таком случае?
не знаю. Но в качестве примера я привел именно хтмл, чтобы указать, что узко заточенный язык, коим является AS3 не в состоянии конкурировать с традиционными по всем направлениям, ведь тут:
AS3 богаче Delphi по возможностям.
написано о возможностях вообще, а не о рюшечках, вот что могло подразумеваться - другой вопрос.
В [53] - только они, симпатишные рюшечки.
← →
DiamondShark © (2011-03-31 19:04) [59]
> Игорь Шевченко © (31.03.11 18:45) [56]
> ночной кошмар программиста
Ночной кошмар -- это монстрики 60-х годов прошлого века, вроде паскаля и си++.
← →
DiamondShark © (2011-03-31 19:12) [60]
> delphimaster (31.03.11 18:53) [57]
> кому понадобятся такие извращения
Самый примитивный пример: сериализация объектов.
← →
Игорь Шевченко © (2011-03-31 19:17) [61]DiamondShark © (31.03.11 19:04) [59]
Видите ли, Дима, по моему скромному мнению, кошмар в том, что диагностика ошибок с времени компиляции переносится на время выполнения.
← →
DiamondShark © (2011-03-31 19:37) [62]
> диагностика ошибок с времени компиляции переносится на
> время выполнения.
Как, например, при инициализации формы из DFM, или в конструкциях вида
query1.FieldByName("KodTovara")
Видите ли, Игорь, современные программы строятся не столько на встроенных средствах языка (ну сколько в том Паскале встроенных средтв-то?!), сколько на библиотеках и фреймворках.
И вот тут-то ВНЕЗАПНО выясняется, что программы состоят из ошибок, перенесённых на время исполнения, чуть менее, чем полностью.
А если солдафонская кондовость языка всё равно не избавляет от переноса ошибок на время выполнения, то зачем плац ломом подметать? Из верности заветам Ильича?
← →
Игорь Шевченко © (2011-03-31 19:49) [63]DiamondShark © (31.03.11 19:37) [62]
> Как, например, при инициализации формы из DFM, или в конструкциях
> вида
> query1.FieldByName("KodTovara")
Кто бы спорил. Правда насчет инициализации формы не совсем понял.
> Из верности заветам Ильича?
Отнюдь. Программы пишут люди, людям свойственно ошибаться, а так как с покрытием тестами дела обстоят не так радужно, как хотелось бы, то переложить чуть больше работы по выявлению ошибок на компилятор всегда полезно. Он железный и быстрый.
← →
Компромисс (2011-03-31 20:29) [64]Kerk © (31.03.11 18:29) [54]
Это не хаос. Я обычно на Flex пишу как на Delphi/Java, со строгой типизацией (компилятор имеет соответствующую настройку, включенную по умолчанию). Но бывает полезным и упрощенный reflection (как и в Delphi).
картман © (31.03.11 19:03) [58]
написано о возможностях вообще, а не о рюшечках, вот что могло подразумеваться - другой вопрос.
Я писал именно о том, чем возмутился KilkennyCat © (31.03.11 14:19) [46]
То есть именно в ООП и компонентно-ориентированном программировании (особенно UI) возможности AS3/Flex выше. Конечно, для работы с БД, например, возможности у AS3/Flex вообще никакие :)
Игорь Шевченко © (31.03.11 18:45) [56]
Никто не мешает использовать my1 без всяких извращений, так компилятор даже типы проверять будет, причем не хуже, чем в Delphi
← →
картман © (2011-03-31 20:43) [65]
> Компромисс (31.03.11 20:29) [64]
> Я писал именно о том, чем возмутился KilkennyCat © (31.
> 03.11 14:19) [46]
тады ой.
> DiamondShark © (31.03.11 19:04) [59]
>
> Ночной кошмар -- это монстрики 60-х годов прошлого века,
> вроде паскаля и си++.
можно пример некошмарного?
← →
DiamondShark © (2011-03-31 23:33) [66]
> картман © (31.03.11 20:43) [65]
> можно пример некошмарного?
Scala, Nemerle
← →
KilkennyCat © (2011-04-01 01:10) [67]Во Флексе и АС3 все делается, извиняюсь, через заднее место.
Некоторые фишки, позаимственные у Явы - все его богатство.
Эзотерические языки тоже могут вызывать восхищение. Попробуйте использовать на практике.
Может быть, АС3 и полноценный ООЯ.
Но в сочетании с ущербной(неудобной) средой разработки и конечной целью - мультик, баннер, игрушка и прочая фигня - он такой все только усложняет.
Говорите, использовать все его богатство компонент и пр.? Ну, видел я такие работы. Тяжелые, жрущие ресурсы, тормозящие.
АС2 и то был практичнее, хотя бы несквозной событийностью и автоматическим удалением всего связанного с объектом, при удалении оного.
Удел флэша - мультики и игры. Там ему надо было и оставаться, развиваясь в 3D, упрощая труд анимации и пр. А не пытаться стать еще одним аля дотнетом.
За двумя зайцами погонишься - от обоих по шее и получишь.
← →
DiamondShark © (2011-04-01 02:21) [68]
> KilkennyCat © (01.04.11 01:10) [67]
> Эзотерические языки тоже могут вызывать восхищение. Попробуйте
> использовать на практике.
Ну я использовал на практике JavaScript, это очень близкий родственник ActionScript. Фактически, различаются только библиотекой встроенных объектов.
Довольно большое ASP приложение (дотнета ещё не было в природе), причём, сначала был напилен свой фреймворк.
Язык действительно богаче дельфи. Главное -- не поддаваться стереотипам.
А из среды разработки у меня был только нотепад.
← →
KilkennyCat © (2011-04-01 03:18) [69]
> JavaScript, это очень близкий родственник ActionScript.
http://ejohn.org/files/ecma-cloud.png
> А из среды разработки у меня был только нотепад.
да. а я когда-то писал в машкодах. нотепад был бумажный.
и что?
питекантропы вообще без компов жили, но времена меняются.
с нотепадом сейчас не везде далеко пойдешь.
← →
DiamondShark © (2011-04-01 11:41) [70]
> KilkennyCat © (01.04.11 03:18) [69]
> http://ejohn.org/files/ecma-cloud.png
Рисовал метадоновый наркоман, попавший по ошибке на измену от шишек.
По схеме Microsoft JScript и Mozilla JavaScript -- пипец какие разные языки.
Встретишь Джона -- передай, чтоб траву с алкоголем не мешал.
> с нотепадом сейчас не везде далеко пойдешь.
У тебя сегодня профессиональный праздник, что-ли?
← →
Компромисс (2011-04-01 13:40) [71]KilkennyCat © (01.04.11 01:10) [67]
Как все запущено.
Я уже много лет только бизнес приложения на Flex пишу и ничего больше, ни игр, ни баннеров, ни мультиков.
Вот тут например можно посмотреть грид, который сам группирует данные по определенным полям и отображает в виде дерева. Причем элементарно добавлять in-place editor и прочие штуки, которые должны быть знакомы любому delphi-разработчику.
http://help.adobe.com/ru_RU/FlashPlatform/reference/actionscript/3/mx/controls/AdvancedDataGrid.html?filter_flex=4.1&filter_flashplayer=10.2&filter_air=2.6#inc ludeExamplesSummary
AS3 ничем не хуже AS2, он тоже автоматически освобождает память от объектов, которые более недоступны. Точно так же, как в JVM.
ЗЫ. Я не умею делать ни мультики, ни презентации. Даже не знаю, в чем они делаются :) Если мне нужно какой-то эффект, достаточно программынй средств, типа showEffect="{Fade}" и при появлении элемент будет появляться достаточно красиво, а hideEffect="{WipeRight}" визуально сотрет элемент слева направо.
← →
KilkennyCat © (2011-04-02 02:44) [72]
> Компромисс (01.04.11 13:40) [71]
я понимаю, что ты имеешь в виду.
но все-таки сомневаюсь, что бизнес-приложения там столь эффективны и в плане работы, и в плане разработки.
> AS3 ничем не хуже AS2, он тоже автоматически освобождает
> память от объектов, которые более недоступны.
хмм... насколько я помню, это "автоматически" происходит не всегда, когда надо, невозможно инициировать работу сборщика мусора когда хочется. или ошибаюсь?
по крайней мере, по сжиранию ресурсов картина наблюдалась именно такая.
← →
KilkennyCat © (2011-04-02 02:45) [73]
> DiamondShark © (01.04.11 11:41) [70]
>
> У тебя сегодня профессиональный праздник, что-ли?
ищешь коллег?
← →
Компромисс (2011-04-04 10:44) [74]KilkennyCat © (02.04.11 02:44) [72]
но все-таки сомневаюсь, что бизнес-приложения там столь эффективны и в плане работы, и в плане разработки.
В плане разработки получается быстрее, чем в Delphi. В плане эффективности, конечно, в Delphi эффективнее (при прочих равных условиях).
насколько я помню, это "автоматически" происходит не всегда, когда надо, невозможно инициировать работу сборщика мусора когда хочется. или ошибаюсь?
Нет, не ошибаетесь. Но наже в Java рекомендуют крайне осторожно использовать явный вызов сборщика мусора.
Сжирание ресурсов зависит от качества кода. Если загружать на клиента миллионы записей, то будут проблемы. Мы в таких случаях динамическую загрузку используем.
← →
DiamondShark © (2011-04-04 12:33) [75]
> хмм... насколько я помню, это "автоматически" происходит
> не всегда, когда надо,
Твоё "надо" и "надо" менеджера памяти -- это разные нады.
Твоё никому не интересно, потому что в 99.666% случаев необосновано и вредно.
> невозможно инициировать работу сборщика мусора когда хочется.
> или ошибаюсь?
Ты так говоришь, будто в этом есть что-то плохое.
> по крайней мере, по сжиранию ресурсов картина наблюдалась
> именно такая.
У дурака в руках и член -- стекло: заставь дурака дрочить, он и член разобьёт и руки порежет.
← →
KilkennyCat © (2011-04-05 08:46) [76]
> DiamondShark © (04.04.11 12:33) [75]
у тебя что, бред из-за ПМС?
← →
DiamondShark © (2011-04-05 10:32) [77]
> KilkennyCat © (05.04.11 08:46) [76]
Докопаться до "эзотерических", как ты выразился, языков, что там менеджер памяти напрямую нельзя вызвать, -- это по глубокомысленности близко к претензиям, например, к SQL, что там нельзя окна рисовать.
Так что ты хорошенько подумай, у кого действительно бред.
← →
KilkennyCat © (2011-04-05 22:06) [78]DiamondShark © (05.04.11 10:32) [77]
> близко к претензиям, например, к SQL, что там нельзя окна
> рисовать.
>
кстати, да!
но уже все устарело и поменялось: пока мы грызлись, я работал круглые сутки с АS3.... У меня теперь претензии к Делфи :)
Так что, приношу свои извинения.
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2011.07.17;
Скачать: [xml.tar.bz2];
Память: 0.63 MB
Время: 0.006 c