![]() |
![]() |
![]() |
|
.Net: DLL для 1C - выбор среды разработки | ☑ | ||
---|---|---|---|---|
0
Diesellogin
14.12.07
✎
13:49
|
Возникла необходимость разработки внешней компоненты для 1С, но никак не могу определиться, на чем же лучше писать? В "книге знаний" написано, мол на Visual Basic.net или Visual C#. А вот чем отличается Visual Basic.net от обычного Visual Basic и чем отличается Visual C# от Visual C++, я не знаю. По скольку софт необходимо брать лицензионный, то надо точно знать все таки какой именно софт.
Народ, если есть совет как поступить, буду признателен. Прежде чем браться за изучение того же C#, а C++ я тоже не знаю, хотелось бы знать его преимущества перед тем же Basic (кроме производительности кода конечно) или Delphi, или Foxpro (вроде бы все визуал, все классовые и т.д.). |
|||
1
nop
14.12.07
✎
13:50
|
(0) Абсолютно все равно. Но в .НЕТ или Шарпе - смысла нет
|
|||
2
Чоп
14.12.07
✎
13:53
|
||||
3
Ёпрст2
14.12.07
✎
13:54
|
"Возникла необходимость разработки внешней компоненты для 1С" ...
А чего за необходимость то хоть? ... |
|||
4
Hadgehogs
14.12.07
✎
14:03
|
Естественно Дельфи.
Там все есть, все просто и язык человеческий... |
|||
5
Волшебник
14.12.07
✎
14:05
|
"А вот чем отличается Visual Basic.net от обычного Visual Basic и чем отличается Visual C# от Visual C++, я не знаю"
Отличаются примерно так же, как 1С 8.0 от 1С 7.7 |
|||
6
Diesellogin
14.12.07
✎
14:08
|
(1) Почему нет смысла?
(3) Да по разному, то произвольные файлы читать и писать блоками, то обработка строковых массивов скоростная нужна, то таже отправка/прием почты. Конечно уже все есть готовое, но есть большое желаение писать собственные библиотечки, да и пользоваться несколькими готовыми менее изящно, чем одной и своей. (4) А по цене как не в курсе, мне на работу (юр. лицо) надо? |
|||
7
Diesellogin
14.12.07
✎
14:08
|
(5) Нихрена себе. И в какую сторону перевес?
|
|||
8
Hadgehogs
14.12.07
✎
14:08
|
Блин, надо Дельфи под NET посмотреть, а то я что - то на своем Дельфи 6 застрял..
|
|||
9
Hadgehogs
14.12.07
✎
14:10
|
(6) 1С всего этого не сможет?
8.0 точно сможет... |
|||
10
Almv
14.12.07
✎
14:11
|
(7) Пиши на VB.NET
|
|||
11
Волшебник
14.12.07
✎
14:13
|
(6) Всё это можно сделать штатными средствами платформы 1Сv8
|
|||
12
Almv
14.12.07
✎
14:14
|
(7) перевес....это смотря для каких задач тебе С нужен
драйверы тогда С++, пользовательские приложения .NET |
|||
13
Diesellogin
14.12.07
✎
14:16
|
(9) Обработка строк (анализ содержимого, преобразование в соответствии набору шаблонов и т.д. ----- медленно), блочная обработка больших файлов (jpg, mp3 - например ------ вообще невозможно, реализовано только построковое чтение файлов - тормозища) - это ве про 7.7, на 8-ке конечно дело другое, я бы с удовольствием везде перешео на нее, но в основном приходится ограничиваться 7-кой
|
|||
14
Diesellogin
14.12.07
✎
14:18
|
(12) Уже понятней. А вообще, если начинать изучать, то C++?
|
|||
15
IUnknown
14.12.07
✎
14:19
|
примеры идут на трех языках... паскаль(дельфин)... с++(визуал)... васик(визуал) ... первый от борланда, два последних от мс...
|
|||
16
Вектор3
14.12.07
✎
14:20
|
Лучше с С# или Java
|
|||
17
Almv
14.12.07
✎
14:21
|
(13) нет начинай изучать NET... С# от VB отличается только синтаксисом в первом С во втором случа Basic
|
|||
18
Йожык
14.12.07
✎
14:22
|
Вот товарищ по работе притащил CodeGear RAD Studio... по всей видимости очень не плохая среда... вот токма стоит канеш :(
|
|||
19
Almv
14.12.07
✎
14:22
|
(13)-> (14)
|
|||
20
Diesellogin
14.12.07
✎
14:39
|
Никто не знает, почему (1) говорит, что нет смысла в NET и SHARP?
|
|||
21
nop
14.12.07
✎
14:42
|
(6, 10, 16, 20) А толку от кроссплатформенного языка для написания ДЛЛ, которая под Винду только работает?
|
|||
22
Diesellogin
14.12.07
✎
14:49
|
(21) На сколько я понял, возможности dot Net для типовых задач написанных на одном и том же языке особого смыла и не имеют? А вот про производительность кода: разве нет смысла в JIT-компиляции?
|
|||
23
nop
14.12.07
✎
14:53
|
(22) имхо, - не имеют.
А о J I T-компиляции вообще ничего не знаю. Не люблю я эти НЕТ и Шарп - американские козни. Ява - рулит! |
|||
24
Asmody
модератор
14.12.07
✎
14:53
|
[Обработка строк (анализ содержимого, преобразование в соответствии набору шаблонов и т.д. ] - VBScript.RegExp делает без всяких ВК
[блочная обработка больших файлов (jpg, mp3 - например] - зачем такое в 1С? и если все же "очень нужно", то в 1С++ есть класс BinaryData. |
|||
25
Asmody
модератор
14.12.07
✎
14:54
|
(23) а Ява - русская? :)
|
|||
26
nop
14.12.07
✎
14:57
|
нашел! http://ru.wikipedia.org/wiki/JIT
(25) Чешский, но почти русский... Я любил кататься на ней в детстве |
|||
27
Diesellogin
14.12.07
✎
15:02
|
(22) JIT - Just in time, байт-код перед запуском компилируется каким-то образом под текущий процессор, что -то такое. Говорят, мол из-за этого производительность кода на данной конкретной машине возрастает.
(24) 1C++ - имеется ввиду C++? Что-то я не совсем пойму, причем здесь скрипт на VBScript - это же самостоятельный язык, причем медленный? |
|||
28
nop
14.12.07
✎
15:05
|
(27) ага. Найди разницу "ЛТ" и "JIT"
|
|||
29
Diesellogin
14.12.07
✎
15:07
|
(28) :) В первом случае русская "Л", во вотором лат. "J"+"I"
|
|||
30
Diesellogin
14.12.07
✎
15:07
|
(28) А чего "ага"?
|
|||
31
Gepard
14.12.07
✎
15:08
|
Я после шарпа на делфи смотреть не могу...
|
|||
32
Gepard
14.12.07
✎
15:09
|
(20) да он просто шарпа не знает... вот и выкаблучивается
|
|||
33
nop
14.12.07
✎
15:10
|
(29)(28) ага, потому что сначала искал в гугле "Л Т компиляция"
|
|||
34
nop
14.12.07
✎
15:10
|
(32) конечно. Толку мне с него. Аутсорсингом не занимаюсь
|
|||
35
Gepard
14.12.07
✎
15:11
|
(34) вот я об этом и говорю :)))
|
|||
36
Gepard
14.12.07
✎
15:12
|
(35) + а причем тут "Аутсорсингом не занимаюсь"?
|
|||
37
Diesellogin
14.12.07
✎
15:12
|
(32) И чего, есть значительные преимущества?
|
|||
38
Gepard
14.12.07
✎
15:13
|
(37) просто хорошо продуманный язык, очень логичный и удобный
|
|||
39
Gepard
14.12.07
✎
15:13
|
(38) единственное "неудобство" для некоторых, надо ставить .NET Framework
|
|||
40
Asmody
модератор
14.12.07
✎
15:14
|
(27) тут почитай: Как выбрать только те элементы справочника который содержат кирилицу
|
|||
41
i-rek
14.12.07
✎
15:26
|
(39) ... для того чтобы разрабатывать не родные для .net com+ приложения
и потом ещё думать - а та ли версия .net стоит у клиента короче изврат тот ещё |
|||
42
Immortal
14.12.07
✎
15:27
|
хорошую религию выбрали индусы (с) Высоцкий..
имхо язык не важен |
|||
43
Gepard
14.12.07
✎
15:29
|
(41) ну.. на данный момент, версий не так уж и много...
|
|||
44
nop
14.12.07
✎
15:29
|
(36) у меня, в Харькове, все где требуеть НЕТ и Шарп программисты - это заграничные компании, и основной заказчик - иностранный.
|
|||
45
Gepard
14.12.07
✎
15:29
|
(43) + и почему не родные? там можно сделать COM объект всего лишь, поставив одну галочку
|
|||
46
Gepard
14.12.07
✎
15:31
|
(45) просто ремоутинг круче :)
|
|||
47
nop
14.12.07
✎
15:32
|
(46) пока что в этом себя не пробовал
|
|||
48
Gepard
14.12.07
✎
15:35
|
(47) а я как-то делал изменения данный по цепочке
1С - Компонента - Компонента - 1С в абсолютно различных базах... Компонента - Компонента - через ремоутинг... прикольно |
|||
49
Gepard
14.12.07
✎
15:35
|
данный = данных
|
|||
50
nop
14.12.07
✎
15:36
|
(48) что-то я сбился с мысли... "ремоутинг" - это что?
|
|||
51
Diesellogin
14.12.07
✎
15:37
|
(40) Вариант конечно, еще бы знать как работает VBScript.RegExp, в хелпе по VBScript есть, но желательно бы на русском да с примерами :)
|
|||
52
Gepard
14.12.07
✎
15:37
|
http://www.optim.su/cs/2001/4/remoting/remoting.asp
Ремоутинг в Microsoft.NET – это технология, позволяющая приложениям взаимодействовать друг с другом через границы процессов. Она позволяет посылать сообщения, работать с объектами, вызывая их методы и управляя их временем жизни, удаленно вызывая методы и прочее. Вы вольны выбирать пригодный вам канал передачи данных и способы сериализации объектов. Сегодня ремоутинг позволяет использовать TCP/IP и HTTP. Потенциально же возможности ремоутинга не ограничены рамками какого-либо сетевого протокола или операционной системы. Как и в случае SOAP, можно писать свои прослойки для доступа к объектам, если стандартных возможностей недостаточно. Ремоутинг позволяет строить распределенные приложения и легко передавать данные между ними. Сила данного механизма заключается в простоте реализации и гибкости использования различных протоколов для передачи информации. Ремоутинг представляет собой абстрактный подход к реализации межпроцессной коммуникации и предоставляет определенный набор замещаемых модулей. В целях упрощения разработки платформа .NET предоставляет несколько сервисов, обеспечивающих коммуникацию между процессами. Данная технология схожа с DCOM и CORBA по идеологии – максимальное упрощение разработки и развертывания распределенных решений, предоставление простого и мощного механизма удаленной работы с объектами. |
|||
53
nop
14.12.07
✎
15:40
|
(52) надо учить НЕТ. Для общего развития. По свободе...
|
|||
54
Diesellogin
14.12.07
✎
15:41
|
nop,Gepard, вы друг друга нашли :)
Все таки мне выцидить из вашего общения суть надо. За что же взяться? Оговорюсь, что C изучить хочу не только в помощь эске, но и как свмостоятельную альтернативу. |
|||
55
nop
14.12.07
✎
15:42
|
(54) уче все! Пригодится
|
|||
56
Gepard
14.12.07
✎
15:42
|
(54) нет разницы, но имей ввиду, что C++ - это не C#
|
|||
57
Кириллка
14.12.07
✎
15:43
|
(54)вот ты и определился.
|
|||
58
Diesellogin
14.12.07
✎
15:48
|
(56) И все таки, начинать с C++? Насколько я понял он ближе к фундаментальному C. Или все тоже самое (синтаксис), только в C# инструментарий шире? Короче говоря на C# можно написать все то, что написано на C++, а наоборот нет?
|
|||
59
nop
14.12.07
✎
15:50
|
(58) на C# можно написать все то, что написано на C++
да Наоборот тоже можно, только сложнее. И велокат может выйти |
|||
60
Diesellogin
14.12.07
✎
15:51
|
(59) "велокат" - это что?
|
|||
61
Gepard
14.12.07
✎
15:52
|
(59) имхо, наоборот
C# более высокоуровневый язык на С++ можно писать под любую OC, на C# ПО пишется под .NET Framework |
|||
62
nop
14.12.07
✎
15:52
|
(60) Это заново изобретенный велосипед
|
|||
63
nop
14.12.07
✎
15:54
|
(61) ну WinAPI и прочие особенности ОС я не учел.
|
|||
64
Gepard
14.12.07
✎
15:56
|
(63) тут дело не только в этом...
на C++ полностью независимые программы (зависят только от особенностей системы) C# - полностью зависит от .NET Framework (и ему пофиг какая система, главное, что установлен .NET (при правильном написании)) |
|||
65
Gepard
14.12.07
✎
15:57
|
(64) в общем C# привязан к платформе, так же как и 1С... только .NET Framework бесплатный
|
|||
66
Diesellogin
14.12.07
✎
15:58
|
Теперь все еще более яснее стало. Короче, приобретаю C++ для начала.
|
|||
67
nop
14.12.07
✎
15:59
|
(64) ага. Но .NET Framework ведь на С++ написан :)
|
|||
68
Gepard
14.12.07
✎
16:00
|
(67) скорей всего да...
|
|||
69
nop
14.12.07
✎
16:00
|
(66) да, наверно Фреймоврк как требование - лишне :)
|
|||
70
Gepard
14.12.07
✎
16:02
|
(69) но под ним (C#) ПО понадежней ;)
да и скачать .NET 2.0 размером 20 метров может каждый |
|||
71
Diesellogin
14.12.07
✎
16:04
|
(69) :) Типа того...
|
|||
72
nop
14.12.07
✎
16:07
|
(70) Тогда компоненте Сэтап писать надо. А есть ли InstallShield под НЕТ?
|
|||
73
Gepard
14.12.07
✎
16:08
|
(72) InstallShield может и с ПО .net работать, а есть и специализированные проекты в VS
|
|||
74
nop
14.12.07
✎
16:10
|
(73) Визуал студио вроде токо под Венду?
В смысле сетап кроссплатформенный, для красоты |
|||
75
nop
14.12.07
✎
16:10
|
(74) блин. Кроссплатформенный сетап - это бред
|
|||
76
Gepard
14.12.07
✎
16:11
|
а по поводу JIT - ПО компилируется под нужный проц. и в итоге работает быстрей
есть возможность предварительной компиляции (именно под этот компьютер) |
|||
77
Asmody
модератор
14.12.07
✎
16:11
|
(66) зачем "приобретать" С++?
|
|||
78
Gepard
14.12.07
✎
16:12
|
(75) да улыбнуло :)
|
|||
79
Gepard
14.12.07
✎
16:12
|
(77) и для C# можно экспресс студию бесплатную скачать
|
|||
80
Asmody
модератор
14.12.07
✎
16:14
|
||||
81
Gepard
14.12.07
✎
16:16
|
||||
82
Diesellogin
14.12.07
✎
16:16
|
(77) Потому что на предприятии, а не дома. Здесь все лицензионное стоит, смысл тогда был вкладываться в легальный софт?
Я кстати там писал вам (51) |
|||
83
Diesellogin
14.12.07
✎
16:17
|
(79) Бесплатную - это креканную?
|
|||
84
Asmody
модератор
14.12.07
✎
16:17
|
(75) ну почему же бред? http://www.macrovision.com/products/installation/installanywhere.htm
|
|||
85
Diesellogin
14.12.07
✎
16:18
|
(79)+ или урезанную?
|
|||
86
Asmody
модератор
14.12.07
✎
16:18
|
(83) бесплатную - это бесплатную
|
|||
87
Gepard
14.12.07
✎
16:19
|
(83) нет, просто бесплатную, она просто чуть упрощенная (но 2008 не пробовал... только 2005, т.е. она бесплатная, но что там - я не знаю)
|
|||
88
Diesellogin
14.12.07
✎
16:20
|
(86) Тогда зачем есть платные, когда можно взять легально бесплатную?
|
|||
89
Diesellogin
14.12.07
✎
16:20
|
(87) Понятно. Осталось поискать тогда.
|
|||
90
Asmody
модератор
14.12.07
✎
16:20
|
кроме того, есть еще SharpDevelop http://www.icsharpcode.net/OpenSource/SD/
он и бесплатный и не урезанный |
|||
91
Ленивый 1сник
14.12.07
✎
16:21
|
А что, под нет разьве можно писать ВК для семерки?
|
|||
92
Gepard
14.12.07
✎
16:22
|
(91) да
вот например моя http://forum.d01-soft.ru/dload.php?action=file&file_id=5 |
|||
93
Asmody
модератор
14.12.07
✎
16:23
|
||||
94
Ленивый 1сник
14.12.07
✎
16:26
|
(92) Интересно. Честно говоря не думал. У .НЕТ же в файлах нескомпилированный код хранится, и под виртуальной машиной работает, как она обычную DLL имитирует?
|
|||
95
Asmody
модератор
14.12.07
✎
16:28
|
(94) все не так
|
|||
96
Gepard
14.12.07
✎
16:28
|
(94) регистрируется по-другому, не через regsrv32 и вся разница... кстати при этом помещается в глобальный кэш сборок...
|
|||
97
Gepard
14.12.07
✎
16:29
|
(96) и кажется, (не уверен) там уже хранится в компилированном виде
|
|||
98
nop
14.12.07
✎
16:30
|
(97) это типа репозитарий?
|
|||
99
Gepard
14.12.07
✎
16:31
|
ага
|
|||
100
Ленивый 1сник
14.12.07
✎
16:31
|
(97) А, там же COM... Тогда более-менее понятно, как работает и почему регистрируется подругому:)
|
|||
101
solver it
15.12.07
✎
17:30
|
Visual Studio 2005 - 2008 Express Edition. Абсолютно бесплатные.
Есть и С+++ и С# ... Предназначены для ознакомления и персонального использования. В плане разработки позволяет тоже, что и полные версии. Урезана не функциональность разрабатываемого приложения, функции самой среды разработки. Например невозможно создание проектов под ВинМобайл... Некоторые внешние компоненты работают только под полной версией. Нету средств коллективной разработки. Нету учета версий проектов... и т.д. Т.е. большой проект сделать можно, но многое придется ручками делать... |
|||
102
jbond
15.12.07
✎
18:46
|
(8) - нельзя туда смотреть. И вообще, забудьте про Делфи для .Net!
Если рассматривать бесплатные среды разработки для которых есть шаблоны, то: Visual Basic/C# Express 2005. Если ты знаешь Бейсик, то VB 2005 Express - твой логичный выбор. http://ru.wikipedia.org/wiki/Visual_Studio_2005_Express Качай: http://www.microsoft.com/germany/msdn/vstudio/products/express/manuelleinstallation.mspx http://www.microsoft.com/downloads/details.aspx?familyid=7B0B0339-613A-46E6-AB4D-080D4D4A8C4E&displaylang=de Turbo Delphi 2006 Explorer Первая ставится без проблем, можно найти везде (книги, журналы). Вторую - только качать. Требует регистрации (беплатной). http://www.festra.com/eng/turboexplorerfaq.htm (4) - не факт. Язык там нечеловеческий. Еще со времен Вирта. |
|||
103
Gepard
15.12.07
✎
18:55
|
(102) +1 по каждому пункту
|
|||
104
jbond
15.12.07
✎
18:59
|
(91) - Да! .Net это не Ява. Там COM-interoperability заложен изначально.
|
|||
105
Gepard
15.12.07
✎
19:00
|
VB Страница на русском
http://www.microsoft.com/rus/msdn/vstudio/express/vb/download/default.mspx |
|||
106
jbond
15.12.07
✎
19:01
|
(103) - скажите, а из России видны ISO-образы для английского VB2005 Express.
Такое ощущение, что с выходом 2008 МС оставила только Веб-инсталляцию. |
|||
107
jbond
15.12.07
✎
19:03
|
(105) - человеку нужно дать ссылку на ISO-образ VB2005 English.
На немецкую я дал :-))) |
|||
108
ado
15.12.07
✎
19:06
|
(102) И какой же язык со времен Вирта был более человеческим? Бейсик что ли? Или С++, у которого неполная определенность считается фичей (тьфу, прости господи)? Из семейства Си, ИМХО только C# обрел "человеческое лицо".
|
|||
109
Gepard
15.12.07
✎
19:10
|
||||
110
Gepard
15.12.07
✎
19:11
|
(108) C#
|
|||
111
Gepard
15.12.07
✎
19:13
|
(106) нашел с трудом, даже web-инсталляцию сложно найти
|
|||
112
ado
15.12.07
✎
19:20
|
(110) Со времен Вирта, ага.
|
|||
113
Gepard
15.12.07
✎
19:21
|
(112) я такого не застал :))
|
|||
114
jbond
16.12.07
✎
13:29
|
(108) - Вообще-то тогда был Си. И сейчас он есть. И завтра он будет.
Паскаль реально начал использоваться с 80-го года, когда товарищ Хейлсберг создал Турбо Паскаль. Именно благодаря ему из Паскаля получилось что-то более-менее вменяемое. |
|||
115
Gepard
16.12.07
✎
14:00
|
(114) после выхода C#, Паскаль уже не кажется таким вменяемым ;)
|
|||
116
Gepard
16.12.07
✎
14:00
|
(115) но когда-то это был прикольный язык...
|
|||
117
Hadgehogs
16.12.07
✎
14:47
|
Снова ППЦ.
Не знаю, как там в С#, но в Borland Turbo С++ как - то все неполюдски (в смысле синтаксиса). Начал его после Basic-a. Ага NOT - это у нас ! OR это у нас | для булево или || для побитных операций (как говаривал Вовочка - где логика??) И еще много всего.. Но самый геммор был со СТРОКАМИ. Энто вообще ППЦ^2. За такое руки отрывать.. Хорошо, что паралельно Turbo Pascal в школе преподавали - на него и ушел (дальше - Delphi). Потом позже попробовал Borland CBuilder++ Но кроме злости ничего не испытал.. Поэтому совет: лучше Delphi (проще в синтаксисе). |
|||
118
АЛьФ
16.12.07
✎
14:49
|
2(117) Чушь. В С++ синтаксис намного проще и логичней.
|
|||
119
Hadgehogs
16.12.07
✎
15:00
|
Жаль нет книги Страупсура (простите, не помню точно фамилию).
Привел бы пример простого и логичного языка. |
|||
120
Gepard
16.12.07
✎
15:28
|
(119) C# - это не C++
|
|||
121
ado
16.12.07
✎
15:31
|
(114) Был. И есть. И, наверное, будет. Но назвать его человеческим язык не поворачивается. Паскаль гораздо человечнее. И виртовский, и уж тем более борландовский.
(118) Проще возможно. Но логичнее ... i = i+++++i ... нафих такую логичность. |
|||
122
jbond
16.12.07
✎
16:55
|
(121) - в Делфи есть такие нелогичности... Причем в элементарных вещах.
А Inc, Dec - магические процедуры, которые встроены в язык, не удовлетворяющих синтаксису языка. Write/Read(Ln) - аналогично. Создание объекта с помощью Create, который можно вызвать еще и как экземпляр-метод. Спецификаторы доступа должны стоять в начале. В Делфи - в конце с соответствующим беспределом с точками с запятой. Когда я пишу в Vb 2005 Overrides + пробел, Intellisense выводит методы, которые можно переопределять. Как с этим обстоят дела в Делфи? объявление локальных переменных: они не достойны отдельного блока описания, а должны описываться прямо в коде по необхосимости. Это существенно упрощает оптимизацию. Никакой синтаксис описания свойств и методов тоже. Нужно писать по 4 раза одно и тоже и прыгать из интерфейсной части в импементационную. Делфи не инлайнит св-ва. |
|||
123
Hadgehogs
16.12.07
✎
19:21
|
1) inc, dec - какие здесь проблемы?
2) А вот где в оконном приложении это зверье использовать??? Типизированный файл писать? Нафиг... API CreateFile или TFileStream по вкусу... 3) По русски можно 4) Тоже интересно, что такое спецификаторы 5) ХЗ, я ООП не использовал почти. Обходился без этого. 6) Вот здесь согласен. Объявлять переменные среди кода - это гуд.. 7) Ну уж не по четыре раза. И можно не писать. Можно CTRL+SHIFT+C нажать. Если вас правильно понял. 8) Тоже не вкурил. Приведите пожалуйста пример на C++ Объявите 2 строковые переменные, сложите их и выведите их в TLabel на форме |
|||
124
Gepard
16.12.07
✎
20:25
|
C#
string Строка1 = "Строка 1"; string Строка2 = "Строка 2"; label1.Text = Строка1 + Строка2; |
|||
125
BabySG
16.12.07
✎
23:19
|
(117) А чем не нравятся строки? Или вы не понимаете разницу массива символов, указателя ( char*, к примеру) либо произвольного объекта? Как такового, смею вас заверить, типа строка вообще не существует - и никто еще не умер.
(123) Вы просите пример не на С++, а на VIsual С++ (либо подобном) ибо в С++ не существует форм, элементов и другого (124) Он просит не через объекты :), а через strcat(...) |
|||
126
BabySG
16.12.07
✎
23:21
|
(123) По поводу этого поста - дык о чем говорить, если не вкуриваете смысл ООП и даже не знаете что такое спецификаторы доступа.
|
|||
127
Hadgehogs
17.12.07
✎
07:52
|
(126)
Да не вкуриваю ООП, на что это влияет? |
|||
128
ado
17.12.07
✎
08:11
|
(122)
1,2) Согласен, это косяк. 3) И чо? Порой даже полезно. 4) Какого фига они в конце? Они в начале, причем не каждого описания, а группы. 5) Причем здесь язык??? Это претензия к ИДЕ. 6) Очень спорный вопрос. Во первых, предварительное описание всех переменных дисциплинирует мыслю, заставляет более тщательно к проектированию подходить (не забываем для чего Вирт изначально Паскаль придумал ;-)), во вторых когда во время отладки встречаешь обращение к переменной, и хочешь узнать ее тип, не приходится шарахатбся по всему коду, ища ее определение. 7) Угу. А то, что в С++ вообще отдельные заголовочные файлы нужно писать, эт ниче. 8) Отсутствие отдельной фичи не делает язык нелогичным. И вообще, это забота компилятора. А зато в сях вложенных процедур нету, вот. |
|||
129
spock
17.12.07
✎
08:20
|
(121)i = i+++++i - это UB (неопределенное поведение). Разные компиляторы могут по разному интерпретировать такой код.
|
|||
130
Hadgehogs
17.12.07
✎
08:27
|
(128) Можете пояснить моему слабому уму, где в inc/dec, Write/Read косяк ?
|
|||
131
spock
17.12.07
✎
08:28
|
(128)"описание переменных в начале модуля" = "когда во время отладки встречаешь обращение к переменной, и хочешь узнать ее тип, не приходится шарахатбся по всему коду, ища ее определение"
"С++ вообще отдельные заголовочные файлы нужно писать" - далеко от истины. |
|||
132
Gepard
17.12.07
✎
09:44
|
(125) п.3 - это же C#
|
|||
133
Asmody
модератор
17.12.07
✎
10:26
|
начинается холивар?
|
|||
134
MMF
17.12.07
✎
10:35
|
(131) вообще-то не надо шариться, среда показывает хинтом тип. А если с ctrl щелкнуть, то можно перейти к определению.
|
|||
135
Gepard
17.12.07
✎
10:40
|
(134) + а в VS достаточно просто навести на переменную, что б получить ее тип
|
|||
136
spock
17.12.07
✎
10:46
|
(134)я не против же :)
|
|||
137
BabySG
17.12.07
✎
10:50
|
(127) Это влияет на код
(128) 6) Вы, видимо, не видели последние пару версий MSVC - там выдается несколько строк кода, где эта переменная объявляется. Очень удобно. 7) Вы, видимо, не в курсе, для чего это так :) (132) Он просит на С++, а не на шарпе :) |
|||
138
BabySG
17.12.07
✎
10:51
|
(133) Да не - пока плюшками балуемся... Ибо все смешалось в этом доме :)
|
|||
139
Gepard
17.12.07
✎
10:52
|
(138) +1
|
|||
140
Hadgehogs
17.12.07
✎
10:55
|
(137) <Это влияет на код>
Напомнило анекдот про Шерлока и др. Ватсона на воздушном шаре и программиста на земле. |
|||
141
Gepard
17.12.07
✎
11:06
|
(140) с объектами намного удобней :), имхо
|
|||
142
jbond
17.12.07
✎
12:00
|
(130) -
По правилам Паскаль ты не можешь создавать процедуры типа Write(Ln)/Read(Ln), Inc, Dec, Lo, Hi. Они вшиты в язык. Вот эта вшитость в язык и является злом. Люди ищут исходные тексты этих процедур, но не могут найти - их не существует. В Си scanf и printf отвечают правилам языка. |
|||
143
MMF
17.12.07
✎
12:05
|
(142) и это недостаток??? еп, какой-нить идиот переопределит Inc, так чтобы на самом деле выполнялось умножение, и потом ломай голову.
|
|||
144
Ц_У
17.12.07
✎
12:34
|
Delphi и синтаксис похож, и примеров до ж..ы...
|
|||
145
romix
модератор
17.12.07
✎
12:52
|
В Дельфи изначально есть нормальные человеческие строки, нормальные массивы, ( Книга знаний: Динамические массивы в Delphi ) а также нормальная обработка исключений ( Книга знаний: Обеспечение стабильной работы внешних компонент на Delphi ).
В Си++ все это тоже есть, но вы легко можете столкнуться с образчиками кода, которые не используют все эти полезные механизмы, а применяют нечто древнее, с указателями и кодами возврата, в которых легко запутаться. В C# все эти новые возможности изначально тоже есть (прямой конкурент Дельфям), но там какие-то проблемы с различием версий .NET (но ознакомиться полезно). С другой стороны если рядом есть консультант по Си++ и в наличии есть образчики кода внешней компоненты с использованием указанных выше механизмов (в чем я глубоко сомневаюсь), то почему бы и нет. Я выкладываю образцы исходного кода на Дельфи (см. у меня карточку), а делают ли это уважаемые господа сишники? Нет? Какая жалость. |
|||
146
Gepard
17.12.07
✎
12:59
|
(145) а можно поподробней про проблемы C#? ;)
|
|||
147
sapphire
17.12.07
✎
13:07
|
(145) Рома, ты не прав. 1С++ есть в исходниках. Качай на здоровье.
(146) Легко. В .NET нет поддержки предыдущих версий, т.е если собирал под второй версией framework, то на первой и третьей версии работать не будет, вообще стабильно будет работать только под той версией framework, для которой осуществлена сборка. |
|||
148
Asmody
модератор
17.12.07
✎
13:14
|
(147) именно. изначально .NET позиционировалось, как средство от dll hell. но в результате получили те же грабли, вид сбоку
|
|||
149
Gepard
17.12.07
✎
13:33
|
(147) 2. не вижу в этом минусов
|
|||
150
sapphire
17.12.07
✎
13:47
|
(149) Привязка к версии framework это сильный минус.
|
|||
151
Gepard
17.12.07
✎
13:59
|
(150) если я портирую ПО на какую либо платформу, то я портирую весь проект...
|
|||
152
sapphire
17.12.07
✎
14:00
|
(151) Это понятно, но тогда вместе с твоей рзработкой ты должен поставлять ту весию платформы, в которой ты собирал. У нас используется .NET посему проблемы эти я видел.
|
|||
153
ado
17.12.07
✎
14:04
|
(142) Проблема не в этом. Кстати, я ошибся, в Inc/Dec криминала нету. Есть только в read/write. А криминал в том, что по правилам паскаля процедура не может иметь неопределенное (не путать с переменным) количество/тип параметров.
|
|||
154
Gepard
17.12.07
✎
14:06
|
||||
155
Вектор3
17.12.07
✎
14:07
|
(153) и Вы считаете, что это большая проблема???
|
|||
156
ado
17.12.07
✎
14:08
|
(134)(135) Мы вроде не за среду говорим, а за язык. Давайте мух от котлет отделять.
|
|||
157
ado
17.12.07
✎
14:09
|
(155) Не большая. Но изящности не прибавляет.
|
|||
158
Вектор3
17.12.07
✎
14:10
|
(156) вообще то сабж про среду))))
|
|||
159
Gepard
17.12.07
✎
14:12
|
Никто не мешает в C++ или в C# поместить описание переменных в начало процедуры...
все зависит от разработчика, и данные языки дают просто большую свободу действий разработчикам! |
|||
160
ado
17.12.07
✎
14:14
|
(145) "В Дельфи изначально есть нормальные человеческие строки, нормальные массивы"
В кои то веки соглашусь с Ромиксом. ;-) Это бльшой плюс. Добавлю еще нормальную передачу параметров составных типов. А все это вместе уменьшает потребность жонглирования указателями и повышает безопасность кода. |
|||
161
ado
17.12.07
✎
14:16
|
(159) Воспитательный момент упускаешь ;-)
(158) Начиная с поста (102) холивар бушует за язык ;-) |
|||
162
sapphire
17.12.07
✎
14:24
|
(161) Тогда уж лучше холивар про то, как писать .NET или native. Под dotNET типа пофигу на чем писать, а вот native - уже нет. Да и выбор в сторону Delphi не очевиден - если совсем играться и пописывать, то уж лучше VB. Что-то выше hello, word - Delphi, большие и серьезные проекты - С/С++/java
|
|||
163
Вектор3
17.12.07
✎
14:24
|
(161) не скажу за C#, но в руководствах к Java прямым текстом сказано - старайтесь объявлять переменные там где Вы их используете - это повышает производительность. Думаю, для C# это тоже справедливо
|
|||
164
Gepard
17.12.07
✎
14:25
|
(162) типа шарп совсем не котируется ?? ;))
|
|||
165
sapphire
17.12.07
✎
14:26
|
(163) java это гутт, но автору (0) не подойдет.
|
|||
166
Gepard
17.12.07
✎
14:26
|
(163) в шарпе можно объявлять переменные в теле цикла, это уменьшает область действия этой переменной только этой итерацией цикла... таким образом память выделяется более оптимально
|
|||
167
Вектор3
17.12.07
✎
14:28
|
(164) я думаю, имеется в виду , что он не имеет критических преимуществ перед другими .NET языками...
|
|||
168
Gepard
17.12.07
✎
14:34
|
(166) это работает не только со ссылками, но так же и с if и т.д.
|
|||
169
Gepard
17.12.07
✎
14:35
|
(168) тьфу... ссылками = циклами :)))
|
|||
170
sapphire
17.12.07
✎
14:35
|
(164) Котируется в ASP .NET... Серьезных проектов под dotnet я не видел. Да и странно то, что сама MS, вернее MBS, на .NET не спешит переходить.
|
|||
171
Gepard
17.12.07
✎
14:37
|
(170) вот ASP .NET не перевариваю :))
|
|||
172
sapphire
17.12.07
✎
14:42
|
вообще, спор ни о чем.
Проще рассматривать с другой стороны - с точки зрения radости (RAD= rapid application development), если автора (0) не пугает наличие dotnet - то вполне можно обойтись любым языком в dotnet, иначе - Borland Delphi/Microsoft Visual C++. |
|||
173
ado
17.12.07
✎
14:44
|
(162) Большие и серьезные проекты в какой области? ИМХО, КИС разрабатывать -- Делфи гораздо более подходящая вещь, чем С/С++. MFC по сравнению с VCL вообще убог... эээ, спартанская.
|
|||
174
ado
17.12.07
✎
14:46
|
(172) Таки Делфи, ИМХО, гораздо "радее" MSVS.
|
|||
175
sapphire
17.12.07
✎
14:46
|
(171) ну и зря :) конечно jsp/servletы рулят, и с моей точки зрения php не тянет большие нагрузки, но сама технология вполне жива и заслуженно завоевала популярность.
|
|||
176
sapphire
17.12.07
✎
14:48
|
(173) Кроме КИС больше ничего в голову не приходит? CAD/CAM, например?
ИМХО, выбор среды/языка зависит от целей проекта. |
|||
177
ado
17.12.07
✎
14:50
|
(176) Вооооот! "Серьезность" -- не показатель для выбора языка/среды.
|
|||
178
Ненавижу 1С
гуру
17.12.07
✎
14:52
|
в паскале (от борланда) break, continueб exit являются идентификаторами процедур и их можно даже переопределить на свои )))
Но это инструкции (операторы, как хотите) и должны быть служебными словами |
|||
179
sapphire
17.12.07
✎
15:03
|
(177) Не убедил.
|
|||
180
Gepard
17.12.07
✎
15:04
|
пора голосовалку устраивать
|
|||
181
sapphire
17.12.07
✎
15:04
|
(180) Оно надо?
|
|||
182
Gepard
17.12.07
✎
15:08
|
(181) мне - нет. я уже с языком определился
|
|||
183
sapphire
17.12.07
✎
15:13
|
(182) I2
|
|||
184
Gepard
17.12.07
✎
15:14
|
Когда-то писал на дэлфи... после шарпа не нее даже смотреть не могу ;)
|
|||
185
nop
17.12.07
✎
15:15
|
(184) бояним? :) (31)
|
|||
186
Gepard
17.12.07
✎
15:16
|
(185) :)))), ветка слишком длинная, давно начало не читал :)))
|
|||
187
sapphire
17.12.07
✎
15:19
|
(184) А мне после java на пошарпанное си смотреть влом :)
|
|||
188
Вектор3
17.12.07
✎
15:22
|
(187) оно конечно да, но ИМХО студия у мелкомягких сильно хорошая
|
|||
189
Gepard
17.12.07
✎
15:24
|
Еще б бесплатная была...
|
|||
190
ado
17.12.07
✎
15:27
|
(184) Верю. Я ж говорю, в C# линейка сей наконец обрела человеческое лицо. И это понятно, т.к. он самый новый. Вобрал всё лучшее, что было в предшествующих объектно-ориентированных языках. И избавился от их детских болячек.
|
|||
191
Gepard
17.12.07
✎
15:30
|
(190) было б интересно сделать подобный язык, но без CLR...
|
|||
192
spock
17.12.07
✎
15:32
|
(190)те вещи, которые ты называешь детскими болячками, другие называют фичами.
|
|||
193
Вектор3
17.12.07
✎
15:42
|
(191) Java ftw ))))
|
|||
194
ado
17.12.07
✎
15:48
|
(192) Ога. "Когда не достигают желаемого, делают вид, что желали достигнутого" (цы)
|
|||
195
jbond
17.12.07
✎
16:14
|
(143) - так вот, это кар раз и можно сделать.
волшебные процедуры Inc, Dec можно написать самому, перекрывая стандартный функционал. ++, -- - это ОПЕРАЦИЯ, а не процедура. +=, -= из VB.Net - ОПЕРАТОР, а не процедура. Волшебными являются процедуры Break, Continue. Они вшиты в язык. Но это идентификатор. Юзер может спокойно завести переменную Break и функцию Continue - и все... А в Си - break, return,... - ЗАРЕЗЕРВИРОВАННОЕ слово. Функциональность не поменяешь. В Бейсике Exit Sub, Exit For, ... - операторы. Их функциональность программист не сможет изменить! |
|||
196
ado
17.12.07
✎
18:09
|
(195) А так ли они нужны в качестве операторов?
|
|||
197
Hadgehogs
17.12.07
✎
18:39
|
Нда, "сходил автор за хлебушком".
Для себя сделаю вывод: 1) Посмотреть Дельфи для NET (у брата в универе счаст преподы усиленно эту весщь продвигают) 2) Посмотреть С# (вдруг понравится) |
|||
198
jbond
17.12.07
✎
18:41
|
(196) - а так ли они нужны в качестве волшебных процедур, которые в любой момент могут быть переопределены.
Вот вам и стройность языка Паскаль. |
|||
199
jbond
17.12.07
✎
18:43
|
(1) - на Делфи для .Net я очень не советую смотреть. Они испоганили всю идею .Net.
|
|||
200
Gepard
17.12.07
✎
18:45
|
(197) лучше определись или делфи или нет... не надо мешать все в кучу
|
|||
201
jbond
17.12.07
✎
18:51
|
(197) - (2) - Си Шарп надеюсь не от Борланд? От него сама Борланд отказалась.
|
|||
202
ado
17.12.07
✎
18:51
|
(199)(200) Вот с этим согласен. Если уж дотнет, то сишарп. Просто это на сегодня лучшая реализация ООП.
|
|||
203
ado
17.12.07
✎
18:51
|
(201) С каких пор?
|
|||
204
jbond
17.12.07
✎
19:07
|
(203) - с версии для .Net 2.0
CodeGear поддерживает теперь линейку Delphi for Win32, Delphi for .Net, C++ for Win32. |
|||
205
jbond
17.12.07
✎
19:16
|
(202) - или VB.Net
Собс-но у фирмы МС Visual Basic-программисты основной |
|||
206
ado
17.12.07
✎
19:50
|
(205) Не знаю ... может в версии для .нет он стал лучше, но от VB6 у меня только отвращение осталось ...
|
|||
207
ado
17.12.07
✎
19:52
|
(206) Если C++ был излишне "фичастый" и это можно было потерпеть, то VB был просто убогий.
|
|||
208
jbond
17.12.07
✎
22:03
|
(207) - не факт. VBA/VB6 имеют приличный синтаксис. Хотя и имеет много атавизмов
По сравнению с тем же Делфи. Просто язык МС развивала по необходимости. Аналогия - 1С 7.0 - 7.5 - 7.7 |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |