![]() |
|
Модераторы: Се ля ви |
![]()
|
|
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 6 Всего: 127 |
Очень часто в спорах о преимуществах языков и платформ программисты бъются, как рыба об лёд, пытаясь объяснить то, что называется простым словом - Виртуализация.
Виртуализация - это концептуальный подход, который лежит в основе информационного развития общества. О преимуществах и недостатках виртуализации по сути пишется много, но этим спорам не хватает терминологической базы, а вместе с тем и понимания сути феномена - из-за чего регулярно изобретаются всё новые и новые велосипеды. Виртуализация - это то, почему С++ лучше ASM`а и то, почему Java и языки .NET лучше С++ в тех областях, где они действительно лучше. Вот, небольшая статья на эту тему в IE Magazine, которая расставляет всё по местам, наводя порядок в понятийной базе - http://iemag.ru/?ID=492249 Это сообщение отредактировал(а) Се ля ви - 14.7.2005, 13:32 -------------------- |
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 1 Всего: 151 |
Прочитал. Статья интересная, хотя я понял не все.
Но как она соотносится с
Что ты имеешь в виду? -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 6 Всего: 127 |
Я имею в виду, что виртуализацией как раз-таки и описываются такие вещи. Т.е. виртуализация - это стыки между уровнями развития, она позволяет осуществить отделение формы от содержания. Концепция развития, основанного на виртуализации, в целом состоит в том, что переход на новый уровень осуществляется с потерей функциональности, но преимущества этого перехода на новый уровень перекрывают потерю функциональности. Система находит для себя некоторое состояние с некоторыми универсальными возможностями - и прыгает в новый уровень для более качественного их использования, меняясь уже качественно, а не количественно. Вот взять приимер - человек и животные. Животные эволюционировали-эволюционировали, менялись, приспоабливались - и вот, появился человек. По меркам животных, человек не был идеальным - зубы и когти у него были слабее, чем у тигра или льва, бегал он медленнее гипарда и лазал по деревьям медленнее, чем пантера или рысь. Но засчёт хватательной конечности он получил возможность использовать орудия труда - это-то и дало огромную свободу действий, что бы освоить которую, уже не нужно было эволюционировать телесно, достаточно было изменять поведение - эволюция тела на этом закончилась, форма (тело) отделилась от содержания (мышление) и развиваться стала лишь последняя, с помощью виртуализации используя универсальность тела. Так же и с многим другим. В программировании - был ассемблер, на котором можно было писать долго и сложно, сделали Си, бейсик, паскаль, программы на которых, безусловно, не были идеальными в дизасемблированном скомпилированном виде, но тем не менее, обладали преимуществами в плане достаточности более низкой квалификации программиста и большей скорости разработки. Встала остро проблема утечки памяти и путаницы с ссылками и множественным наслеедыванием в крупных проектах - с ней справились, изобретя Java и, в последствии, .NET - и т.д. Надо было манипулировать данными - сделали ещё более высокоуровневый язык четвёртого поколения - SQL, который, к сожалению, обрезал ну уж очень много возможностей, почему возник специализированный откат к языкам третьего уровня, такой как подходы PL/SQL и TransactSQL. И всё это - Виртуализация Я просто хотел придать некоторую форму своим мыслям на эту тему, что бы навести в голове какой-то порядок. Думаю, это будет полезно и другим Это сообщение отредактировал(а) Се ля ви - 14.7.2005, 15:47 -------------------- |
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 1 Всего: 151 |
Да. К тому же еще и интересно. Я понял тебя так. Ты хочешь сказать, что языки, подходы и методики движутся вперед для удовлетворения все новых и новых появляющихся требований, но за это мы платим отказом от старых требований (например, скорость работы, в случае с Си). Не полным, конечно, поэтому Си остается актуальным в своих областях. В целом получается полная копия эволюционного процесса - повышая приспособляемость, теряем универсализацию (в плане нашей базы - языка программирования). А здесь нам предлагается отвлечься от реализации, оставив ее фундаментом, и перейти на более абстрактное мышление (в данном случае предполагается мыслить в терминах бизнес-процессов). А потери в универсализации мы наверстываем за счет хорошо формализованных механизмов взаимодействия. -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 6 Всего: 127 |
Lamer George, хорошо обобщил.
Так вот, в продолжении темы, есть такая мысль, что когда виртуализация происходит, то это влечёт обвал рынка и скатывание специолистов в области тех технологий, которым отведена роль фундамента, до уровня обслуживающего персонала. И действительно, там, где развития особенно нет, там и специалисты не так ценятся. Сейчас это массово происходит с системмными администраторами - как только их работой стало просто обеспечение фундамента для разработчиков (т.е. разработчики от них виртуализировались), сразу популярность этой профессии стала идти на убыль, в перспективе скатываясь до уровня сантехников. Из этого следует неутешительный вывод - когда разработчиков виртуализируют, тогда и их престиж станет историей. Пока мне видется попытка виртуализироваться от программистского труда в развитии технологий моделирования - вот почему я такое внимание стараюсь уделять UML`у - как только эта технология станет значительно более зрелой и автогенерируемый по диаграммам код сможет действительно поспорить с набираемым в-ручную - это станет началом конца для простых программистов, и на первый план выйдут архитекторы, которые смогут обходиться без программистов. Вот такие мысли... -------------------- |
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 1 Всего: 151 |
Оффтоп:
Есть и другой путь сохранения своего социального статуса (а в перспективе - и его повышения) - уход из программирования в руководство. Правда, работу архитектора можно считать ступенькой на этом пути -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 6 Всего: 127 |
Вобщем-то да, управление программными проектами - один из трёх вариантов, частично совподающий с архитектурой. Ещё, как выход для технического специалиста, есть системный анализ с целью формализации предметной области - и я выбрал для себя на перспективу пока это направление Конкретный выбор между этими тремя вариантами для того, кто хочет идти нога в ногу со времянем, будет зависеть от его талантов и умения общаться с людьми Это сообщение отредактировал(а) Се ля ви - 14.7.2005, 16:38 -------------------- |
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 1 Всего: 151 |
А это требует знаний предметной области, поэтому надо выбирать ее заранее и получать второе образование (в общем случае). -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 6 Всего: 127 |
Ну, тут на самом деле тоже с трёх сторон можно смотреть. Реально, системными аналитиками становятся 3 катеории людей: 1) Бывшие разработчики 2) Бывшие эксперты предметной области 3) Бывшие клиенты. У каждой группы свои плюсы и минусы. У бывших разработчиков отличное понимание того, какую задачу можнорешить, а какую - нет, т.е. они идеальны для тех разработчиков, которым они задачи ставят, что по сути выражается в том, что они частично думают за них. У бывших экспертов предметной области напротив - лучшее понимание сути бизнес-процессов, они способны качественнее вычленить то, что необходимо автоматизировать и на уровне логической схемы это расписать. Т.е. они думают за тех, кому систему эксплуатировать и облегчают жизнь в первую очередь им. Наконец, у бывших клиентов отличное понимание заказчика, они способны лучше понять конкретное его запросы и его интересы, выделив приоритетные именно для него моменты и их не так сильно шарахает в сторону полной автоматизации всего, что происходит на предприятии, раздувания бюджета и прочего - они могут качественно отделить то, что остро нужно от того, что не так остро нужно. Т.е. они больше думают за заказчика. В идеале, канешь, должны быть представители всех трёх групп аналитиков, которые вместе ведут переговоры и совместно составляют проект, работая в сцепке. Ну или должен быть один гигант мысли, который будет брать на себя функции всех трёх. Последний, если он неплохо ориентируется в широком спектре предметных областей, будет просто богом, гуру автоматизации. Я к этому стремлюсь в отдалённой перспективе, пока же больший акцент всё-таки на первом варианте. -------------------- |
|||
|
||||
| COVD |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: нет Всего: 43 |
А мне кажется это все - "старая песня о главном". Только термин новый.
Почему "виртуализация"? Мне кажется, в русском языке слово "виртуальный" применяется в смысле "нематериальный, искусственный". Ну, а так, все правильно - это жизнь (c'est la vie). |
|||
|
||||
| Дрон |
|
|||
![]() Java-ненавистник :) ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3179 Регистрация: 29.12.2002 Где: Санкт-Петербург Репутация: нет Всего: 93 |
Се ля ви
Мне кажется, то о чём ты в начале говорил называется не "виртуализация" (я и слова-то такого никогда не слышал), а "абстрагирование". -------------------- Да. Именно так. |
|||
|
||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 6 Всего: 127 |
Дрон, скорее так, абстрагирование - это приём, а виртуализация - процесс.
-------------------- |
|||
|
||||
| unicuum |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 16.3.2005 Где: Рашка Репутация: нет Всего: 8 |
Смотрю в толковый словарь АБСТРАКЦИЯ (от лат . abstractio - отвлечение) ВИРТУАЛЬНОЕ (кажущееся) КОНЦЕПТ (от лат . conceptus - понятие) КОНЦЕПЦИЯ (от лат . conceptio - понимание) И ни каких там приёмов, процессов и прочего. Всё предельно ясно. На мой взгляд, виртуальное программирование заключается в том, чтобы создать среду, которая будет показывать одно вместо другого. А чтобы работа по созданию этой системы не прошла даром, то самое другое должно быть более понятным и простым во взаимодействии с программистом, чем изначальные данные. -------------------- ![]() обычный день на винграде |
|||
|
||||
| arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: нет Всего: 61 |
Се ля ви, хорошая статья - почему-то только сейчас прочитал. А ведь так оно и есть. И вот DSL языки появляются...
Добавлено @ 14:08 о боже! какой клевый ресурс! +1 |
|||
|
||||
![]()
|
| Правила раздела "Философия программирования": | |
|
|
Форум "Философия программирования" предназначен для обсуждения вопросов, так или иначе связанных с философскими аспектами разработки ПО: • вопросы перспективного развития методов написания ПО; • изменяющиеся языки и методологии программирования; Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Се ля ви. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Философия программирования | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |