Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Embarcadero RAD Studio

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323

Открыть новую тему     Написать ответ в эту тему

V1s1ter



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
         
Обсуждаем новые возможности и баги
 
Просьба писать про Embarcadero RAD Studio XE5, XE6, XE7, XE8, 10.x (Seattle, Berlin,Tokyo)
  По вопросам скачивания - Тема в Варезнике (lite-версии тут)
  Вопросы по неюникодным версиям Delphi — шестая бумага
  Бесплатные Компоненты и утилиты для Delphi/BCB/FreePascal/Lazarus
  Коммерческие компоненты и утилиты для Delphi/BCB
  Вопросы по компонентам для Delphi, C++ Builder разных версий
  Новые языковые возможности, начиная с Delphi 2005 по XE4 — здесь, и New!здесь еще
  Англоязычный официальный форум Embarcadero — здесь
  Embarcadero Quality Central, веб интерфейс — здесь, новый Quality Portal тут
  Программирование на Delphi — викиверситет
  Другие ресурсы
   Предыдущие бумаги
 
     Вопросы ..XE4       Вопросы ..XE3    Вопросы ..XE2      
  Вопросы ..2009-XE    Вопросы ..<2009 / ч.5    Вопросы ..<2009 / ч.4      
  Вопросы ..<2009 / ч.3    Вопросы ..Delphi 2 / ч.2    Вопросы ..Delphi  

  Выключение встроенного эксперта Castalia  для XE8 (иногда помогает при вылетах и тормозах)  
  Полезные плагины(эксперты)

Всего записей: 948 | Зарегистр. 06-02-2007 | Отправлено: 15:25 11-09-2013 | Исправлено: Komandor, 15:49 31-03-2024
ChSerg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
V1s1ter
Там не только темная и светлая, а можно юзать любую из стандартной поставки.

Всего записей: 936 | Зарегистр. 30-08-2001 | Отправлено: 19:17 18-12-2017 | Исправлено: ChSerg, 19:17 18-12-2017
VadimShvarts

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
All
D10.2 Distiller (version 33)
Продолжение линейки XE Distiller для Delphi 10.2 Tokyo
 
Исходники (Build 33),  
исполняемый модуль (Build 33)

 
В меню Tools\Extras:
Добавлена поддержка Update1
Добавлена поддержка Update2
 
Обновлено: Version 34

Всего записей: 75 | Зарегистр. 03-11-2006 | Отправлено: 17:12 20-12-2017 | Исправлено: VadimShvarts, 17:56 26-12-2017
protoror



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
BDE для токио у кого есть?
Поиском нашел только для 10.1

Всего записей: 494 | Зарегистр. 23-11-2009 | Отправлено: 14:59 21-12-2017
NeoAnomaly

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
protoror, link

Всего записей: 418 | Зарегистр. 23-03-2010 | Отправлено: 09:53 22-12-2017
protoror



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NeoAnomaly
Спасибо, а как удалить предыдущую версию BDE?
В установке и удалении только новая, а папку  старой "c:\Program Files (x86)\Embarcadero\Studio\18.0" не удаляет

Всего записей: 494 | Зарегистр. 23-11-2009 | Отправлено: 12:55 22-12-2017 | Исправлено: protoror, 13:16 22-12-2017
DKUniSoft

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день.
 
Можно ли вместо класса использовать record? Наследование мне особо не нужен. С недавных пор стал использовать record. Насколько это правильно?

Всего записей: 89 | Зарегистр. 05-10-2007 | Отправлено: 06:58 25-12-2017
NeoAnomaly

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Можно ли вместо класса использовать record? Наследование мне особо не нужен. С недавных пор стал использовать record. Насколько это правильно?

DKUniSoft, если не важны фишки конкретного типа(для примера: перегрузка операторов в рекордах или наследование в классах и др.), то самое главное на что стоит обратить внимание: record это value type. Т.е. по умолчанию в функции передаётся по значению, копируется при присваивании и размещается на стеке при объявлении локальной переменной. Другими словами "правильность" зависит от задачи.

Всего записей: 418 | Зарегистр. 23-03-2010 | Отправлено: 09:02 25-12-2017 | Исправлено: NeoAnomaly, 09:10 25-12-2017
Eternal_Shield

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NeoAnomaly

Цитата:
то самое главное на что стоит обратить внимание:  
...

А так же на потенциальные утечки памяти при определённых условиях, если в record будут string.
 
DKUniSoft
Имхо, структуры крайне редко нужны для решения каких-то задач. Лучше взвесить все за и против использования структур в конкретной задаче 7 раз перед их использованием.

Всего записей: 766 | Зарегистр. 18-05-2009 | Отправлено: 10:20 25-12-2017
stanzdor



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Eternal_Shield,
что там за определенные условия для утечки памяти?
сейчас научите..
от массивов то же отказываемся?

Всего записей: 593 | Зарегистр. 12-04-2004 | Отправлено: 10:49 25-12-2017
NeoAnomaly

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
А так же на потенциальные утечки памяти при определённых условиях, если в record будут string.  

Eternal_Shield, ну так, если берёшь управление памятью на себя(а такое возникает только при не стандартном применении структур), то бери его до конца или отправь пожалуйста репорт в qc А так компилятор отлично справляется с финализацией рекордов во всех стандартных ситуациях.
 

Цитата:
Имхо, структуры крайне редко нужны для решения каких-то задач

