Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Вопросы по Embarcadero RAD Studio XE5-XE8,10.x(Seattle, Berl

Автор: Alexey_Gawrilow
Дата сообщения: 30.07.2014 01:01
kaz_av

Цитата:
Если это повлечет за собой отказ от легаси то станет гарантированным самоубийством. Такое просто никто не будет покупать.


Ну они же придумали себе AppMethod.

Добавлено:
deks

Цитата:
налицо бонус от модульной конструкции компилятора.


Ага, если вспомнить еще Нильса Женсена(Niels Jensen) и его TurboModula-2.
Который именно это и пропагандировал.
и евонный уход из Borland, печалька
http://www.nf-team.org/drmad/stuff/t.htm
http://ru.wikipedia.org/wiki/Модула-2
http://www.retrotechnology.com/herbs_stuff/modula.html

А успехи XDS(сейчас Excelsior) в деле компиляторостроения
связаны именно с разделением компиляторов на FrontEnd(Lexer+Parser) -> AST -> Оптимизатор -> BackEnd(кодогенератор)

Еще наш герой - СтранниК

Ну вот зачем они Нильса прогнали?

Мир был бы иным.
Сильно.
Потому как если Pascal разрабатывался как академический язык для обучения. (sic! господа, держите себя в руках )
То Modula как инструмент системного программирования.

А при отсутсвии интереса со стороны мэйнстрима и инструментальной поддержки Modula/Oberon/ComponentPascal остаются вещами мбольше маргинальными, хоть и широко известными в узких кругах.

С них только идеи доят.
Что Java, что .NET.

Хочу компилятор Oberon2/ComponentPascal от RemObjects.
Автор: vizier1966
Дата сообщения: 30.07.2014 13:12
День добрый.
можно ли объявить дженерик oт которого можно наследовать только простые типы от byte до uint64?

можно вот так

Код:
TClassClass<T: class> = class
end;
TClassRecord<T: record> = class
end;
Автор: SuPriTo
Дата сообщения: 30.07.2014 14:34

Цитата:
мне бы хотелось

Нет не получиться, только class or record - в помощи об этом написано

Цитата:
такой код не компилица

Правильно не получится откомпилировать.
Автор: deks
Дата сообщения: 30.07.2014 17:57
kaz_av

Цитата:
Если это повлечет за собой отказ от легаси


Не надо трогать VCL грязными руками. Можно же просто сделать отдельный newgen компилятор для FXM, который будет собирать код для всех платформ, и сделать его на базе LLVM! А VCL проекты собирать через legacy compiler. Совместимость нужно будет сделать между компиляторами только для невизуального RTL, что сильно проще.

Frodo_Torbins

Шотов и доков мало. Но CC работает, XMLDoc тоже. Дебаггер есть примитивный (развивается быстро). Рефакторинг. Навигация по коду. В целом - уже не блокнот, имхо, уже неплохо - особенно для альфы! Меня удивило, что внутри .app сборки сидит mono и компилятор на ней работает, при этом Fire остается нативной и шустрой OSX программой - в отличие от, например, тяжелой Xamarin Studio.

Alexey_Gawrilow


Цитата:
TurboModula-2.


Ну - еще TopSpeed в целом можно вспомнить. Но даже текущие RemObjects Elements - уже весёлые! В один проект можно положить .pas файл и .cs файл - и все будет отлично жить в едином проекте (я так, например, уворовал парсер командной строки из mono). Немного дико, что можно "прозрачно" использовать классы из одного языка в другом. Впрочем, Swift и ObjC примерно так же сосуществуют.
Автор: kaz_av
Дата сообщения: 30.07.2014 22:27
Alexey_Gawrilow

Цитата:
Ну они же придумали себе AppMethod.

При этом не отказываясь от Delphi И очень интересно, как у них продавется AppMethod.

vizier1966

Цитата:
можно ли объявить дженерик oт которого можно наследовать только простые типы от byte до uint64?

Объявить нельзя. Однако, в XE7 появится внутренняя функция компилятора TypeKind(T) (или вроде того, пишу по памяти), которая, теоретически, позволит получить желаемое чуть менее простым способом. Например, использованием оной в директиве условной компиляции.


Цитата:
так как в базовом класе должна быть фунцайка которая производит некоторые
математические вычисления с объявленным типом

Это можно сделать и сейчас, но несколько более дорогой ценой. Можно использовать рантаймовые функции GetTypeData(TypeInfo(T)) и при .Kind = tkInteger делать соответствующее преобразование типа (Integer(entry) или Integer((@entry)^)). В последующем, т.е. в XE7 с её компильтаймовой TypeKind, будет компилироваться только ветка кода соответствующая условию. В общем, если сильно нужно, вывернуться можно.

deks

Цитата:
Можно же просто сделать отдельный newgen компилятор для FXM, который будет собирать код для всех платформ, и сделать его на базе LLVM!

Один компилятор ничего не решит. Если уж заговорили (снова) об FMX, то для начала неплохо бы подтянуть этот самый FMX хотя бы до уровня стабильной беты.
Автор: vizier1966
Дата сообщения: 30.07.2014 22:44
kaz_av, с фунцайкой проблему решил, но вот опять незадача - не оверридятся классовые методы (

Код:
TClass<T> = class(TMyClass)
private
class constructor Create;
public
class function GetValue: T; virtual; abstract;
end;

TClassWord = class(TClass<Word>)
public
class function GetValue: Word; override;
end;
Автор: kaz_av
Дата сообщения: 30.07.2014 23:05
vizier1966
Вызывать GetValue из конструктора класса наследника? Иначе, вроде, не сделать.
Автор: ego666
Дата сообщения: 31.07.2014 05:48
vizier1966

Код: uses
SysUtils,
TypInfo;

type
TClass<T> = class
private
class constructor Create;
end;

TClassWord = class(TClass<Word>)
end;

TClassInteger = class(TClass<Integer>)
end;

TClassString = class(TClass<String>)
end;

implementation

class constructor TClass<T>.Create;
begin
//Assert(TypeInfo(T) = TypeInfo(Word),
// Format('''%s'' <> ''Word''', [PTypeInfo(TypeInfo(T)).Name]));

Assert(PTypeInfo(TypeInfo(T)).Kind = tkInteger,
Format('''%s'' is not kind of ''Integer''', [PTypeInfo(TypeInfo(T)).Name]));
end;
Автор: protoror
Дата сообщения: 31.07.2014 07:59
Есть тут народ который делал реальные приложения для андроида?
Интересно как на текущий момент (ХЕ6) с зажираемой памятью и тормозами, все так же печально или уже можно сваять нормальное приложение?
В будующем просто думаю заняться так же клиентами к бд под андроид по медицинской тематике (рентгены, сканы справок о смерти и т.д.)
Автор: SuPriTo
Дата сообщения: 31.07.2014 10:26

Цитата:
Есть тут народ который делал реальные приложения для андроида?

Присоединяюсь к вопросу и еще хочу спросить, а, есть ли тут люди, которые делали реальные приложения для android на Lazarus?
Автор: vizier1966
Дата сообщения: 31.07.2014 17:25
kaz_av, да, только из конструктора класса наследника. спасибо.

ego666, я *замутил* через TValue:

Код:
class procedure TClass<T>.CreateTable;
var
i, j: Word;
Entry, Polynomial: UInt64;
begin
Polynomial := TValue.From<T>(PolynomialValue).AsUInt64;
for i := 0 to 255 do
begin
entry := i;
for j := 0 to 7 do
begin
if (entry and 1) = 1 then
entry := (entry shr 1) xor Polynomial
else
entry := (entry shr 1);
end;
FTable[i] := TValue(entry).AsType<T>;
end;
end;
Автор: LadyOfWood
Дата сообщения: 31.07.2014 17:33

Цитата:
Есть тут народ который делал реальные приложения для андроида?

Да действительно было бы интересно взглянуть, может у кого ссылки на Google play есть.
Автор: kaz_av
Дата сообщения: 31.07.2014 22:04
protoror

Цитата:
Есть тут народ который делал реальные приложения для андроида?

Я пытался.


Цитата:
Интересно как на текущий момент (ХЕ6) с зажираемой памятью и тормозами, все так же печально или уже можно сваять нормальное приложение?

До оценки потребляемой памяти дело не дошло т.к. общая юзабельность FMX-приложений стремится к нулю, увы.

LadyOfWood

Цитата:
Да действительно было бы интересно взглянуть, может у кого ссылки на Google play есть.

Тут как-то давали ссылку на приложение для погодной станции. А вообще, можно поискать по имени пакета на совпадение с embarcadero, т.к. многие свои hello world'ы и не думают переименовывать
Автор: LadyOfWood
Дата сообщения: 01.08.2014 01:24

Цитата:
Я пытался.

Ну и что получилось?

Цитата:
А вообще, можно поискать по имени пакета на совпадение с embarcadero, т.к. многие свои hello world'ы и не думают переименовывать

Хочется пример реального приложения, созданного не для демонстрации технологии, а для зарабатывания денег.
Автор: ego666
Дата сообщения: 01.08.2014 04:18

Цитата:
Хочется пример реального приложения, созданного не для демонстрации технологии, а для зарабатывания денег.

http://www.youtube.com/watch?v=H37c-TjaFa8
Автор: protoror
Дата сообщения: 01.08.2014 07:47
ego666
видел я этот обзор, могу даже дать побольше информации.
http://habrahabr.ru/company/delphi/blog/205656/
только вот там ничего не сказано про тормоза после определенного времени использования, хажираемую память и сколько пришлось переписать компонентов чтобы все завелось.

Добавлено:
Вообще в рамках конкурса были сделаны неплохие приложения, вот ссылка на победителей
http://www.delphimobile.ru/
погуглите их в гугле и найдете описание, к некоторым даже исходники есть
Автор: X11
Дата сообщения: 01.08.2014 08:09

Цитата:
Цитата:
Хочется пример реального приложения, созданного не для демонстрации технологии, а для зарабатывания денег.

http://www.youtube.com/watch?v=H37c-TjaFa8


Кроме дигифорта мало что есть. И, судя по комментариям авторов, от FM там только процентов 20-25. Остальное всё допиливали напильником.

Встроенной сетки и более менее нормального механизма типа TDataSet+TDataSorce нет. LiveBindings как-то народ не очень жаждет использовать. Была тема на sql.ru про firdac, что приложение зело тормозит, если записей 200+.
А бизнес приложения почти всегда используют СУБД и сетки.

Пока что у FM есть одно большое преимущество. Благодаря firedac/anydac можно использовать почти любую СУБД. В то время как в Android Studio только одну SQLite.
Автор: kaz_av
Дата сообщения: 01.08.2014 10:34
LadyOfWood

Цитата:
Ну и что получилось?

Нет. То есть, написать-то можно, но пользоваться таким приложением я бы не стал. Косяки лезут изо всех щелей. Отслеживать изменение разрешения экрана FMX не умеет, свернул на ведроиде панель управления (та, что с кнопками back, home...) - у FMX съехала крыша. Во время активности модального диалога переключился на другое приложение - по возвращении получаешь гарантированный висяк. И много чего еще, всякого и разного. Можно, конечно, начать переписывать обезьяну под себя, но жизнь слишком коротка, чтоб еще и такой фигней страдать.

Добавлено:
X11

Цитата:
Кроме дигифорта мало что есть. И, судя по комментариям авторов, от FM там только процентов 20-25. Остальное всё допиливали напильником.

И в результате не осилили перелезть на новую версию FMX Как и многие другие поверившие маркетоидному бла-бла.
Автор: LadyOfWood
Дата сообщения: 01.08.2014 14:23

Цитата:
Нет. То есть, написать-то можно, но пользоваться таким приложением я бы не стал.

Понятно. Непонятно другое, зачем пиарить технологию которую использовать нельзя.
Автор: SuPriTo
Дата сообщения: 01.08.2014 14:51

Цитата:
Понятно. Непонятно другое, зачем пиарить технологию которую использовать нельзя.

Я вот сделал простенькое приложение с использованием TeeChart. Мне понравилось и удовлетворяет моим потребностям в целом. Хотя даже косяки они существуют. Я прям вижу, что мне придется переделать, т. к. некоторые моменты очень кривые. Но очень много работы проделано и можно написать вполне узабилити интерфейс, которым будет удобно пользоваться. Сейчас смотрю видео на ютьюбе, интересно рассказывают. Так что вполне себе технология, которую можно использовать.
Автор: fd00ch
Дата сообщения: 01.08.2014 16:18

Цитата:
Пока что у FM есть одно большое преимущество. Благодаря firedac/anydac можно использовать почти любую СУБД. В то время как в Android Studio только одну SQLite.

шта? я что-то пропустил, и FireDAC теперь - не просто обертка над клиентскими библиотеками (которых под андроид, разумеется, нет и не будет), а полноценный клиент для всех поддерживаемых БД (SQLite не стоит упоминать, ее грех не вкомпилячить в exe)?
Автор: kaz_av
Дата сообщения: 01.08.2014 23:41
LadyOfWood

Цитата:
Непонятно другое, зачем пиарить технологию которую использовать нельзя.

А что еще им пиарить, если ничего другого нет? В свое время они отказались поддерживать Qt, сделав выбор в пользу приобретения KsDev (и их можно понять, зависимость от стороннего фреймвока штука отвратная, для коммерческого продукта тем более), но видимо силёнок инженерных не хватает для доведения до ума (помните, как они обещали векторный масштабируемый гуй? Загляните в стили - тупая скинизация растром с различными разрешениями. Это только один пример, а их там...). FMX и на десктопе-то нормально не работала, а тут они решили ещё и на мобильном рынке обосноваться, ибо тренд. Ну а в процессе этой гонки за несколькими зайцами, участникам (вспомним о распиаренном дигифорте, для примера) светит веселенькая перспектива быть протащенными мордой по всем ухабам этих заячьих троп. Многие уже все поняли. Многие все еще надеются. Я надеюсь, что у абракадабры случится таки просветление и они сделают аналог VCL (гибрид VCL с сервисной архитектурой) для каждой платформы. В последнем опросе они, по крайней мере, спрашивали о необходимости нативных контролов.
Автор: sergionn
Дата сообщения: 02.08.2014 00:10

Цитата:
Я прям вижу, что мне придется переделать, т. к. некоторые моменты очень кривые.

в зависимости от уровня локальных (внутрикорпоративных) требований к качеству софта, переделывать можно от 40 до 100%, не шутка

Цитата:
интересно рассказывают.

мне мама сказки тоже жутко интересно рассказывала, и про деда мороза и про шишков и про бабайку.....

Цитата:
Так что вполне себе технология, которую можно использовать.

конечно можно, например для того, чтобы дрожащими руками запустить апп, и очень аккуратно снять сей нестабильный и недолговременный процесс работы на видео, чтобы потом......
Автор: LadyOfWood
Дата сообщения: 02.08.2014 00:19

Цитата:
Я надеюсь, что у абракадабры случится таки просветление и они сделают аналог VCL (гибрид VCL с сервисной архитектурой) для каждой платформы. В последнем опросе они, по крайней мере, спрашивали о необходимости нативных контролов

На это все надеются, именно хочется общего RTL + библиотека контролов под каждую платформу.
Автор: protoror
Дата сообщения: 02.08.2014 17:10
уже какой год жду вменяемой разработки под андроид, а ее все нет, надеюсь нативные контролы все же поправят ситуацию. Думал appmethod что-то то изменит, а это те же яйца только с боку.
Автор: sergionn
Дата сообщения: 03.08.2014 11:28
Мне вот непонятно, неужели настолько высок градус "пофигизма" в местном офисе emb?
http://habrahabr.ru/company/sphere_systems/blog/231997/
В очередной раз,
- вместо усиления команды разрабов,
- вместо полноценного сотрудничества и диалога с сообществом
- вместо рефакторинга архитектуры fmx и тд и тп.
нас начинают пихать очередным "тонко" (как видимо считают они) завуалированным
маркетологическим бредом, с новым соусом и новым посылом:
"вот как было хреново разрабатывать с fmx в xe2-xe5, а вот теперь с XE6 все стало чудесно!
Кто в этот бред поверит?!
Я так понимаю это дело рук нового маркетера, пришедшего на смену Всеволода,
но не отличающегося от него по уровню бездарности подачи технического материала...
В очередной (100500-й) раз обидно за Delphi
Автор: kaz_av
Дата сообщения: 03.08.2014 19:59
sergionn
Про эту Сферу еще Леонов писал, рассказывая, как счастливы разработчики, что выбрали обезьяну А они, как оказалось, не так уж и счастливы были. Статья вряд ли происки маркетологов , просто написана сумбурно, ну и восторгов от XE6 я не что-то понял. Скачал сферу под ведроид и винду, будет время гляну, что там изменилось с прошлого раза, когда я поймал кучку багов
Автор: sergionn
Дата сообщения: 03.08.2014 21:48

Цитата:
Статья вряд ли происки маркетологов

я маркетологические опусы сразу вижу - работа у меня такая была, долго
в тексте есть места писанные "как по учебнику",
ну а отсутствие реальной конкретики по работе с fmx, окончательно проявляет назначение сей писанины........

Цитата:
Скачал сферу под ведроид и винду

я не качал, зачем, и так видно, что xe6 очередная косметика xe2-3-4-5,
увы без серьезного рефакторинга.....
Автор: G787
Дата сообщения: 04.08.2014 00:56
А ведь была шутка еще во времена Xe2, что нормальный продукт будет не раньше Xe10
Автор: LadyOfWood
Дата сообщения: 04.08.2014 02:10

Цитата:
А ведь была шутка еще во времена Xe2, что нормальный продукт будет не раньше Xe10

Оптимистичная однако шутка

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129

Предыдущая тема: Отмена встречи в Outlook из Excel VBA


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.