Создание библиотеки классов с последующим присоединением *.

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

MAGRAV
Новичок
Новичок
Аватара пользователя
 
Сообщения: 41
Зарегистрирован: 27.01.2011 (Чт) 11:57

Создание библиотеки классов с последующим присоединением *.

Сообщение MAGRAV » 10.09.2013 (Вт) 8:19

Доброго времени суток! К сожалению катастрафически нехватает времени домучать мой вопрос.
Я привык писать так, чтобы выносить особоважные куски своего кода в модуль. С применением "Sub...", "Function..." и т.д. и т.п. Хочу писать это всё грамотно в классах, чтобы в последующем создавать подключаемые dll. Но научиться одно, а вот многолетненакопленные результаты труда в старом (практически процедурном) стиле переиначить на новые рельсы классов хочется с минимальными потерями и переделками. Для меня раздробление конструкций заключённых в мои "Sub..." и "Function..." почти равноценно утере. Хотя может быть у страха глаза велики).

Вот пример моей неудачной попытки создания примитивного мат.класса.
Знаю, что по синтаксису не правильно пишу. Хочу, чтобы все функции и процедуры из моей библиотеки были доступны из других проектов.
В нём недопустимо слияние конструкций заключённых в "Sub..." и "Function...", как это мне уже советовали форумчане. Это принципиальный пример моего подхода.
Подскажите или помогите пожалуйста, как это модифицировать в классе? Во всей их красе! Заранее спасибо!


Код: Выделить всё
Public Class All
Public a() As Double
Public d() As Double
Public c As Double
Public Shared Sub AddNum(ByVal a() As Double, ByVal d() As Double, ByRef c As Double)
Dim ff As Double

d_q(d, ff)
c = a_q(a) + ff
End Sub
Public Shared Function a_q(ByVal a() As Double) As Double
Dim i As Integer
a_q = 0
For i = 1 To a(0)
a_q = a_q + a(i)
Next i
'Return a_q
End Function
Public Shared Sub d_q(ByRef d() As Double, ByVal ff As Double)
Dim i As Integer
ff = 0
For i = 1 To d(0)
ff = ff + d(i)
Next i
End Sub
End Class
Уходя с аэродрома прихвати деталь для дома.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 10.09.2013 (Вт) 8:54

MAGRAV писал(а):В нём недопустимо слияние конструкций заключённых в "Sub..." и "Function...", как это мне уже советовали форумчане.

Не понимаю, о чём это.

MAGRAV писал(а):Хочу писать это всё грамотно в классах, чтобы в последующем создавать подключаемые dll.

Модули тоже могут быть в dll.

MAGRAV писал(а):Подскажите или помогите пожалуйста, как это модифицировать в классе?

Зависит от того, как это будет использоваться. Сейчас неправильно в любом случае, поскольку у статических методов нет доступа к экземплярным переменным.

MAGRAV
Новичок
Новичок
Аватара пользователя
 
Сообщения: 41
Зарегистрирован: 27.01.2011 (Чт) 11:57

Re: Создание библиотеки классов с последующим присоединением

Сообщение MAGRAV » 10.09.2013 (Вт) 10:45

Я только учусь и прошу не пинать если чего то не в полной мере понимаю.
У меня накопилось, за время работы, изрядное количество модулей с математикой и логикой .
Хотел попробовать вступить на качественно более высокий уровень и вынести свой код в библиотеку DLL. Да так, чтобы её одновременно можно было юзать с разных проектов и одновременно без конфликтов. Так сказать на вырост.

Qwertiy писал(а):MAGRAV писал(а):В нём недопустимо слияние конструкций заключённых в "Sub..." и "Function...", как это мне уже советовали форумчане.Не понимаю, о чём это.

Уже поступали ахинееподобные предложения слить мои 3 "Sub..." и "Function..." в единую.

Qwertiy писал(а):MAGRAV писал(а):Хочу писать это всё грамотно в классах, чтобы в последующем создавать подключаемые dll.Модули тоже могут быть в dll.

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

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 10.09.2013 (Вт) 12:04

MAGRAV писал(а):Я только учусь и прошу не пинать если чего то не в полной мере понимаю.

Так я же и не пинал.

MAGRAV писал(а):Хотел попробовать вступить на качественно более высокий уровень и вынести свой код в библиотеку DLL.

А что мешает вынести его в том виде, в каком он есть?

MAGRAV писал(а):Уже поступали ахинееподобные предложения слить мои 3 "Sub..." и "Function..." в единую.

Всё зависит от их использования.

MAGRAV писал(а):Хотелось бы видеть, как это может реализовать знающий человек.

Всё зависит от использования. Например, почему там всё public, оно действительно вызывается из других мест? Имена весьма странные. И Библиотека с нестатическим классом All - это что-то весьма подозрительное.

MAGRAV писал(а):Подходит ли это для создания высокого-нагруженной библиотеки dll?

Не понял.


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 20

    TopList