Программирование стало более высокоуровневым?
От: sch  
Дата: 02.09.05 10:12
Оценка: 42 (7) +5 -9 :)
Доброго всем дня.

Просматривая программистские форумы и группы новостей, начиная от rsdn.ru
до comp.lang.c++.moderated не могу избавиться от ощущения, что большинство
программистов не знают базовых вещей касающихся алгоритмизации. Я предлагаю
даже сделать следующий опыт. Зайти на форум по C++ и спросить: как парсить
CSV-файлы. Вам тут же начнут предлагать варианты типа Boost.Tokenizer, еще
какие-то библиотеки, предложут воспользоваться генераторами парсеров и
прочим
и прочим. А между тем задача простейшая, на уровне первого курса ВУЗа.
Общее
впечетление -- мастерство программистов снизилось, причем вероятно этот
процесс глобален.

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

Ну в общем-то наверно все.
Прошу считать вышеизложенное скорее "криком души", а не приглащением на
дискуссию, но мнение форумчан несомненно будет очень инитересно.
Posted via RSDN NNTP Server 1.9
Re: Программирование стало более высокоуровневым?
От: WFrag США  
Дата: 02.09.05 10:18
Оценка: +1 :)
Здравствуйте, sch, Вы писали:

sch>Просматривая программистские форумы и группы новостей, начиная от rsdn.ru

sch>до comp.lang.c++.moderated не могу избавиться от ощущения, что большинство
sch>программистов не знают базовых вещей касающихся алгоритмизации. Я предлагаю
sch>даже сделать следующий опыт. Зайти на форум по C++ и спросить: как парсить
sch>CSV-файлы. Вам тут же начнут предлагать варианты типа Boost.Tokenizer, еще
sch>какие-то библиотеки, предложут воспользоваться генераторами парсеров и
sch>прочим
sch>и прочим. А между тем задача простейшая, на уровне первого курса ВУЗа.
sch>Общее
sch>впечетление -- мастерство программистов снизилось, причем вероятно этот
sch>процесс глобален.

И чем тебе решение с Boost.Tokenizer не нравится?

sch>С одной стороны все понятно. Программирование должно стать и несомненно

sch>становится более выскоуровневым. С одной стороны сие хорошо -- быстрее
sch>проходит разработка программного обеспечения, с другой стороны -- мы
sch>получаем
sch>громоздкие и несовершенные системы, примеры которых приводить я не буду
sch>дабы
sch>не начинать священные войны.

Значит ли, что более высокоуровневое программирование обязательно влечет за собой громоздкость и несовершенство? Очень спорно.
Re: Программирование стало более высокоуровневым?
От: Pyromancer  
Дата: 02.09.05 10:27
Оценка: -4 :)
sch>С одной стороны все понятно. Программирование должно стать и несомненно
sch>становится более выскоуровневым. С одной стороны сие хорошо -- быстрее
sch>проходит разработка программного обеспечения, с другой стороны -- мы
sch>получаем
sch>громоздкие и несовершенные системы, примеры которых приводить я не буду
sch>дабы
sch>не начинать священные войны.


ага, высокоуровневость такая что дышать уже нечем почти, уровней абстракции слишком много и всё для удобства кухарок,желающих писать программы.Развели ламерство, алгоритмы знать не хотят,технологии тоже, даже английский знать не хотят и вместо того чтобы хелп читать задают дурацкие вопросы.
Re: Программирование стало более высокоуровневым?
От: beroal Украина  
Дата: 02.09.05 10:31
Оценка: 36 (5) +2
Здравствуйте, sch, Вы писали:
sch>Общее
sch>впечетление -- мастерство программистов снизилось, причем вероятно этот
sch>процесс глобален.
К уровню программистов это не имеет отношения. Просто алгоритмы перестали быть главной темой в программировании. Сейчас главная тема — заказ/внедрение. А математические вопросы — они есть, но они отошли на задний план.
Re: Программирование стало более высокоуровневым?
От: fplab Россия http://fplab.h10.ru http://fplab.blogspot.com/
Дата: 02.09.05 10:57
Оценка:
Здравствуйте, sch, Вы писали:

sch>Доброго всем дня.


sch>Просматривая программистские форумы и группы новостей, начиная от rsdn.ru

sch>до comp.lang.c++.moderated не могу избавиться от ощущения, что большинство
sch>программистов не знают базовых вещей касающихся алгоритмизации.
sch>Общее
sch>впечетление -- мастерство программистов снизилось, причем вероятно этот
sch>процесс глобален.
А я согласен с автором топика. Серость прет как моча по канализации. Выпускники физико-математических вузов (не все, конечно, но, увы — много-о-о-о-о ...) очень часто откровенные слабаки. На Дельфях формочку слепить, навесить пару кнопок — это они могут. А чуть в сторону — амбец
Приходиться заниматься гадостью — зарабатывать на жизнь честным трудом (Б.Шоу)
Re: Программирование стало более высокоуровневым?
От: Cyberax Марс  
Дата: 02.09.05 11:06
Оценка: 4 (2) +6
sch wrote:

> Вам тут же начнут предлагать варианты типа Boost.Tokenizer, еще

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

Естественно, зачем придумывать колесо? Если вам надо закрутить шуруп, то
вы берете готовую отвертку, а не выковываете ее в кузнице.

> А между тем задача простейшая, на уровне первого курса ВУЗа.


А написание своей операционной системы — на уровне пятого курса ВУЗа. И
что дальше?

--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 1.9
Sapienti sat!
Re: Программирование стало более высокоуровневым?
От: Gleb Alexeev  
Дата: 02.09.05 11:19
Оценка: 2 (2) +3
Здравствуйте, sch, Вы писали:

А если знаешь алгоритмы и структуры данных, абстракции не нужны? И вместо

std::list<int> ints;
ints.push_back(2);
ints.push_back(3);


Я должен каждый раз писать

struct int_node {
  int val;
  int_node* next;
};
...
node* first = new node;
first->val = 2;
first->next = new node;
first->next->val = 3;
first->next->next = NULL;

?
Не стоти путать теплое с мягким. Знание алгоритмов нужно для реализации библиотек, понимание механизмов абстракции — для проектирования библиотек (о том, нужно ли знать алгоритмы вообще, уже на форуме война недавно была). Дешевле использовать готовое до тех пор, пока не будет доказана неадекватность готового решения.
Советую почитать: http://www.artima.com/intv/abstreffi.html
Re[2]: Программирование стало более высокоуровневым?
От: zloiy www.nmzlabs.com
Дата: 02.09.05 11:27
Оценка:
Здравствуйте, fplab, Вы писали:

F>Здравствуйте, sch, Вы писали:


sch>>Доброго всем дня.


sch>>Просматривая программистские форумы и группы новостей, начиная от rsdn.ru

sch>>до comp.lang.c++.moderated не могу избавиться от ощущения, что большинство
sch>>программистов не знают базовых вещей касающихся алгоритмизации.
sch>>Общее
sch>>впечетление -- мастерство программистов снизилось, причем вероятно этот
sch>>процесс глобален.
F>А я согласен с автором топика. Серость прет как моча по канализации. Выпускники физико-математических вузов (не все, конечно, но, увы — много-о-о-о-о ...) очень часто откровенные слабаки. На Дельфях формочку слепить, навесить пару кнопок — это они могут. А чуть в сторону — амбец

Не, ну причём тут Дельфи, а? Не в инструменте дело, а в умении
Re[2]: Программирование стало более высокоуровневым?
От: Gaperton http://gaperton.livejournal.com
Дата: 02.09.05 11:29
Оценка: 1 (1) +7
Здравствуйте, Gleb Alexeev, Вы писали:

GA>Не стоти путать теплое с мягким. Знание алгоритмов нужно для реализации библиотек, понимание механизмов абстракции — для проектирования библиотек (о том, нужно ли знать алгоритмы вообще, уже на форуме война недавно была). Дешевле использовать готовое до тех пор, пока не будет доказана неадекватность готового решения.

+1, хочу только добавить, что понимание внутреннего устройства алгоритмов и абстрактных структур данных в также необходимо и для грамотного применения упомянутых библиотек. По-любому, короче, необходимо.
Re: Программирование стало более высокоуровневым?
От: ArhAngelVezel Россия  
Дата: 02.09.05 11:32
Оценка: 3 (2) +5
А зачем

