Имя: Пароль:
LIFE
 
OFF: Полиморфизм, инкапсуляция, наследование
0 nikitka55
 
11.06.12
13:45
1. КГ/АМ 48% (13)
2. Предметно-ориентированное 44% (12)
3. Объектно-ориентированное 7% (2)
Всего мнений: 27

Делфи как известно объектно ориентированные программирование, а 1С какое?
на другом форуме написали что это предметно-ориентированный язык, согласны ли Вы с этим?
1 nikitka55
 
11.06.12
13:46
и присутствует в 1С такие понятия как в заголовке?
2 Sakura
 
11.06.12
13:46
*запаслась пивом и попкорном*
3 aleks-id
 
11.06.12
13:47
интересно, о чем думал автор создавая ветку... какой вообще смысл в теме?
4 MadHead
 
11.06.12
13:48
в 1с нет программирования, в 1с конфигурирование
5 aleks-id
 
11.06.12
13:48
(2) лучше прикрути голосовалку к ветке. с одним пунктом КГ/АМ
6 andrewks
 
11.06.12
13:48
вброс хорош, но день не тот
7 MadHead
 
11.06.12
13:49
А вообще баба спички паравоз
8 Amra
 
11.06.12
13:49
(2) Делись, а то лень бежать)))
9 aleks-id
 
11.06.12
13:49
.

КГ/АМ
10 Sakura
 
11.06.12
13:50
(8) а по сабжу?)))
11 aleks-id
 
11.06.12
13:50
чую что автор нахватался умных слов на викискладе и решил блеснуть в среде тупых и жадных
12 Lama12
 
11.06.12
13:51
(0)Сравниваем мягкое с горячим?
Однако.

КГ/АМ
13 nikitka55
 
11.06.12
13:52
Написал же в два сообщения, все понятно, и про название темы тоже задал вопрос
14 andrewks
 
11.06.12
13:53
2

Предметно-ориентированное
15 andrewks
 
11.06.12
13:53
с лёгким налётом

Объектно-ориентированное
16 Sensodin
 
11.06.12
13:54
свой вариант

КГ/АМ
17 Злопчинский
 
11.06.12
14:32
1С единственно и истинно объектно-ориентированное программирование: приехал на объект, соориентировался и ну программировать!

Объектно-ориентированное
18 Amra
 
11.06.12
14:32
(17) )))))
19 Sakura
 
11.06.12
14:33
(17) ну да :)
20 Мизантроп
 
11.06.12
14:42
(0)
> Полиморфизм, инкапсуляция, наследование

Никита, расскажи словами своими что это такое. Только без википедий.
21 _Atilla
 
11.06.12
14:46
так то

Предметно-ориентированное
22 experimentator76
 
11.06.12
15:19
(0) без разницы - главное чтобы бабло платили
23 Лефмихалыч
 
11.06.12
15:30
(0) сидите на своих дельфях, не вставая, получайте свою маленькую, но гордую зарплату. В 1С даже вьюх нет, там все не как в дельфи

Предметно-ориентированное
24 чувак
 
11.06.12
15:32
а в чем смысл предометно-ориентированного программирования?
25 experimentator76
 
11.06.12
15:35
(24) скорость разработки
с переходом на каждую новую платформу 1С скорость увеличивается
26 experimentator76
 
11.06.12
15:38
помню как происходил переход на программирование в среде разработчика
олдскульные проги рисовали формочки с событиями сами - это давало гибкость и "элитарность" решениям
но среда разработчика повышала скорость разработки решения и в итоге выиграла имхо
27 Партизан
 
11.06.12
15:38
написано же в ЖКК на первых страницах !!!

Предметно-ориентированное
28 experimentator76
 
11.06.12
15:40
+(26) так и с ПОП - для своих целей это вполне разумная эволюция
29 Skylark
 
11.06.12
15:42
Комикс есть шикарный.
- Скажи мне три самых главных слова...
- Полиморфизм, инкапсуляция, наследование
30 MaxS
 
11.06.12
15:51
1с - язык более высокого уровня. При его разработке были использованы средства, указанные в subj, этого пока достаточно.

Предметно-ориентированное
31 DEVIce
 
11.06.12
16:03
(0). Тут этого всего нет и не будет. Потому что иначе бывшие военные, милиционэры, врачи и прочие гуманитарии не смогут конфигурировать авнокод. :)
32 jsmith
 
11.06.12
16:08
даже я такой тупой вопрос не задал бы

КГ/АМ
33 HeroShima
 
11.06.12
16:21
хоть горшком назови...

Предметно-ориентированное
34 sergey yevsenya
 
11.06.12
16:36
новая партия студентов выпустилась

КГ/АМ
35 ChAlex
 
11.06.12
18:38
(0) Оба-на, а с каких это пор 1С стала языком программирования? Ну тогда можно заодно проголосовать и к AMP-проигрываетелю
36 izekia
 
11.06.12
18:52
(0) и всем ответившим про предметно-ориентированное:
вы реально считаете, что все эти костыли придуманные 1С - это способ облегчить программирование?  Я имею в виду дерево метаданных, чем по сути регистры сведений отличаются от справочников, неужели для того чтобы соорудить некое подобие никому не нужной параметризации в 1С нужен был костыль типа ПВХ?
я уже не опускаюсь до регистров расчетов и регистров бухгалтерии
37 rphosts
 
11.06.12
18:53
Безусловно предметно-ориентированная платформа 1С, нацеленая на решение учётных задач разного плана.

Предметно-ориентированное
38 rphosts
 
11.06.12
18:54
(36) для тех кто в танке: это сделано для того что-бы разработчик уделял больше внимания бизнес-логике а не кодированию.
39 izekia
 
11.06.12
18:57
(38) тем кто в танке следовало бы перечитать и попытаться осмыслить то что я написал
ПВХ новый где-то в своих решениях использовал?
40 rphosts
 
11.06.12
19:00
(39) ПВХ - конечно, есть краска и её всего 100 кг по бухии и есть спецодежда сапоги которых 30 пар, а для снабженцев то-же самое но краска жёлтая 50 кг, краска зелёная 10 кг и т.п., сапоги 40размер 3 пары и т.д.
41 izekia
 
11.06.12
19:04
(40) лол, ну ка расскажи как ты используя пвх это реализовал?
42 ErrorEd88
 
11.06.12
19:08
43 rphosts
 
11.06.12
19:12
(41) может ещё всю базу вугрузить? ПВХ для того и нужен что-бы можно было разным элементам объекта (апример элементам справочника) назначать разные наборы свойств. Разве нет?
44 DGorgoN
 
11.06.12
19:12
Дотянем 1000 постов: 1С не язык программирования!

КГ/АМ
45 rphosts
 
11.06.12
19:15
(44) ага, это больше среда разработки с частичной поддержкой WYSIWYG
46 IamAlexy
 
11.06.12
19:24
ООП  в 1С ненужно!
47 rphosts
 
11.06.12
19:30
(46) угу и без этого *омно-кода хватает!
48 experimentator76
 
11.06.12
19:36
(47) можно было бы в зависимости от уровня разработчика открывать
новые объекты метаданных для работы )
на 12-м уровне позволяется работать с ООП, создавать свои объекты конфы и т.п.
49 IamAlexy
 
11.06.12
19:37
не поверю что ООП нужно пока не будет приведен практический пример задачи, которая с ООП решается а без ООП не решается.
50 izekia
 
11.06.12
19:47
(43) чем регистр "свойства объектов" реализованный через пвх, отличается от регистра реализованного через перечисление или справочник?
тем что пользователь может добавить дополнительную категорию?
так это скорее зло, чем добро
51 izekia
 
11.06.12
19:53
(49) даже на асме можно изобразить подобие ООП
но: это будет раза в три больше кода, плюс минимум наглядности
52 izekia
 
11.06.12
19:55
(49) если хочешь можешь изобразить подобие старого баяна типа "Нужно ли ООП в 1С", и я с удовольствием поучаствую и приведу живые примеры где это просто необходимо
53 DGorgoN
 
11.06.12
19:55
(52) Я жду
54 rphosts
 
11.06.12
20:02
(50) нашим юзерам это нравится, мы на это не отвлекаемся - это благо!
55 rphosts
 
11.06.12
20:04
(51) можно и на асме, но куча сил уйдет на интерфей, структуры хранения данных и т.п. но оно нам надо?

(52)я-б посмотрел...
56 DGorgoN
 
11.06.12
20:05
(52) Ну!!!
57 NcSteel
 
11.06.12
20:08
(56) Что ну? Балобол он.
58 IamAlexy
 
11.06.12
20:11
хм.. пока нет ни одного примера.
вывод: ООП ненужен.
что и требовалось доказать..
59 rphosts
 
11.06.12
20:13
(58) ну в итоге все эти ООП транслируются в исполняемый код, который можно и на асме нарисовать, но как было ранее сказано не так наглядно.
Для учётных задач 1С впоне сбалансированная система, не без вопросов к ней но сбалансированная.
60 DGorgoN
 
11.06.12
20:16
(59) Да норм ваще - не нравилось бы пошел куда либо в другое =)
61 izekia
 
11.06.12
21:01
(58)(59)(60) гундосы, сегодня не смогу, если только после футбола
как пример - юнит-тестирование, нереализуемо
62 izekia
 
11.06.12
21:11
я не про пример ооп, а про нерабочие структуры от 1С

примеров ооп может быть много, тупо мне нужно заполнить общие реквизиты: каким костылем мне нужно пользоваться?
63 izekia
 
11.06.12
21:11
и мне нужно каждый раз помнить про этот костыль, когда я добавляю новый "класс"
64 Jolly Roger
 
11.06.12
22:47
(58) ага. а тараканы слышат ногами...
65 Лефмихалыч
 
11.06.12
23:37
(62), (63) подписька есть, чтобы не помнить
66 experimentator76
 
11.06.12
23:41
дада и там флажочег на Документы чтобы не помнить что его туда надо добавить)
67 mikeA
 
11.06.12
23:53
(58) если так рассуждать, нет ни одной задачи, которая решается на 1С, но не решается, на С++,  хотя бы потому, что 1С написана на С++. и какой отсюда следует вывод?

КГ/АМ
68 IamAlexy
 
11.06.12
23:57
(67) нет.
речь не об этом.

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


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

от сюда вопрос к взрослому дядечке: пусь он хотя бы приведет пример хотя бы одной задачи которые решаются в этой самой песочнице которые с помощью лопатки и ведерка решить нельзя а вот с помощью карьерного эксковатора можно..
69 ХочуСказать
 
11.06.12
23:58
опять?
как же надоела школота

КГ/АМ
70 gr0ck
 
12.06.12
00:54
Это риторический вопрос, ответ должен быть тоже риторическим
71 izekia
 
12.06.12
02:41
(66) на все документы? мне надо только на наследуемые
72 rphosts
 
12.06.12
05:14
(71) офигенная задача которая только под силу ООП!
Делаешь заготовку документа со всем кодом в т.ч. заполнение значений, а все требуемые документы делаешь копированием этого шаблоа с последующим переименованием и дописыванием функционала... в шаблон ваставить комент что сделано на основе такого-то шаблона.

Но это не совсем верный подход, правиьтный в 1С будет такой: вызов из этого шаблона 1 метода общего модуля, который делает всё что требуется.

Офигенный пример! Я просто валяюсь. Дайте примеров ищё!
73 МастерВопросов
 
12.06.12
06:32
1С строго соответствует определению:
wiki:Предметно-ориентированный_язык_программирования

Предметно-ориентированное
74 МастерВопросов
 
12.06.12
06:44
(1) еще бы кто-нибудь объяснил 1С никам что это такое.
Инкапсуляция, наверное, есть - мы же можем через точку от внешней компоненты писать скрипты на других языках.
75 Рэйв
 
12.06.12
07:23
(74) А причем тут инкапсуляция?
76 skunk
 
12.06.12
07:26
(75)есть объект документ ... а есть объект документ.приходнаянакладаная ... который наследует все свойства объекта документ ... неа?

КГ/АМ
77 Рэйв
 
12.06.12
07:28
(76)Неа..Это наследование:-)

В чистом виде инкапсуляции в 1С нет.

Самый простой пример - получение/установка публичными методами приватных переменных класса.  Ну еще много ньюансов разных привести наверное можно.
78 skunk
 
12.06.12
08:45
у ссылочных объектов есть реквизит ГУИД ... который от пользователя скрыт ... его значение и установку осуществляет через специальный процедуры объекта
79 Рэйв
 
12.06.12
08:51
(78)Ну да. Это оно и есть. Только это все предопределенные платформой вещи . Самому такую схему организовать вряд ли удастся.
80 SnarkHunter
 
12.06.12
08:55
Любители ч0тких определений вызывают идиосинкразию своим редкостным занудством...

КГ/АМ
81 Gobseck
 
