Pull to refresh
28
0.1
Геннадий Малинин @HemulGM

Программист Delphi

Send message

Столбец "выделенная память" добавь

Так об этом я и говорил. Ошибка проявляется в рантайме, а не при написании кода.

Создайте список из объектов класса Animal, добавьте туда Cat, Dog и вызывайте Eat для каждого, передавая туда Meat

Таким образом получается, что класс Cat не может принимать параметром, например, `Meat food`?

Но таким образом получается, что если Cat как Animal в общем списке Animals, то мы можем передать в него любой Food, и объект Cat примет Meat и будет обращаться к Meat как к Fish. Это как-то регулируется вообще?

Когда ты общаешься с сервисом через API, которое ещё и имеет стандартизированный ответ в формате JSON - это НЕ парсинг. Это работа с API.

Знать немного синтаксис - это не то же самое, что "знать язык".

Ну вот об этом и речь. Вы плохо знаете его современные способности. Инлайны, выведение типов, локальный скоуп, новые фреймворки, кроссплатформенные возможности. Бэкенд под Линукс прекрасно пишется с использованием бэкенд фреймворков. Гуи приложения и игры под мобильные или полностью кроссплатформенные платформы - тоже.

Исключительно винда - это пережиток. Это уже давно не так.

Философия разработки и на Delphi уже меняется. Проверьте и попробуйте написать кроссплатформенный пет-проект на FMX с дженериками, анонимками и тасками, например.

Прекрасно пользуюсь знаниями Delphi сейчас. Пишу мобильные приложения, серверные под Линукс, десктопные под Мак. На часы себе софт написал. И даже одностраничные мини веб сервисы.

XML используется много где для обмена. Да тот же XLSX/DOCX - это набор xml в архиве.

Потому что знания нужно обновлять. Тот же делфи и джава постоянно меняются и обновляются. И вот уже аккуратные знания этих инструментов могут помогать.

Мне предлагают 180-230 для мидла.

У меня тоже на hh висит резюме без статуса и мне тоже регулярно пишут рекрутеры. При чем не только на hh пишут, а лично в телеграм. В чатах по Делфи часто заходят HR и публикуют вакансии. Так что нет, действительность не такая, как вам кажется.

Это в нашем (или именно вашем) инфопространстве мало Delphi программистов, а во многих странах, да и у нас в России есть не мало специалистов.

Тем более, сам инструмент (компилятор, синтаксис, IDE, ...) активно развивают и регулярно выпускают обновления. Не только фиксы или что-то там, чтоб работало сейчас, а именно нововведения: совершенствуют компилятор, добавляют новые синтаксические конструкции в язык, обновляют среду, создают новые инструменты для разработки, расширяют RTL. Добавим к этому то, что легаси проекты на новых версиях работать не будут, а это означает, что старые проекты пересаживают на новые версии (хотя это не обязательно).

Наша и многие другие компании закупают новые версии инструмента для разработки и сейчас мы пишем уже кроссплатформенные решения на этом языке, в том числе и мобильные.

Импортируйте модули в порядке алфавита

В смысле в порядке алфавита? А приоритет не?

PowerToys. Два клика в трее и меняй/добавляй)

Ага, нужды нет.

Речь шла об этом. О том, что умные указатели не сильно нужны. Потому что есть много других способов управлять объектами. Умные указатели - лишь один из способов.

TComponent обладает методами, которые позволяют реализовать систему владения объектами и из коробки стыкуется с многими штатными классами. Этот подход, например, используется в Rust.

Далее, как я уже сказал, легко можно реализовать defer, который укладывается в несколько строк, или который можно просто стануть с гита.

После этого - интерфейсы.

Есть ещё и ARC, для извращенцев. Его можно включить директивой.

И в Делфи уже давно есть деструкторы и конструкторы у record, которые очень легко позволяют реализовать умные указатели.

https://www.embarcadero.com/case-study/image-line-software-case-study

  1. Систему владения знаешь? Она в делфи реализована из коробки на основе TComponent (Owner, Free notify).

  2. Ищи в GetIt пакет "Mitov" или кучу разных на GitHub.

  3. Я себе реализовал (20 строк кода) defer/errdefer из языка Zig, и могу писать так: var s := TStringList.Create; defer(s); (именно подряд), а дальше любой код. В том числе, это работает и в локальном скоупе.

  4. Зайди на мой гит, а потом пробуй что-то там ставить под сомнение. Реализация defer тоже есть на Гите.

И это не я ставлю минусы, так что ...

На Delphi они реализуются буквально в 10 строк, на любой вкус и цвет. Не говоря уже о том, что есть готовые реализации в официальном менеджере пакетов.

В них особой нужды в Delphi просто-напросто нет.

1
23 ...

Information

Rating
2,974-th
Location
Екатеринбург, Свердловская обл., Россия
Date of birth
Registered
Activity

Specialization

Software Developer, Fullstack Developer
Senior
From 180,000 ₽
Delphi
SQL
Database
Git
REST
C#
Python
OOP
MySQL
PHP