Перепрошую, що це виглядало для вас як знущання. Це я намагався жартувати, тому що, нажаль, не вірю що у нас вийде якась конструктивна дискусія, але зроблю ще останню спробу. Якщо би автор задав питання, чи є overloading способом реалізації поліморфного поводження обєктів в ООП під час рантайм — відповідь була би — категорично ні. Але автор задав досить нечітке питання, чи є overloading поліморфізмом в ООП, тут вже не раз говорили, що overloading — це Ad-hoc поліморфізм, для вас до компіляції, виглядає що метод обєкту до якого ви бидете звертатись під час виконання програми має поліморфні властивості, тому однозначна відповідь — так, є поліморфізмом в ООП. Щоб це зрозуміти, визначіть для себе значення терміну поліморфізм, взагалі, без ООП. Потім вже розумійте яку роль він відіграє в ООП, потім розрізніть собі період до компіляції, та після (я вважаю що ООП включає два, і перший, звісно, головний), і я впевнений що не буде жодних сумнівів.
Я чомусь завжди думав, що ООП базується «тільки» на поліморфізмі, дякую що розяснили. Також дякую вам за те, що пояснили, що термін поліморфізм, в ООП треба трактувати тільки так, як він реалізований в мовах програмування.
Не розумію, чому це питання викликає якісь сумніви, бачу купу суперечок. Наприклад питання — «Гірськолижний спорт: чи можна слаломом спуститись з гірки», напевне, не буде викликати жодних сумнівів. Поліморфізм — це абстрактне поняття, яке, на мою думку, передбачає зміну поведінки в залежності від середовища. ООП — це підхід до проектування ПЗ, яке базується на поліморфізмі. Overloading — буде поліморфізмом чи в ООП, чи поза ним. Взагалі як на мене, набагато простіше доказати, що щось є поліморфізмом, ніж це заперечити. Якщо поліморфізм підтримується на рівні мови — це супер, але що вам забороняє вигадати свій спосіб поліморфізму. Якщо у вас у коді є хоча би один if, switch чи for — ваша програма вже певною мірою якась поліморфна.
Ніколи не розумів таких людей, які задають питання, а потім самі на нього «типу» правильно відповідають, завжди ідентифікую вас як тролів :-)
Хлопці, що за неясності, звичайно що поліморфізм, і крапка, не може бути ніяких сумнівів.
Розрізняєте поліморфізм під час рантайм, та під компілейшинтайм. Перегрузка — це компілейшин тайм. І хто каже що поліморфізм — це тільки рантайм поліморфізм, мислить трохи обмежено.
Автор пробач, але мені не хочеться дочитувати цю статтю до кінця, ти зациклений на аутсорсінгу та аутстафінгу, але що ти скажеш про продуктові компанії? Головне продатись)))
Це просто усміхнуло —
Итак, однажды у нас в компании появился не очень хороший коллега-программист. Я познакомился с ним, когда он вызвал команду ОС “удалить всё из текущего каталога” из сервера приложений (тогда это был ASP) — так он удалил из “system32” всё, что можно было удалить. После этого сервер продолжал работать какое-то время (файлы, которые в тот момент использовались, не удалились), но он никогда не перезагрузился бы и скоро упал, как только захотел бы сделать что-нибудь новое и загрузить какой-нибудь dll из system32.
Насправді у вас в компанії появився гарний QA, який виявив серйозну проблему в секюріті, а програмісти у вас були такі собі, якщо позволяли ідентіті з веб сервера отримувати повний доступ до каталога віндовс.
Пробачте за тролінг, просто не міг стриматись)))
Всього найкращого
Добрий вечір, вибачте що вертаюсь до цієї теми за стільки років, не знаю чи хтось ще прочитає це, але маю настрій дістати українських інженерів, знавців ООП. Почну так — закрийте свої піддувала, оверлоадінг — це не поліморфізм, і ніколи ним не буде. Мені — плювати, що ви там думаєте. Я з вас гоню, і надіюсь — посміємось разом. Це все питання дефініції понять, можна вважати х*й пальцем, а палець — х*єм, і кохати жінку пальцем. Можна ж, правда? Але нашо? Як маєш х*я... Умніки, нашо ви приплітаєте сюди рантайм, компілейшин тайм, йдіт гуляйте... Є мови, де компіляція відбувається при рантайм... І що будемо тепер робити, кохати жінку на два способи? Слухайте, що таке поліморфізм? Читайте Мартіна Фовлера, Стівена Макконела, не бикуйте... Це просто, обєкт поводиться по різному, в залежності де він(середовище). Який на х*й оверлоадінг тут... Мавпи інженерні... Що таке оверлоадінг? Це також просто... Не ускладнюйте терміти... Це можливість різні функції чи методи називати тим самим іменем. Їб*ть все просто. Прошу не бикуйте... Я знаю, що якщо дивитись теоретично, то це типу поліморфізм, але який нах? Дауни, на коліна... Це стьоб пост, насправді, оверлоадінг можна вважати поліморфізмом... якщо ти гей... вибачте, вирвалось... нічого не маю проти геїв... можна вважати, насправді, клянусь, але тут і корінь, що «можна вважати» якщо дивитись через одне місце... є оверлоадінг, і є поліморфізм, можемо це так і залишити? для чого це обєднувати чи розділяти?