Например задача натягивания совы на глобус(представление байтов в виде осмысленных данных) ни редко, ни часто - а скорее никогда не решается без структур.

Всего записей: 418 | Зарегистр. 23-03-2010 | Отправлено: 11:18 25-12-2017 | Исправлено: NeoAnomaly, 11:27 25-12-2017
DKUniSoft

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Если честно, использую структуры (рекорд) из-за того что не хочется каждый раз написать try... finally...Free (FreeAndNil) для классов. С классами уровень иерархии кода программы увеличивается. А с использованием структур можно не беспокоиться об освобождении (Free). Может быть я не прав? Например, классы в C# не надо освобождать, там есть сборщик мусора.

Всего записей: 89 | Зарегистр. 05-10-2007 | Отправлено: 11:33 25-12-2017 | Исправлено: DKUniSoft, 11:36 25-12-2017
NeoAnomaly

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Если честно, использую структуры (рекорд) из-за того что не хочется каждый раз написать try... finally...Free (FreeAndNil) для классов.  

DKUniSoft, возможно у тебя неправильно структурирована программа или всётаки тебе нужны не классы, т.к. на практике(по крайней мере в моей) редко возникает необходимость создания класса(как объекта инкапсуляции) с таким малым временем жизни(в пределах одной функции). На столько редко, что try-finally не обламывает

Всего записей: 418 | Зарегистр. 23-03-2010 | Отправлено: 11:39 25-12-2017 | Исправлено: NeoAnomaly, 11:43 25-12-2017
DKUniSoft

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NeoAnomaly
 
Например, работаю с БД. Таблица документы. Все поля таблицы я объявляю полями структуры. Также в структуре определяю методы для работы с этой таблицей. А когда надо объявляю локальную переменную структуры в любой части программы. Вот и все.
 
В дельфи же есть TFile и TDirectory, которые и являются структурами. Собственно это повлиял на меня, и пришлось по душе)
 
Может быть это не совсем правильно?

Всего записей: 89 | Зарегистр. 05-10-2007 | Отправлено: 12:14 25-12-2017 | Исправлено: DKUniSoft, 12:19 25-12-2017
NeoAnomaly

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
В дельфи же есть TFile и TDirectory, которые и являются структурами.

DKUniSoft, именно указанные тобой типы являются просто средством группировки функций. Классы же(и расширенные рекорды, которые могут содержать методы) предназначены для большего. Для чего - отправляю читать теорию ООП.
 
Т.е. если у тебя всётаки объектный подход, то всё, что тебе надо знать:

Цитата:
 record это value type. Т.е. по умолчанию в функции передаётся по значению, копируется при присваивании и размещается на стеке при объявлении локальной переменной

 
ЗЫ
Разбирать твой пример с точки зрения ООП и архитектуры не буду, т.к. не совсем понял некоторые моменты + тут каждый выстраивает абстракции, как он хочет.

Всего записей: 418 | Зарегистр. 23-03-2010 | Отправлено: 12:54 25-12-2017 | Исправлено: NeoAnomaly, 12:59 25-12-2017
Samotek

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DKUniSoft
Я тоже работаю с базами данных и, наверно по этому, активно использую записи для извлечения информации в структурированном виде. Когда открыл для себя, что в записях могут находится методы - вообще кайф стал. При работе с базами оптимизация кода дельфи ничто, по сравнению с оптимизацией запросов и на первое место в коде выходит, по-моему и как писали многие, "Пишите код для людей, а не машины. Не повторяйте себя." Чему структурирование данных прекрасно способствует.

Всего записей: 2447 | Зарегистр. 18-05-2005 | Отправлено: 13:02 25-12-2017
DKUniSoft

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NeoAnomaly
 
Спасибо за подробный ответ. По цитате все понял. Мой подход заключается в том, чтоб инкапсулировать данные (свойства) и методы оперирующие с этими данными внутри структуры. А наследование я не использую.

Всего записей: 89 | Зарегистр. 05-10-2007 | Отправлено: 13:06 25-12-2017 | Исправлено: DKUniSoft, 13:07 25-12-2017
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Я тоже работаю с базами данных и, наверно по этому, активно использую записи для извлечения информации в структурированном виде. Когда открыл для себя, что в записях могут находится методы - вообще кайф стал.

Еще немного, и вы изобретете свой собственный ORM. Лучше гляньте уже готовые реализации.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 15:30 25-12-2017
DKUniSoft

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Samotek
 
Спасибо. Вы правильно поняли меня. Точно также и я работаю.
 
Frodo_Torbins
 
Какие есть готовые решения (реализации)?

Всего записей: 89 | Зарегистр. 05-10-2007 | Отправлено: 15:49 25-12-2017
zedxxx

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DKUniSoft
Список ORM фреймворков для Delphi: https://pascal.today/2016/10/08/orm-for-delphi/

Всего записей: 1505 | Зарегистр. 14-07-2008 | Отправлено: 15:56 25-12-2017
Alexey_Gawrilow



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
DKUniSoft
zedxxx
Еще списки:
http://delphi.about.com/od/toppicks/tp/orm-object-relational-mapping-delphi.htm
https://github.com/Fr0sT-Brutal/awesome-delphi#database
 
InstantObjects и tiOPF самые старые.
Bold - как-то не сильно заметно прошел.

Всего записей: 640 | Зарегистр. 08-09-2003 | Отправлено: 17:44 25-12-2017
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Embarcadero RAD Studio


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru