Форум программистов, компьютерный форум, киберфорум
Теория программирования
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.80/30: Рейтинг темы: голосов - 30, средняя оценка - 4.80
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16

Почему все так сложно?

10.05.2018, 20:13. Показов 8468. Ответов 160
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Почему все так сложно в мире программирования, казалось бы простом?

Например, чтобы написать приложение на vue
нужно выдумывать подключение к api
которое нужно писать на django (например) и у которого десятки файлов с "кодом" с моделями, вьюхами, урлами, подключением к postgresql

дальше нужно настраивать синхронизацию, потом писать разрешения и в vue и в django...



Или на php - пишем код, потом берем фронтенд, более менее приличный, получается только на angular, vue, react

пишем отдельно код на php
потом пишем структуру базы данных , схему, саму базу формируем и создаем
потом описываем подключение

хорошо, если программист знает, что нужно сразу писать api к которому подключаться любым фронтом, а если нет... тогда или tpl-ки клепать, или придумывать php+html в котром тоже, гемор еще тот ...

почему до 2010 года был линукс, мягко говоря, "консольный"...
и пока до них дошло, что система должна быть визуальной - как windows - зато теперь красота! ubuntu 18 - почти идеальна!



Также и с программированием!
Зачем все эти сложности?

Теоретически, ведь можно взять принцип моделей от django, которые простым python3 manage.py makemigrations + migrate делает всю работу по моделированию базы данных...

но! Встает вопрос - а как потом работать? Нужно что-то похожее на vue, но только в ЖЕСТКОЙ связке с api с моделями!



Обсудим? Какие есть решения?

Добавлено через 27 минут
по сути, это должно быть простым CRUD приложением
но с возможностью подключения к базе данных
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.05.2018, 20:13
Ответы с готовыми решениями:

Zend Framework - почему всё так сложно?
Здравствуйте. Я сегодня пытался установить Zend Framework, который очень хитро устанавливался через Composer и с требованием PHP...

Почему так сложно?
Не понимаю, зачем засовывать все в одну строку, чтобы сделать непонятно? Например, вот эта строка window =...

Делегаты "почему так сложно а ?:("
Я правильно понял , это все ради матушки инкапсуляции ? почему бы просто не вывести смс в методе снятия денег ? :( сложно как то...

160
Модератор
Эксперт функциональных языков программирования
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
14.05.2018, 13:58
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от IRIP Посмотреть сообщение
На сколько реально создать универсальное приложение для linux/windows/mac на python (backend/frontend)
Зависит от того, что собираетесь использовать для создания ГУИ:
GUI Programming in Python
1
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
14.05.2018, 16:05  [ТС]
Цитата Сообщение от Shamil1 Посмотреть сообщение
использовать для создания ГУИ
здесь область тоже довольно широкая
теоретически, нужно иметь

серверную и клиентскую часть - так называемый бакенд и фронтенд

сейчас предлагается бакенд делать например на django
а фронт на vue/angular/react

взаимодействуют они через api

преимущество такой схемы в том, что к api сервера можно подключать разные фронты, включая приложения android, ios и т.п.
0
31 / 40 / 6
Регистрация: 04.10.2014
Сообщений: 185
14.05.2018, 16:17
IRIP конечно во всем нужно разбираться, что в С++ / математике / целевом предмете, что и в Вашем конкретном случае - горы языков, скриптовых языков, фреймворков.
Чего веб то так привлекает ? Когда то вот тоже начинал с него, потом показалось Очень скучно и перешел в C++ и геймДев.
0
Модератор
Эксперт функциональных языков программирования
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
14.05.2018, 16:36
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
ранжед-фор отличаетя большей читабельностью чем мап с лямбдой хотя в принципе тот же мап или редус
Я бы не сказал, что
C#
1
2
3
4
    var b = new List<int>();
    foreach(var x in b)
        if(x < 5)
            b.Add(x);
более читабельно, чем
Haskell
1
b = filter (<5) a
Разница особенно заметна, когда результат передаётся в другую функцию.
C#
1
2
3
4
5
    var b = new List<int>();
    foreach(var x in b)
        if(x < 5)
            b.Add(x);
    var c = f(b);
Получается не только лишний код, но и создание никому ненужной локальной переменной.
Гораздо проще и понятней вариант:
Haskell
1
c = f $ filter (<5) a
И совсем плохо выглядит код с foreach, когда алгоритм требует использования нескольких вложенных foreach.

Кроме того, использование правильных абстракций позволяет писать код, максимально приближенный к словесному описанию задачи. Это делает код очень читабельным. Элементы списка, которые меньше 5, увеличить на 2 и перемножить:
Haskell
1
2
3
4
b = a 
    |> filter (<5)
    |> map (+2)
    |> foldl1 (*)
(Данный простейший вариант более-менее сносно ложиться в foreach. В реальных задачах зачастую нельзя. Особенно это неприятно, когда пишешь на python с его громоздким синтаксисом для лямбд.)
1
Модератор
Эксперт функциональных языков программирования
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
14.05.2018, 16:36
Цитата Сообщение от IRIP Посмотреть сообщение
серверную и клиентскую часть - так называемый бакенд и фронтенд
Надо отдельно иметь библиотеку, реализующую бизнес-логику. А к ней уже любой интерфейс можно сделать.

При этом серверный код вебсайта может быть частью интерфейса (если он возвращает хтмл) или просто обёрткой (транспортом) для вызова методов бизнес-логики (если он возвращает объекты в каком-нибудь формате, типа json). А можно в качестве обёртки использовать WCF, чтобы потенциальный клиент (ГУИ) мог выбирать, по какому протоколу вызывать методы бизнес-логики.
0
 Аватар для Fulcrum_013
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
14.05.2018, 22:40
Цитата Сообщение от Shamil1 Посмотреть сообщение
Кроме того, использование правильных абстракций позволяет писать код, максимально приближенный к словесному описанию задачи.
Мне б такие описания задачи. Но такие задачи еще в средней школе закончились. Основная задача работы с коллекциями - поддержание списка при изменении у элементов признака вхождения в них. Ну и обход списков. При этом элемент может из списка выбыть в процессе обхода. А в общем случае не только выбыть но и выбыть соседей. Так что map здесь не к селу не к городу. Рулят интрузивные списки объектов которые сами принимают решения о нахождении в списках.

Добавлено через 3 минуты
Цитата Сообщение от Shamil1 Посмотреть сообщение
Я точно не знаю, но из этих $200k, наверное, треть или больше придётся заплатить в качестве налога.
В штатах налоги 25%. При этом налоги заплатить придется и веб деверам с их 40 штук. У нас в качестве налога тоже процентов 40 заплатится.

Добавлено через 8 минут
Цитата Сообщение от IRIP Посмотреть сообщение
учшей была в свое время у приватбанка, Почти вся написана на java - чего там только не было. Но я с позиции пользователя рассуждаю.
У привата масштабно для частного пользователя спору нет. Только в плане продуманности функционала там ляп на ляпе. Не очень удобно. А местами очень неудобно. Типа отсутствия фильтра платежей по получателю.
НО есть еще и системы для корпаративного клиента, на которого в основном ориентирован ПУМБ. Тот же клиент-банк у них тоже есть - и у привата и у ПУМБ. И вот эта штука для корпортаивного клиента WEB быть не может. там терминалы должны быть и в идеале выделенные линии связи с банком. И импорт данных из бугалтерских систем и т.д. НУ мультиподписи цифровые с хранением ключей на извлекаемых устройствах и т.д.

Добавлено через 39 минут
Цитата Сообщение от IRIP Посмотреть сообщение
вот это как раз то, к чему я и вел изначально. На сегодняшний день
python3 куда более востребован чем другие
Вот вы до сих пор никак не поймете - платят не за знание языков а за знание предметной области. То что у этих питонеров знания вычислительной геометрии требуются ни о чем не говорит? А в связке с тем что многие CAD имеют возможность использовать питон в качестве скриптового языка? А вот это уже говорит о том что востребованы они в сфере кастомизации CAD под потребности конкретной конторы. Разработка же самих движков CAD ведется преимущественно на С++. Но в любом случае на нативных языках. (Недавно видел вакансии для дельфистов в этом направлении). И на разработку движков требования к знанию предметной области и как следствие з/п гораздо выше.
А что касается джавы - то количество вакансий само по себе ничего не говорит. Говорит отношение количества соискателей к количеству вакансий. По джабе количество соискателей - это фактически все выпускники школ. По сфере CAD - процентов 10 от выпускников универов.
Опять же на разработку движков на сайтах набирать никто не будет. Хотя бы потому что время детального вхождения в предметную область - порядка двух лет при условии хрошего знания универского курса математики.
1
Модератор
Эксперт функциональных языков программирования
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
14.05.2018, 23:11
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Мне б такие описания задачи. Но такие задачи еще в средней школе закончились.
Пример намеренно упрощён. Не вижу смысла предлагать на форуме объёмные (несколько тысяч строк кода) или сложные (требующие узкоспециализированных знаний) примеры. Но специально для Вас могу показать, как добавлять на форму лейбл по клику на кнопку:
Haskell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
-- A set of counting labels:
countLabels :: GUI (Maybe ()) ()
countLabels =
    let addLabel :: GUI () () -> Int -> GUI () ()
        addLabel labels n = labels 'besideGUI_' (mkLabel n)
    in proc (inpS,es) -> do
        lblNumE <- countE -< es
        (picS,_) <- accumST addLabel (mkLabel 0) -< ((inpS,()),lblNumE)
        returnA -< (picS, ())
        
dynLabels :: GUI () ()
dynLabels = proc (inpS,_) -> do
    rec (picS,(pressES,_)) <- (fbutton ‘besideGUI‘ countLabels) -< (inpS,(btext "press me!", pressES))
    returnA -< (picS,())

Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Основная задача работы с коллекциями - поддержание списка при изменении у элементов признака вхождения в них.
Особенно при работе с неизменяемыми коллекциями .

Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Рулят интрузивные списки объектов которые сами принимают решения о нахождении в списках.
Если Вы не знаете более хорошего способа решения некоторых задач, то это не значит, что его нет.
Ну и то, что хорошо для решения одной задачи, не обязательно хорошо для решения всех задач.
2
 Аватар для Fulcrum_013
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
14.05.2018, 23:39
Цитата Сообщение от Shamil1 Посмотреть сообщение
. Но специально для Вас могу показать, как добавлять на форму лейбл по клику на кнопку:
у меня и в VCL это делается вот так:
C++
1
2
3
4
5
Form::Click(){
    TLabel* Label=new TLabel(this);
    Label->Parent=this; // можно и на другой компонент добавить
    Label->Caption ="Caption"; // ну и прочие настройки. Да кстати настройки можно реализовать подгружаемыми из дата-пака.
}
Добавлено через 3 минуты
Цитата Сообщение от Shamil1 Посмотреть сообщение
Особенно при работе с неизменяемыми коллекциями
А неизменяемые это как? К примеру моделька космодрома Байконур с детализацией до винтика - это тоже коллекция. Если захотите где то винтик поменять будете всю коллекцию копировать?
Ну это статика. А если возьмем ту же модель в динамике?

Добавлено через 1 минуту
Цитата Сообщение от Shamil1 Посмотреть сообщение
Если Вы не знаете более хорошего способа решения некоторых задач, то это не значит, что его нет.
А почему вы считаете что в данном случае может существовать способ который лучше?
1
Модератор
Эксперт функциональных языков программирования
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
14.05.2018, 23:39
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
всю коллекцию копировать?
Да. За О(1).
0
 Аватар для Fulcrum_013
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
14.05.2018, 23:55
Цитата Сообщение от Shamil1 Посмотреть сообщение
Да. За О(1).
Не получится. Вы таким способом приходите к чему то типа ленты редактирования. Лента и модель - это разные штуки. При этом команду добавления заменяемого винтика придется из ленты удалитью

Добавлено через 13 минут
Shamil1, Если же при этом учесть что при замене винтика возможен пересчет привязок и к примеру отверстий под крепеж добавляемых в сборке, которые модифицируют не только расположение, но и геометрию других компонентов, то ваши O(1) при "копировании" приведут к многократному перестроению всей сборки при каждом обходе. При этом обход производится гораздо чаще изменения компонентов.
0
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
15.05.2018, 00:24  [ТС]
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
там терминалы должны быть и в идеале выделенные линии связи с банком
асинхронные web-сокеты, пишут, очень даже безопасны.
вроде как приват их начал применять еще в 12 году.

к чему я это, к тому, что сейчас как раз изучаю вопрос на каком языке / системе лучше реализовывать аpi
0
 Аватар для Fulcrum_013
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
15.05.2018, 02:36
Shamil1, т.е фактически - лента которую вы предлагаете строить это не модель, это исходные данные для построения модели. В САПР она именно так и используется. Только лента опять же редактируемая. А то еще операций перестроения самой ленты для полного счастья не хватало. В общем - там где элементы коллекции взаимосвязаны (т.е. изменение одного влечет за собой изменение других) все эти ФП-мансы не применимы. При этом источником получения информации о модели для следующей команды может быть только сама построенная модель, а не лента ее построения. Это что касается самой геометрии деталей моделей. То же что касается их взаимного расположения в сборке - там вообще ховайся. Начнем с того что элементы подсборки могут быть подвижны относително друг друга и изменять свое взаимное положение при привязках к элементам вышестоящей сборки. Опять же это только статика.

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

Добавлено через 45 минут
Цитата Сообщение от IRIP Посмотреть сообщение
асинхронные web-сокеты, пишут, очень даже безопасны.
вроде как приват их начал применять еще в 12 году.
IRIP, Сам же веб-сокет - это фактически урезанная эмуляция обычного сокета поверх HTTP/HTTPS предназначенная для дуплексной связи браузерного скрипта с сервером. т.е. чесание уха способом обматывания руки вокруг головы. Вообще задумка довольно неплохая, поскольку позволяет при установке соединения не задумываться о прокси которые могут быть на пути следования. Но реализация отстой по сравнению с обычными сокетами. Особенно порезанная в большинстве браузеров функция передачи двоичных данных.

Добавлено через 1 час 9 минут
Цитата Сообщение от IRIP Посмотреть сообщение
в мире программирования, казалось бы простом?
Простота в этом мире только кажется. На самом деле программирование - наиболее математически нагруженная область инжиниринга.
1
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
15.05.2018, 09:29  [ТС]
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
фактически должен работать в режиме клиент-серверного приложения внутри сети предприятия
Да! Технологии сервер-клиент

Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Использование web- технологий здесь мало того что не удобно, а в общем то категорически противопоказано
Так, давайте разбираться. Что вы вкладываете в понятие web-технологии?
Для меня это "использование интернета для осуществления взаимодействия", осуществляемого по любым протоколам, на любых портах
ЛЮБЫМИ устройствами
0
Модератор
Эксперт функциональных языков программирования
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
15.05.2018, 09:49
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Не получится. Вы таким способом приходите к чему то типа ленты редактирования. Лента и модель - это разные штуки. При этом команду добавления заменяемого винтика придется из ленты удалитью
Чтобы скопировать неизменяемую структуру данных, содержащую неизменяемые данные, достаточно скопировать ссылку на неё. Поэтому получится.
Не понял, что Вы называете "лентой редактирования".

Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
А почему вы считаете что в данном случае может существовать способ который лучше?
Потому что Вы не рассмотрели все варианты.

Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Если же при этом учесть что при замене винтика возможен пересчет привязок и к примеру отверстий под крепеж добавляемых в сборке, которые модифицируют не только расположение, но и геометрию других компонентов, то ваши O(1) при "копировании" приведут к многократному перестроению всей сборки при каждом обходе.
Другие принципы построения структур данных требуют других принципов их обработки. Недостаточно просто заменить гвоздь на сверло.

Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
При этом обход производится гораздо чаще изменения компонентов.
Я не понял, что Вы подразумеваете под обходом, но предположу, что для случаев, когда данные не меняются, неизменяемые структуры данных подходят очень хорошо.
0
Эксперт .NET
 Аватар для Usaga
14368 / 9469 / 1360
Регистрация: 21.01.2016
Сообщений: 35,728
15.05.2018, 11:54
Fulcrum_013, вы хоть с кем-нибудь хоть в чём-нибудь бывали согласны?
0
 Аватар для Fulcrum_013
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
15.05.2018, 21:50
Usaga, Бывал. Но как бы эти люди с которыми бывал согласен давно руководят группами разработки очень крупных проектов. Масштаб их проектов - от ИС крупных промышленных предприятий и крупнее. Хотя чаще обычно со мной соглашаются. Даже когда это требует полного рефакторинга архитекуры.
Цитата Сообщение от Shamil1 Посмотреть сообщение
Не понял, что Вы называете "лентой редактирования".
Список команд построения модели. Каждая команда вносит свои изменения в модель построенную предыдущими командами. Именно эта штука может быть близка к тем спискам о которых вы говорите. НО при этом лента тоже редактируема.

Добавлено через 8 секунд
Usaga, Бывал. Но как бы эти люди с которыми бывал согласен давно руководят группами разработки очень крупных проектов. Масштаб их проектов - от ИС крупных промышленных предприятий и крупнее. Хотя чаще обычно со мной соглашаются. Даже когда это требует полного рефакторинга архитекуры.
Цитата Сообщение от Shamil1 Посмотреть сообщение
Не понял, что Вы называете "лентой редактирования".
Список команд построения модели. Каждая команда вносит свои изменения в модель построенную предыдущими командами. Именно эта штука может быть близка к тем спискам о которых вы говорите. НО при этом лента тоже редактируема.

Добавлено через 2 минуты
Цитата Сообщение от Shamil1 Посмотреть сообщение
Я не понял, что Вы подразумеваете под обходом, но предположу, что для случаев, когда данные не меняются, неизменяемые структуры данных подходят очень хорошо.
В том то и дело что неизменяемыми сами данные модели быть не могут в принципе. Неизменяемыми может быть только набор команд их построения. Да и то условно неизменяемым.

Добавлено через 1 минуту
Цитата Сообщение от Shamil1 Посмотреть сообщение
Потому что Вы не рассмотрели все варианты.
Да то вы куда то не туда полезли. Неизменяемые данные остались во времена ОЗУ на перфоленте.

Добавлено через 10 минут
Цитата Сообщение от IRIP Посмотреть сообщение
Что вы вкладываете в понятие web-технологии?
все то что работает через СGI-скрипты web-сервера и/или браузер.

Добавлено через 3 минуты
Цитата Сообщение от Shamil1 Посмотреть сообщение
Потому что Вы не рассмотрели все варианты.
Вариант неизменяемых данных хорош для хранения банковских транзакций. Да и то до поры до времени - пока не нужно архивировать транзакции предыдущих периодов срок хранения которых истек.
1
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
15.05.2018, 22:07  [ТС]
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
все то что работает через СGI-скрипты web-сервера и/или браузер
ну а как же операционные системы андроида ios со своими собственными приложениями?
они уже работают
вне cgi
вне web

но, есть основания утверждать, что браузер, в будущем, претерпит значительные изменения. - единая среда - сайты, документы, видео, фото, что угодно - все через "браузер"

понятно, что уже другой, но все же - браузер -
0
 Аватар для Fulcrum_013
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
15.05.2018, 22:39
IRIP, браузер как таковой в будущем полностью исчезнет. Останется система удаленного доступа к данным на основе десктопных фреймверков.

Добавлено через 2 минуты
Цитата Сообщение от IRIP Посмотреть сообщение
ну а как же операционные системы андроида ios со своими собственными приложениями?
А с каких пор они стали веб-технологиями?

Добавлено через 8 минут
Shamil1, т.е. допустим гипотетически что вы можете добавить за O(1) уравнение в систему уравнений. Но систему при этом придется пересчитать и вектор решения системы при этом изменится чуть более чем полностью. В реальности же и уравнение добавить за O(1) нереально, потому что для обеспечения совместности системы нужно в каждое из уже добавленных уравнений добавить еще по одному члену.

Добавлено через 9 минут
Shamil1, Теперь идем дальше. Следующая система уравнений строится в том числе и на векторе решения предыдущей. Теперь представьте вам понадобилось заменить один элемент вектора свободных членов первой системы (упрощенный аналог замены одного болтика на другой). Это изменит и весь вектор ее решения и как результат построенные с использованием этого вектора системы и их вектора решения и т.д.
Где тут возможность скопировать что то за O(1)?
1
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
15.05.2018, 22:47  [ТС]
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
система удаленного доступа
системы распределенных информационных систем (сетей)
например: https://studfiles.net/preview/6211043/

неплохо описана в фильме кремниевая долина в 4 и 5 сезонах =)

тотальная децентрализация

IPSF (InterPlanetary File System), распределенная файловая система, положит этому конец и сделает Интернет по-настоящему устойчивым к техническим неполадкам =)

вот только с теорией реализации у них не очень ...
0
Модератор
Эксперт функциональных языков программирования
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
15.05.2018, 23:02
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
В том то и дело что неизменяемыми сами данные модели быть не могут в принципе.
Странно слышать это от человека, который в каждой программе использует неизменяемые данные. Объясняю: неизменяемые данные - это те, которые нельзя изменить. Например, целые числа. (Но если содержащий их контейнер мутабельный, то их можно заменить на другие).

Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Неизменяемые данные остались во времена ОЗУ на перфоленте.
Странно слышать это от человека, который в каждой программе использует неизменяемые данные.
Не увиливайте. Просто признайте, что Вы рассмотрели не все варианты. Предположу, что некоторые из вариантов Вы в принципе не можете рассмотреть, потому что не знаете об их существовании.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.05.2018, 23:02

Если с CMS все так просто, то почему сайты все еще делают в блокнотах?
Я вот примерно месяц уже занимаюсь изучением html, css и php, и узнал что еще можно создавать сайты с помощью wordpress и joomla, так вот,...

Почему так всё и все изменились за последние 15 лет?
Вроде бы и технический прогресс и практически неограниченная информация в сети для образования и совершенствования, но почему взрослые и...

Почему все так громоздко?
Почему все в PascalABC.Net так громоздко. Я не говорю уже про begin end, я про имена функций Net и исключений.

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

Почему все так не любят Delphi
Всем привет. Объясните мне пожалуйста почему все так не любят Delphi? Я сам новичок в программировании и как любой другой новичок я...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
100
Ответ Создать тему
Новые блоги и статьи
Запрет пометки на удаление и отмены проведения
Maks 16.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "ПутевойЛист" разработанного в КА2. Задача: запретить помечать на удаление и отменять проведения путевого листа при условии, если он сдан. . .
Как надо было делать правильно - вообще не слушать ИИ, его дело - текст.
Hrethgir 15.07.2026
А вообще надо было делать не так, чтобы не исправлять ошибку https:/ / www. cyberforum. ru/ blogs/ 223907/ 10996. html , правильно было : удалил кнопку, а потом добавил её. Всё это стресс конечно. Почему?. . .
Знаете, от чего появляется стресс?
kumehtar 15.07.2026
Стресс появляется оттого, что вы, зная как поступить правильно, делаете наоборот. Ларри Уингет
Нас бьют, а мы крепчаем? Какая чушь!
kumehtar 15.07.2026
Вот это вот бытующее мнение, что человек меняется только под действием проблем, всегда считал вредоносным. Поверь, от проблем у людей появляются не изменения, а нервное расстройство и ПТСР. А. . .
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров В текущей версии модели успешно реализован ключевой механизм. . .
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям Реализованные компоненты: Механизм закисления почвы через протонную помпу Конкуренция между типами микориз pH как триггер сукцессии C/ P соотношение. . .
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
Решил проблему с ошибкой пагинации сообщений с сервера на алгоритме обхода дерева "Эстафета хвоста".
Hrethgir 12.07.2026
Проблема была в том, что удалялась именно новая кнопка, а не старая. Ни один ИИ не обнаружил это, а сам я смог только когда с работой стало попроще и когда заставил работать будущее автономное. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru