Автор Тема: Тема для зубастого web-мастера  (Прочитано 173 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Мастеров АВ

  • Путлеровец
  • Хулиган
  • Местный мудрец
  • *****
  • Сообщений: 51974
  • Страна: ru
  • Рейтинг: +1323/-2384
  • Пол: Мужской
  • Смерть картавым фашистам!
    • Личный сайт Мастерова Александра
Тема для зубастого web-мастера
« : 27 Январь 2019, 17:57:37 »
Тема для зубастого web-мастера
(чтобы зубы пообломал)
Дааа... Были люди в наше время,
не то-что нынешнее племя.
Не люди - львы.
Плохая им досталась доля.


Это я о своих братьях - программистах.
Нынче программистов нет.
Братья - состарились,
а те, кто пришёл за нами...
Разве то программисты ?


Я поясню...

ПРИМЕР 1 Я видел как зарождался SQL.
Четверть века назад самыми объёмистыми носителями информации
были магнитные ленты, которые сматывались на бобины,
и тогда SQL позволял перевести длину в байтах - в метры,
для этого и нужны были реляционные базы данных
с фиксированным размером полей в таблице.

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

ПРИМЕР 2 Я видел как зарождался ООП (объектно ориентированное программирование).
(расскажу - что это такое - ООП)

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

Процедурные языки подобное реализовать не могут.

Как это реализовано ?
Ну действительно: процессор один, а задач
(которые он выполняет) - много ?
Как процессор выполняет много задач одновременно ?

В процессоре (в отличие от калькулятора) много регистров
(кроме \(X\) и \(Y\) в калькуляторе), и в каждой задаче
эти  регистры имеют своё значение.
Кроме того, процессор может сохранять в памяти гигобайты значений,
а калькулятор может сохранить только одно значение - \(X\)

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

На уровне программиста многозадачность реализуется...
Реализуется....
В общем... сначала нужно рассказать о том,
что такое объекты и их классификация в ООП.
(иначе хрен что поймёшь)

http://masterov.qptova.ru/Downloads/DCSS.1.1.beta.2004-03-30.rar
Мы были нищими в СССР и останемся нищими в России,
нищими в самой богатой стране до тех пор, пока терпим
жидовскую оккупацию.
                                        Я сказал

Большой Форум

Тема для зубастого web-мастера
« : 27 Январь 2019, 17:57:37 »
Загрузка...

Оффлайн Мастеров АВ

  • Путлеровец
  • Хулиган
  • Местный мудрец
  • *****
  • Сообщений: 51974
  • Страна: ru
  • Рейтинг: +1323/-2384
  • Пол: Мужской
  • Смерть картавым фашистам!
    • Личный сайт Мастерова Александра
Re: Тема для зубастого web-мастера
« Ответ #1 : 27 Январь 2019, 17:58:17 »
ООП появилось не сразу после процедурного.
До ООП появилась возможность создавать структуры данных
(собственные типы, наряду с int и float)

В начале эти (собственные) типы были неполноценными -
нельзя было определять операции над этими данными.
(так было в языке программирования СИ)

Потом появилась возможность определять не только операции (+-:*) над структурами,
но и методы стало возможным определять, которые изменяют (определяют) и возвращают (вычисляют)
свойства объектов.

Более того, появилась классификация.
Это когда определяется новый класс,
который наследует свойства своего родителя,
дополняя. определяя и переопределяя
свойства и методы родителя.

Пример: Класс "Мебель" имеет свойства "Наименование", "Производитель", "габариты", "цена", "наличие" и всё такое,
и все эти свойства абстрактные (не определены).
А есть ещё методы: "загрузить (добавить) на склад" и "продать (выгрузить со склада)".

Классы "Стулья", "Шкафы" и т.п. - являются мебелью, а потому в них все свойства класса "Мебель" уже есть.
Но в классах "Стулья", "Шкафы" и т.п. все эти свойства и методы по прежнему не определены,
но у стульев (у всех) есть спинка и четыре ножки, а у шкафов есть дверки (к примеру),
и только их и нужно добавить в описание классов "Стулья" и "Шкафы".

Это и есть - наследование.

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

Итак...
Класс, это - абстрактное (не полное, без конкретики местами) описание объектов,
а Объект, это конкретная реализация Класса, с полным описанием свойств и методов.

ПРИМЕР:
Объект класса "Стул", "Наименование": "Стул, офисный, на колёсиках", "Производитель": "Фирма <Рога и копыта>"....
============================

Это (пожалуй) всё об ООП, что нужно знать начинающему программисту.

Замечу только, что Процедурное программирование и ООП несовместимы.
Нельзя писать "в Объектах" и в процедурах одновременно,
хотя язык программирования С++ это позволяет.
И это калечит мозг программистов,
поскольку вносит путаницу.

Для начинающего программиcта рекомендую начинать программировать с Джавы первой (Java 1.1).
Этот язык (вместе с библиотеками) убирался на паре дискет (несколько мегобайт).
Там всё есть и нет ничго лишнего, что есть в Java 2.
Если начать программировать с Java 2 - вы потеряете главное:
"за деревьями леса не видно"


Лучшая книга по программированию.

Когда ЭТО освоите - начните программировать сотовые телефоны -
разбогатеете по-настоящему.
Мы были нищими в СССР и останемся нищими в России,
нищими в самой богатой стране до тех пор, пока терпим
жидовскую оккупацию.
                                        Я сказал

Оффлайн Мастеров АВ

  • Путлеровец
  • Хулиган
  • Местный мудрец
  • *****
  • Сообщений: 51974
  • Страна: ru
  • Рейтинг: +1323/-2384
  • Пол: Мужской
  • Смерть картавым фашистам!
    • Личный сайт Мастерова Александра
Re: Тема для зубастого web-мастера
« Ответ #2 : 27 Январь 2019, 17:58:42 »
Для зубастого web-мастера
(обещал же)
Я не буду рассказывать о том, что такое каскадные таблицы (CSS).
Если ты это не знаешь, то ты - не web-мастера.

Итак (web-мастер) обрати внимание на то, что в CSS
можно описывать только статические свойства тегов:
color:red; (к примеру).

Но программист, понимающий ООП, непременно задастся вопросом:
почему в CSS нельзя записать так: onclick:jsFunName;

Для программиста (понимающего ООП) такая запись кажется естественной.
Более того, лет 20 назад я это реализовал в Internet Explorer-e.
(тут это можно, а другие браузеры ему в подмётки не годятся)
Скачай тут: http://masterov.qptova.ru/Downloads/DCSS.1.1.beta.2004-03-30.rar

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

Оффлайн Мастеров АВ

  • Путлеровец
  • Хулиган
  • Местный мудрец
  • *****
  • Сообщений: 51974
  • Страна: ru
  • Рейтинг: +1323/-2384
  • Пол: Мужской
  • Смерть картавым фашистам!
    • Личный сайт Мастерова Александра
Re: Тема для зубастого web-мастера
« Ответ #3 : 27 Январь 2019, 17:59:09 »
Что такое Java ?
Ну действительно: есть же С++.
Java - зачем ?

Попробую объяснить
Есть компания Intel и есть Microsoft,
вместе они создали (сначала) DOS и (потом) Windows,
и обе они столкнулись с проблемой преемственности:
Чтобы новые процессора Intel были востребованы,
они должны поддерживать систему команд
предыдущих версий процессоров,
иначе старые операционки Microsoft
на них работать не смогут.

Т.е., Intel вынуждена на кристалле реализовывать
всю линейку процессоров Intel 8086,
вместо того, чтобы реализовать там
что-то полезное.

И это только одна проблема.
Есть ещё такая:
Вы (предположим) гениальный инженер,
и создали очень хороший процессор,
вот только он нахрен никому не нужен,
поскольку для него нет ОС и нет другого ПО.

Обе эти проблемы решает Java.

Как Java решает их ?

Если вы гениальный инженер и создали хороший процессор,
вам не нужно писать свою ОС и всё программное обеспечение.
Вам достаточно реализовать (на Си) виртуальную "машину Java"
(програмка такая)+рад нативных функций (тоже - на Си)
и всё, что  написано на Java будет работать на вашей железке.

И разработчики ПО не заморачиваются по поводу того,
какие там у вас регистры и прочее.

Поэтому Androd  (и всё, сто для Androd) работает (почти) везде.
Мы были нищими в СССР и останемся нищими в России,
нищими в самой богатой стране до тех пор, пока терпим
жидовскую оккупацию.
                                        Я сказал

Большой Форум

Re: Тема для зубастого web-мастера
« Ответ #3 : 27 Январь 2019, 17:59:09 »
Loading...