За 9 лет обучения волшебству писать программы (от ASM до Prolog) я создавал не один велосипед и сейчас скажу такими словами: если нужно отсортировать небольшой массив я воспользуюсь любой готовой функцией Sort, а не буду писать метод пузырька или чего другого в 10^n раз если нужно распарсить csv я воспользуюсь ADO (ADO.Net). Я не хочу заморачиваться велосипедами — надоело! Я не буду писать свой код, отлаживать и оптимизировать его, когда есть кирпичики, на которых я могу создать систему, продать ее и принести кусок хлеба в свой дом. За то время что вы на пишите свой парсер, я уже наслаждаюсь готовым продуктом.
Лично для меня нет более интересной работы, чем "Спроектировать гибкую систему, которую можно реализовать точно к сроку" при этом я не пытаюсь впихнуть заказчику новый более совершенный алгоритм архивирования данных, я даю ему то что ему действительно нужно.
И за то время что вы пишите свои велосипеды я успею склепать 5-6 подобных систем, проанализировать их и написать что-нибудь новое, что еще не писал и что станет одним из кирпичиков будущих систем
Re[2]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 02.09.05 11:39
Оценка:
Здравствуйте, Pyromancer, Вы писали:

P>ага, высокоуровневость такая что дышать уже нечем почти, уровней абстракции слишком много и всё для удобства кухарок,желающих писать программы.Развели ламерство, алгоритмы знать не хотят,технологии тоже, даже английский знать не хотят и вместо того чтобы хелп читать задают дурацкие вопросы.


Ты на assemblere без чужого кода писал программы? Попробуй, а потом говори.
Между прочим help ещё достать надо, а алгоритмы на каждом шагу не валяются.
Re[3]: Программирование стало более высокоуровневым?
От: fplab Россия http://fplab.h10.ru http://fplab.blogspot.com/
Дата: 02.09.05 11:42
Оценка: +1
Здравствуйте, zloiy, Вы писали:

Z>Здравствуйте, fplab, Вы писали:


F>>Здравствуйте, sch, Вы писали:


sch>>>Доброго всем дня.


sch>>>Просматривая программистские форумы и группы новостей, начиная от rsdn.ru

sch>>>до comp.lang.c++.moderated не могу избавиться от ощущения, что большинство
sch>>>программистов не знают базовых вещей касающихся алгоритмизации.
sch>>>Общее
sch>>>впечетление -- мастерство программистов снизилось, причем вероятно этот
sch>>>процесс глобален.
F>>А я согласен с автором топика. Серость прет как моча по канализации. Выпускники физико-математических вузов (не все, конечно, но, увы — много-о-о-о-о ...) очень часто откровенные слабаки. На Дельфях формочку слепить, навесить пару кнопок — это они могут. А чуть в сторону — амбец

Z>Не, ну причём тут Дельфи, а? Не в инструменте дело, а в умении

Признаюсь, я коряво сформулировал свою мысль. Просто хотел сказать, что мало учат думать: показывают как пользоваться распространенными средами программирования и зачастую на этом и все. Откель же умению взяться ? Как говорится, можно и зайца научить на барабане играть, но вот музыканта из него не получится.
Приходиться заниматься гадостью — зарабатывать на жизнь честным трудом (Б.Шоу)
Re[3]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 02.09.05 11:42
Оценка:
Здравствуйте, zloiy, Вы писали:


Z>Не, ну причём тут Дельфи, а? Не в инструменте дело, а в умении


Традиция, традиция. Других инструментов не знают... серость!
Re: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 02.09.05 11:50
Оценка: +1
Здравствуйте, sch, Вы писали:

sch>С одной стороны все понятно. Программирование должно стать и несомненно

sch>становится более выскоуровневым. С одной стороны сие хорошо -- быстрее
sch>проходит разработка программного обеспечения, с другой стороны -- мы
sch>получаем
sch>громоздкие и несовершенные системы

Громоздкие системы мы получаем, потому что средства разработки и компиляторы такие. Если писать систему на asm ещё не известно напишешь ли и не наступит ли 23 век, пока ты это сделаешь.

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

Просто нецелесообразно писать программу годами. А по поводу безграмотности — это всегда — чем больше специалистов и больше на них спрос, тем ниже качество подготовки, тем более притягательна профессия для людей, которые не хотят работать, а хотят зарабатывать.
Re[3]: Программирование стало более высокоуровневым?
От: Pyromancer  
Дата: 02.09.05 11:53
Оценка:
Здравствуйте, FDSC, Вы писали:

FDS>Здравствуйте, Pyromancer, Вы писали:


P>>ага, высокоуровневость такая что дышать уже нечем почти, уровней абстракции слишком много и всё для удобства кухарок,желающих писать программы.Развели ламерство, алгоритмы знать не хотят,технологии тоже, даже английский знать не хотят и вместо того чтобы хелп читать задают дурацкие вопросы.


FDS>Ты на assemblere без чужого кода писал программы? Попробуй, а потом говори.

FDS>Между прочим help ещё достать надо, а алгоритмы на каждом шагу не валяются.

писал, а вы?
ничего такого кошмарного в асме нет, долговато конечно,но не страшно.
Re[4]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 02.09.05 12:00
Оценка:
Здравствуйте, Pyromancer, Вы писали:

P>Здравствуйте, FDSC, Вы писали:


FDS>>Здравствуйте, Pyromancer, Вы писали:


P>>>ага, высокоуровневость такая что дышать уже нечем почти, уровней абстракции слишком много и всё для удобства кухарок,желающих писать программы.Развели ламерство, алгоритмы знать не хотят,технологии тоже, даже английский знать не хотят и вместо того чтобы хелп читать задают дурацкие вопросы.


FDS>>Ты на assemblere без чужого кода писал программы? Попробуй, а потом говори.

FDS>>Между прочим help ещё достать надо, а алгоритмы на каждом шагу не валяются.

P>писал, а вы?

По работе положено.

P>ничего такого кошмарного в асме нет, долговато конечно,но не страшно.

Вот именно! Мягко сказано.
Re[2]: Программирование стало более высокоуровневым?
От: sch  
Дата: 02.09.05 12:03
Оценка:
> Громоздкие системы мы получаем, потому что средства разработки и
> компиляторы такие. Если писать систему на asm ещё не известно напишешь
> ли и не наступит ли 23 век, пока ты это сделаешь.
>
> Можно сделать программу без ошибок, маленькую, быструю, но потребуется в
> 100... раз больше времени, чем на написание программы, которая
> действительно нужна.
>
> Просто нецелесообразно писать программу годами. А по поводу
> безграмотности — это всегда — чем больше специалистов и больше на них
> спрос, тем ниже качество подготовки, тем более притягательна профессия
> для людей, которые не хотят работать, а хотят зарабатывать.

Я уверен в том, что можно любую задачу решить маленькой, быстрой
программой, причем время ее разработки будет значительно меньше. Дело не
только, и не сколько в уровне мастерства, сколько в умении четко понять
задачу, мыслить оригинально, вне каких-либо шаблонов и стилистических
рамок. Как мне кажется, именно этому мешает современная высокоуровневость,
и как следствие -- шаблонность программирования. Понятно, что тут уже на
сцену выходит workmanship конкретного программиста, и, очевидно что
система разработки программного обеспечения, которая основывается на
способностях отдельной личности или целого коллектива неприемлема для
массовой, промышленной разработки программного обеспечения.
Posted via RSDN NNTP Server 1.9
Re: Программирование стало более высокоуровневым?
От: GlebZ Россия  
Дата: 02.09.05 12:06
Оценка: +4
Здравствуйте, sch, Вы писали:

sch>как парсить CSV-файлы.

IMHO
Некорректный вопрос, некорректный ответ. Я знаю как парсить, если конечно кто-нибудь скажет зачем и во что. Я понимаю парсить XML, или ASN в синтаксическое дерево, но CSV?
И вообще, мне кажется в институте на первом курсе кто-то из лекторов ошибся. Это парсить не надо. Это называется процесс чтения данных. Это не LL(*) граматика. Зря людей научили LL граматикам. Они только мучаются. Простое fread надо изучать, или scanf. И не стараться называть таким умным словом как парсинг. Набрались слов, а люди мучаются, размышляют.

С уважением, Gleb.
Re[2]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 02.09.05 12:09
Оценка:
Здравствуйте, GlebZ, Вы писали:

GZ>И вообще, мне кажется в институте на первом курсе кто-то из лекторов ошибся. Это парсить не надо.


Вот это правильно!
Re[3]: Программирование стало более высокоуровневым?
От: beroal Украина  
Дата: 02.09.05 12:14
Оценка: +1
Здравствуйте, sch, Вы писали:
>> Громоздкие системы мы получаем, потому что средства разработки и
>> компиляторы такие. Если писать систему на asm ещё не известно напишешь
>> ли и не наступит ли 23 век, пока ты это сделаешь.
>>
>> Можно сделать программу без ошибок, маленькую, быструю, но потребуется в
>> 100... раз больше времени, чем на написание программы, которая
>> действительно нужна.
sch>Я уверен в том, что можно любую задачу решить маленькой, быстрой
sch>программой, причем время ее разработки будет значительно меньше. Дело не
sch>только, и не сколько в уровне мастерства, сколько в умении четко понять
sch>задачу, мыслить оригинально, вне каких-либо шаблонов и стилистических
sch>рамок. Как мне кажется, именно этому мешает современная высокоуровневость,
Вы ещё больше запутали вопрос. Программистам мешает то, что они учат опыт других программистов? Так если его не учить, я не думаю, что получится высокоразвитая личность.
Если у вас есть альтернатива существующим решениям, ничто не мешает её высказать.
Re[3]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 02.09.05 12:15
Оценка:
Здравствуйте, sch, Вы писали:




sch>Я уверен в том, что можно любую задачу решить маленькой, быстрой

sch>программой, причем время ее разработки будет значительно меньше. Дело не
sch>только, и не сколько в уровне мастерства, сколько в умении четко понять
sch>задачу, мыслить оригинально, вне каких-либо шаблонов и стилистических
sch>рамок.

У каждой сложной проблемы есть решение, простое, элегантное и ... неправильное. [Кажется так].

Как мне кажется, именно этому мешает современная высокоуровневость,
sch>и как следствие -- шаблонность программирования.

Шаблонность программирования может быть и на asm и даже в машинных кодах (недавно видел, как раз). Так что врядли. Хотя я сам часто реализую что-нибудь сам — обычно лучше чем в профессиональных приложениях не получается.

Понятно, что тут уже на
sch>сцену выходит workmanship конкретного программиста, и, очевидно что
sch>система разработки программного обеспечения, которая основывается на
sch>способностях отдельной личности или целого коллектива неприемлема для
sch>массовой, промышленной разработки программного обеспечения.

Не понял почему система неприемлема. Ведь и на машинных кодах писали коммандами. Просто нужна новая методология программирования.
Re[4]: Программирование стало более высокоуровневым?
От: sch  
Дата: 02.09.05 12:16
Оценка:
> Вы ещё больше запутали вопрос. Программистам мешает то, что они учат
> опыт других программистов?
Нет, я имел в виду то, что нет культуры использования опыта, собранного
другими.
Posted via RSDN NNTP Server 1.9
Re[4]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 02.09.05 12:16
Оценка: :))
Здравствуйте, beroal, Вы писали:

>> Так если его не учить, я не думаю, что получится высокоразвитая личность.


Почему, можно лет за 200-300 самому накопить огромный опыт.
Re: Программирование стало более высокоуровневым?
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 02.09.05 13:11
Оценка: 165 (21) +7
Здравствуйте, sch, Вы писали:

sch>Прошу считать вышеизложенное скорее "криком души", а не приглащением на

sch>дискуссию, но мнение форумчан несомненно будет очень инитересно.

Ну как можно пройти спокойно мимо подобного крика души
Если бы на RSDN была оценка "в чем-то согласен, в чем-то нет", то я бы ее поставил. Но вот, что я думаю по этому поводу.

Во-первых, чисто субъективно, да еще со своей провинциальной колокольни, хочется сказать: "Да так и есть!". А все потому, что когда десять лет назад я закончил ВУЗ, то программисты у нас в городе вообще никому не нужны были. Поэтому работать по специальности пошли только те, кто хотел и любил программировать. В результате, из 40 человек нашего потока (22.04, "ПО ВТ и АС") сейчас с програмированием связано только пятеро. И это те, кто хоть что-то в этом деле понимает. Потенциально посредственные программисты в нашем выпуске просто не стали таковыми из-за того, что благоразумно (на тот момент) выбрали для себя другое поприще. И в то время мне не приходилось видеть, как кто-то в программе сортирует 40000 элементов самописной реализацией методом пузырька. Сейчас такие вещи я вижу. Естественно, что так и подмывает сказать, "А вот в наше время!... Да наше поколение!... Да мы!...". Да только это из области более зеленой травы и более мокрой воды.

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

В-третьих, не знаю, как в столичных ВУЗах, а у нас качество преподавания программирования год от года катастрофически снижается. Не берусь сказать, что здесь является основной причиной, но факт остается фактом -- как мы 15-ть лет назад были вынуждены сами изучать программирование (иногда вместе со своими преподавателями), так и сейчас те, кто реально хотят чему-то научится, сами учатся. Да только технологии стали на порядке сложнее. Если в мое время слово SQL кто-то только-только где-то слышал и единственной СУБД казался FoxPro, то сейчас кто-то, может быть, что-то слышал про FoxPro И если нам в 640 килобайтах памяти нужно было отсортировать мегабайт данных, то волей-не волей приходилось браться за методы внешних сортировок. А сейчас select ... order by. И нафига вообще B+ деревья или многоленточное сбалансированное слияние? Но с другой стороны, мы и понятия не имели про нормализацию отношений. А уж про оптимизацию индексов или уровни блокировок...

В-четвертых, и здесь об этом уже заходила речь, уровень решаемых задач совершенно изменился. Если десять лет назад мне нужно было успеть отрисовать на экране изменившееся значение счетчика электроэнергии и все, то теперь (образно говоря) мне нужно снять это значение, передать его в другой модуль на другой машине, записать в БД и отобразить. Я это к тому, что объем задач, возлагаемых на одного разработчика, вырос. За счет появления большого количества продвинутых инструментов. Ведь сейчас бал правят не столько языки, сколько framework-и и технологии. И если у меня задача стоит использовать CORBA для взаимодействия удаленных процессов, то у меня достаточно много других заморочек, чем оптимальный парсинг CSV конфига. Да и, имхо, все больше и больше сказывается сегментация направлений в программировании. Это раньше чуть ли не каждый программист был "швец и жнец, и на дуде игрец". Мог и свою GUI библиотеку под DOS сделать, и АРМ оператора машинного доения на нем своять, и на ассемблере резидента написать для опроса хитрого контроллера, который этим доением заправляет. А затем еще и базу удоев на FoxBase соорудить, с распечаткой графиков на матричном принтере забацать. А сейчас попробуй из Web-программирования в Parlay и телекоммуникации переквалифицируйся. Это я к тому, что разработчику какого-то Framework-а нужны совершенно другие знания, чем пользователю этого Framework-а. Соответственно, если дать в ВУЗе общий базиз, например, из методов сортировки, то через 2-3 года реальной работы кто-то будет помнить из него только азы, а кто-то матерым профи в этом деле вынужден будет стать. Но вот поменятся местами они уже не смогут, т.к. область деятельности совешенно другая у каждого.

Имхо, только на основании того, что меньше внимания уделяется базовым вещам, неразумно говорить, что уровень программистов снижается. Просто мир изменился. Другие цели, другие потребности, другой спрос, другое предложение. Мое мнение -- я стал действительно больше замечать серости. Но это следствие повышения спроса на программистов. Как только он снизится, произойдет естественное ее вымывание.

Вот что, на мой взгляд, важно, так это количество нестандартно и конструктивно мыслящих программистов. Но оно, в процентном отношении, имхо, не меняется. Как было раньше небольшое количество изобретателей (в самом хорошем смысле этого слова), так оно и осталось. Остальная масса -- это трудяги, пахари (опять же, в самом хорошем смысле). Придумали для них когда-то CGI -- стали делать Web на CGI, придумали Java и JSP -- стали делать на JSP. Появились WebServices, нет проблем -- впрягаемся и вперед. Имхо, заметить, что плуг плохо идет, не так уж и сложно. А вот придумать, как сделать его ход полегче или вовремя заменить плуг на что-то более производительное -- вот это сложно.
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[2]: Программирование стало более высокоуровневым?
От: AndreyFedotov Россия  
Дата: 02.09.05 14:16
Оценка:
Полностью согласен!
Помню был как то забавный случай, когда попросил одного разработчика прочитать простенький ini-like файл. Выдаёт оценку — надо писать парсер, срок три недели.
Я его попросил воспользоваться fgets + стандартная библиотека. Закончил работу к обеду следующего дня. И месяц мучался — по его представлениям без парсера вообще работать не должно было (про конечные автоматы он не слышал), но работало же...
Re[3]: Программирование стало более высокоуровневым?
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.09.05 16:24
Оценка: 1 (1) +2 -1
Здравствуйте, Gaperton, Вы писали:

G>+1, хочу только добавить, что понимание внутреннего устройства алгоритмов и абстрактных структур данных в также необходимо и для грамотного применения упомянутых библиотек. По-любому, короче, необходимо.


100%-й необходимости нет. Все же какой-нить std::vector<T> или List<T> можно из без оных знаний использовать. Но желательно несомненно.
... << RSDN@Home 1.2.0 alpha rev. 606>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Программирование стало более высокоуровневым?
От: vdimas Россия  
Дата: 02.09.05 16:55
Оценка: 47 (4) +1
Здравствуйте, fplab, Вы писали:

F>А я согласен с автором топика. Серость прет как моча по канализации. Выпускники физико-математических вузов (не все, конечно, но, увы — много-о-о-о-о ...) очень часто откровенные слабаки. На Дельфях формочку слепить, навесить пару кнопок — это они могут. А чуть в сторону — амбец


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

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

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

(То же самое относится к грамотным сетевикам — спецам по сетевым технологиям. У нас они почти не востребованы, однако, спрос на них достаточный в мире.)
Re[5]: Программирование стало более высокоуровневым?
От: vdimas Россия  
Дата: 02.09.05 17:00
Оценка:
Здравствуйте, FDSC, Вы писали:

P>>ничего такого кошмарного в асме нет, долговато конечно,но не страшно.

FDS>Вот именно! Мягко сказано.

А что за ASM?
Если он поддерживает вложенные макросы, то даже на асме можно весьма быстро писать.
Re: Программирование стало более высокоуровневым?
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 03.09.05 08:04
Оценка: 12 (1)
Здравствуйте, sch, Вы писали:

sch>Просматривая программистские форумы и группы новостей, начиная от rsdn.ru

sch>до comp.lang.c++.moderated не могу избавиться от ощущения, что большинство
sch>программистов не знают базовых вещей касающихся алгоритмизации.

Классика: Дж. Спольски, Назад к основам

Большей частью я использую только то, что понимаю как работет и что могу написать при необходимости сам.
Re[3]: Программирование стало более высокоуровневым?
От: beroal Украина  
Дата: 03.09.05 08:09
Оценка:
Здравствуйте, vdimas, Вы писали:
V>Проблема еще в том, что у нас умерли более-менее наукоемкие направления в программировании. Мы пишем склады с бухгалтериями, сайты-магазины и это грустно (не все, к счастью, но это явный mainstream у нас). Ради прикола дал свое резюме на одном из
Читал не важно по какому поводу такую работу Composing contracts: an adventure in financial engineering
Financial and insurance contracts do not sound like promising territory for functional programming and formal semantics, but in fact we have discovered that insights from programming languages bear directly on the complex subject of describing and valuing a large class of contracts.
Научность определяется отношением и подходом к предмету.
Построение сайта-магазина как точная наука.
Re[6]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 03.09.05 12:54
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Здравствуйте, FDSC, Вы писали:


P>>>ничего такого кошмарного в асме нет, долговато конечно,но не страшно.

FDS>>Вот именно! Мягко сказано.

V>А что за ASM?

V>Если он поддерживает вложенные макросы, то даже на асме можно весьма быстро писать.

Угу, я писал на таких asm-ах (в том числе), что там даже функции и переменные не поддерживаются.

Кстати, что за вложенные макросы? Зачем это? Если не секрет.
Re[2]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 03.09.05 12:59
Оценка:
Здравствуйте, Mystic, Вы писали:


M>Большей частью я использую только то, что понимаю как работет и что могу написать при необходимости сам.


Ну ты профессионал! Сколько же ты всего знаешь тогда!
Re: Программирование стало более высокоуровневым?
От: GlebZ Россия  
Дата: 03.09.05 16:02
Оценка: 11 (3) +3
Здравствуйте, sch, Вы писали:

Когда-то были люди, которые знали только машинные коды напрямую выполняемые процессором, и именно они назывались программистами. Эти люди знали как устроена память, как устроен процессор, что такое триггер и элементы логики. Они знали все, почти до последней электронной лампы, с чем они работали. Только сомневаюсь, что им было интересно какой газ был закачан в эти лампы.
Затем появился ассемблер. И постепенно было вытеснено знание о кодах. Знание о кодах стало преимуществом, но не необходимостью.
Потом появились языки более высокого уровня. Компьютер стал ближе к человеку. И знания о регистрах оказалось не нужны. Есть немногие люди и программисты, которые знали как работать с регистрами, и которые делали это за других, но для остальных это не является необходимостью. Хотя является преимуществом.
Сетевые карты, и драйвера к ниму. Мало кто знает как устроена сетевая карта. Мало из программистов знает как синхронизируются сигналы по сети. Это знание тех немногих других людей и, в том числе, программистов которые делали эти карты.
Начало расширяться не сложность компьютера, но и области где они применяются. Программист технических процессоров и бизнес-приложений — это две разных профессии.
Число абстракций в компьютерах и областей с ними связанных давно уже перерасло пределы понимания одного человека. Нет человека который знал бы полностью все. Я сомневаюсь что есть человек который полностью знает Win API. Да он и не нужен. Посмотрите вакансии о работе. Нужен человек который знает именно свою область. И знание о сопредельных областях — это всего лишь преимущество. Притом преимущество которое может вообще никогда не пригодить.
Поэтому абстракции — это хорошо. Без них никуда. Ну а если у них есть избыточность? То это тоже неплохо. Даже если чтение CVS будет реализован программистом с помощью парсинга каким-нибудь синтаксическим парсером, то задача будет решена.(хотя сомневаюсь что существует программист, знающий о парсерах но не знающих об элементарных функциях С). И мы многие задачи решаем таким образом. Сомневаюсь что кто-то хочет перепаивать микросхемы для построения супер-пупер базы данных. Мало кто собирается, работая с реляционной базой, строить свои базы данных предназначенных для решения именно их задачи. Он скорее всего и не знает как это делать. Так что, избыточность абстракций всегда есть. И это хорошо, поскольку снимает нагрузку с программиста, которому и так нелегко.

С уважением, Gleb.
Re: Программирование стало более высокоуровневым?
От: ON  
Дата: 03.09.05 16:45
Оценка: 34 (3) -1 :))
> Программирование должно стать и несомненно
> становится более выскоуровневым.

Для высокоуровневости есть предел — Лисп.
Который на самом деле ассемблер.
Posted via RSDN NNTP Server 1.9
Re[3]: Программирование стало более высокоуровневым?
От: VladD2 Российская Империя www.nemerle.org
Дата: 03.09.05 18:54
Оценка: +1 :)))
Здравствуйте, FDSC, Вы писали:

FDS>Ну ты профессионал! Сколько же ты всего знаешь тогда!


Не, ну, языком то многие многое могут. Я вот, например, приблизительно знаю как создать ОС курче винды, но это не значит же, что я это смогу реально сделать. Хотя при большой нужнде...
... << RSDN@Home 1.2.0 alpha rev. 606>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Программирование стало более высокоуровневым?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 04.09.05 11:01
Оценка: +1 :)))
Здравствуйте, GlebZ, Вы писали:

GZ>Они знали все, почти до последней электронной лампы, с чем они работали. Только сомневаюсь, что им было интересно какой газ был закачан в эти лампы.


Еще бы. Потому что в этих лампах никакой газ не присутствует .

GZ> Сетевые карты, и драйвера к ниму. Мало кто знает как устроена сетевая карта. Мало из программистов знает как синхронизируются сигналы по сети.


Вобще то по идее преподают во многих профильных вузах по сю пору.
... << RSDN@Home 1.2.0 alpha rev. 611 on Windows XP 5.1.2600.131072>>
AVK Blog
Re: Программирование стало более высокоуровневым?
От: Maxim S. Shatskih Россия  
Дата: 04.09.05 12:02
Оценка: +1 -4 :))
sch>даже сделать следующий опыт. Зайти на форум по C++ и спросить: как парсить
sch>CSV-файлы. Вам тут же начнут предлагать варианты типа Boost.Tokenizer, еще
sch>какие-то библиотеки, предложут воспользоваться генераторами парсеров и

Вот на мой скромный взгляд, когда девелопер в ответ на такие вопросы с ходу говорит "давайте возьмем готовую библиотеку такую-то" — это двойка.

Т.е. это признак девелопера низшего уровня профессионализма. Соответственно решается вопрос о том, на какую позицию он пригоден.

Видел таких. Они потом банально путаются в несложных проблемах, и решают их неделю, причем с неправильных подходов. Реальной работы по решению проблемы — полдня.
Занимайтесь LoveCraftом, а не WarCraftом!
Re[2]: Программирование стало более высокоуровневым?
От: VladD2 Российская Империя www.nemerle.org
Дата: 04.09.05 14:28
Оценка: 9 (1)
Здравствуйте, Maxim S. Shatskih, Вы писали:

MSS>Вот на мой скромный взгляд, когда девелопер в ответ на такие вопросы с ходу говорит "давайте возьмем готовую библиотеку такую-то" — это двойка.


MSS>Т.е. это признак девелопера низшего уровня профессионализма. Соответственно решается вопрос о том, на какую позицию он пригоден.


Ну, значит я никуда не годен, так как если бы я знал хорошую библиотеку решающую проблему, то не стал бы городить огород.

MSS>Видел таких. Они потом банально путаются в несложных проблемах, и решают их неделю, причем с неправильных подходов. Реальной работы по решению проблемы — полдня.


Думать нужно постоянно. Нет одного решения на все случаи жизни. Когда-то проще написать свой код. Когда-то подобрать библиотеку. Когда-то адаптировать чужой код. А крайности — это и есть проявление не профессионализма.
... << RSDN@Home 1.2.0 alpha rev. 606>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Программирование стало более высокоуровневым?
От: Maxim S. Shatskih Россия  
Дата: 04.09.05 15:22
Оценка:
VD>Ну, значит я никуда не годен, так как если бы я знал хорошую библиотеку решающую проблему, то не стал бы городить огород.

Ты в крайнем случае еще и знаешь, как библиотека внутри себя работает люди, о которых речь — нет.

Там принципиальная ориентация — ляп-ляп-ляп на коленке из чужих компонент, без вникания в суть. А это вот как раз низкий профессионализм ИМХО.

Вопрос "а чем плохи чужие компоненты?", думаю, поддается просто формальному ответу
Занимайтесь LoveCraftом, а не WarCraftом!
Re[4]: Программирование стало более высокоуровневым?
От: VladD2 Российская Империя www.nemerle.org
Дата: 04.09.05 15:27
Оценка: +1
Здравствуйте, Maxim S. Shatskih, Вы писали:

MSS>Там принципиальная ориентация — ляп-ляп-ляп на коленке из чужих компонент, без вникания в суть. А это вот как раз низкий профессионализм ИМХО.


Дык на этом и нужно акцентировать свои рассуждения. Пробелма не в том, что человек ищет библиотеку, а в том, что он приципиально не способен на творчество и решение сложных проблем. Это уже совсем другое дело.

MSS>Вопрос "а чем плохи чужие компоненты?", думаю, поддается просто формальному ответу


Да не поддается он ответу. Но мы вроде пришли к единому мнению. Дело в людях. В их способностях и потенциале. А как он будет решать проблему дело десятое. Лиш бы в итоге она была решена.
... << RSDN@Home 1.2.0 alpha rev. 606>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Программирование стало более высокоуровневым?
От: Ka3a4oK  
Дата: 04.09.05 17:17
Оценка: 43 (3) +2
ИМХО неудачный пример. Если мне придется парсить что-либо, для чего можно составить регулярное вражение или КС-грамматику, я обязательно буду использовать средства автоматизации. Раньше это были bison/lex, сейчас еще хочу попробовать boost::spirit. Даже если мне нужно будет написать парсер для ini-файла, я также буду использовать средства автоматизации. Потому-что:
— это просто (Сравните объем кода парсера и объем грамматики.)
— это надежно (Во-первых, средства автоматизации обнаруживают все ошибки несоответствия формата. Во-вторых
генерируемый код достаточно надежен. Это конечно справедливо для известных инструментов.)
— это расширяемо (Расширился формат — добавили несколько прaвил в грамматику.)

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

Я считаю, что главное для инженера(кем, по моему мнению, является программист)- это нахождение решения поставленой задачи. Чем лучше инженер, тем найденое решение оптимальней (по разным критериям — качество, стоимость, сроки).
... << RSDN@Home 1.1.4 stable rev. 510>>
Re[2]: Программирование стало более высокоуровневым?
От: Anton Batenev Россия https://github.com/abbat
Дата: 04.09.05 18:23
Оценка: +1
Здравствуйте, Maxim S. Shatskih, Вы писали:

sch>>даже сделать следующий опыт. Зайти на форум по C++ и спросить: как парсить

sch>>CSV-файлы. Вам тут же начнут предлагать варианты типа Boost.Tokenizer, еще
sch>>какие-то библиотеки, предложут воспользоваться генераторами парсеров и
MSS>Вот на мой скромный взгляд, когда девелопер в ответ на такие вопросы с ходу говорит "давайте возьмем готовую библиотеку такую-то" — это двойка.

Двойка — это когда он не знает, как решить проблему быстро и эффективно (да и то, спорно), а когда человек уже знает готовое решение, а уж если решение по соотношениям цена/качество удовлетворяет поставленным требованиям, то это твердая пятерка. Как тут неоднократно упоминалось — заказчиков не интересуют ни использованные библиотеки, ни языки программирования... Их интересует конечный результат за конечное время за конечные деньги, которые они вам заплатят.

Хороший специалист не должен знать всего, но он должен знать, где узнать то, что ему требуется здесь и сейчас.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Re[4]: Программирование стало более высокоуровневым?
От: vdimas Россия  
Дата: 04.09.05 23:39
Оценка:
Здравствуйте, beroal, Вы писали:

B>Здравствуйте, vdimas, Вы писали:

V>>Проблема еще в том, что у нас умерли более-менее наукоемкие направления в программировании. Мы пишем склады с бухгалтериями, сайты-магазины и это грустно (не все, к счастью, но это явный mainstream у нас). Ради прикола дал свое резюме на одном из
B>Читал не важно по какому поводу такую работу Composing contracts: an adventure in financial engineering
B>Financial and insurance contracts do not sound like promising territory for functional programming and formal semantics, but in fact we have discovered that insights from programming languages bear directly on the complex subject of describing and valuing a large class of contracts.
B>Научность определяется отношением и подходом к предмету.
B>Построение сайта-магазина как точная наука.

Почему нет? Посмотрим на эти сайты-магазины лет через 10, когда в построении "конструктора" для них будут задействованы различные профи, начиная от спецов по проектированию отказоустойчивых систем, и кончая спецами по статистике, рекламе и психологии обывателей

Ведь какая сейчас-то достигается цель? ЧТОБЫ РАБОТАЛО ХОТЬ КАК-ТО И НЕ ПАДАЛО!!!
Re[7]: Программирование стало более высокоуровневым?
От: vdimas Россия  
Дата: 04.09.05 23:52
Оценка:
Здравствуйте, FDSC, Вы писали:

FDS>Кстати, что за вложенные макросы? Зачем это? Если не секрет.



это макро, в которых дозволяется юзать другие макро (и самих себя в т.ч.). Хорошие макро поддерживают внутри себя ветки условной компиляции, в выражении которых могут стоять параметры макро, и могут принимать другие макро как параметры (это вообще рулез). В общем, чем-то приближаются по возможностям к С++ с его специализацией шаблонов (и частичной в т.ч.).
Re[8]: Программирование стало более высокоуровневым?
От: beroal Украина  
Дата: 05.09.05 05:50
Оценка:
Здравствуйте, vdimas, Вы писали:
V>могут принимать другие макро как параметры (это вообще рулез).
Т.е. имя макро как параметр? А потом текст макро с этим именем можно вставить? А если он имеет параметры, как тогда?
Re[8]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.05 11:01
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Здравствуйте, FDSC, Вы писали:


FDS>>Кстати, что за вложенные макросы? Зачем это? Если не секрет.



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


Я кажется этим когда-то пользовался, когда программировал обычные компьютеры. Честно говоря, по моему не намного лучше. Меня тогда больше убивала не скорость, а то, что я не мог мыслить одновременно и на уровне архитектуры, и на урове команд.
Re[5]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.05 11:03
Оценка: +2
Здравствуйте, vdimas, Вы писали:

V>Ведь какая сейчас-то достигается цель? ЧТОБЫ РАБОТАЛО ХОТЬ КАК-ТО И НЕ ПАДАЛО!!!


По моему сейчас цель — побыстрее выбросить на рынок приложение. А уж работает оно, падает, какое у него качество... неважно. Главное — быстрая прибыль, даже рыночные механизмы не спасают.
Re[4]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.05 11:05
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Не, ну, языком то многие многое могут. Я вот, например, приблизительно знаю как создать ОС курче винды, но это не значит же, что я это смогу реально сделать. Хотя при большой нужнде...


Я собственно про то же. И вообще, вопрос как глубоко надо знать всё, что используешь.

приблизительно знаю Хорошее выражение. Надо взять на заметку.
Re[2]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.05 11:18
Оценка:
Здравствуйте, GlebZ, Вы писали:

GZ>Здравствуйте, sch, Вы писали:


GZ>Когда-то были люди, которые знали только машинные коды напрямую выполняемые процессором, и именно они назывались программистами. Эти люди знали как устроена память, как устроен процессор, что такое триггер и элементы логики. Они знали все, почти до последней электронной лампы, с чем они работали. Только сомневаюсь, что им было интересно какой газ был закачан в эти лампы.


Между прочим, я некоторое время назад интересовался технологией изготовления ламповых приборов, правда немного из другой области. А триггеры вообще по электротехнике проходил. И транзисторы то же. И на машинных кодах программировал в учебных курсах (просто так то же). Но вообще, слава богу — есть С++, С#, Delphi и т.д.

GZ> Есть немногие люди и программисты, которые знали как работать с регистрами, и которые делали это за других, но для остальных это не является необходимостью.


По моему каждый программист знает как с регистрами работать. Не надо утрировать.

GZ> Мало кто знает как устроена сетевая карта.


Я не знаю. Согласен.

GZ>Поэтому абстракции — это хорошо. Без них никуда. Ну а если у них есть избыточность? GZ>То это тоже неплохо.


Хотя железо будет всё делать. Полностью согласен. Очень здорово.
Re[2]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.05 11:20
Оценка:
Здравствуйте, ON, Вы писали:

>> Программирование должно стать и несомненно

>> становится более выскоуровневым.

ON>Для высокоуровневости есть предел — Лисп.

ON>Который на самом деле ассемблер.

Никогда на Лиспе не программировал, но по моему это не предел. Предел высокоуровневости не достижим. Интересно, как ты на "ЛИСП" робот запрограммируешь?

В каждой области будут появляться всё более мощные и адаптированные к ней приложения, которые будут больше делать за человека (за счёт вложенных в них знаний) — и чем больше знаний в этом приложении будет, тем более высокоуровневым оно станет.
Re[3]: Программирование стало более высокоуровневым?
От: GlebZ Россия  
Дата: 05.09.05 11:24
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Еще бы. Потому что в этих лампах никакой газ не присутствует .

А там что, вакуум закачивают?

AVK>Вобще то по идее преподают во многих профильных вузах по сю пору.

В профильных? Может быть. Я тоже изучал это(МИЭС). Я так-же изучал как устроена например микросхемы контроллера DMA и контроллера прерываний. Очень просто они строятся. Но поскольку мне это не надо, и я это благополучно забыл.

С уважением, Gleb.
Re[2]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.05 11:25
Оценка:
Здравствуйте, Maxim S. Shatskih, Вы писали:

MSS>Вот на мой скромный взгляд, когда девелопер в ответ на такие вопросы с ходу говорит "давайте возьмем готовую библиотеку такую-то" — это двойка.


Если в этой библиотеке есть соотв. решение?

Я всегда пытался реализовывать уже готовые компоненты самостоятельно. Иногда получалось даже лучше. Но каждый раз я убеждался в том, что надо было использовать готовый код.

Я ХОЧУ с ходу говорить "давайте возьмем готовую библиотеку такую-то", если это будет правильное решение. Мне это очень бы не помешало, даже если бы "заказчиком" на приложение был бы я.
Re[4]: Программирование стало более высокоуровневым?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 05.09.05 11:52
Оценка: :))) :)))
Здравствуйте, GlebZ, Вы писали:

AVK>>Еще бы. Потому что в этих лампах никакой газ не присутствует .

GZ>А там что, вакуум закачивают?

Ага, специальный, класса ХЧ.
... << RSDN@Home 1.2.0 alpha rev. 610>>
AVK Blog
Re[9]: Программирование стало более высокоуровневым?
От: vdimas Россия  
Дата: 05.09.05 11:57
Оценка:
Здравствуйте, beroal, Вы писали:

B>Здравствуйте, vdimas, Вы писали:

V>>могут принимать другие макро как параметры (это вообще рулез).
B>Т.е. имя макро как параметр? А потом текст макро с этим именем можно вставить? А если он имеет параметры, как тогда?

используешь параметр как имя макро, при вызове подаешь другие параметры (иногда имена других макро).

разумеется, если подал "не такой" макро, то на этапе ассемблирования выдаст ошибку
Re[3]: Программирование стало более высокоуровневым?
От: aka50 Россия  
Дата: 05.09.05 12:04
Оценка:
Здравствуйте, FDSC, Вы писали:

FDS>Никогда на Лиспе не программировал, но по моему это не предел. Предел высокоуровневости не достижим. Интересно, как ты на "ЛИСП" робот запрограммируешь?


Ну вроде как ничего особо сложного... особенно если учесть что существуют лисп-машины
(к сожалению не получившие распространения, хотя думаю на сегодняшиних технологиях
стоили бы они копейки). А если вопрос именно в том как их программировать то вот гугл
все знает
http://lists.tunes.org/archives/lispos/1997-May/001639.html
http://mumble.net/~jar/pubs/scheme-mobile-robots.ps
http://www.cs.northwestern.edu/~ian/grl-paper.pdf
Re[3]: Программирование стало более высокоуровневым?
От: anidal  
Дата: 05.09.05 12:13
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Здравствуйте, fplab, Вы писали:


F>>А я согласен с автором топика. Серость прет как моча по канализации. Выпускники физико-математических вузов (не все, конечно, но, увы — много-о-о-о-о ...) очень часто откровенные слабаки. На Дельфях формочку слепить, навесить пару кнопок — это они могут. А чуть в сторону — амбец


V>Вообще-то, сильный выпускник физмата — это находка для определенных областей. Обработка сигналов, сжатие информации, моделирование динамических систем, распознавание образов и т.д. и т.п.


V>Очень жаль, что некоторые менеджеры из разряда той самой серости, поручают им формочки лепить. Это все равно, что забивать компьютером гвозди.


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


V>(То же самое относится к грамотным сетевикам — спецам по сетевым технологиям. У нас они почти не востребованы, однако, спрос на них достаточный в мире.)


И обработка сигналов, и сетевые технологии востребованы, просто те фирмы, где их используют не в состоянии платить столько-же сколько за программирование формочек и отчетов! И специалисты там нужны позарез.
Re[4]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.05 12:22
Оценка:
Здравствуйте, GlebZ, Вы писали:

GZ>Здравствуйте, AndrewVK, Вы писали:


AVK>>Еще бы. Потому что в этих лампах никакой газ не присутствует .

GZ>А там что, вакуум закачивают?

В зависимости от технологии. Вакуум создают, но разреженный газ всё равно остаётся, вопрос в том — какой. Недавно по поводу ламп были публикации в журнале "Наука и жизнь"

AVK>>Вобще то по идее преподают во многих профильных вузах по сю пору.

GZ>В профильных? Может быть. Я тоже изучал это(МИЭС). Я так-же изучал как устроена например микросхемы контроллера DMA и контроллера прерываний. Очень просто они строятся. Но поскольку мне это не надо, и я это благополучно забыл.

В общем-то правильно. Более высокоуровневое средство разработки, адаптированное к конкретной отрасли, напичканное соотв. знаниями — это хорошо.

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

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

2. Изменение стиля и удобства написания программ: машинные коды, ассемблеры и функциональные языки (позволяют работать программисту с именованными объектами, а не числами), OO языки и декларативные языки (позволяют программисту работать с объектами, ориентированными не на выч. среду, а на модели внешнего мира и относительно просто задавать связи между ними)

3. Изменение интерфейса написания программ: программирование с помощью выключателей и перфокарт (человек выполняет вспомогательную работу по преобразованию данных в машинный формат), программирование с удобными устройствами I/O, п. с использованием стандартных или подключаемых библиотек (позволяет использовать наработанный другими код, не занимаясь программированием стандартных операций), и п. с исп. средств разработки, имющих интерфейс с пользователем на основе объектов соответствующей отрасли знаний (например, визуальный конструктор форм (Delphi, Builder, VS .NET), визуальные конструкторы и мастера, создающие HTML-файлы и Web-узлы, Borland Enterprise Core Object или Borland Bold — позволяющий работать с реляционной базой данных на уровне связей между объектными сущностями, а не на уровне таблиц). Даже иногда говорят: "программирование мышкой" — имея ввиду его отсутствие.


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

Что хорошо:



Что плохо:

Re[2]: Программирование стало более высокоуровневым?
От: wraithik Россия  
Дата: 05.09.05 12:25
Оценка: +1
Здравствуйте, Maxim S. Shatskih, Вы писали:

sch>>даже сделать следующий опыт. Зайти на форум по C++ и спросить: как парсить

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

MSS>Вот на мой скромный взгляд, когда девелопер в ответ на такие вопросы с ходу говорит "давайте возьмем готовую библиотеку такую-то" — это двойка.


MSS>Т.е. это признак девелопера низшего уровня профессионализма. Соответственно решается вопрос о том, на какую позицию он пригоден.


MSS>Видел таких. Они потом банально путаются в несложных проблемах, и решают их неделю, причем с неправильных подходов. Реальной работы по решению проблемы — полдня.


Такого, который может мигом найти решение проблемы дешевым, быстрым и эфффективным способом — т.е. взять что-то готовое и отлаженое, его надо не програмеры, а в начальники программеров, ибо он будет бить по рукам всяким там изобретателям велосипедов, ускоряющих сортировку на целых 2-3%, и возящихся с отладкой день-другой, когда можно было вязть готовое решение и не парится.

Заказчику нужна надежная система за минимальные деньги. Даже 10% измеменеия производительности он не увидит, а на БД и 50% в некоторых случаях не видно. Исполнителю (владельцу конторы) важно получить максимальную прибыль, т.е. деньги_заказчика-ЗП_програмистов. А за 2 дня возни (и даже за 0,5 дня) платить то людям надо. Вот и выходит, что из кирпечей система дешевле чем из камешков, а панельный дом еще проще строить — следовательно дешевле и быстрее.
Re[4]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.05 12:32
Оценка: 4 (1)
Здравствуйте, aka50, Вы писали:

За ссылки — спасибо.

FDS>>Никогда на Лиспе не программировал, но по моему это не предел. Предел высокоуровневости не достижим. Интересно, как ты на "ЛИСП" робот запрограммируешь?


A>Ну вроде как ничего особо сложного...


Это не так: можно по разному их программировать. Для РТК нужно учитывать погрешности установки манипулятора, деформацию моста, на котором он подвешен (если он конечно подвешен) и т.п.

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

К тому же роботы имеют нехорошее свойство — иногда ломаются.
Re[5]: Программирование стало более высокоуровневым?
От: aka50 Россия  
Дата: 05.09.05 13:19
Оценка:
Здравствуйте, FDSC, Вы писали:

A>>Ну вроде как ничего особо сложного...


FDS>Это не так: можно по разному их программировать. Для РТК нужно учитывать погрешности установки манипулятора, деформацию моста, на котором он подвешен (если он конечно подвешен) и т.п.

Дык это понятно... но что мешает данные абстракции (если они конечно могут ими быть) вынести на уровень языка? Или даже
более того создать свой язык (благо лисп это позволяет легко делать)?
Не очень понятно тогда к чему был вопрос "Интересно, как ты на "ЛИСП" робот запрограммируешь?"

FDS>Это сложные манипуляции, расчёт которых осуществляется дорогими САПР с соотв. надстройками (например, Сatia). Я уж не говорю про инверсную кинематику, избыточные степени подвижности, работа с препятствиями, контроль точности обработки фасонных поверхностей, работа нескольких роботов в одном рабочем пространстве и т.п.


И? Тот же AutoCAD вполне неплохо себя с лиспом чувствует (там правда не совсем лисп, но это уже ньюансы). В чем проблема в такого монстра как коти засунуть лисп?
(сейчас конечно уже не засунешь, но в момент начала ее разработки например). Вообще не очень понятно к чему эти сложности тут приведены. Они решаются на любом языке
в той или иной степени и имеется определенные плюсы/минусы в реализации.
Если по поводу скорости, то это как Java vs C++ . Например тут: http://openmap.bbn.com/~kanderso/performance/
Re[6]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.05 13:59
Оценка: +1
Здравствуйте, aka50, Вы писали:

A>Здравствуйте, FDSC, Вы писали:


A>>>Ну вроде как ничего особо сложного...


FDS>>Это не так: можно по разному их программировать. Для РТК нужно учитывать погрешности установки манипулятора, деформацию моста, на котором он подвешен (если он конечно подвешен) и т.п.


A>Дык это понятно... но что мешает данные абстракции (если они конечно могут ими быть) вынести на уровень языка? Или даже

A>более того создать свой язык (благо лисп это позволяет легко делать)?

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

A>Не очень понятно тогда к чему был вопрос "Интересно, как ты на "ЛИСП" робот запрограммируешь?"


К тому, что ЛИСП для этого подходит не больше, чем C++.


FDS>>Это сложные манипуляции, расчёт которых осуществляется дорогими САПР с соотв. надстройками (например, Сatia). Я уж не говорю про инверсную кинематику, избыточные степени подвижности, работа с препятствиями, контроль точности обработки фасонных поверхностей, работа нескольких роботов в одном рабочем пространстве и т.п.


A>И? Тот же AutoCAD вполне неплохо себя с лиспом чувствует (там правда не совсем лисп, но это уже ньюансы).


Сравнил, Catia и AutoCAD — это системы САПР совершенно разного уровня!

В чем проблема в такого монстра как коти засунуть лисп?
A>(сейчас конечно уже не засунешь, но в момент начала ее разработки например).

В AutoCAD да, в Catia не проблема. Да и не нужно туда ничего засовывать, надстройку просто написать.

A>Вообще не очень понятно к чему эти сложности тут приведены. Они решаются на любом языке

A>в той или иной степени и имеется определенные плюсы/минусы в реализации.

Я привёл эти сложности для того, что бы было понятно, что нужно адаптировать инструмент и язык непосредственно к ним. И ЛИСП и C++ (Java не предназначена для промышленного применения) одинаково неприспособленны для этого.

Высокоуровневость спец. языка или инструмента в данном случае нужно понимать, как удобство решения конкретной задачи (об этом уже писал
Автор: FDSC
Дата: 05.09.05
). В том числе и не специалистом по программированию, а спец. по конкретной области.

В каждом случае исходные данные для задачи свои, для их решения для каждого робота производителем пишутся свои надстройки над Catia (точнее над ещё одной надстройкой).

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


В общем, я хотел сказать, что высокоуровневость разработки — это не только язык, но и вся среда разработки, адаптированная под конкретную отрасль науки и техники.
Re[7]: Программирование стало более высокоуровневым?
От: aka50 Россия  
Дата: 05.09.05 14:17
Оценка:
Здравствуйте, FDSC, Вы писали:

FDS>Здравствуйте, aka50, Вы писали:


A>>И? Тот же AutoCAD вполне неплохо себя с лиспом чувствует (там правда не совсем лисп, но это уже ньюансы).

FDS>Сравнил, Catia и AutoCAD — это системы САПР совершенно разного уровня!
Неудачно выразился

<<<skip>>>

FDS>В общем, я хотел сказать, что высокоуровневость разработки — это не только язык, но и вся среда разработки, адаптированная под конкретную отрасль науки и техники.

В этом ключе согласен.
Re[3]: Программирование стало более высокоуровневым?
От: ON  
Дата: 05.09.05 14:42
Оценка:
> Интересно, как ты на "ЛИСП" робот запрограммируешь?

Странный вопрос, как на "языке искусственного интеллекта" запрограммировать робота...
я так понимаю это будет "Быстро"...
Posted via RSDN NNTP Server 1.9
Re[2]: Программирование стало более высокоуровневым?
От: Cyberax Марс  
Дата: 05.09.05 14:54
Оценка: +2
Maxim S. Shatskih wrote:

> sch>даже сделать следующий опыт. Зайти на форум по C++ и спросить: как

> парсить
> sch>CSV-файлы. Вам тут же начнут предлагать варианты типа
> Boost.Tokenizer, еще
> sch>какие-то библиотеки, предложут воспользоваться генераторами
> парсеров и
> Вот на мой скромный взгляд, когда девелопер в ответ на такие вопросы с
> ходу говорит "давайте возьмем готовую библиотеку такую-то" — это двойка.

Двойка такому работодателю. За ненужное изобретение велосипедов.

Я работал в проекте, где было ЗАПРЕЩЕНО использование сторонних
библиотек вообще. И ладно бы, если бы там был какой-то супернадежный
код, для которого надо построчный делать аудит с доказательством
корректности — так ведь там было вполне обычное приложение. В результате
после пары лет развития там изобрели кучу велосипедов (свой парсер
конфигов, свой аналог XPath, своя кривая система O/R-mapping'а) проект
стал просто неподдерживаемым. А самым главным недостатком была скорость
— приложение было написано без учета масштабируемости и при нагрузках
больше проектных безбожно тормозило.

Ну и мы это уродство переписали за пару месяцев (взяли ANTLR, xml4j,
Hibernate и т.п.). Проект без особых проблем развивается и по сей день.
Проблему со скоростью решили с помощью кластеризации и Tangasol
Coherence — получилась почти неограниченная масштабируемость. В
результате заказчик даже с учетом коммерческих лицензий на Coherence
заплатил НА ПОРЯДОК меньше, чем за предидущий велосипед.

--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 1.9
Sapienti sat!
Re[5]: Программирование стало более высокоуровневым?
От: VladD2 Российская Империя www.nemerle.org
Дата: 05.09.05 16:42
Оценка: +4 :))
Здравствуйте, FDSC, Вы писали:

FDS>Я собственно про то же. И вообще, вопрос как глубоко надо знать всё, что используешь.


Тут можно привести хорошую аналогию с телевизором. Когда они были еще эксперементальными, нужно было не просто понимать как они работают, но и понимать как работает передающая часть. Ну, а сейчас достаточно знать как включить телевизор и переключить каналы. Для настройки еще прийдется изучить меню. Знание же того как работает лучевая трубка возможно и полезны, но совершенно не нужны для ползования телевизором.

FDS>приблизительно знаю Хорошее выражение. Надо взять на заметку.


Дык!
... << RSDN@Home 1.2.0 alpha rev. 606>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 06.09.05 09:01
Оценка:
Здравствуйте, ON, Вы писали:

>> Интересно, как ты на "ЛИСП" робот запрограммируешь?


ON>Странный вопрос, как на "языке искусственного интеллекта" запрограммировать робота...

ON>я так понимаю это будет "Быстро"...

Не понял? См. спор выше и поясни своё.
Re: Программирование стало более высокоуровневым?
От: Glоbus Украина  
Дата: 06.09.05 15:58
Оценка: 1 (1) +2
Здравствуйте, sch, Вы писали:

sch>Общее

sch>впечетление -- мастерство программистов снизилось, причем вероятно этот
sch>процесс глобален.

Ты абсолютно прав — и это с точки зренияитосри вполне нормальный процесс. По мере того, как программирование охватыаае твсе боле широкие сферы деятельности нужны люди, педалящие именно для этой сферы. А так как у нас далеко не все программеры педалят для Наса, а вокруг сплошной е-коммерц и корпоративные бизнесссс-решения, то и получается, что никому этот уровень нафиг не нужен. Нужные кодеры для объемных и алгоритмически не очень сложных задач. Эти кодеры, так как их большенство, и создают общую картину "упадка культуры" в программинге.
Удачи тебе, браток!
Re[5]: Программирование стало более высокоуровневым?
От: ON  
Дата: 06.09.05 19:42
Оценка:
> Не понял? См. спор выше и поясни своё.

Вот это?
>В общем, я хотел сказать, что высокоуровневость разработки — это не только язык, но и вся среда разработки, адаптированная под конкретную отрасль науки и техники.

1. Может не следует это называть программированием? Например Word очень адаптированная среда разработки, скажем человек там пишет кулинарные рецепты. Тоже среда и тоже программы, но как-то уже не то.
2. Речь шла о высокоуровневости. Тут однозначно никакой высоты нет, поскольку качественно разные вещи на больше-меньше не сравниваются. А самое удачная среда для написания и выполнения интерпретаторов выражений какого-то совершенно нового вида это Лисп.
Posted via RSDN NNTP Server 1.9
Re[2]: Программирование стало более высокоуровневым?
От: sch  
Дата: 07.09.05 06:38
Оценка: 1 (1) +2
> Ты абсолютно прав — и это с точки зренияитосри вполне нормальный
> процесс. По мере того, как программирование охватыаае твсе боле широкие
> сферы деятельности нужны люди, педалящие именно для этой сферы. А так
> как у нас далеко не все программеры педалят для Наса, а вокруг сплошной
> е-коммерц и корпоративные бизнесссс-решения, то и получается, что никому
> этот уровень нафиг не нужен. Нужные кодеры для объемных и алгоритмически
> не очень сложных задач. Эти кодеры, так как их большенство, и создают
> общую картину "упадка культуры" в программинге.

Ты затронул очень животрепещащую для меня тему Дело в том, что я
патологически
неспособен разбираться в таких "объемных и алгоритмически несложных
задачах" -- очень быстро становится неинтересно, исчезает внимание, в
результате я пишу простые вещи долго и некачественно=) Когда у меня встал
вопрос о месте работы, то я не смог придумать ничего лучше разработки
компьютерных игрушек: тут и симуляция физики, и искусственный интеллект, и
графика, и звук, и вообще игровая логика -- пока не жалуюсь. Все же есть
довольно наивный вопрос: есть ли на данный момент в России (в Москве)
спрос на людей, которые любят и хотят заниматься алгоритмически-сложными
задачами или все же базы данных "склад" уже подмяли все под себя?
Posted via RSDN NNTP Server 1.9
Re[3]: Программирование стало более высокоуровневым?
От: Glоbus Украина  
Дата: 07.09.05 06:49
Оценка:
Здравствуйте, sch, Вы писали:

>> Ты абсолютно прав — и это с точки зренияитосри вполне нормальный

>> процесс. По мере того, как программирование охватыаае твсе боле широкие
>> сферы деятельности нужны люди, педалящие именно для этой сферы. А так
>> как у нас далеко не все программеры педалят для Наса, а вокруг сплошной
>> е-коммерц и корпоративные бизнесссс-решения, то и получается, что никому
>> этот уровень нафиг не нужен. Нужные кодеры для объемных и алгоритмически
>> не очень сложных задач. Эти кодеры, так как их большенство, и создают
>> общую картину "упадка культуры" в программинге.

sch>Все же есть

sch>довольно наивный вопрос: есть ли на данный момент в России (в Москве)
sch>спрос на людей, которые любят и хотят заниматься алгоритмически-сложными
sch>задачами или все же базы данных "склад" уже подмяли все под себя?

Очень трудно судить о Москве, находясь в другом городе знаешь ли А касательно спроса — он всегда есть. Только пока что базы данных "склад" доминируют.
Удачи тебе, браток!
Re[3]: Программирование стало более высокоуровневым?
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 07.09.05 06:51
Оценка:
Здравствуйте, sch, Вы писали:

sch>Ты затронул очень животрепещащую для меня тему Дело в том, что я

sch>патологически
sch>неспособен разбираться в таких "объемных и алгоритмически несложных
sch>задачах" -- очень быстро становится неинтересно, исчезает внимание, в
sch>результате я пишу простые вещи долго и некачественно=) Когда у меня встал
sch>вопрос о месте работы, то я не смог придумать ничего лучше разработки
sch>компьютерных игрушек: тут и симуляция физики, и искусственный интеллект, и
sch>графика, и звук, и вообще игровая логика -- пока не жалуюсь. Все же есть
sch>довольно наивный вопрос: есть ли на данный момент в России (в Москве)
sch>спрос на людей, которые любят и хотят заниматься алгоритмически-сложными
sch>задачами или все же базы данных "склад" уже подмяли все под себя?

Мне кажется, что твой вопрос в чем-то перекликается с тем, что обсуждалось вот в этой ветке: Re[5]: Джоэл снова зажигает
Автор: Геннадий Васильев
Дата: 02.09.05
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[4]: Программирование стало более высокоуровневым?
От: aka50 Россия  
Дата: 07.09.05 07:30
Оценка: +1
Здравствуйте, ON, Вы писали:

>> Интересно, как ты на "ЛИСП" робот запрограммируешь?


ON>Странный вопрос, как на "языке искусственного интеллекта" запрограммировать робота...

ON>я так понимаю это будет "Быстро"...

Посмотри наш спор выше. Роботы-игрушки с исскуственными интелектом, и высокоточные промышленные
роботы это разные вещи. "язык искусственного интеллекта" тут немного не тот термин, в данном
случае больше нужен "математический язык". Так что на счет "Быстро" думаю не совсем так.
Скорее можно сказать "Возможно".
Re[6]: Программирование стало более высокоуровневым?
От: FDSC Россия consp11.github.io блог
Дата: 07.09.05 10:57
Оценка:
Здравствуйте, ON, Вы писали:

ON>1. Может не следует это называть программированием? Например Word очень адаптированная среда разработки, скажем человек там пишет кулинарные рецепты. Тоже среда и тоже программы, но как-то уже не то.

ON>2. Речь шла о высокоуровневости. Тут однозначно никакой высоты нет, поскольку качественно разные вещи на больше-меньше не сравниваются. А самое удачная среда для написания и выполнения интерпретаторов выражений какого-то совершенно нового вида это Лисп.

Чем написание интерпретаторов более "программирование", чем решение сложных математических задач?



Я не сравниваю принципиально разных вещей, я говорил только про программирование с определённой специализацией. Я не говорю про пользователя-проектировщика системы Catia, про наборщика тексов в Word. Я говорю про окружение, в котором работает программист: сам язык, подключаемые библиотеки и модули других программ.

Если в Word только текст набирать — это не программирование. Но, в Delphi, например, даже классы есть для взаимодействия с MS Word. Написать программу для автоматической генерации отчётов в Word — это уже программирование.



Сначала человек программировал на машинных кодах и был вынужден реализовывать самые простейшие операции. В DOS каждый программист заботился сам о графическом интерфейсе. В Windows этого уже нет, при программировании с MFC прогр. заботился о создании форм сам, с VCL или .NET — нет и т.д. Всё это — повышение уровня абстракции при разработки GUI приложений.

Каждый язык имеет свою специализацию, выражающуюся как в синтаксисе, так и в наличии стандартных подпрограмм или множества сторонних библиотек. Такие специализации повышают высооуровневость программирования.

В этом смысле, функции Catia и её надстроек, MS Word и т.п. есть для программиста специализированная библиотека, повышающая уровень абстракции ПРОГРАММИРОВАНИЯ приложений-надстроек, решающих конкретные задачи конкретной области.

Например, вместо написания функций разбиения документа на слова, орфографической проверки и т.п. пользователь (то есть программист, пишущий своё приложение) уже работает на уровне понятий слова, абзаца, их свойств, выполнения проверки орфографии и грамматики, а не на уровне отдельных символов, к тому же закодированных в определённый формат.
Re[4]: Программирование стало более высокоуровневым?
От: sch  
Дата: 07.09.05 11:52
Оценка:
> Мне кажется, что твой вопрос в чем-то перекликается с тем, что
> обсуждалось вот в этой ветке:
> Re[5]: Джоэл <br />
<span class='lineQuote level1'>&gt; снова зажигает</span>
Автор: Геннадий Васильев
Дата: 02.09.05


Спосибо большое за ссылку.
Идеи конечно у него не блещут новизной -- то что хорошие специалисты
делают хорший софт по-моему не требует доказательств. Но стиль изложения!
"Анджелина Джолли -- такая лапочка" Джоэл стал моим третьим любимым
автором после Кнута и пары K&R
Posted via RSDN NNTP Server 1.9
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.