12.06.12
09:18
Очень простой язык программирования был одним из преимущств 1С 7.7. В первом приближении этот язык можно было освоить за 1 месяц. Просто почитать руководство и покопаться в типовых конфигурациях. Простой язык программирования 7.7 оставлял время на изучение предметной области.
Когда я увидел 1С 8, то был поначалу огорчен и разочарован. Этот инструмент гораздо сложнее и за 1 месяц его освоить нереально. Постепенно более или менее разобрался и успокоился. Поклонникам ООП могу посоветовать пользоваться другими средствами разработки. Благо их предостаточно.

Предметно-ориентированное
82 Рэйв
 
12.06.12
09:33
(81)+1 И то верно. С чего вдруг не объектно ориентированный язык не считается кошерным? чистый асм - вообще спокойно живет без объектной модели и никто не посмеет его назвать ущербным. ООП - это просто один из прикладных стилей.Не стоит делать из него икону.
83 Рэйв
 
12.06.12
09:38
+(82)Другое дело что программер должен все таки знать основы ООП, т.к. это напрямую влияет на качество кода.
84 quest
 
12.06.12
09:47
Задолбало.
Глупая тема.

КГ/АМ
85 Рэйв
 
12.06.12
09:49
(84):-)  Еще не и не два увидим. Эта тема - вечная как птица Феникс!:-)
86 Рэйв
 
12.06.12
09:50
*не раз
87 quest
 
12.06.12
10:16
да лучше бы про использование goto спросили. Срача было бы больше. Или про декларативное программирование в 1С. Тоже было бы над чем поржать...

А так баян. уже даже не прикольный
88 skunk
 
12.06.12
11:15
гоуту уже направо и лево распилили давно ...
89 cViper
 
12.06.12
11:25
(1) Инкапсуляция есть, а вот полиморфизма с наследованием нет.
90 Рэйв
 
12.06.12
12:08
(89)Пример в студию.
91 Рэйв
 
12.06.12
12:09
(89)+ А в связи с не жесткой типизацией переменных полиморфизм реализован самой платформой.
92 МастерВопросов
 
12.06.12
12:13
(75) ну типа методами ВК мы можем пользоваться, а редктировать саму  DLL-ку нет.
93 Рэйв
 
12.06.12
12:14
(92)о как повернул! :))
94 МастерВопросов
 
12.06.12
12:19
(93) или тема с DLL не имеет отношения к ООП?

//как оно там в настоящих языках программирования, расскажите хоть.
95 quest
 
12.06.12
12:56
(94) да почитал бы что ли букварь, а?
96 Web00001
 
12.06.12
13:23
годный, качественный вброс, вызывает бурление СамиЗнаетеЧего, в то время как 1С как была самым популярным продуктом на рынке последние лет 10 так и остается, на фоне криков "недоязык" и тд, собака лает караван идет. А на тему "как мне сделать так что б заполнялся реквизит у конкретно взятых наследуемых документов" тут я согласен в одном случае из тысячи пдатформа может быть неудобна, так вы не забивайте гвозди отверткой и надобности утяжелять отвертку не появится. Регистры сведений, ПВХ и иже с ним дают +100500 к разработке задач на тему автоматизации бизнеса. Так что (52) все замерли в ожидании.
97 rphosts
 
12.06.12
13:33
(96) он не в первой ветке машет руками... недождёшься!
98 cViper
 
12.06.12
13:43
(91) Какое это имеет отношение к программированию на встроенном языке 1с?
(90) Пример: самописный документ (обработка) с реализованными экспортными и не экспортными функциями. Экспортные функции определят интерфейс, который смогут использовать другие разработчики. Что внутри функций никого не волнует. Есть корректно работающий интерфейс, вызывай метода на здоровье.

Предметно-ориентированное
99 Рэйв
 
12.06.12
13:48
(98) >>Какое это имеет отношение к программированию на встроенном языке 1с?

Такое, что повезло пользоваться всеми прелестями полиморфизма, не реализовывая его вручную:-)

...
Ну да. В таком ключе похоже на инкапсуляцию:-)
100 Нуф-Нуф
 
12.06.12
13:48
сотыганах
101 bizon2008
 
12.06.12
13:49
Это фреймворк.
102 xenos
 
12.06.12
13:58
Наследование:
1-го уровня

Есть класс справочников, документов. У них есть подклассы конкретные виды документы. Для них можно создать общие реквизиты, и есть общие методы типа "Записать".

2. Инкапсуляция:
экспортные процедуры функции.

3. Полиморфизм(как я его понимаю):
Подписка на события.
103 Рэйв
 
12.06.12
14:06
(102) 3 - неверно.

Примерно так:
...
А=Сложить(2,5);
Б=Сложитть("2","5");
...

Функция Сложить(П1,П2)
  Вохврат П1+П2;
КонецФункции
//----------


На сях например пришлось бы перегружать функцию Сложить() под каждый тип параметров
104 xenos
 
12.06.12
14:12
(103) Твой пример можно наверное на любом языке сделать. Полиморфизм он вроде как скорее к объектам относится.
105 Рэйв
 
12.06.12
14:17
(104)Не на любом. На бейсике например не получится:-)..

А на тех которые поддерживают на каждую пару типов придется продублировать реализацию. Это в 1С красота- один раз написал и успокоился:-)
106 Рэйв
 
12.06.12
14:17
(104) Полиморфизм как раз к функциям относится.

Разные типы парамтров при одноименном вызове.
107 Рэйв
 
12.06.12
14:18
хотя нет..На бейсике тоже можно будет:-)
108 Рэйв
 
12.06.12
14:18
+ и количество параметров тоже может быть разным.
109 xenos
 
12.06.12
15:03
(108) Что то я совсем плохо понимаю, что такое полиморфизм.
110 Рэйв
 
12.06.12
15:10
(109)В типизированных языках праметрам функции непрменно придется указывать ожидаемый тип.

То есть
при
А=Сложить(2,5);

функция Сложить()
определялась бы как

int Сложить(int a,int b)
{  
 return a+b;
}

Если бы ты попробовал
Б=("2","5")

оно бы тебя послало, пот ому что ожидаются числа.

И тогда тебе пришлось бы для сложения тебе писать функции

СложитьЧисла()
СложитьСтроки()

А если учесть что типов чисел тоже приличная кучка(float,doble  и т.д) то для их сложения тебе тоже пришлось бы называть функцию уникальным именем.

Поэтому придумали паерегрузку функций. Ты пишешь столько вариантов функции сложить сколько вариантов сложения имеешь, а потом просто пишешь

Б=Сложить("2","5");

и компилятор сам найдет подходящую реализацию с правильными параметрами.

Это и называется полиморфизм.
111 Рэйв
 
12.06.12
15:11
Если бы ты попробовал
Б=("2","5")

=

Если бы ты попробовал
Б=Сложить("2","5")
112 xenos
 
12.06.12
15:15
(110) А блин, я привык что в 1С можно без этого.
113 Рэйв
 
12.06.12
15:17
(112)Вот я и говорю, что в 1С мы имеем все прелести полиморфизма без ручной реализации:-)
114 Loyt
 
12.06.12
15:17
(110) Вот, кстати, всегда интересовал практический смысл таких перегрузок. В языках с не жёсткими типами. Как пример для изучения ООП - нормально, а кроме?
115 Loyt
 
12.06.12
15:18
(113) Вопрос запоздал. :)
116 Loyt
 
12.06.12
15:25
(113) Ну и, кстати, ручная реализация-таки требуется. Просто не переопределением функции.
117 Рэйв
 
12.06.12
15:32
(116) Мне кажется что внутри на каждая наша функция на встроенном языке при компиляции кода перегружается под все возможные в системе типы:-)

ВСе таки платформа то на плюсах написана.
118 Loyt
 
12.06.12
15:46
(117) С точки зрения программиста это уже не имеет никакого значения.
119 qwerty09
 
12.06.12
15:53
(17) валяюсь xD
120 quest
 
12.06.12
16:58
(114) смысл перегрузки сделать поведение зависящее от типа аргумента.
К примеру если бы 1С могла бы делать определение типов и вызывать функцию с соовтетствующей сигнатурой тебе не пришлось бы в коде писать Если ТипЗнч(Параметр) = тип("тут тип") тогда... А просто определелил бы функцию которая перегружает интерфейсную функцию реализацией понимающей нужный тип. к пример тот же сложить для массивов мог бы выглядеть так
Сложить(а как Массив, б как Масив) - и внутри уже работаешь гарантированно с массивами.

(113) полиморфизма в 1С нет. Есть общий тип, от которого наследуются конкретные типы - число, строка, дата, справочникссылка и т.д. Все что ты имеешь - это неявное преобразование от одного типа к другому. И на этом все. Если тебе требуется полиморфизм то реализовываешь его сам. Ручками. Через if.
121 veressk
 
12.06.12
17:00
ное.

КГ/АМ
122 quest
 
12.06.12
17:00
(117) тебе не правильно кажется. Для каждого набора типов не происходит перегрузки написаной тобой функции. Происходит вызов перегруженных функций входящих в класс отвечающий за хранение переменной.
123 Loyt
 
12.06.12
17:03
(120) Не, это понятно, но писанины-то остаётся столько же, если не больше. Разве что всё принадлежащее конкретному классу запихивается в этот конкретный класс, а не где-то в общих модулях валяется.
124 qwerty09
 
12.06.12
17:21
(110) Садись два!
То что расписал это и близко не перегрузка методов - это просто методы с различными сигнатурами, перегрузка это когда метод, дочернего класса наследует метод родительского класса, при этом изменяя его функционал.
И какой из методов вызвать компилятор не решает, это зависит от того с какого объекта ты его вызываешь.
125 Steel_Wheel
 
12.06.12
17:55
(124) >> перегрузка это когда метод, дочернего класса наследует метод родительского класса, при этом изменяя его функционал.

Садись, 2. Не путай oveкload (перегрузку) с override (то, что ты написал)
126 andrewks
 
12.06.12
18:24
то, что описано в (110), имеет место быть, за поправкой:
1. это (перегрузка функций, function overloading) одно из проявлений полиморфизма, наряду с перегрузкой методов (method overloading) и переопределением методов (method overriding).
2. подходящую реализацию перегруженных функций определяет компилятор и статически линкует, в случае же с перегруженными методами это определяется динамически прямо в рантайме

так что никто не двоечник, никто не отличник
127 cViper
 
13.06.12
10:03
(110) Нет. Ты не прав.
Приведу элементарный пример полиморфизма:

Родитель:
public abstract class Animal {
   public abstract void Say();
}

Дети:
public class Dog extends Animal{
   @Override
   public void Say() {
       System.out.println("Gav-Gav");
   }
}
public class Cat extends Animal{
   @Override
   public void Say() {
       System.out.println("Meow-meow");
   }
}

Программа:
public class Animals {
   public static void main(String [] args){
       List<Animal> animalList = new LinkedList<Animal>();
       animalList.add(new Cat());
       animalList.add(new Dog());
       for (Animal animal : animalList) {
           animal.Say();
       }

   }
}
Помещает в коллекцию с типом родителя разных детей и потом вызывает родительский метод у объектов коллекции. Происходит позднее связывание и вызываются методы конкретных классов, а не родителя. Поли - много, морф - форма. полиморфизм - способность принимать много форм.

Вывод данных в консоли:
Meow-meow
Gav-Gav
128 izekia
 
13.06.12
12:32
(72) просили пример наглядный, я его написал

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

все остальные примеры они более более специализированы
суть в том, что мне нужно держать в голове кучу вещей, которая по сути мне не нужна, если бы в 1С был реализован ооп
129 izekia
 
13.06.12
12:57
(127) полиморфизм не обязательно может быть выражен через наследование, так же можно использовать параметризацию, о чем и шла речь в (110) правда немного не в таком виде, а что-то вроде описания функции:
takeElem :: Int -> [a] -> a
и соответственно реализация:
takeElem :: Int -> [Int] -> Int
takeElem :: Int -> [Char] -> Char
130 godmod80
 
13.06.12
15:01
(0) 1c программа на ООПе, свои произвольные классы нельзя создавать, только для задач и проблем учета в табличках, но в части языка имеет признаки ООП

Предметно-ориентированное
131 Тактик
 
13.06.12
15:32
А что есть сомнения? 1С разве годится на что нибудь кроме автоматизации учета?

Предметно-ориентированное
132 CaptanG
 
13.06.12
16:06
(0)Было уже

КГ/АМ
133 izekia
 
13.06.12
16:12
(102)
3 - мимо
1 - наследование, сложно таковым назвать, так как наследуется поведение объекта, которое нельзя переопределить и определенный интерфейс с уже реализованными заглушками
мы не можем ни расширить ни переопределить заданное поведение
2 - инкапсулировать мы можем только поведение объекта, но не его состояние, соответственно это тоже не работает
можно конечно вспомнить про неэкспортные переменные модуля, но так как в 1С объекты как правило хранятся в бд, а именно их мы не можем сделать скрытыми
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший