• Как подключить стороннюю библиотеку в Delphi?

    logpol32
    @logpol32 Автор вопроса
    Hemul GM, "Ме́тод в объектно-ориентированном программировании — это функция или процедура, принадлежащая какому-то классу или объекту." - я считаю, что это не так.
    Ужасное определение. Всё в кучу и класс и объект. Надеюсь, это исправят.
    Статья из 20 предложений?

    Такое разделение интерфейсов позволяет сохранять неизменным открытый интерфейс, но изменять внутреннюю реализацию.

    Что курил автор? Какие интерфейсы? Это модификаторы доступа!
    Интерфейс - это конструкция используемая для специфицирования услуг, предоставляемых классом или компонентом.

    состояние объекта хранят свойства

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

    Состояние экземпляра класса, в просторечии объекта (хотя и это некорректное определение, ведь объект размещается на куче вместе с экземпляром - но программисты любят называть эту пару объект) могут хранить классы (их экземпляры), статические классы и методы, например в переменных.

    Базовый курс C#.
    Написано
  • Как подключить стороннюю библиотеку в Delphi?

    logpol32
    @logpol32 Автор вопроса
    Чтоб из C# в JS одной строкой подключалось, таких чудес не видел.

    Я этого и не писал.
    Обычно, библиотеки подключаются одной строкой кода (JS) или в два клика (C#)

    В Джаваскрипт библиотеки (имеется в виду библиотеки Джаваскрипт) подключаются одной строкой кода.
    В C# имеется в виду библиотеки C# - в 2 клика.
    Написано
  • Как подключить стороннюю библиотеку в Delphi?

    logpol32
    @logpol32 Автор вопроса
    1. Процедуры - это и есть методы. Методы - это функции и процедуры.

    Нет, это не так. Не надо смешивать функциональное и объектно ориентированное программирование.

    Функции и процедуры не хранят состояние объекта. Классы и методы - хранят.
    Экземпляры класса, статические классы (в которых могут быть только статические члены, методы например) и т.д.
    И далее есть замещенные, виртуальные, переопределенные, частичные методы.
    Абстрактные методы определенные в абстрактных классах/интерфейсах, а реализованные в конкретных.
    И далее вся мощь ООП Наследование интерфейса от интерфейса с одинаковыми членами (в данном случае методами) и объединенной реализации этих членов, апкасты, даункасты...и прочее.
    Написано
  • Как именовать константы (нотация)?

    logpol32
    @logpol32 Автор вопроса
    Кто с кем и зачем должен что-то согласовывать

    ELMA3 в первых пунктах есть ответ на ваш вопрос. Для лучшего понимания кода и т.д. и т.п.
    Написано
  • Как именовать константы (нотация)?

    logpol32
    @logpol32 Автор вопроса
    Это не переменная, а поле.
    согласен.
    так как оно публичное - оно должно именоваться с большой буквы.
    - никогда такого не видел. Почему имя публичного поля должно начинаться с большой буквы? Это не метод, класс.

    ECMA-334 не регламентирует, как нужно именовать - это спецификация языка, а не кодстайл

    Спецификацию пишут без использования кодстайла? Как хочу-так пишу? Это же официальный документ.
    Написано
  • В чем смысл передачи аргумента в конструктор класса?

    logpol32
    @logpol32 Автор вопроса
    2. В теории - да. На практике такого не встречал.

    Обычно, инициализация данными производится при объявлении.
    int a = 0;
    int b; // 0


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

    Инкапсуляция - это размещение в одном компоненте данных и методов которые с ним работают, а также сокрытие внутренней реализации от других компонентов.
    Написано
  • Где можно прочесть ECMA-334 на русском языке?

    logpol32
    @logpol32 Автор вопроса
    Когда я начал изучать C# я начал смотреть разные видеоуроки, читать статьи и т.д.
    Но даже в самых лучших уроках есть неточности и ошибки.

    Для правильного изучения и понимания надо смотреть спецификацию, как основной и "наивысший" документ. Ну или иногда туда подсматривать, когда есть сомнения.
    Но спецификация на английском. Я знаю английский и технический английский.

    В чем проблема? В понимании. Например:
    "Two forms of comments are supported: delimited comments and single-line comments."

    Переведем гугл переводчиком:
    "Поддерживаются две формы комментариев: комментарии с разделителями и однострочные комментарии."

    Отдельно переведем слово delimited - ограниченный. limited - ограниченный. Странно... Но вот такой переводчик. Предположим, что delimited comments устойчивое выражение, означающее комментарии с разделителями.

    А теперь поговорим об английском. Наверно, любой человек долго изучающий этот язык сразу увидев приставку de скажет - идет какое то отрицание. То есть смысл - не ограниченный.

    Тогда смысл фразы "Two forms of comments are supported: delimited comments and single-line comments." будет вполне логичный - существуют неограниченные комментарии и однострочные.
    А может даже стоит перевести как многострочные и однострочные, ведь суть именно в этом.

    Да, мы можем использовать /* */ в одну строку. Но это не совсем верно. Их не для этого придумали.

    Даже зная язык и понимая некоторые аспекты программирования возникают вопросы в переводе с английского языка.
    Написано
  • Почему экземпляр производного класса приводят к базовому абстрактному типу?

    logpol32
    @logpol32 Автор вопроса
    Ни разу о таком не слышал. Мне кажется, это какой-то бред сумасшедшего, который ни разу не написал ни одной строчки кода.

    Aлексaндр Шeвчук — сертифицирoванный рaзработчик и тренер Microsoft, эксперт в области построения архитектуры информационных систем, бизнес-анализа и управления IT-проектами, автор многих образовательных программ для .NET разработчиков.

    Вот вырезка из его видео.
    https://cloud.mail.ru/public/49g2/aCrDndr78
    Написано
  • Какие существуют свойства?

    logpol32
    @logpol32 Автор вопроса
    Ужас, с такими терминами никто вас не поймёт. Лучше переходите на английский язык пока не поздно.

    И как тогда это называть? Силед класс, а не герметизированный класс?
    Устанавливающий метод, сеттер (англ. setter) или модифицирующий метод, мутатор (англ. mutator) - это и есть английский. С асессором аналогично.
    Вся терминология общепринятая и вполне научная.

    И нет смысла собирать огромную таблицу

    Почему? С одной стороны это всё модификаторы. С другой - модификатор, модификатору рознь.
    Иногда даже классифицируют модификаторы как классификаторы, спецификаторы (хотя в офф документации всё относят к модификаторам)

    Вот например есть public метод. И есть private метод. Модификаторов доступа более 6 (и в новой версии ещё добавили). Тут таблица не нужна. Все эти методы будут идентичны. отличие в уровне доступа.

    А вот частичный метод. Вроде тот же метод, но
    1) применим только для частичного класса
    2) в первой части должна быть определена сигнатура частичного метода
    3) во второй части должна быть определена реализация частичного метода
    Ну и идеология - разделение логики, функциональности и т.д.
    На мой взгляд, это уже другой вид метода.
    Написано
  • Как в Visual studio 2019 установить поддержку UML диаграмм?

    logpol32
    @logpol32 Автор вопроса
    Johnny Gat,
    В видеоуроке используют VS 2012 и говорят - изучаем uml диаграммы. Создают Modeling Project -> UML Class diagramm. Картинки я привел.

    В VS 2019 этого нет.
    Но в VS 2019 я нашел диаграмму классов. По функционалу она очень похожа на uml диаграмму VS 2019.
    Это одно и тоже?

    Просто для дальнейшего изучения мне нужен этот инструмент. А менять VS 2019 на VS 2012 наверно плохая идея. Продукт скорее всего устарел или будут проблемы с другими расширениями.
    Написано
  • Как в Visual studio 2019 установить поддержку UML диаграмм?

    logpol32
    @logpol32 Автор вопроса
    Johnny Gat, Скриншот с версии Ultimate 2012 Update 2.
    В Visual Studio 2019 нет указанных на скриншоте элементов, но есть возможность создавать ClassDiagramm.cd которые очень похожи.

    5fbd28b0dca79598026007.jpeg
    Написано
  • Как в Visual studio 2019 установить поддержку UML диаграмм?

    logpol32
    @logpol32 Автор вопроса
    Переустановил Enterprise. Вроде всё тоже самое.
    Не могу там найти Modeling Projects.
    При установке внимательно выбирал компоненты на вкладке Отдельные компоненты -> Средства для работы с кодом.
    (Конструктор классов установлен)
    Написано
  • Как откатить изменения в GIT?

    logpol32
    @logpol32 Автор вопроса
    С гитом знаком недавно поэтому и такой вопрос.

    1) Сделать новый коммит, исправляющий ошибки не вариант.
    В моем проекте это физически невозможно, т.к. я ставлю сторонние модули, которые изменяют кучу файлов.
    Что они делают - одному разработчику известно.
    2) git revert -
    ---
    your index file is unmerged.
    revert failed
    Reverting failed because of conflicts.
    ---
    Написано
  • На каком движке лучше создать интернет магазин?

    logpol32
    @logpol32 Автор вопроса
    Евгений, и у меня всё работает. За 10 лет веб разработки ПрестаШоп это первая смс которая не корректно работает с OpenServer. Три бага мы уже нашли. Сколько там ещё - неизвестно.

    Что теперь делать - непонятно.
    XAMMP с дефолтными настройками - аналогично. И на нем не входит в админку.
    На виртуальной машине с Win 7 + OpenServer аналогично.
    С установкой на английском - аналогично.
    Со сменой кодировки БД - аналогично.
    Что это за поделка такая...

    У вас работает? Как я понимаю код вы не правите, т.е. устанавливали сразу на линукс...
    Я же разработчик. Мне надо и код править и шаблоны верстать и много чего ещё. И под линуксом даже 10ю часть этого не сделаешь.

    Я могу развернуть виртуалку линукс, но как править файлы? В линукс? Не продуктивно. Таскать их туда сюда? Тоже не вариант.
    Написано
  • Prestashop Как исправить ошибку - "Ошибка авторизации"?

    logpol32
    @logpol32 Автор вопроса
    XAMMP с дефолтными настройками - аналогично.
    На виртуальной машине с Win 7 +OpenServer аналогично.
    С установкой на английском - аналогично.
    Со сменой кодировки БД - аналогично.
    Никак.
    Написано
  • На каком движке лучше создать интернет магазин?

    logpol32
    @logpol32 Автор вопроса
    Евгений, c OpenServer работаю давно. Ставил на него всё. Самые разные движки, самописное и т.д.
    Всё работало.
    Пообщался с sweb. У них преста ставится так
    https://help.sweb.ru/entry/875/
    "и внести изменения в файл /classes/db/DbPDO.php"
    У них похоже тоже проблема с сервером.
    Написано
  • На каком движке лучше создать интернет магазин?

    logpol32
    @logpol32 Автор вопроса
    Евгений,
    Продолжаю "грызть кактус".
    Локальный сервер настроен согласно офф документации. Сервер проверен официальным скриптом. Всё ок.
    А нет - ошибка авторизации.
    https://qna.habr.com/q/866835?e=10144899#clarifica...

    PS
    Писал в суппорт на гитхабе с просьбой исправить ошибку с русским языком. Вежливо послали...нет им до этого дела. Вот такая преста.
    Написано
  • Prestashop Как исправить ошибку - "Ошибка авторизации"?

    logpol32
    @logpol32 Автор вопроса
    1) В используемой версии php логирование включено. По указанному пути пусто.
    2) Это долго. Вариант искать чужие ошибки конечно универсальный, но я немного по другому представлял себе работу с преста шоп.
    Написано
  • На каком движке лучше создать интернет магазин?

    logpol32
    @logpol32 Автор вопроса
    Евгений, с 2011 года так то. Один из основных инструментов веб разработчика. Замена старому денверу.
    htmlbook.ru/webserver/openserver
    По дефолту у меня там стоит апач 2.4+пхп 7.1+база мария 10.3 Всё относительно новое.
    И преста не пускает в админку.
    Написано
  • На каком движке лучше создать интернет магазин?

    logpol32
    @logpol32 Автор вопроса
    Евгений, prestashop_1.7.6.8
    Open Server. Использую его 3 года. Что может быть не так?
    Конфигурация по дефолту.
    Написано